Esempio n. 1
0
        public const int CacheCheckpointSize = 3;         // cached in remote offset, cached in local, remote max

        public CacheFetcher(string sas, string stream, DirectoryInfo folder, IMemoryStreamManager streamManager)
        {
            StreamName     = stream;
            _streamManager = streamManager;
            var raw = CloudSetup.GetReaderRaw(sas);

            _remote    = raw.Item2;
            _remotePos = raw.Item1;

            var streamDir = Path.Combine(folder.FullName, stream);
            var di        = new DirectoryInfo(streamDir);

            if (!di.Exists)
            {
                di.Create();
            }
            _outputFile       = new FileInfo(Path.Combine(di.FullName, CacheStreamName));
            _outputCheckpoint = new FileInfo(Path.Combine(di.FullName, CachePositionName));

            _outputFile.Refresh();
            _cacheWriter = _outputFile.Open(_outputFile.Exists ? FileMode.Open : FileMode.Create, FileAccess.ReadWrite, FileShare.Read);

            _writer   = new BinaryWriter(_cacheWriter, CacheFormat);
            _cacheChk = new FileCheckpointArrayWriter(_outputCheckpoint, CacheCheckpointSize);
        }
Esempio n. 2
0
 public MessageFetcher(IPageReader remote, ICheckpointReader remotePos, IMemoryStreamManager streamManager, string streamName)
 {
     _remote        = remote;
     _remotePos     = remotePos;
     _streamManager = streamManager;
     StreamName     = streamName;
 }
Esempio n. 3
0
        public static MessageFetcher MessageFetcher(string sas, string stream, IMemoryStreamManager streamManager = null)
        {
            var manager   = streamManager ?? new MemoryStreamFactoryManager();
            var raw       = GetReaderRaw(sas);
            var remote    = raw.Item2;
            var remotePos = raw.Item1;

            return(new MessageFetcher(remote, remotePos, manager, stream));
        }
Esempio n. 4
0
        public MessageFetcher GetFetcher(string stream, IMemoryStreamManager manager = null)
        {
            if (stream == null)
            {
                throw new ArgumentNullException(nameof(stream));
            }
            var raw = FileSetup.GetReaderRaw(_dir, stream);

            return(new MessageFetcher(raw.Item2, raw.Item1, manager ?? MemoryStreamFactoryManager.Instance, stream));
        }
Esempio n. 5
0
 public MessageCopier(
     IPageReader sourceReader,
     ICheckpointReader sourcePos,
     IMemoryStreamManager streamManager,
     IPageWriter targetWriter,
     ICheckpointWriter targetPos)
 {
     _sourceReader  = sourceReader;
     SourcePos      = sourcePos;
     _streamManager = streamManager;
     _targetWriter  = targetWriter;
     TargetPos      = targetPos;
 }
Esempio n. 6
0
        public static MessageCopier CopyToFiles(string sas, string stream, DirectoryInfo target,
                                                IMemoryStreamManager streamManager = null)
        {
            var manager   = streamManager ?? new MemoryStreamFactoryManager();
            var raw       = GetReaderRaw(sas);
            var remote    = raw.Item2;
            var remotePos = raw.Item1;

            var writer = FileSetup.CreateWriterRaw(target, stream);

            var copier = new MessageCopier(remote, remotePos, manager, writer.Item2, writer.Item1);

            copier.Init();
            return(copier);
        }
Esempio n. 7
0
        public CacheManager(IDictionary <string, string> nameAndSas, DirectoryInfo cacheFolder,
                            IMemoryStreamManager manager)
        {
            _cacheFolder = cacheFolder;
            _manager     = manager;

            _fetchers = nameAndSas
                        .Select(p =>
            {
                var fetcher = new CacheFetcher(p.Value, p.Key, _cacheFolder, _manager);
                fetcher.Init();
                return(fetcher);
            })
                        .ToArray();
        }
Esempio n. 8
0
        public MessageFetcher GetFetcher(string stream, IMemoryStreamManager manager)
        {
            var mem = Get(stream);

            return(new MessageFetcher(mem.Pages, mem.Checkpoint, manager ?? MemoryStreamFactoryManager.Instance, stream));
        }
Esempio n. 9
0
 public PagedClient(IClient client, string stream, IMemoryStreamManager manager = null)
 {
     _client = client;
     _stream = stream;
     _manager = manager ?? new MemoryStreamFactory();
 }
Esempio n. 10
0
 public PagedClient(IClient client, string stream, IMemoryStreamManager manager = null)
 {
     _client  = client;
     _stream  = stream;
     _manager = manager ?? new MemoryStreamFactoryManager();
 }
Esempio n. 11
0
 public EncryptionService(IMemoryStreamManager memoryStreamManager, ISymmetricAlgorithmFactory symmetricAlgorithmFactory)
 {
     this.memoryStreamManager       = memoryStreamManager;
     this.symmetricAlgorithmFactory = symmetricAlgorithmFactory;
 }
 public CryptographyProvider(IMemoryStreamManager memoryStreamManager, IHashingProvider hashingProvider)
 {
     _memoryStreamManager = memoryStreamManager;
     _hashingProvider     = hashingProvider;
 }
Esempio n. 13
0
        public MessageFetcher GetFetcher(string streamName, IMemoryStreamManager manager = null)
        {
            var sas = GetReaderSignature(streamName);

            return(CloudSetup.MessageFetcher(sas, streamName, manager ?? MemoryStreamFactoryManager.Instance));
        }
Esempio n. 14
0
 public DefaultMessagePackService(IMemoryStreamManager memoryStreamManager)
 {
     _memoryStreamManager = memoryStreamManager;
 }