Ejemplo n.º 1
0
        /// <summary>
        /// Updates the node information from stream.
        /// </summary>
        /// <param name="memPtr">Stream ptr.</param>
        public void UpdateNodeInfo(long memPtr)
        {
            var stream = IgniteManager.Memory.Get(memPtr).GetStream();

            IBinaryRawReader reader = Marshaller.StartUnmarshal(stream, false);

            var node = new ClusterNodeImpl(reader);

            node.Init(this);

            _nodes[node.Id] = node;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ClientClusterNode"/> class.
        /// </summary>
        /// <param name="reader">The reader.</param>
        public ClientClusterNode(IBinaryRawReader reader)
        {
            var id = reader.ReadGuid();

            Debug.Assert(id.HasValue);

            _id = id.Value;

            _attrs        = ClusterNodeImpl.ReadAttributes(reader);
            _addrs        = reader.ReadCollectionAsList <string>().AsReadOnly();
            _hosts        = reader.ReadCollectionAsList <string>().AsReadOnly();
            _order        = reader.ReadLong();
            _isLocal      = reader.ReadBoolean();
            _isDaemon     = reader.ReadBoolean();
            _isClient     = reader.ReadBoolean();
            _consistentId = reader.ReadObject <object>();
            _version      = new IgniteProductVersion(reader);
        }