Opc.Ua.Com.Server.ComDaGroup.DeleteItems C# (CSharp) Method

DeleteItems() public method

Deletes the items.
public DeleteItems ( int serverHandles ) : int[]
serverHandles int The server handles.
return int[]
        public int[] DeleteItems(int[] serverHandles)
        {
            TraceState("DeleteItems", serverHandles.Length);
            ThrowIfDisposed();

            lock (m_lock)
            {
                // validate the handles.
                int[] results = new int[serverHandles.Length];
                ComDaGroupItem[] items = new ComDaGroupItem[serverHandles.Length];

                for (int ii = 0; ii < serverHandles.Length; ii++)
                {
                    ComDaGroupItem item = null;

                    if (!m_itemsByHandle.TryGetValue(serverHandles[ii], out item))
                    {
                        results[ii] = ResultIds.E_INVALIDHANDLE;
                        continue;
                    }

                    items[ii] = item;
                    RemoveItemFromSubscription(item);
                    m_itemsByHandle.Remove(serverHandles[ii]);
                    m_items.Remove(item);
                }

                // update the subscription.
                try
                {
                    m_subscription.ApplyChanges();
                }
                catch (Exception e)
                {
                    SetFatalError(items, results, e, ResultIds.E_FAIL);
                }

                // start the update timer.
                CheckUpdateTimerStatus();

                // return any errors.
                return results;
            }
        }