public WalletLinker(IWalletLinkingRequestsRepository requestsRepository,
                     ILogFactory logFactory,
                     int linkCodeLength,
                     IPrivateBlockchainFacadeClient pbfClient,
                     ISettingsService settingsService,
                     IRabbitPublisher <WalletLinkingStatusChangeRequestedEvent> requestedPublisher,
                     IRabbitPublisher <WalletLinkingStatusChangeCompletedEvent> completedPublisher,
                     IRabbitPublisher <WalletLinkingStatusChangeFinalizedEvent> finalizedPublisher,
                     ISignatureValidator signatureValidator,
                     IWalletLinkingRequestsCounterRepository countersRepository,
                     ICustomersService customersService,
                     IWalletManagementClient walletManagementClient,
                     ITransactionRunner transactionRunner)
 {
     _requestsRepository     = requestsRepository;
     _linkCodeLength         = linkCodeLength;
     _pbfClient              = pbfClient;
     _settingsService        = settingsService;
     _requestedPublisher     = requestedPublisher;
     _completedPublisher     = completedPublisher;
     _signatureValidator     = signatureValidator;
     _countersRepository     = countersRepository;
     _customersService       = customersService;
     _walletManagementClient = walletManagementClient;
     _transactionRunner      = transactionRunner;
     _finalizedPublisher     = finalizedPublisher;
     _log = logFactory.CreateLog(this);
 }
Example #2
0
 /// <summary>
 /// Creates a new instance of the <see cref="HmacAuthenticator"/> class.
 /// </summary>
 /// <param name="validator">Validator to use</param>
 /// <param name="claimsProvider">Claims provider to process the request</param>
 /// <param name="nameClaimType">Name of the name claim type</param>
 /// <param name="roleNameType">Name of the role claim type</param>
 public HmacAuthenticator(ISignatureValidator validator, IRequestClaimsProvider claimsProvider, string nameClaimType, string roleNameType)
 {
     this.validator      = validator;
     this.claimsProvider = claimsProvider;
     this.nameClaimType  = nameClaimType;
     this.roleNameType   = roleNameType;
 }
Example #3
0
        public static void onPurchaseStateChanged(Context context, string signedData, string signature)
        {
            Log.Info(LOG_TAG, "Purchase state changed");

            if (TextUtils.IsEmpty(signedData))
            {
                Log.Warn(LOG_TAG, "Signed data is empty");
                return;
            }

            if (!debug)
            {
                if (TextUtils.IsEmpty(signature))
                {
                    Log.Warn(LOG_TAG, "Empty signature requires debug mode");
                    return;
                }
                ISignatureValidator validator = BillingController.validator != null ? BillingController.validator
                       : new DefaultSignatureValidator(BillingController.configuration);
                if (!validator.validate(signedData, signature))
                {
                    Log.Warn(LOG_TAG, "Signature does not match data.");
                    return;
                }
            }

            //List<Transaction> purchases;
            //try {
            //TO DO Json object?
            //JsonObject jObject = new JsonObject(signedData);
            //if (!verifyNonce(jObject)) {
            //    Log.Warn(LOG_TAG, "Invalid nonce");
            //    return;
            //}
            //purchases = parsePurchases(jObject);
            //} catch (Exception e) {
            //    Log.Error(LOG_TAG, "JSON exception: ", e);
            //    return;
            //}

            //List<String> confirmations = new List<String>();
            //foreach (Transaction p in purchases) {
            //    if (p.notificationId != null && automaticConfirmations.Contains(p.productId)) {
            //        confirmations.Add(p.notificationId);
            //    } else {
            //        // TODO: Discriminate between purchases, cancellations and
            //        // refunds.
            //        BillingController bc = new BillingController();
            //        bc.addManualConfirmation(p.productId, p.notificationId);
            //    }
            //    storeTransaction(context, p);
            //    notifyPurchaseStateChange(p.productId, p.purchaseState);
            //}
            //if (confirmations.Count() != 0) {
            //    string[] notifyIds = confirmations.ToArray();
            //        //(new String[confirmations.Count()]);
            //    confirmNotifications(context, notifyIds);
            //}
        }
Example #4
0
        public RequestPaymentCommandValidator(ISignatureValidator signatureValidator, IMerchantRepository merchantRepository, IPaymentRepository paymentRepository)
        {
            _signatureValidator = signatureValidator;
            _merchantRepository = merchantRepository;
            _paymentRepository  = paymentRepository;

            ConfigureValidations();
        }
