예제 #1
0
 /** <inheritDoc /> */
 public void UpdateReadStructure(int pathIdx, IList <BinaryStructureUpdate> updates)
 {
     lock (this)
     {
         _readerTypeStructure = _readerTypeStructure.Merge(pathIdx, updates);
     }
 }
예제 #2
0
 /** <inheritDoc /> */
 public void UpdateWriteStructure(BinaryStructure exp, int pathIdx, IList <BinaryStructureUpdate> updates)
 {
     lock (this)
     {
         _writerTypeStruct = _writerTypeStruct.Merge(exp, pathIdx, updates);
     }
 }
예제 #3
0
        /** <inheritDoc /> */
        public void UpdateWriteStructure(int pathIdx, IList <BinaryStructureUpdate> updates)
        {
            lock (this)
            {
                if (_writerTypeStruct == null)
                {
                    // Null struct serves as an indication of a binary type that has never been sent to the cluster,
                    // which is important for types without any fields.
                    _writerTypeStruct = BinaryStructure.CreateEmpty();
                }

                _writerTypeStruct = _writerTypeStruct.Merge(pathIdx, updates);
            }
        }