8.7 PubSubKeyPushTargetFolderType

8.7.1 PubSubKeyPushTargetFolderType definition

The PubSubKeyPushTargetFolderType is formally defined Table 226.

Table 226 – PubSubKeyPushTargetFolderType definition
Attribute Value
BrowseNamePubSubKeyPushTargetFolderType
IsAbstractFalse
References NodeClass BrowseName DataType TypeDefinition ModellingRule
Subtype of FolderType defined in OPC 10000-5.
OrganizesObject<PushTargetFolderName>PubSubKeyPushTargetFolderTypeOptionalPlaceholder
HasComponentObject<PushTargetName>PubSubKeyPushTargetTypeOptionalPlaceholder
HasComponentMethodAddPushTargetDefined in 8.7.2Mandatory
HasComponentMethodRemovePushTargetDefined in 8.7.3Mandatory
HasComponentMethodAddPushTargetFolderDefined in 8.7.4.Optional
HasComponentMethodRemovePushTargetFolderDefined in 8.7.5.Optional
Conformance Units
PubSub Model SKS Push

Instances of the PubSubKeyPushTargetFolderType can contain PubSubKeyPushTarget Objects or other instances of the PubSubKeyPushTargetFolderType. This can be used to build a tree of folder Objects used to organize the configured PubSubKeyPushTargets.

The PubSubKeyPushTarget Objects are added as components to the instance of the PubSubKeyPushTargetFolderType. A PubSubKeyPushTargets is referenced only from one folder. If the folder is deleted, all referenced PubSubKeyPushTargets are deleted with the folder.

8.7.2 AddPushTarget Method

This Method is used to add a PubSubKeyPushTarget to a PubSubKeyPushTargetFolder or to return an existing Object if the parameters match the configuration of an existing Object.

The Client shall be authorized to modify the configuration for the SKS functionality and shall use at least a signed communication channel when invoking this Method on the Server.

Signature

	AddPushTarget (
		[in]	String		ApplicationUri,
	[in]	String		EndpointUrl,
	[in]	String		SecurityPolicyUri,
	[in]	UserTokenPolicy	UserTokenType,
	[in] 	UInt16		RequestedKeyCount,
	[in]	Duration 		RetryInterval,
	[out] NodeId		PushTargetId
	);
	
Argument Description
ApplicationUri

ApplicationUri of the Server that is the target of the key push.

The ApplicationUri is used as name of the resulting PubSubKeyPushTarget object.

EndpointUrlURL of the Endpoint of the Server that is the target of the key push
SecurityPolicyUriSecurity policy the SKS shall use to establish a secure connection to the PushTarget
UserTokenTypeThe user token type used for the push. The default is Anonymous.
RequestedKeyCountThe number of keys to push on each call
RetryIntervalInterval the SKS shall use to retry pushing keys after an error appeared
PushTargetIdThe NodeId of the added PubSubKeyPushTarget Object.

Method Result Codes

ResultCode Description
Bad_NodeIdExists A PushTarget with the ApplicationUri already exists but the arguments do not match the existing object.
Good_DataIgnoredA Object with the configuration already exists and was returned without adding a new Object.
Bad_InvalidArgumentOne of the input arguments is invalid. The InputArgumentResult provides further details.
Bad_UserAccessDeniedThe Session user is not allowed to configure the object.
Bad_SecurityModeInsufficientThe communication channel is not using signing.

Table 227 specifies the AddressSpace representation for the AddPushTarget Method.

Table 227 – AddPushTarget Method AddressSpace definition
Attribute Value
BrowseNameAddPushTarget
References NodeClass BrowseName DataType TypeDefinition ModellingRule
HasPropertyVariableInputArgumentsArgument[] PropertyTypeMandatory
HasPropertyVariableOutputArgumentsArgument[] PropertyTypeMandatory
ConformanceUnits
PubSub Model SKS Push

