Esempio n. 1
0
class CharacterAPI:

    requestUrl = 'http://api.obsidianportal.com/v1/campaigns/'

    #assumes the existence of a valid local configuration file
    def __init__(self, config):
        self.connection = OPOAuthConnection(config)

    def get(self, campaign_id):
        url = CharacterAPI.requestUrl + campaign_id + "/characters.json"
        content = self.connection.get(url)
        characters = json.loads(content)
        ret = []
        for c in characters:
            ret.append(Character(c))
        return ret

    def show_by_id(self, campaignID, characterID):
        campaign_url = CampaignAPI.requestUrl + campaignID + "/characters/" + characterID + ".json"
        content = self.connection.get(campaign_url)
        character = Character(json.loads(content))
        return character

    def show_by_slug(self, campaignID, slug):
        campaign_url = CampaignAPI.requestUrl + campaignID + "/characters/" + slug + ".json"
        content = self.connection.get(campaign_url, {'use_slug': '1'})
        character = Character(json.loads(content))
        return character
Esempio n. 2
0
class CharacterAPI:

    requestUrl = 'http://api.obsidianportal.com/v1/campaigns/'

    #assumes the existence of a valid local configuration file
    def __init__(self, config):
        self.connection = OPOAuthConnection(config)

    def get(self, campaign_id ):
        url = CharacterAPI.requestUrl + campaign_id + "/characters.json"
        content = self.connection.get(url)
        characters = json.loads( content )
        ret = []
        for c in characters:
             ret.append( Character( c ) )
        return ret

    def show_by_id(self, campaignID, characterID):
        campaign_url = CampaignAPI.requestUrl + campaignID + "/characters/" + characterID + ".json"
        content = self.connection.get( campaign_url )
        character = Character( json.loads( content ))
        return character

    def show_by_slug(self, campaignID, slug ):
        campaign_url = CampaignAPI.requestUrl + campaignID + "/characters/" + slug + ".json"
        content = self.connection.get( campaign_url, {'use_slug': '1'} )
        character = Character( json.loads( content ))
        return character
Esempio n. 3
0
class WikiAPI:

    requestUrl = 'http://api.obsidianportal.com/v1/campaigns/'

    #assumes the existence of a valid local configuration file
    def __init__(self, config):
        self.connection = OPOAuthConnection(config)

    def get(self, campaignID ):
        # http://api.obsidianportal.com/v1/campaigns/campaign_id/wikis.format is the format of the request url
        url = WikiAPI.requestUrl + campaignID + "/wikis.json"
        content = self.connection.get( url, {'campaign_id' : campaignID } )
        wiki = Wiki(json.loads( content ))
        return wiki


    def show_page(self, campaignID, wikiID ):
        url = WikiAPI.requestUrl + campaignID + "/wikis/" + wikiID + ".json"
        content = self.connection.get( url, {'campaign_id' : campaignID, 'id' : wikiID } );
        wikiPage = WikiPage( json.loads( content ))
        return wikiPage

    def show_by_slug(self, campaignID, slug ):
        url = WikiAPI.requestUrl + campaignID + "/wikis/" + slug + ".json"
        print url
        content = self.connection.get( url, {'campaign_id' : campaignID, 'use_slug' : 1 } )

        wikiPage = WikiPage( json.loads( content ))
        return wikiPage
Esempio n. 4
0
class UserAPI:

    requestUrl = 'http://api.obsidianportal.com/v1/users/'

    #assumes the existence of a valid local configuration file
    def __init__(self, config):
        self.connection = OPOAuthConnection(config)

    def get_me(self):
        url = UserAPI.requestUrl + "me.json"
        content = self.connection.get(url)
        user_info = User(json.loads(content))
        return user_info

    def show_by_id(self, id):
        url = UserAPI.requestUrl + id + ".json"
        content = self.connection.get(url)
        user_info = User(json.loads(content))
        return user_info

    def show_by_username(self, name):
        url = UserAPI.requestUrl + name + ".json"
        content = self.connection.get(url, {'use_username': "******"})
        user_info = User(json.loads(content))
        return user_info