Example #5
0
        public RequestPaymentValidatorTests()
        {
            _merchantRepository = Substitute.For <IMerchantRepository>();
            _paymentrepository  = Substitute.For <IPaymentRepository>();
            _signatureValidator = Substitute.For <ISignatureValidator>();

            _validator = new RequestPaymentCommandValidator(_signatureValidator, _merchantRepository, _paymentrepository);
        }
 public HttpPostReleaseTeksCommand(IReleaseTeksValidator keyValidator, ISignatureValidator signatureValidator, ITekWriter writer, WorkflowDbContext dbContextProvider, IJsonSerializer jsonSerializer, ILogger <HttpPostReleaseTeksCommand> logger)
 {
     _KeyValidator       = keyValidator ?? throw new ArgumentNullException(nameof(keyValidator));
     _SignatureValidator = signatureValidator ?? throw new ArgumentNullException(nameof(signatureValidator));
     _Writer             = writer ?? throw new ArgumentNullException(nameof(writer));
     _DbContextProvider  = dbContextProvider ?? throw new ArgumentNullException(nameof(dbContextProvider));
     _JsonSerializer     = jsonSerializer ?? throw new ArgumentNullException(nameof(jsonSerializer));
     _Logger             = logger ?? throw new ArgumentNullException(nameof(logger));
 }
 /// <summary>
 /// Instantiate's a new package signatures validator.
 /// </summary>
 /// <param name="httpClient">The HTTP client used to download packages.</param>
 /// <param name="validatorStateService">The service used to retrieve and persist this validator's state.</param>
 /// <param name="packageSigningStateService">The service used to retrieve and persist package signing state.</param>
 /// <param name="logger">The logger that should be used.</param>
 public SignatureValidationMessageHandler(
     IPackageDownloader packageDownloader,
     IValidatorStateService validatorStateService,
     ISignatureValidator signatureValidator,
     ILogger <SignatureValidationMessageHandler> logger)
 {
     _packageDownloader     = packageDownloader ?? throw new ArgumentNullException(nameof(packageDownloader));
     _validatorStateService = validatorStateService ?? throw new ArgumentNullException(nameof(validatorStateService));
     _signatureValidator    = signatureValidator ?? throw new ArgumentNullException(nameof(signatureValidator));
     _logger = logger ?? throw new ArgumentNullException(nameof(logger));
 }
Example #8
0
 /// <summary>
 /// Instantiate's a new package signatures validator.
 /// </summary>
 /// <param name="httpClient">The HTTP client used to download packages.</param>
 /// <param name="validatorStateService">The service used to retrieve and persist this validator's state.</param>
 /// <param name="packageSigningStateService">The service used to retrieve and persist package signing state.</param>
 /// <param name="logger">The logger that should be used.</param>
 public SignatureValidationMessageHandler(
     HttpClient httpClient,
     IValidatorStateService validatorStateService,
     ISignatureValidator signatureValidator,
     ILogger <SignatureValidationMessageHandler> logger)
 {
     _httpClient            = httpClient ?? throw new ArgumentNullException(nameof(httpClient));
     _validatorStateService = validatorStateService ?? throw new ArgumentNullException(nameof(validatorStateService));
     _signatureValidator    = signatureValidator ?? throw new ArgumentNullException(nameof(signatureValidator));
     _logger = logger ?? throw new ArgumentNullException(nameof(logger));
 }
Example #9
0
 public HttpPostReleaseTeksCommand(
     IReleaseTeksValidator keyValidator,
     ISignatureValidator signatureValidator,
     ITekWriter writer,
     WorkflowDbContext dbContextProvider)
 {
     _KeyValidator       = keyValidator;
     _SignatureValidator = signatureValidator;
     _Writer             = writer;
     _DbContextProvider  = dbContextProvider;
 }
Example #10
0
        //ILogger<HttpPostReleaseTeksCommand2> logger

        public HttpPostReleaseTeksCommand2(ILogger <HttpPostReleaseTeksCommand2> logger, IWorkflowConfig workflowConfig,
                                           WorkflowDbContext dbContextProvider, IPostTeksValidator keyValidator, ITekWriter writer,
                                           IJsonSerializer jsonSerializer, ISignatureValidator signatureValidator,
                                           ITekListWorkflowFilter tekListWorkflowFilter, IUtcDateTimeProvider dateTimeProvider)
        {
            _Logger                = logger ?? throw new ArgumentNullException(nameof(logger));
            _WorkflowConfig        = workflowConfig ?? throw new ArgumentNullException(nameof(workflowConfig));
            _DbContextProvider     = dbContextProvider ?? throw new ArgumentNullException(nameof(dbContextProvider));
            _KeyValidator          = keyValidator ?? throw new ArgumentNullException(nameof(keyValidator));
            _Writer                = writer ?? throw new ArgumentNullException(nameof(writer));
            _JsonSerializer        = jsonSerializer ?? throw new ArgumentNullException(nameof(jsonSerializer));
            _SignatureValidator    = signatureValidator ?? throw new ArgumentNullException(nameof(signatureValidator));
            _TekListWorkflowFilter = tekListWorkflowFilter ?? throw new ArgumentNullException(nameof(tekListWorkflowFilter));
            _DateTimeProvider      = dateTimeProvider ?? throw new ArgumentNullException(nameof(dateTimeProvider));
        }
