Exemple #1
0
        /// <summary>
        ///     id is not null, valueSubscription is not null
        /// </summary>
        /// <param name="id"></param>
        /// <param name="clientObj"></param>
        public void AddItem(string id, object clientObj)
        {
            Logger?.LogDebug("XiListItemsManager.AddItem() " + id);

            ClientObjectInfo?modelItem;

            if (!_clientObjectInfosDictionary.TryGetValue(clientObj, out modelItem))
            {
                modelItem = new ClientObjectInfo(id);
                _clientObjectInfosDictionary.Add(clientObj, modelItem);
                modelItem.ClientObj = clientObj;

                _xiItemsMustBeAddedOrRemoved = true;
            }
        }
Exemple #2
0
        /// <summary>
        ///     Can be added several times with same elementId
        /// </summary>
        /// <param name="elementId"></param>
        /// <param name="clientObj"></param>
        public void AddItem(string elementId, object clientObj)
        {
            Logger.LogDebug("DataGrpcListItemsManager.AddItem() " + elementId);

            ClientObjectInfo?clientObjectInfo;

            if (!_clientObjectInfosDictionary.TryGetValue(clientObj, out clientObjectInfo))
            {
                clientObjectInfo = new ClientObjectInfo(elementId);
                _clientObjectInfosDictionary.Add(clientObj, clientObjectInfo);
                clientObjectInfo.ClientObj = clientObj;

                _dataGrpcItemsMustBeAddedOrRemoved = true;
            }
            else
            {
                if (clientObjectInfo.ElementId != elementId)
                {
                    Logger.LogError("DataGrpcListItemsManager.AddItem() error, duplicate clientObj " + elementId);
                }
            }
        }