Opc.Ua.Server.SubscriptionManager.TransferSubscriptions C# (CSharp) Method

TransferSubscriptions() public method

Attaches a groups a subscriptions to a different sesssion.
public TransferSubscriptions ( OperationContext context, UInt32Collection subscriptionIds, TransferResultCollection &results, DiagnosticInfoCollection &diagnosticInfos ) : void
context OperationContext
subscriptionIds UInt32Collection
results TransferResultCollection
diagnosticInfos DiagnosticInfoCollection
return void
        public void TransferSubscriptions(
            OperationContext             context,
            UInt32Collection             subscriptionIds,
            out TransferResultCollection results,
            out DiagnosticInfoCollection diagnosticInfos)
        {
            results = new TransferResultCollection();
            diagnosticInfos = new DiagnosticInfoCollection();

            for (int ii = 0; ii < subscriptionIds.Count; ii++)
            {
                TransferResult result = new TransferResult();

                // find subscription.
                Subscription subscription = null;

                lock (m_lock)
                {
                    if (!m_subscriptions.TryGetValue(subscriptionIds[ii], out subscription))
                    {
                        result.StatusCode = StatusCodes.BadSubscriptionIdInvalid;
                        continue;
                    }
                }

                result.StatusCode = StatusCodes.BadNotImplemented;
            }
        }