Example #11
0
        public Shell(ILog logger,
                     string addressShell,
                     string addressIOPub,
                     ISignatureValidator signatureValidator,
                     Dictionary <string, IShellMessageHandler> messageHandlers)
        {
            this.logger             = logger;
            this.addressShell       = addressShell;
            this.addressIOPub       = addressIOPub;
            this.signatureValidator = signatureValidator;
            this.messageHandlers    = messageHandlers;

            this.server      = new RouterSocket();
            this.ioPubSocket = new PublisherSocket();
            this.stopEvent   = new ManualResetEventSlim();
        }
        public ApplicationSubmissionValidator(ISignatureValidator signatureValidator, IEmployerValidatorInitial employerValidatorInitial, IEmployerValidatorRenewal employerValidatorRenewal, IHourlyWageInfoValidator hourlyWageInfoValidator, IPieceRateWageInfoValidator pieceRateWageInfoValidator, IWorkSiteValidatorInitial workSiteValidatorInitial, IWorkSiteValidatorRenewal workSiteValidatorRenewal, IWIOAValidator wioaValidator)
        {
            // required
            RuleFor(a => a.EIN).NotEmpty();
            RuleFor(a => a.ApplicationTypeId).NotNull().InclusiveBetween(ResponseIds.ApplicationType.Initial, ResponseIds.ApplicationType.Renewal);
            RuleFor(a => a.Signature).NotNull().SetValidator(signatureValidator);
            RuleFor(a => a.ApplicationTypeId).NotNull().GreaterThanOrEqualTo(1).LessThanOrEqualTo(2);

            RuleFor(a => a.HasPreviousApplication).NotNull();
            RuleFor(a => a.HasPreviousCertificate).NotNull();
            RuleFor(a => a.EstablishmentType).NotNull().Must(et => et.Any() && !et.Any(x => x.EstablishmentTypeId < ResponseIds.EstablishmentType.WorkCenter) && !et.Any(x => x.EstablishmentTypeId > ResponseIds.EstablishmentType.BusinessEstablishment));
            RuleFor(a => a.ContactFirstName).NotEmpty();
            RuleFor(a => a.ContactLastName).NotEmpty();
            RuleFor(a => a.ContactPhone).NotEmpty();
            RuleFor(a => a.ContactEmail).NotEmpty();
            RuleFor(a => a.PayTypeId).NotEmpty().InclusiveBetween(ResponseIds.PayType.Hourly, ResponseIds.PayType.Both).When(a => a.ApplicationTypeId == ResponseIds.ApplicationType.Renewal);
            RuleFor(a => a.TotalNumWorkSites).NotNull();
            RuleFor(a => a.Employer).NotNull().SetValidator(employerValidatorInitial).When(a => a.ApplicationTypeId == ResponseIds.ApplicationType.Initial);
            RuleFor(a => a.Employer).NotNull().SetValidator(employerValidatorRenewal).When(a => a.ApplicationTypeId == ResponseIds.ApplicationType.Renewal);
            RuleFor(a => a.WorkSites).NotNull().Must(w => w.Any()).SetCollectionValidator(workSiteValidatorInitial).When(a => a.ApplicationTypeId == ResponseIds.ApplicationType.Initial);
            RuleFor(a => a.WorkSites).NotNull().Must(w => w.Any()).SetCollectionValidator(workSiteValidatorRenewal).When(a => a.ApplicationTypeId == ResponseIds.ApplicationType.Renewal);
            RuleFor(a => a.WIOA).NotNull().SetValidator(wioaValidator);

            // conditional required
            RuleFor(a => a.PreviousCertificateNumber)
            .NotEmpty()
            .When(a => a.HasPreviousCertificate.GetValueOrDefault());

            RuleFor(a => a.HourlyWageInfo)
            .NotNull()
            .SetValidator(hourlyWageInfoValidator)
            .When(x => x.PayTypeId == ResponseIds.PayType.Hourly || x.PayTypeId == ResponseIds.PayType.Both);

            RuleFor(a => a.PieceRateWageInfo)
            .NotNull()
            .SetValidator(pieceRateWageInfoValidator)
            .When(x => x.PayTypeId == ResponseIds.PayType.PieceRate || x.PayTypeId == ResponseIds.PayType.Both);

            // Other validation
            RuleFor(a => a.ContactEmail).EmailAddress();
            RuleFor(a => a.WorkSites.Count)
            .Equal(a => a.TotalNumWorkSites.GetValueOrDefault())
            .When(a => a.WorkSites != null);
        }
