Metadata-Version: 1.0
Name: turboengine
Version: 1.0.2
Summary: Utilities for google app engine
Home-page: https://github.com/carlitux/turboengine
Author: Luis C. Cruz
Author-email: carlitos.kyo@gmail.com
License: MIT
Description: ===========
        Turboengine
        ===========
        
        Google app engine utilities using some django's ideas.
        
        Install
        -------
        :
            git clone git://github.com/carlitux/turboengine.git
            cd turboengine
            python setup.py Install
            
        Usage
        -----
        Create an setting.py file and can add variables settings as you want, but
        this is some commons variables::
            TEMPLATE_PATH = 'templates'
        
            # setting DEBUG
            DEBUG = True
            SITE_TITLE = 'turboengine for GAE'
        
            # mapping (parent url, appname) 
            INSTALLED_APPS = [(parent_url, appnane)] # app names shouldn't be standard python libraries and they should be importables into PYTHONPATH
            TEMPLATE_TAGS_PATHS = [] # not used but it will be used in feature for loading templatetags
            ERROR_PAGE_PATH = '/error/' # path where will be redirected the error
            LOGIN_PATH_REDIRECT = '/'   # path where redirect after login or logout
            PROFILE_PATH = '/account/profile/'
        
        To import settings do this:
            from turboengine.conf import settings
            
        If you want to implement an Website use this:
            from turboengine.http import RequestHandler
            from turboengine.decorators import login_required
            
            class MyHandler(RequestHandler):
                def get(self):
                    # you can add headers or common usages of the request
                    user = self.user # return authenticated user or None if is not logged in
                    .... code
                    self.render_template(template, paramaters)
                    
                @login_required
                def post(self):
                    .... code
                    
        And use one file like (app.py)::
            from google.appengine.ext import webapp
            from google.appengine.ext.webapp.util import run_wsgi_app
              
            from turboengine import urls
            from turboengine.conf import settings
              
            application = webapp.WSGIApplication(urls.generate_urls(settings.INSTALLED_APPS), debug=settings.DEBUG)
              
            def main():   
                run_wsgi_app(application)
              
            if __name__ == "__main__":
                main()
                
        If you want to implement webservices first install ZSI and zope.interface then::
            from turboengine.webservices.application import SOAPAplication
            from turboengine.webservices.application import WSGIAplication
            
            from EchoServer_server import * # this class is generated by 'python wsdl2py SimpleEcho.wsdl' see http://carlitos-kyo.blogspot.com/2009/12/web-services-python-google-app-engine.html
            
            # Implementing services
        
            class wsEchoServer(EchoServer):
                # Make WSDL available for HTTP GET
                wsdl = "".join(open('SimpleEcho.wsdl').readlines())
                disco = "".join(open('SimpleEcho.disco').readlines())
                  
                def soap_Echo(self, ps, **kw):
                    request, response = EchoServer.soap_Echo(self, ps, **kw)
                    return request, request 
            
            def main():
                application = WSGIApplication()
                application['EchoServer.asmx'] = SOAPAplication(wsEchoServer())
                #application['OtherServer.asmx'] = SOAPAplication(wsOtherServer()) # could have many webservices
                run_wsgi_app(application)
            
            if __name__ == '__main__':
                main()
                
        Please to see how to use webservices on GAE visit this: 
           http://carlitos-kyo.blogspot.com/2009/12/web-services-python-google-app-engine.html
           
        TODO
        ----
        
        Implement restful and templatetags
Keywords: GAE utility
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Internet
