예제 #1
0
 public AccountsService(IDataAccessService dataAccessService, IExecutionContextManager executionContextManager, IIdentityAttributesService identityAttributesService, IGatewayService gatewayService)
 {
     _dataAccessService         = dataAccessService;
     _executionContextManager   = executionContextManager;
     _identityAttributesService = identityAttributesService;
     _gatewayService            = gatewayService;
 }
예제 #2
0
        public ServiceProviderUpdater(ulong accountId, IStateClientCryptoService clientCryptoService, IAssetsService assetsService, IDataAccessService dataAccessService, IIdentityAttributesService identityAttributesService, IBlockParsersRepositoriesRepository blockParsersRepositoriesRepository, IGatewayService gatewayService, IStateTransactionsService transactionsService, IHubContext <IdentitiesHub> idenitiesHubContext, IAppConfig appConfig, ILoggerService loggerService)
        {
            _accountId                          = accountId;
            _clientCryptoService                = clientCryptoService;
            _assetsService                      = assetsService;
            _dataAccessService                  = dataAccessService;
            _identityAttributesService          = identityAttributesService;
            _blockParsersRepositoriesRepository = blockParsersRepositoriesRepository;
            _gatewayService                     = gatewayService;
            _transactionsService                = transactionsService;
            _idenitiesHubContext                = idenitiesHubContext;
            _appConfig                          = appConfig;
            _logger = loggerService.GetLogger(nameof(ServiceProviderUpdater));

            PipeIn = new ActionBlock <PacketBase>(p =>
            {
                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 OnboardingRequest packet)
                {
                    ProcessOnboarding(packet);
                }

                if (p is TransitionAuthenticationProofs transitionAuthentication)
                {
                    ProcessAuthentication(transitionAuthentication);
                }

                if (p is TransitionCompromisedProofs compromisedProofs)
                {
                    ProcessCompromisedProofs(compromisedProofs);
                }

                if (p is TransferAsset transferAsset)
                {
                    ProcessTransferAsset(transferAsset);
                }
            });
        }
예제 #3
0
 public ServiceProvidersController(IAccountsService accountsService, IExecutionContextManager executionContextManager, IDataAccessService dataAccessService, IIdentityAttributesService identityAttributesService, IHashCalculationsRepository hashCalculationsRepository, IAssetsService assetsService, IOptions <AppSettings> appSettings)
 {
     _accountsService           = accountsService;
     _executionContextManager   = executionContextManager;
     _dataAccessService         = dataAccessService;
     _identityAttributesService = identityAttributesService;
     _assetsService             = assetsService;
     _appSettings     = appSettings.Value;
     _hashCalculation = hashCalculationsRepository.Create(Globals.DEFAULT_HASH);
 }
예제 #4
0
 public UserController(IDocumentSignatureVerifier documentSignatureVerifier, IAccountsService accountsService, IExecutionContextManager executionContextManager, IAssetsService assetsService, IIdentityAttributesService identityAttributesService, IDataAccessService externalDataAccessService, IGatewayService gatewayService, IConfigurationService configurationService, IHubContext <IdentitiesHub> idenitiesHubContext)
 {
     _documentSignatureVerifier = documentSignatureVerifier;
     _accountsService           = accountsService;
     _executionContextManager   = executionContextManager;
     _assetsService             = assetsService;
     _identityAttributesService = identityAttributesService;
     _dataAccessService         = externalDataAccessService;
     _gatewayService            = gatewayService;
     _idenitiesHubContext       = idenitiesHubContext;
     _portalConfiguration       = configurationService.Get <IPortalConfiguration>();
 }
예제 #5
0
 public SpValidationsService(
     IIdentityAttributesService identityAttributesService,
     IGatewayService gatewayService,
     IAssetsService assetsService,
     ILoggerService loggerService,
     IDataAccessService dataAccessService)
 {
     _identityAttributesService = identityAttributesService;
     _gatewayService            = gatewayService;
     _assetsService             = assetsService;
     _dataAccessService         = dataAccessService;
     _logger = loggerService.GetLogger(nameof(SpValidationsService));
 }