Example #13
0
        public Shell(
			ILog logger,
			string addressShell, 
			string addressIOPub, 
			NetMQContext context, 
			ISignatureValidator signatureValidator,
			Dictionary<string, IShellMessageHandler> messageHandlers)
        {
            this.logger = logger;
            this.addressShell = addressShell;
            this.addressIOPub = addressIOPub;
			this.signatureValidator = signatureValidator;
            this.context = context;
            this.messageHandlers = messageHandlers;

            this.server = this.context.CreateRouterSocket();
            this.ioPubSocket = this.context.CreatePublisherSocket();
            this.stopEvent = new ManualResetEventSlim();
        }
Example #14
0
 public HttpPostReleaseTeksCommand2(
     PostKeysLoggingExtensions logger,
     IWorkflowConfig workflowConfig,
     WorkflowDbContext dbContextProvider,
     IPostTeksValidator keyValidator,
     ITekWriter writer,
     IJsonSerializer jsonSerializer,
     ISignatureValidator signatureValidator,
     ITekListWorkflowFilter tekListWorkflowFilter,
     IUtcDateTimeProvider dateTimeProvider,
     ITekValidPeriodFilter tekApplicableWindowFilter
     )
 {
     _logger                    = logger ?? throw new ArgumentNullException(nameof(logger));
     _workflowConfig            = workflowConfig ?? throw new ArgumentNullException(nameof(workflowConfig));
     _dbContext                 = dbContextProvider ?? throw new ArgumentNullException(nameof(dbContextProvider));
     _keyValidator              = keyValidator ?? throw new ArgumentNullException(nameof(keyValidator));
     _writer                    = writer ?? throw new ArgumentNullException(nameof(writer));
     _jsonSerializer            = jsonSerializer ?? throw new ArgumentNullException(nameof(jsonSerializer));
     _signatureValidator        = signatureValidator ?? throw new ArgumentNullException(nameof(signatureValidator));
     _tekListWorkflowFilter     = tekListWorkflowFilter ?? throw new ArgumentNullException(nameof(tekListWorkflowFilter));
     _dateTimeProvider          = dateTimeProvider ?? throw new ArgumentNullException(nameof(dateTimeProvider));
     _tekApplicableWindowFilter = tekApplicableWindowFilter ?? throw new ArgumentNullException(nameof(tekApplicableWindowFilter));
 }
 public TransactionValidator(ISignatureValidator signatureValidator)
 {
     _signatureValidator     = signatureValidator;
     _intrinsicGasCalculator = new IntrinsicGasCalculator();
 }
Example #16
0
 /**
  * Sets a custom signature validator. If no custom signature validator is
  * provided,
  * {@link net.robotmedia.billing.signature.DefaultSignatureValidator} will
  * be used.
  *
  * @param validator
  *            signature validator instance.
  */
 public static void setSignatureValidator(ISignatureValidator validator)
 {
     BillingController.validator = validator;
 }
Example #17
0
 public MessageSender(ISignatureValidator signatureValidator)
 {
     this._signatureValidator = signatureValidator;
 }
 public MemoryContactRepository(IMessenger messenger, ISignatureValidator signatureValidator)
     : base(messenger, signatureValidator)
 {
     this.PersistedContacts = new List <Contact>();
 }
 public AbstractTangleContactRepository(IMessenger messenger, ISignatureValidator signatureValidator)
 {
     this.Messenger          = messenger;
     this.SignatureValidator = signatureValidator;
 }
 public SignatureValidatorTests()
 {
     _signatureValidator = new SignatureValidator();
 }
 /// <inheritdoc />
 public EmptyContactRepository(IMessenger messenger, ISignatureValidator signatureValidator)
     : base(messenger, signatureValidator)
 {
 }
Example #22
0
 public ContactRepositoryStub(IMessenger messenger, ISignatureValidator signatureValidator)
     : base(messenger, signatureValidator)
 {
 }
Example #23
0
		public MessageSender(ISignatureValidator signatureValidator)
		{
			this._signatureValidator = signatureValidator;
		}