Change the definitions of the per app API properties

This commit is contained in:
Roberto Rosario
2014-07-08 18:50:37 -04:00
parent 0d0f7be532
commit c4174f8020

View File

@@ -3,7 +3,7 @@ from __future__ import absolute_import
from django.conf.urls import include, patterns, url from django.conf.urls import include, patterns, url
class EndPoint(object): class APIEndPoint(object):
_registry = {} _registry = {}
@classmethod @classmethod
@@ -19,22 +19,21 @@ class EndPoint(object):
def __init__(self, name): def __init__(self, name):
self.name = name self.name = name
self.services = [] self.endpoints = []
self.__class__._registry[name] = self self.__class__._registry[name] = self
def add_service(self, urlpattern, url=None, description=None): def add_endpoint(self, view_name, description=None):
self.services.append( self.endpoints.append(
{ {
'description': description, 'description': description,
'url': url, 'view_name': view_name,
'urlpattern': urlpattern,
} }
) )
def register_urls(self, urlpatterns): def register_urls(self, urlpatterns):
from .urls import version_0_endpoints_urlpatterns from .urls import version_0_urlpatterns
endpoint_urls = patterns('', endpoint_urls = patterns('',
url(r'^%s/' % self.name, include(urlpatterns)), url(r'^%s/' % self.name, include(urlpatterns)),
) )
version_0_endpoints_urlpatterns += endpoint_urls version_0_urlpatterns += endpoint_urls