Beispiel #1
0
 /// <summary>
 /// Class Constructor used for dependency injection
 /// </summary>
 /// <param name="soapClient"></param>
 public WebMethodClient(ERPRestSettings erpSettings, IERPRestGateway erpRestGateway, ILogger <WebMethodClient> logger, IBackupRepository repository)
 {
     _erpRestGateway           = erpRestGateway;
     _soapStoreFrontWebService = new StorefrontWebServices_PortTypeClient(StorefrontWebServices_PortTypeClient.EndpointConfiguration.services_StorefrontWebServices_Port,
                                                                          new EndpointAddress($"{erpSettings.BaseUrl}/ws/services.StorefrontWebServices/services_StorefrontWebServices_Port"));
     _logger     = logger;
     _repository = repository;
     _baseUrl    = erpSettings.BaseUrl;
 }
Beispiel #2
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            Mapper.Initialize(cfg =>
            {
                cfg.AddProfile <AutoMapperProfile>();
            });
            services.AddMvc(config =>
            {
                config.Filters.Add(new ValidationExceptionFilterAttribute());
                config.Filters.Add(new IPLoggingFilter(Log.Logger));
            }).SetCompatibilityVersion(CompatibilityVersion.Version_2_1).AddJsonOptions(options =>
            {
                options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
                options.SerializerSettings.Converters.Add(new StringEnumConverter());
            });

            services.Scan(scan =>
            {
                var one = scan.FromApplicationDependencies(a =>
                                                           a.FullName.StartsWith("Pki.eBusiness.ErpApi", StringComparison.CurrentCulture));
                var two   = one.AddClasses(c => c.Where(t => t.Name != "BackupRepository"));
                var three = two.AsMatchingInterface();
            });

            var swaggerSettings = new SwaggerSettings();

            _config.Bind("SwaggerSettings", swaggerSettings);
            services.AddSingleton(swaggerSettings);
            var erpRestSettings = new ERPRestSettings();

            _config.Bind("ErpRestSettings", erpRestSettings);
            services.AddSingleton(erpRestSettings);
            var backupDbSettings = new BackupDbSettings();

            _config.Bind("BackupDbSettings", backupDbSettings);
            services.AddSingleton(backupDbSettings);
            services.AddSingleton <IBackupRepository, BackupRepository>();
            ILoggerFactory loggerFactory = new LoggerFactory();

            loggerFactory.AddSerilog();
            services.AddSingleton(loggerFactory);
            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new Info {
                    Title = SWAGGER_DOC_NAME, Version = "v1"
                });
            });
            ConventionRegistry.Register("IgnoreIfDefault", new ConventionPack {
                new IgnoreIfNullConvention(true)
            },
                                        t => true);
        }
        public OrderApi(ERPRestSettings erpRestSettings)
        {
            var apiKey = new Dictionary <string, string>
            {
                { "x-api-key", erpRestSettings.AtgApiKey }
            };
            var atgApiConfiguration = new Configuration()
            {
                BasePath = erpRestSettings.AtgBaseUrl,
                ApiKey   = apiKey
            };

            this.Configuration = atgApiConfiguration;
        }
 public ERPRestGateway(ERPRestSettings erpRestSettings, ILogger <ERPRestGateway> logger, IBackupRepository repository)
 {
     _restClient = new RestClient();
     _restClient.ClearHandlers();
     _restClient.AddHandler("application/json", new NewtonsoftJsonSerializer());
     _restClient.Timeout = erpRestSettings.Timeout;
     _erpRestSettings    = erpRestSettings;
     _erpApi             = new ErpApi.ErpApi(erpRestSettings.IntegrationPlatformBaseUrl, erpRestSettings.UserName, erpRestSettings.PassWord);
     _atgOrderApi        = new AtgApi.OrderApi(erpRestSettings);
     ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, errors) => true;
     _logger     = logger;
     _repository = repository;
     _baseUrl    = erpRestSettings.AtgBaseUrl;
 }