diff options
Diffstat (limited to 'github3/models')
-rw-r--r-- | github3/models/__init__.py | 0 | ||||
-rw-r--r-- | github3/models/base.py | 57 | ||||
-rw-r--r-- | github3/models/user.py | 20 |
3 files changed, 0 insertions, 77 deletions
diff --git a/github3/models/__init__.py b/github3/models/__init__.py deleted file mode 100644 index e69de29..0000000 --- a/github3/models/__init__.py +++ /dev/null diff --git a/github3/models/base.py b/github3/models/base.py deleted file mode 100644 index a2c3ac7..0000000 --- a/github3/models/base.py +++ /dev/null @@ -1,57 +0,0 @@ -#!/usr/bin/env python -# -*- encoding: utf-8 -*- - -class Model(object): - - dates = () - maps = {} - collection_maps = {} - - def __init__(self, attrs): - """ """ - self.attrs = attrs - - def __getattr__(self, name): - try: - return self.attrs[name] - except KeyError: - raise AttributeError - - @classmethod - def loads(self, raw_resource): - def parse_date(string_date): - from datetime import datetime - try: - date = datetime.strptime(string_date, '%Y-%m-%dT%H:%M:%SZ') - except TypeError: - date = None - return date - - def parse_map(model, raw_resource): - if hasattr(raw_resource, 'items'): - return model.loads(raw_resource) - - def parse_collection_map(model, raw_resources): - # Dict of resources (Ex: Gist file) - if hasattr(raw_resources, 'items'): - dict_map = {} - for key, raw_resource in raw_resources.items(): - dict_map[key] = model.loads(raw_resource) - return dict_map - # list of resources - elif hasattr(raw_resources, '__iter__'): - return [model.loads(raw_resource) - for raw_resource in raw_resources] - raw_resource.update( - {attr: parse_date(raw_resource[attr]) - for attr in self.dates if attr in raw_resource}) - raw_resource.update( - {attr: parse_map(model, raw_resource[attr]) - for attr, model in self.maps.items() - if attr in raw_resource}) - raw_resource.update( - {attr: parse_collection_map(model, raw_resource[attr]) - for attr, model in self.collection_maps.items() - if attr in raw_resource}) - - return self(raw_resource) diff --git a/github3/models/user.py b/github3/models/user.py deleted file mode 100644 index c87afc3..0000000 --- a/github3/models/user.py +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env python -# -*- encoding: utf-8 -*- - -from base import Model - - -class Plan(Model): - - def __str__(self): - return '<Plan (%s)>' % getattr(self, 'name', '') - - -class User(Model): - """ """ - - maps = {'plan': Plan} - dates = ('created_at', ) - - def __str__(self): - return '<User (%s)>' % getattr(self, 'login', '') |