Esempio n. 1
0
        private static HttpRequestMessage GetRequestMessage(
            string url,
            HttpMethod method,
            GixRequestOptions options,
            object data = null)
        {
            var request = BuildRequest(method, $"{url}", data);

            var client = new Client(request);

            client.ApplyUserAgent();
            client.ApplyClientData();

            if (!string.IsNullOrWhiteSpace(options.Token))
            {
                request.Headers.Add("Authorization", new List <string>
                {
                    $"Token {options.Token}"
                });
            }

            if (!string.IsNullOrWhiteSpace(options.User) && !string.IsNullOrWhiteSpace(options.Password))
            {
                request.Headers.Add("Authorization", new List <string>
                {
                    $"Basic {options.User}:{options.Password}"
                });
            }

            return(request);
        }
Esempio n. 2
0
        public static Task <GixResponse <T> > GetStringAsync <T>(
            string url,
            GixRequestOptions options)
        {
            var wr = GetRequestMessage(url, HttpMethod.Get, options);

            return(ExecuteRequestAsync <T>(wr));
        }
Esempio n. 3
0
        public static Task <GixResponse <T> > PostStringAsync <T>(
            string url,
            GixRequestOptions options,
            object data = null)
        {
            var wr = GetRequestMessage(url, HttpMethod.Post, options, data);

            return(ExecuteRequestAsync <T>(wr));
        }
Esempio n. 4
0
 protected GixRequestOptions SetupRequestOptions(GixRequestOptions gixRequestOptions)
 {
     return(gixRequestOptions ??
            new GixRequestOptions
     {
         BaseUrl = DefaultOptions?.BaseUrl,
         ApiKey = DefaultOptions?.ApiKey,
         Version = DefaultOptions?.Version ?? 1
     });
 }
Esempio n. 5
0
        /// <inheritdoc cref="ILoginServices" />
        public async Task <string> Login(string apiKey, string hash, int timestamp, GixRequestOptions options = null)
        {
            var configs = SetupRequestOptions(options);

            var urlBuilder = new GixUrlBuilder()
                             .CompanyUrl(configs.BaseUrl)
                             .MayorVersion(configs.Version)
                             .Resource(Urls.Login);

            var url = urlBuilder.ToString();

            var response = await Requestor.PostStringAsync <string>(
                url,
                configs)
                           .ConfigureAwait(false);

            return(response.Data);
        }
Esempio n. 6
0
        /// <summary>
        ///     Get unload with multiple params inside the filter.
        /// </summary>
        /// <param name="filter">Request object to get unload movements.</param>
        /// <param name="options">options to call the request.</param>
        /// <returns>a collection of unload movements.</returns>
        public async Task <IEnumerable <Unload> > Get(UnloadFilter filter, GixRequestOptions options = null)
        {
            Guard.NotNull(filter);
            var configs = SetupRequestOptions(options);

            var urlBuilder = new GixUrlBuilder()
                             .CompanyUrl(configs.BaseUrl)
                             .MayorVersion(filter.Version)
                             .Resource(Urls.GetUnloads);

            TransformUri(urlBuilder, filter);
            var url = urlBuilder.ToString();

            var unloadMovements =
                await Requestor.GetStringAsync <IEnumerable <Unload> >(url, configs)
                .ConfigureAwait(false);

            return(unloadMovements.Data);
        }
Esempio n. 7
0
 public ContractServices(GixRequestOptions defaultOptions) : base(defaultOptions)
 {
 }
Esempio n. 8
0
 protected BaseServices(GixRequestOptions defaultOptions)
 {
     DefaultOptions = defaultOptions;
 }
Esempio n. 9
0
 public DocumentServices(GixRequestOptions defaultOptions) : base(defaultOptions)
 {
 }
Esempio n. 10
0
 public LoginServices(GixRequestOptions defaultOptions) : base(defaultOptions)
 {
 }
Esempio n. 11
0
 public FixationServices(GixRequestOptions defaultOptions) : base(defaultOptions)
 {
 }
Esempio n. 12
0
 public InvoiceServices(GixRequestOptions defaultOptions) : base(defaultOptions)
 {
 }
Esempio n. 13
0
 public UnloadServices(GixRequestOptions defaultOptions) : base(defaultOptions)
 {
 }
Esempio n. 14
0
 public AnalysisServices(GixRequestOptions defaultOptions) : base(defaultOptions)
 {
 }
Esempio n. 15
0
 public DepositServices(GixRequestOptions defaultOptions) : base(defaultOptions)
 {
 }