8.7.3 RemovePushTarget Method

This Method is used to remove a PubSubKeyPushTarget from the PushTargetFolder.

The Client shall be authorized to modify the configuration for the SKS functionality and shall use at least a signed communication channel when invoking this Method on the Server.

Signature

	RemovePushTarget (
		[in]	NodeId	PushTargetId
	);
	
Argument Description
PushTargetId NodeId of the PushTargetType Object to remove from the Server

Method Result Codes

ResultCode Description
Bad_NodeIdUnknownThe PushTargetId is unknown.
Bad_NodeIdInvalidThe PushTargetId is not a NodeId of a PubSubKeyPushTarget Object.
Bad_UserAccessDeniedThe Session user is not allowed to delete the PushTargetType Object.
Bad_SecurityModeInsufficientThe communication channel is not using signing.

Table 228 specifies the AddressSpace representation for the RemovePushTarget Method.

Table 228 – RemovePushTarget Method AddressSpace definition
Attribute Value
BrowseNameRemovePushTarget
References NodeClass BrowseName DataType TypeDefinition ModellingRule
HasPropertyVariableInputArgumentsArgument[] PropertyTypeMandatory
ConformanceUnits
PubSub Model SKS Push

8.7.4 AddPushTargetFolder Method

This Method is used to add a PubSubKeyPushTargetFolderType Object to a PubSubKeyPushTargetFolderType Object.

The Client shall be authorized to modify the configuration for the PubSub functionality when invoking this Method on the Server.

Signature

	AddPushTargetFolder (
		[in]	String	Name,
		[out]	NodeId	PushTargetFolderNodeId
		);
	
Argument Description
NameName of the Object to create.
PushTargetFolderNodeId NodeId of the created PubSubKeyPushTargetFolderType Object.

Method Result Codes

ResultCode Description
Bad_BrowseNameDuplicatedA folder Object with the name already exists.
Bad_InvalidArgumentThe Server is not able to apply the Name. The Name may be too long or may contain invalid characters.
Bad_UserAccessDeniedThe Session user is not allowed to add a folder.

Table 229 specifies the AddressSpace representation for the AddPushTargetFolder Method.

Table 229 – AddPushTargetFolder Method AddressSpace definition
Attribute Value
BrowseNameAddPushTargetFolder
References NodeClass BrowseName DataType TypeDefinition ModellingRule
HasPropertyVariableInputArgumentsArgument[] PropertyTypeMandatory
HasPropertyVariableOutputArgumentsArgument[] PropertyTypeMandatory
ConformanceUnits
PubSub Model SKS Push

8.7.5 RemovePushTargetFolder Method

This Method is used to remove a PubSubKeyPushTargetFolderType Object from the parent PubSubKeyPushTargetFolderType Object.

A successful removal of the PubSubKeyPushTargetFolderType Object removes recursively all contained PubSubKeyPushTargetType Objects and all contained PubSubKeyPushTargetFolderType Objects.

The Client shall be authorized to modify the configuration for the PubSub functionality when invoking this Method on the Server.

Signature

	RemovePushTargetFolder (
		[in]	NodeId	PushTargetFolderNodeId
		);
	
Argument Description
PushTargetFolderNodeId NodeId of the PubSubKeyPushTargetFolderType Object to remove from the Server.

Method Result Codes

ResultCode Description
Bad_NodeIdUnknownThe PushTargetFolderNodeId is unknown.
Bad_UserAccessDeniedThe Session user is not allowed to delete the folder.

Table 230 specifies the AddressSpace representation for the RemovePushTargetFolder Method.

Table 230 – RemovePushTargetFolder Method AddressSpace definition
Attribute Value
BrowseNameRemovePushTargetFolder
References NodeClass BrowseName DataType TypeDefinition ModellingRule
HasPropertyVariableInputArgumentsArgument[] PropertyTypeMandatory
ConformanceUnits
PubSub Model SKS Push