private void OnDataVerified(DataVerified data) { Notifications.Enqueue(new DataVerifiedNotification(data.Hash, data.Bitfield)); DataMap?.Handle(data); DataGet?.Handle(data); }
private void StartDataStore(string destination, string metaDestination) { RepositoryHooks hooks = new RepositoryHooks { OnDataAllocated = OnDataAllocated, OnDataVerified = OnDataVerified, OnBlockWritten = data => DataGet?.Handle(data), OnBlockRead = data => DataShare?.Handle(data), OnPieceAccepted = data => DataGet?.Handle(data), OnPieceRejected = OnPieceRejected }; DataStore = new RepositoryBuilder() .WithHash(Hash) .WithDestination(destination) .WithMetaDestination(metaDestination) .WithPipeline(Pipeline) .WithFiles(Files) .WithMemory(Memory.AsDataStore()) .WithBufferSize(256 * 1024) .Build(hooks); DataStore.Start(); }
private void StartCoordinator() { MetadataHooks metadata = new MetadataHooks { OnMetadataMeasured = data => MetaGet?.Handle(data), OnMetadataPieceReceived = OnMetadataPieceReceived, OnMetadataRequestSent = OnMetadataRequestSent }; CoordinatorHooks hooks = new CoordinatorHooks { OnPeerConnected = OnPeerConnected, OnPeerDisconnected = OnPeerDisconnected, OnBitfieldChanged = OnPeerBitfieldChanged, OnStatusChanged = OnPeerStatusChanged, OnBlockReceived = data => DataGet?.Handle(data), OnMessageRequested = data => Sender?.Send(data.Peer, data.Message), OnKeepAliveRequested = data => Sender?.SendKeepAlive(data.Peer) }; Coordinator = new CoordinatorBuilder() .WithHash(Hash) .WithMemory(Memory) .WithPipeline(Pipeline) .WithPlugin(new MetadataPlugin(metadata)) .Build(hooks); Coordinator.Start(); }
private void OnDataVerified(DataVerified data) { Notifications.Enqueue(new DataVerifiedNotification(data.Hash, data.Bitfield)); DataMap?.Handle(data); DataGet?.Handle(data); DataShare?.Handle(data); Coordinator?.Handle(data); TrackerGet.Announce(Hash); }
public async Task <IActionResult> Index(DataGet data) { if (ModelState.IsValid) { _databaseContext.Add(data); await _databaseContext.SaveChangesAsync(); return(RedirectToAction("Index")); } return(View(data)); }
private void StartDataMap() { OmnibusHooks hooks = new OmnibusHooks { OnBlockReserved = data => DataGet?.Handle(data), OnPieceReady = data => DataGet?.Handle(data), OnPieceCompleted = OnPieceCompleted, OnThresholdReached = data => DataGet?.Handle(data), OnDataCompleted = OnDataCompleted, OnDataChanged = OnDataChanged }; DataMap = new OmnibusBuilder() .WithHash(Hash) .WithPipeline(Pipeline) .WithSchedulerThreshold(160) .WithPoolSize(512) .Build(hooks); DataMap.Start(); }
private void OnPieceRejected(PieceRejected data) { Notifications.Enqueue(new PieceRejectedNotification(data.Hash, data.Piece)); DataGet?.Handle(data); }
private void OnPieceAccepted(PieceAccepted data) { DataGet?.Handle(data); }
private void OnBlockWritten(BlockWritten data) { DataGet?.Handle(data); }