예제 #6
0
 public ExecutionContextManager(IHubContext <IdentitiesHub> identitiesHubContext, IAssetsService assetsService, IDataAccessService dataAccessService, IIdentityAttributesService identityAttributesService, IBlockParsersRepositoriesRepository blockParsersRepositoriesRepository, IAppConfig appConfig, IGatewayService gatewayService, ITrackingService trackingService, ILoggerService loggerService, IRelationsProofsValidationService relationsProofsValidationService)
 {
     _accountIdCancellationList          = new Dictionary <ulong, ICollection <IDisposable> >();
     _identitiesHubContext               = identitiesHubContext;
     _assetsService                      = assetsService;
     _dataAccessService                  = dataAccessService;
     _identityAttributesService          = identityAttributesService;
     _blockParsersRepositoriesRepository = blockParsersRepositoriesRepository;
     _appConfig       = appConfig;
     _gatewayService  = gatewayService;
     _trackingService = trackingService;
     _loggerService   = loggerService;
     _relationsProofsValidationService = relationsProofsValidationService;
 }
예제 #7
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));
 }
예제 #8
0
 public IdentityProviderController(
     IExecutionContextManager executionContextManager,
     IAssetsService assetsService,
     IDataAccessService dataAccessService,
     IIdentityAttributesService identityAttributesService,
     IAccountsServiceEx accountsService,
     ITranslatorsRepository translatorsRepository,
     IHubContext <IdentitiesHub> idenitiesHubContext,
     ILoggerService loggerService)
 {
     _executionContextManager   = executionContextManager;
     _assetsService             = assetsService;
     _dataAccessService         = dataAccessService;
     _identityAttributesService = identityAttributesService;
     _accountsService           = accountsService;
     _translatorsRepository     = translatorsRepository;
     _idenitiesHubContext       = idenitiesHubContext;
     _logger = loggerService.GetLogger(nameof(IdentityProviderController));
 }
예제 #9
0
 public IdentityProviderController(
     IExecutionContextManager executionContextManager,
     IAssetsService assetsService,
     IDataAccessService dataAccessService,
     IDataAccessService externalDataAccessService,
     IIdentityAttributesService identityAttributesService,
     IFacesService facesService,
     IAccountsService accountsService,
     IConfigurationService configurationService,
     IHubContext <IdentitiesHub> hubContext)
 {
     _dataAccessService         = dataAccessService;
     _executionContextManager   = executionContextManager;
     _assetsService             = assetsService;
     _externalDataAccessService = externalDataAccessService;
     _identityAttributesService = identityAttributesService;
     _accountsService           = accountsService;
     _hubContext          = hubContext;
     _portalConfiguration = configurationService.Get <IPortalConfiguration>();
 }
예제 #10
0
 public ElectionCommitteeService(
     IDataAccessService dataAccessService,
     IAccountsService accountsService,
     IAssetsService assetsService,
     IIdentityAttributesService identityAttributesService,
     IIdentityKeyProvidersRegistry identityKeyProvidersRegistry,
     ITranslatorsRepository translatorsRepository,
     ISchemeResolverService schemeResolverService,
     IExecutionContextManager executionContextManager,
     ILoggerService loggerService)
 {
     _dataAccessService         = dataAccessService;
     _accountsService           = accountsService;
     _assetsService             = assetsService;
     _identityAttributesService = identityAttributesService;
     _identityKeyProvider       = identityKeyProvidersRegistry.GetInstance();
     _translatorsRepository     = translatorsRepository;
     _schemeResolverService     = schemeResolverService;
     _executionContextManager   = executionContextManager;
     _logger = loggerService.GetLogger(nameof(ElectionCommitteeService));
 }
예제 #11
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>();
 }
예제 #12
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);
                }
            });
        }
예제 #13
0
 public SpUsersController(IAccountsService accountsService, IDataAccessService dataAccessService, IIdentityAttributesService identityAttributesService)
 {
     _accountsService           = accountsService;
     _dataAccessService         = dataAccessService;
     _identityAttributesService = identityAttributesService;
 }