コード例 #1
0
        public IRawPacketProvider Create(IBlockBase blockBase)
        {
            IRawPacketProvider rawPacketProvider = Create();

            rawPacketProvider.Initialize(blockBase);

            return(rawPacketProvider);
        }
コード例 #2
0
        private void DistributeAndSaveFullBlock(RegistryFullBlock transactionsFullBlockMostConfident)
        {
            IRawPacketProvider fullBlockSerializer = _rawPacketProvidersFactory.Create(transactionsFullBlockMostConfident);

            IEnumerable <IKey> storageLayerKeys = _nodesResolutionService.GetStorageNodeKeys(fullBlockSerializer);

            _communicationService.PostMessage(storageLayerKeys, fullBlockSerializer);

            _registryChainDataService.Add(transactionsFullBlockMostConfident);
        }
コード例 #3
0
        public IRawPacketProvider Create()
        {
            if (_rawPacketProviders.Count > 0)
            {
                return(_rawPacketProviders.Pop());
            }
            else
            {
                IRawPacketProvider rawPacketProvider = _applicationContext.Container.Resolve <RawPacketProvider>();

                return(rawPacketProvider);
            }
        }
コード例 #4
0
        private void DistributeAndSaveFullBlock(IEnumerable <RegistryFullBlock> registryFullBlocks)
        {
            if (registryFullBlocks != null)
            {
                foreach (var registryFullBlock in registryFullBlocks)
                {
                    IRawPacketProvider fullBlockSerializer = _rawPacketProvidersFactory.Create(registryFullBlock);

                    IEnumerable <IKey> storageLayerKeys = _nodesResolutionService.GetStorageNodeKeys(fullBlockSerializer);
                    _communicationService.PostMessage(storageLayerKeys, fullBlockSerializer);

                    _registryChainDataService.Add(registryFullBlock);
                }
            }
        }
コード例 #5
0
 public void Utilize(IRawPacketProvider obj)
 {
     _rawPacketProviders.Push(obj);
 }