High Performance OPC UA Server SDK
1.2.0.193
|
Asynchronous call to transfer a subscription and its MonitoredItems from one Session to another. More...
#include <transfersubscriptionsrequest.h>
Data Fields | |
uint32_t * | subscription_ids |
List of identifiers for the Subscriptions to be transferred to the new Client. More... | |
int32_t | num_subscription_ids |
Number of elements in ua_transfersubscriptionsrequest::subscription_ids. | |
bool | send_initial_values |
A boolean parameter indicating whether the first publish response should contain current values of all monitored items. More... | |
Related Functions | |
void | ua_transfersubscriptionsrequest_init (struct ua_transfersubscriptionsrequest *t) |
Initialize an ua_transfersubscriptionsrequest struct with a valid value. More... | |
void | ua_transfersubscriptionsrequest_clear (struct ua_transfersubscriptionsrequest *t) |
Clear all resources alloctated in an ua_transfersubscriptionsrequest struct. More... | |
int | ua_transfersubscriptionsrequest_compare (const struct ua_transfersubscriptionsrequest *a, const struct ua_transfersubscriptionsrequest *b) |
Compare two ua_transfersubscriptionsrequest structs. More... | |
int | ua_transfersubscriptionsrequest_copy (struct ua_transfersubscriptionsrequest *dst, const struct ua_transfersubscriptionsrequest *src) |
Create a copy of a ua_transfersubscriptionsrequest struct. More... | |
static int | ua_transfersubscriptionsrequest_resize_subscription_ids_array (struct ua_transfersubscriptionsrequest *val, int32_t new_len) |
Resize the subscription_ids array of a ua_transfersubscriptionsrequest struct. More... | |
Asynchronous call to transfer a subscription and its MonitoredItems from one Session to another.
For example, a Client may need to reopen a Session and then transfer its Subscriptions to that Session. It may also be used by one Client to take over a Subscription from another Client by transferring the Subscription to its Session.
The authenticationToken contained in the request header identifies the Session to which the Subscription and MonitoredItems shall be transferred. The Server shall validate that the Client of that Session is operating on behalf of the same user and that the potentially new Client supports the Profiles that are necessary for the Subscription. If the Server transfers the Subscription, it returns the sequence numbers of the NotificationMessages that are available for retransmission. The Client should acknowledge all messages in this list for which it will not request retransmission.
If the Server transfers the Subscription to the new Session, the Server shall issue a StatusChangeNotification notificationMessage with the status code Good_SubscriptionTransferred to the old Session.
|
related |
Clear all resources alloctated in an ua_transfersubscriptionsrequest struct.
Frees allocated memory like arrays and resets numeric values. The ua_transfersubscriptionsrequest struct itself is not freed and must be freed by the caller if required. This function always succeeds for a valid ua_transfersubscriptionsrequest struct, that was validly decoded or initilized by ua_transfersubscriptionsrequest_init.
|
related |
Compare two ua_transfersubscriptionsrequest structs.
Compares the content of the ua_transfersubscriptionsrequest struct a
to the content of the ua_transfersubscriptionsrequest struct b
. If a
is smaller than b
, an integer less than zero is returned, if a
is bigger than b
, an integer greater than zero is returned. If both structs are equal zero is returned.
This function creates a total order on ua_transfersubscriptionsrequest structs, so it is well suited to not only determine equality, but also sort multiple instances of this struct.
|
related |
Create a copy of a ua_transfersubscriptionsrequest struct.
Copy all fields from struct ua_transfersubscriptionsrequest src
to dst
. Creates a deep copy so all content is recusively copied and both src
and dst
can be used and must be freed separately.
dst
is not cleared before the copy operation, so it must not have any allocated data. It may or may not be initilized by the caller before copy.
|
related |
Initialize an ua_transfersubscriptionsrequest struct with a valid value.
After initialization the fields of the struct are set to valid and consistent values and can safley be accessed. An initialized ua_transfersubscriptionsrequest struct can also be passed to ua_transfersubscriptionsrequest_clear. This function will always succeed as long as an ua_transfersubscriptionsrequest struct is passed to it.
|
related |
Resize the subscription_ids array of a ua_transfersubscriptionsrequest struct.
Depending on new_len
and the current size of the array, the array will be created, increased, decreased or deleted. In case array members are removed these are cleared properly, new array members are initialized with zero.
new_len | New length of the subscription_ids array in number of members. |
send_initial_values |
A boolean parameter indicating whether the first publish response should contain current values of all monitored items.
It has the following values:
This parameter only applies to MonitoredItems used for monitoring Attribute changes.
subscription_ids |
List of identifiers for the Subscriptions to be transferred to the new Client.
These identifiers are transferred from the primary Client to a backup Client via external mechanisms.