"Django Extension View utilities"

class ClassView():
    """
    this acts as a 'buffer' to make class based views thread safe
    usage:
    urlpatterns = patterns('accounts',
        url(r'^new/$', ClassView(views.NewBuild), name="new"),
    )
    """

    def __init__(self, class_name):
        "store the class name in an instance variable"
        self.class_name = class_name

    def __call__(self, request, *args, **kwargs):
        """each time the class_view is invoked - for each request
        new-up a class_name and call it"""
        view = self.class_name()
        return view(request, *args, **kwargs)
