/// <summary>
 /// Initializes a new instance of the <see cref="CacheMetricsImpl"/> class.
 /// </summary>
 /// <param name="reader">The reader.</param>
 public CacheMetricsImpl(IPortableRawReader reader)
 {
     CacheGets = reader.ReadLong();
     CachePuts = reader.ReadLong();
     CacheHits = reader.ReadLong();
     CacheMisses = reader.ReadLong();
     CacheTxCommits = reader.ReadLong();
     CacheTxRollbacks = reader.ReadLong();
     CacheEvictions = reader.ReadLong();
     CacheRemovals = reader.ReadLong();
     AveragePutTime = reader.ReadFloat();
     AverageGetTime = reader.ReadFloat();
     AverageRemoveTime = reader.ReadFloat();
     AverageTxCommitTime = reader.ReadFloat();
     AverageTxRollbackTime = reader.ReadFloat();
     CacheName = reader.ReadString();
     OverflowSize = reader.ReadLong();
     OffHeapEntriesCount = reader.ReadLong();
     OffHeapAllocatedSize = reader.ReadLong();
     Size = reader.ReadInt();
     KeySize = reader.ReadInt();
     IsEmpty = reader.ReadBoolean();
     DhtEvictQueueCurrentSize = reader.ReadInt();
     TxThreadMapSize = reader.ReadInt();
     TxXidMapSize = reader.ReadInt();
     TxCommitQueueSize = reader.ReadInt();
     TxPrepareQueueSize = reader.ReadInt();
     TxStartVersionCountsSize = reader.ReadInt();
     TxCommittedVersionsSize = reader.ReadInt();
     TxRolledbackVersionsSize = reader.ReadInt();
     TxDhtThreadMapSize = reader.ReadInt();
     TxDhtXidMapSize = reader.ReadInt();
     TxDhtCommitQueueSize = reader.ReadInt();
     TxDhtPrepareQueueSize = reader.ReadInt();
     TxDhtStartVersionCountsSize = reader.ReadInt();
     TxDhtCommittedVersionsSize = reader.ReadInt();
     TxDhtRolledbackVersionsSize = reader.ReadInt();
     IsWriteBehindEnabled = reader.ReadBoolean();
     WriteBehindFlushSize = reader.ReadInt();
     WriteBehindFlushThreadCount = reader.ReadInt();
     WriteBehindFlushFrequency = reader.ReadLong();
     WriteBehindStoreBatchSize = reader.ReadInt();
     WriteBehindTotalCriticalOverflowCount = reader.ReadInt();
     WriteBehindCriticalOverflowCount = reader.ReadInt();
     WriteBehindErrorRetryCount = reader.ReadInt();
     WriteBehindBufferSize = reader.ReadInt();
     KeyType = reader.ReadString();
     ValueType = reader.ReadString();
     IsStoreByValue = reader.ReadBoolean();
     IsStatisticsEnabled = reader.ReadBoolean();
     IsManagementEnabled = reader.ReadBoolean();
     IsReadThrough = reader.ReadBoolean();
     IsWriteThrough = reader.ReadBoolean();
     CacheHitPercentage = reader.ReadFloat();
     CacheMissPercentage = reader.ReadFloat();
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="CacheMetricsImpl"/> class.
 /// </summary>
 /// <param name="reader">The reader.</param>
 public CacheMetricsImpl(IPortableRawReader reader)
 {
     CacheGets             = reader.ReadLong();
     CachePuts             = reader.ReadLong();
     CacheHits             = reader.ReadLong();
     CacheMisses           = reader.ReadLong();
     CacheTxCommits        = reader.ReadLong();
     CacheTxRollbacks      = reader.ReadLong();
     CacheEvictions        = reader.ReadLong();
     CacheRemovals         = reader.ReadLong();
     AveragePutTime        = reader.ReadFloat();
     AverageGetTime        = reader.ReadFloat();
     AverageRemoveTime     = reader.ReadFloat();
     AverageTxCommitTime   = reader.ReadFloat();
     AverageTxRollbackTime = reader.ReadFloat();
     CacheName             = reader.ReadString();
     OverflowSize          = reader.ReadLong();
     OffHeapEntriesCount   = reader.ReadLong();
     OffHeapAllocatedSize  = reader.ReadLong();
     Size    = reader.ReadInt();
     KeySize = reader.ReadInt();
     IsEmpty = reader.ReadBoolean();
     DhtEvictQueueCurrentSize              = reader.ReadInt();
     TxThreadMapSize                       = reader.ReadInt();
     TxXidMapSize                          = reader.ReadInt();
     TxCommitQueueSize                     = reader.ReadInt();
     TxPrepareQueueSize                    = reader.ReadInt();
     TxStartVersionCountsSize              = reader.ReadInt();
     TxCommittedVersionsSize               = reader.ReadInt();
     TxRolledbackVersionsSize              = reader.ReadInt();
     TxDhtThreadMapSize                    = reader.ReadInt();
     TxDhtXidMapSize                       = reader.ReadInt();
     TxDhtCommitQueueSize                  = reader.ReadInt();
     TxDhtPrepareQueueSize                 = reader.ReadInt();
     TxDhtStartVersionCountsSize           = reader.ReadInt();
     TxDhtCommittedVersionsSize            = reader.ReadInt();
     TxDhtRolledbackVersionsSize           = reader.ReadInt();
     IsWriteBehindEnabled                  = reader.ReadBoolean();
     WriteBehindFlushSize                  = reader.ReadInt();
     WriteBehindFlushThreadCount           = reader.ReadInt();
     WriteBehindFlushFrequency             = reader.ReadLong();
     WriteBehindStoreBatchSize             = reader.ReadInt();
     WriteBehindTotalCriticalOverflowCount = reader.ReadInt();
     WriteBehindCriticalOverflowCount      = reader.ReadInt();
     WriteBehindErrorRetryCount            = reader.ReadInt();
     WriteBehindBufferSize                 = reader.ReadInt();
     KeyType             = reader.ReadString();
     ValueType           = reader.ReadString();
     IsStoreByValue      = reader.ReadBoolean();
     IsStatisticsEnabled = reader.ReadBoolean();
     IsManagementEnabled = reader.ReadBoolean();
     IsReadThrough       = reader.ReadBoolean();
     IsWriteThrough      = reader.ReadBoolean();
     CacheHitPercentage  = reader.ReadFloat();
     CacheMissPercentage = reader.ReadFloat();
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="ClusterMetricsImpl"/> class.
        /// </summary>
        /// <param name="reader">The reader.</param>
        public ClusterMetricsImpl(IPortableRawReader reader)
        {
            LastUpdateTimeRaw = reader.ReadLong();

            DateTime?lastUpdateTime0 = reader.ReadDate();

            LastUpdateTime     = lastUpdateTime0 ?? default(DateTime);
            MaximumActiveJobs  = reader.ReadInt();
            CurrentActiveJobs  = reader.ReadInt();
            AverageActiveJobs  = reader.ReadFloat();
            MaximumWaitingJobs = reader.ReadInt();

            CurrentWaitingJobs  = reader.ReadInt();
            AverageWaitingJobs  = reader.ReadFloat();
            MaximumRejectedJobs = reader.ReadInt();
            CurrentRejectedJobs = reader.ReadInt();
            AverageRejectedJobs = reader.ReadFloat();

            TotalRejectedJobs    = reader.ReadInt();
            MaximumCancelledJobs = reader.ReadInt();
            CurrentCancelledJobs = reader.ReadInt();
            AverageCancelledJobs = reader.ReadFloat();
            TotalCancelledJobs   = reader.ReadInt();

            TotalExecutedJobs     = reader.ReadInt();
            MaximumJobWaitTime    = reader.ReadLong();
            CurrentJobWaitTime    = reader.ReadLong();
            AverageJobWaitTime    = reader.ReadDouble();
            MaximumJobExecuteTime = reader.ReadLong();

            CurrentJobExecuteTime = reader.ReadLong();
            AverageJobExecuteTime = reader.ReadDouble();
            TotalExecutedTasks    = reader.ReadInt();
            TotalIdleTime         = reader.ReadLong();
            CurrentIdleTime       = reader.ReadLong();

            TotalCpus             = reader.ReadInt();
            CurrentCpuLoad        = reader.ReadDouble();
            AverageCpuLoad        = reader.ReadDouble();
            CurrentGcCpuLoad      = reader.ReadDouble();
            HeapMemoryInitialized = reader.ReadLong();

            HeapMemoryUsed           = reader.ReadLong();
            HeapMemoryCommitted      = reader.ReadLong();
            HeapMemoryMaximum        = reader.ReadLong();
            HeapMemoryTotal          = reader.ReadLong();
            NonHeapMemoryInitialized = reader.ReadLong();

            NonHeapMemoryUsed      = reader.ReadLong();
            NonHeapMemoryCommitted = reader.ReadLong();
            NonHeapMemoryMaximum   = reader.ReadLong();
            NonHeapMemoryTotal     = reader.ReadLong();
            UpTime = reader.ReadLong();

            DateTime?startTime0 = reader.ReadDate();

            StartTime = startTime0 ?? default(DateTime);

            DateTime?nodeStartTime0 = reader.ReadDate();

            NodeStartTime = nodeStartTime0 ?? default(DateTime);

            CurrentThreadCount       = reader.ReadInt();
            MaximumThreadCount       = reader.ReadInt();
            TotalStartedThreadCount  = reader.ReadLong();
            CurrentDaemonThreadCount = reader.ReadInt();
            LastDataVersion          = reader.ReadLong();

            SentMessagesCount         = reader.ReadInt();
            SentBytesCount            = reader.ReadLong();
            ReceivedMessagesCount     = reader.ReadInt();
            ReceivedBytesCount        = reader.ReadLong();
            OutboundMessagesQueueSize = reader.ReadInt();

            TotalNodes = reader.ReadInt();
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="ClusterMetricsImpl"/> class.
        /// </summary>
        /// <param name="reader">The reader.</param>
        public ClusterMetricsImpl(IPortableRawReader reader)
        {
            LastUpdateTimeRaw = reader.ReadLong();

            DateTime? lastUpdateTime0 = reader.ReadDate();

            LastUpdateTime = lastUpdateTime0 ?? default(DateTime);
            MaximumActiveJobs = reader.ReadInt();
            CurrentActiveJobs = reader.ReadInt();
            AverageActiveJobs = reader.ReadFloat();
            MaximumWaitingJobs = reader.ReadInt();

            CurrentWaitingJobs = reader.ReadInt();
            AverageWaitingJobs = reader.ReadFloat();
            MaximumRejectedJobs = reader.ReadInt();
            CurrentRejectedJobs = reader.ReadInt();
            AverageRejectedJobs = reader.ReadFloat();

            TotalRejectedJobs = reader.ReadInt();
            MaximumCancelledJobs = reader.ReadInt();
            CurrentCancelledJobs = reader.ReadInt();
            AverageCancelledJobs = reader.ReadFloat();
            TotalCancelledJobs = reader.ReadInt();

            TotalExecutedJobs = reader.ReadInt();
            MaximumJobWaitTime = reader.ReadLong();
            CurrentJobWaitTime = reader.ReadLong();
            AverageJobWaitTime = reader.ReadDouble();
            MaximumJobExecuteTime = reader.ReadLong();

            CurrentJobExecuteTime = reader.ReadLong();
            AverageJobExecuteTime = reader.ReadDouble();
            TotalExecutedTasks = reader.ReadInt();
            TotalIdleTime = reader.ReadLong();
            CurrentIdleTime = reader.ReadLong();

            TotalCpus = reader.ReadInt();
            CurrentCpuLoad = reader.ReadDouble();
            AverageCpuLoad = reader.ReadDouble();
            CurrentGcCpuLoad = reader.ReadDouble();
            HeapMemoryInitialized = reader.ReadLong();

            HeapMemoryUsed = reader.ReadLong();
            HeapMemoryCommitted = reader.ReadLong();
            HeapMemoryMaximum = reader.ReadLong();
            HeapMemoryTotal = reader.ReadLong();
            NonHeapMemoryInitialized = reader.ReadLong();

            NonHeapMemoryUsed = reader.ReadLong();
            NonHeapMemoryCommitted = reader.ReadLong();
            NonHeapMemoryMaximum = reader.ReadLong();
            NonHeapMemoryTotal = reader.ReadLong();
            UpTime = reader.ReadLong();

            DateTime? startTime0 = reader.ReadDate();

            StartTime = startTime0 ?? default(DateTime);

            DateTime? nodeStartTime0 = reader.ReadDate();

            NodeStartTime = nodeStartTime0 ?? default(DateTime);

            CurrentThreadCount = reader.ReadInt();
            MaximumThreadCount = reader.ReadInt();
            TotalStartedThreadCount = reader.ReadLong();
            CurrentDaemonThreadCount = reader.ReadInt();
            LastDataVersion = reader.ReadLong();

            SentMessagesCount = reader.ReadInt();
            SentBytesCount = reader.ReadLong();
            ReceivedMessagesCount = reader.ReadInt();
            ReceivedBytesCount = reader.ReadLong();
            OutboundMessagesQueueSize = reader.ReadInt();

            TotalNodes = reader.ReadInt();
        }