public XeroHttpClient(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user, IJsonObjectMapper jsonMapper, IXmlObjectMapper xmlMapper)
     : this(jsonMapper, xmlMapper)
 {
     Client = new HttpClient(baseUri, auth, consumer, user)
     {
         ClientCertificate = auth.Certificate
     };
 }
Example #2
0
        public IToken GetToken(string baseUri, IToken consumer, string endPoint, string header, ICertificateAuthenticator authenticator)
        {
            var req = new HttpClient(baseUri, authenticator, null, null )
            {
                UserAgent = "Xero Api wrapper - " + consumer.ConsumerKey
            };

            req.AddHeader("Authorization", header);

            var response = req.Post(endPoint, string.Empty, "application/xml", null, true);

            if (response.StatusCode != HttpStatusCode.OK)
            {
                throw new OAuthException(response.Body);
            }

            var qs = HttpUtility.ParseQueryString(response.Body);
            var expires = qs["oauth_expires_in"];
            var session = qs["oauth_session_handle"];

            var token = new Token(consumer.ConsumerKey, consumer.ConsumerSecret)
            {
                TokenKey = qs["oauth_token"],
                TokenSecret = qs["oauth_token_secret"],
                OrganisationId = qs["xero_org_muid"]
            };

            if (!string.IsNullOrWhiteSpace(expires))
            {
                token.ExpiresAt = DateTime.UtcNow.AddSeconds(int.Parse(expires));
            }

            if (!string.IsNullOrWhiteSpace(session))
            {
                token.Session = session;
                token.SessionExpiresAt = DateTime.UtcNow.AddSeconds(int.Parse(qs["oauth_authorization_expires_in"]));
            }

            return token;
        }
Example #3
0
 public XeroCoreApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user, IJsonObjectMapper readMapper, IXmlObjectMapper writeMapper)
     : base(baseUri, auth, consumer, user, readMapper, writeMapper)
 {
     Connect();
 }
Example #4
0
 protected XeroApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user, IJsonObjectMapper readMapper, IXmlObjectMapper writeMapper, IRateLimiter rateLimiter)
     : this(baseUri)
 {
     Client = new XeroHttpClient(baseUri, auth, consumer, user, readMapper, writeMapper, rateLimiter);
 }
 public XeroCoreApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user)
     : base(baseUri, auth, consumer, user, new DefaultMapper(), new DefaultMapper())
 {
     Connect();
 }
Example #6
0
 protected PayrollApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user, IJsonObjectMapper readMapper, IXmlObjectMapper writeMapper)
     : base(baseUri, auth, consumer, user, readMapper, writeMapper)
 {
 }
Example #7
0
 protected PayrollApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user, IJsonObjectMapper readMapper, IXmlObjectMapper writeMapper, IRateLimiter rateLimiter)
     : base(baseUri, auth, consumer, user, readMapper, writeMapper, rateLimiter)
 {
 }
Example #8
0
 public XeroCoreApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user)
     : this(baseUri, auth, consumer, user, null)
 {
 }
Example #9
0
 public XeroCoreApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user,
     IJsonObjectMapper readMapper, IXmlObjectMapper writeMapper)
     : this(baseUri, auth, consumer, user, readMapper, writeMapper, null)
 {
 }
Example #10
0
 public XeroHttpClient(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user,
                       IJsonObjectMapper jsonMapper, IXmlObjectMapper xmlMapper)
     : this(baseUri, auth, consumer, user, jsonMapper, xmlMapper, null)
 {
 }
Example #11
0
 public IToken GetRequestToken(IConsumer consumer, string header, ICertificateAuthenticator authenticator = null)
 {
     return GetToken(_tokenUri,  new Token { ConsumerKey = consumer.ConsumerKey, ConsumerSecret = consumer.ConsumerSecret }, XeroRequestUri, header, authenticator);
 }
Example #12
0
 public IToken GetAccessToken(IToken token, string header, ICertificateAuthenticator authenticator = null)
 {
     return GetToken(_tokenUri, token, XeroAccessTokenUri, header, authenticator);
 }
Example #13
0
 public AmericanPayroll(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user,
     IJsonObjectMapper readMapper, IXmlObjectMapper writeMapper)
     : base(baseUri, auth, consumer, user, readMapper, writeMapper, null)
 {
 }
Example #14
0
 public HttpClient(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user)
     : this(baseUri, consumer, user)
 {
     _certAuth = auth;
     _auth = auth;
 }
Example #15
0
 public XeroCoreApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user)
     : base(baseUri, auth, consumer, user, new DefaultMapper(), new DefaultMapper())
 {
     Connect();
 }
Example #16
0
 public AmericanPayroll(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user, IJsonObjectMapper readMapper, IXmlObjectMapper writeMapper, IRateLimiter rateLimiter)
     : base(baseUri, auth, consumer, user, readMapper, writeMapper, rateLimiter)
 {
     Connect();
 }
Example #17
0
 public HttpClient(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user)
     : this(baseUri, consumer, user)
 {
     _certAuth = auth;
     _auth     = auth;
 }
Example #18
0
 public XeroCoreApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user, IJsonObjectMapper readMapper, IXmlObjectMapper writeMapper, IRateLimiter rateLimiter)
     : base(baseUri, auth, consumer, user, readMapper, writeMapper, rateLimiter)
 {
     Connect();
 }
Example #19
0
 public AustralianPayroll(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user,
                          IJsonObjectMapper readMapper, IXmlObjectMapper writeMapper)
     : this(baseUri, auth, consumer, user, readMapper, writeMapper, null)
 {
 }
Example #20
0
 public XeroCoreApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user, IRateLimiter rateLimiter)
     : this(baseUri, auth, consumer, user, new DefaultMapper(), new DefaultMapper(), rateLimiter)
 {
 }
Example #21
0
 public XeroCoreApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user)
     : this(baseUri, auth, consumer, user, null)
 {
 }
Example #22
0
 public XeroCoreApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user, IRateLimiter rateLimiter)
     : this(baseUri, auth, consumer, user, new DefaultMapper(), new DefaultMapper(), rateLimiter)
 {
 }
Example #23
0
 protected XeroApi(string baseUri, ICertificateAuthenticator auth, IConsumer consumer, IUser user, IJsonObjectMapper readMapper, IXmlObjectMapper writeMapper)
     : this(baseUri)
 {
     Client = new XeroHttpClient(baseUri, auth, consumer, user, readMapper, writeMapper);
 }