示例#1
0
 public ServiceProvidersController(
     IAccountsService accountsService, IExecutionContextManager executionContextManager,
     IDataAccessService dataAccessService, IIdentityAttributesService identityAttributesService, IConsentManagementService consentManagementService,
     IHashCalculationsRepository hashCalculationsRepository, IAssetsService assetsService, IConfigurationService configurationService, ILoggerService loggerService)
 {
     _accountsService           = accountsService;
     _executionContextManager   = executionContextManager;
     _dataAccessService         = dataAccessService;
     _identityAttributesService = identityAttributesService;
     _consentManagementService  = consentManagementService;
     _assetsService             = assetsService;
     _hashCalculation           = hashCalculationsRepository.Create(Globals.DEFAULT_HASH);
     _restApiConfiguration      = configurationService.Get <IRestApiConfiguration>();
     _logger = loggerService.GetLogger(nameof(ServiceProvidersController));
 }
示例#2
0
 public ExecutionContextManager(IServiceProvider serviceProvider,
                                IHubContext <IdentitiesHub> identitiesHubContext,
                                IAssetsService assetsService,
                                IDataAccessService dataAccessService,
                                IIdentityAttributesService identityAttributesService,
                                IWitnessPackagesProviderRepository witnessPackagesProviderRepository,
                                IBlockParsersRepositoriesRepository blockParsersRepositoriesRepository,
                                IConfigurationService configurationService,
                                IGatewayService gatewayService,
                                ITrackingService trackingService,
                                ILoggerService loggerService,
                                ISpValidationsService spValidationsService,
                                IRelationsProofsValidationService relationsProofsValidationService,
                                ISchemeResolverService schemeResolverService,
                                IUniversalProofsPool universalProofsPool,
                                IExternalUpdatersRepository externalUpdatersRepository,
                                IConsentManagementService consentManagementService)
 {
     _accountIdCancellationList          = new Dictionary <long, ICollection <IDisposable> >();
     _serviceProvider                    = serviceProvider;
     _identitiesHubContext               = identitiesHubContext;
     _assetsService                      = assetsService;
     _dataAccessService                  = dataAccessService;
     _identityAttributesService          = identityAttributesService;
     _witnessPackagesProviderRepository  = witnessPackagesProviderRepository;
     _blockParsersRepositoriesRepository = blockParsersRepositoriesRepository;
     _gatewayService                     = gatewayService;
     _trackingService                    = trackingService;
     _loggerService                      = loggerService;
     _spValidationsService               = spValidationsService;
     _logger = loggerService.GetLogger(nameof(ExecutionContextManager));
     _relationsProofsValidationService = relationsProofsValidationService;
     _schemeResolverService            = schemeResolverService;
     _universalProofsPool        = universalProofsPool;
     _externalUpdatersRepository = externalUpdatersRepository;
     _consentManagementService   = consentManagementService;
     _restApiConfiguration       = configurationService.Get <IRestApiConfiguration>();
 }
示例#3
0
        public ServiceProviderUpdater(long accountId,
                                      IStateClientCryptoService clientCryptoService,
                                      IAssetsService assetsService,
                                      ISchemeResolverService schemeResolverService,
                                      IDataAccessService dataAccessService,
                                      IIdentityAttributesService identityAttributesService,
                                      IBlockParsersRepositoriesRepository blockParsersRepositoriesRepository,
                                      IGatewayService gatewayService,
                                      IStateTransactionsService transactionsService,
                                      ISpValidationsService spValidationsService,
                                      IHubContext <IdentitiesHub> idenitiesHubContext,
                                      ILoggerService loggerService,
                                      IConsentManagementService consentManagementService,
                                      IUniversalProofsPool universalProofsPool,
                                      CancellationToken cancellationToken)
        {
            _accountId                          = accountId;
            _clientCryptoService                = clientCryptoService;
            _assetsService                      = assetsService;
            _schemeResolverService              = schemeResolverService;
            _dataAccessService                  = dataAccessService;
            _identityAttributesService          = identityAttributesService;
            _blockParsersRepositoriesRepository = blockParsersRepositoriesRepository;
            _gatewayService                     = gatewayService;
            _transactionsService                = transactionsService;
            _spValidationsService               = spValidationsService;
            _idenitiesHubContext                = idenitiesHubContext;
            _consentManagementService           = consentManagementService;
            _universalProofsPool                = universalProofsPool;
            _cancellationToken                  = cancellationToken;
            _logger = loggerService.GetLogger(nameof(ServiceProviderUpdater));

            _cancellationToken.Register(() =>
            {
                PipeIn?.Complete();
                PipInNotifications?.Complete();
            });

            PipeIn = new ActionBlock <PacketBase>(async p =>
            {
                if (p == null)
                {
                    _logger.Error($"[{_accountId}]: Obtained NULL packet");
                    return;
                }

                _logger.Info($"[{_accountId}]: Obtained {p.GetType().Name} packet");

                try
                {
                    if (p is DocumentSignRecord documentSignRecord)
                    {
                        ProcessDocumentSignRecord(documentSignRecord);
                    }

                    if (p is DocumentRecord documentRecord)
                    {
                        ProcessDocumentRecord(documentRecord);
                    }

                    if (p is DocumentSignRequest documentSignRequest)
                    {
                        ProcessDocumentSignRequest(documentSignRequest);
                    }

                    if (p is EmployeeRegistrationRequest employeeRegistrationRequest)
                    {
                        ProcessEmployeeRegistrationRequest(employeeRegistrationRequest);
                    }

                    if (p is IdentityProofs packet)
                    {
                        await ProcessIdentityProofs(packet).ConfigureAwait(false);
                    }

                    if (p is TransitionCompromisedProofs compromisedProofs)
                    {
                        ProcessCompromisedProofs(new Key32(compromisedProofs.CompromisedKeyImage));
                    }

                    if (p is TransferAsset transferAsset)
                    {
                        ProcessTransferAsset(transferAsset);
                    }

                    if (p is UniversalTransport universalTransport)
                    {
                        await ProcessUniversalTransport(universalTransport).ConfigureAwait(false);
                    }
                }
                catch (Exception ex)
                {
                    _logger.Error($"[{_accountId}]: Failed to process packet {p.GetType().Name}", ex);
                }
            });
        }
示例#4
0
 public ConsentManagementInitializer(IConsentManagementService consentManagementService, IExecutionContextManager executionContextManager)
 {
     _consentManagementService = consentManagementService;
     _executionContextManager  = executionContextManager;
 }
示例#5
0
 public ConsentManagementController(IConsentManagementService consentManagementService, IHubContext <ConsentManagementHub> hubContext)
 {
     _consentManagementService = consentManagementService;
     _hubContext = hubContext;
 }