Example #1
0
    def __init__(self,
                 public_key,
                 secret_key,
                 oauth_access_token=None,
                 oauth_access_token_secret=None,
                 fmt='json',
                 finreport=True,
                 hr=True,
                 mc=True,
                 offers=True,
                 provider=True,
                 task=True,
                 team=True,
                 timereport=True,
                 job=True,
                 timeout=3):

        self.public_key = public_key
        self.secret_key = secret_key
        self.fmt = fmt

        # Catch the warning about
        # """
        # SecurityWarning: Certificate has no `subjectAltName`,
        # falling back to check for a `commonName` for now.
        # This feature is being removed by major browsers
        # and deprecated by RFC 2818.
        # (See https://github.com/shazow/urllib3/issues/497 for details.)
        # """
        # The warning will appear only in logs
        logging.captureWarnings(True)
        self.http = urllib3.PoolManager(cert_reqs='CERT_REQUIRED',
                                        ca_certs=ca_certs_locater.get(),
                                        timeout=int(timeout))

        self.oauth_access_token = oauth_access_token
        self.oauth_access_token_secret = oauth_access_token_secret

        #Namespaces
        self.auth = OAuth(self)

        if finreport:
            from upwork.routers.finreport import Finreports
            self.finreport = Finreports(self)

        if hr:
            from upwork.routers.hr import HR_V1, HR, HR_V3
            self.hr_v1 = HR_V1(self)
            self.hr = HR(self)
            self.hr_v3 = HR_V3(self)

        if mc:
            from upwork.routers.mc import MC
            self.mc = MC(self)

        if offers:
            from upwork.routers.offers import Offers
            self.offers = Offers(self)

        if provider:
            from upwork.routers.provider import Provider, Provider_V2
            self.provider = Provider(self)
            self.provider_v2 = Provider_V2(self)

        if task:
            from upwork.routers.task import Task, Task_V2
            self.task = Task(self)
            self.task_v2 = Task_V2(self)

        if team:
            from upwork.routers.team import Team, Team_V2
            self.team = Team(self)
            self.team_v2 = Team_V2(self)

        if timereport:
            from upwork.routers.timereport import TimeReport
            self.timereport = TimeReport(self)

        if job:
            from upwork.routers.job import Job
            self.job = Job(self)