Esempio n. 5
0
class UserAPI:

    requestUrl = 'http://api.obsidianportal.com/v1/users/'

    #assumes the existence of a valid local configuration file
    def __init__(self, config):
        self.connection = OPOAuthConnection(config)

    def get_me(self):
        url = UserAPI.requestUrl + "me.json"
        content = self.connection.get( url )
        user_info = User(json.loads( content ))
        return user_info

    def show_by_id(self, id):
        url = UserAPI.requestUrl + id + ".json"
        content = self.connection.get( url )
        user_info = User(json.loads( content ))
        return user_info

    def show_by_username( self, name):
        url = UserAPI.requestUrl + name + ".json"
        content = self.connection.get( url, { 'use_username': "******" } )
        user_info = User(json.loads( content ))
        return user_info
Esempio n. 6
0
class WikiAPI:

    requestUrl = 'http://api.obsidianportal.com/v1/campaigns/'

    #assumes the existence of a valid local configuration file
    def __init__(self, config):
        self.connection = OPOAuthConnection(config)

    def get(self, campaignID):
        # http://api.obsidianportal.com/v1/campaigns/campaign_id/wikis.format is the format of the request url
        url = WikiAPI.requestUrl + campaignID + "/wikis.json"
        content = self.connection.get(url, {'campaign_id': campaignID})
        wiki = Wiki(json.loads(content))
        return wiki

    def show_page(self, campaignID, wikiID):
        url = WikiAPI.requestUrl + campaignID + "/wikis/" + wikiID + ".json"
        content = self.connection.get(url, {
            'campaign_id': campaignID,
            'id': wikiID
        })
        wikiPage = WikiPage(json.loads(content))
        return wikiPage

    def show_by_slug(self, campaignID, slug):
        url = WikiAPI.requestUrl + campaignID + "/wikis/" + slug + ".json"
        print url
        content = self.connection.get(url, {
            'campaign_id': campaignID,
            'use_slug': 1
        })

        wikiPage = WikiPage(json.loads(content))
        return wikiPage
Esempio n. 7
0
class CampaignAPI:

    requestUrl = 'http://api.obsidianportal.com/v1/campaigns/'

    #assumes the existence of a valid local configuration file
    def __init__(self, config):
        self.connection = OPOAuthConnection(config)

    def get(self, campaignID):

        campaign_url = CampaignAPI.requestUrl + campaignID + ".json"
        content = self.connection.get( campaign_url)
        campaign = Campaign( json.loads( content ))
        return campaign

    def get_by_slug( self, slug ):
        campaign_url = CampaignAPI.requestUrl + slug + ".json"
        content = self.connection.get( campaign_url,  { 'use_slug': 'true' }  )
        campaign = Campaign( json.loads( content ))
        return campaign
Esempio n. 8
0
class CampaignAPI:

    requestUrl = 'http://api.obsidianportal.com/v1/campaigns/'

    #assumes the existence of a valid local configuration file
    def __init__(self, config):
        self.connection = OPOAuthConnection(config)

    def get(self, campaignID):

        campaign_url = CampaignAPI.requestUrl + campaignID + ".json"
        content = self.connection.get(campaign_url)
        campaign = Campaign(json.loads(content))
        return campaign

    def get_by_slug(self, slug):
        campaign_url = CampaignAPI.requestUrl + slug + ".json"
        content = self.connection.get(campaign_url, {'use_slug': 'true'})
        campaign = Campaign(json.loads(content))
        return campaign
Esempio n. 9
0
 def __init__(self, config):
     self.connection = OPOAuthConnection(config)
Esempio n. 10
0
 def __init__(self, config):
     self.connection = OPOAuthConnection(config)