diff options
-rw-r--r-- | cherrypy/_cputil.py | 4 | ||||
-rw-r--r-- | cherrypy/lib/filter/virtualhostfilter.py | 53 | ||||
-rw-r--r-- | cherrypy/test/test.py | 2 | ||||
-rw-r--r-- | cherrypy/test/test_virtualhost_filter.py | 54 |
4 files changed, 2 insertions, 111 deletions
diff --git a/cherrypy/_cputil.py b/cherrypy/_cputil.py index 9aa30985..306c4763 100644 --- a/cherrypy/_cputil.py +++ b/cherrypy/_cputil.py @@ -240,7 +240,7 @@ _cpFilterList = [] from cherrypy.lib.filter import baseurlfilter, cachefilter, \ decodingfilter, encodingfilter, gzipfilter, logdebuginfofilter, \ staticfilter, nsgmlsfilter, tidyfilter, \ - virtualhostfilter, xmlrpcfilter, sessionauthenticatefilter, \ + xmlrpcfilter, sessionauthenticatefilter, \ sessionfilter # this contains the classes for each filter type @@ -259,7 +259,6 @@ _cpDefaultFilterClasses = { 'SessionFilter' : sessionfilter.SessionFilter, 'StaticFilter' : staticfilter.StaticFilter, 'TidyFilter' : tidyfilter.TidyFilter, - 'VirtualHostFilter' : virtualhostfilter.VirtualHostFilter, 'XmlRpcFilter' : xmlrpcfilter.XmlRpcFilter, } @@ -271,7 +270,6 @@ _cpDefaultFilterInstances = {} __cpDefaultInputFilters = [ 'CacheFilter', 'LogDebugInfoFilter', - 'VirtualHostFilter', 'BaseUrlFilter', 'DecodingFilter', 'SessionFilter', diff --git a/cherrypy/lib/filter/virtualhostfilter.py b/cherrypy/lib/filter/virtualhostfilter.py deleted file mode 100644 index f43e0e7f..00000000 --- a/cherrypy/lib/filter/virtualhostfilter.py +++ /dev/null @@ -1,53 +0,0 @@ -""" -Copyright (c) 2004, CherryPy Team (team@cherrypy.org) -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of the CherryPy Team nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -""" - -import warnings -warnings.warn("This module doesn't currently behave as expected and will be completely rewritten for CherryPy-2.2.", - FutureWarning) - -import basefilter - -class VirtualHostFilter(basefilter.BaseFilter): - """Filter that changes the ObjectPath based on the Host. - - Useful when running multiple sites within one CP server. - See CherryPy recipes for the documentation. - """ - - def onStartResource(self): - import cherrypy - from cherrypy import _cphttptools - - if not cherrypy.config.get('virtualHostFilter.on', False): - return - - # Re-use "mapPathToObject" function to find the actual objectPath - prefix = cherrypy.config.get('virtualHostFilter.prefix', '/') - virtualPath = prefix + cherrypy.request.path - c, objectPathList, v = _cphttptools.mapPathToObject(virtualPath) - cherrypy.request.objectPath = '/' + '/'.join(objectPathList[1:]) diff --git a/cherrypy/test/test.py b/cherrypy/test/test.py index 7abc80c0..2b47acdd 100644 --- a/cherrypy/test/test.py +++ b/cherrypy/test/test.py @@ -342,7 +342,7 @@ def run(): 'test_objectmapping', 'test_static_filter', 'test_tutorials', - 'test_virtualhost_filter', + #'test_virtualhost_filter', 'test_session_filter', 'test_sessionauthenticate_filter', 'test_xmlrpc_filter', diff --git a/cherrypy/test/test_virtualhost_filter.py b/cherrypy/test/test_virtualhost_filter.py deleted file mode 100644 index 32e83411..00000000 --- a/cherrypy/test/test_virtualhost_filter.py +++ /dev/null @@ -1,54 +0,0 @@ -""" -Copyright (c) 2004, CherryPy Team (team@cherrypy.org) -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of the CherryPy Team nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -""" - -import cherrypy - -class Root: - def index2(self): - yield "Hello, world" - index2.exposed = True - -cherrypy.root = Root() -cherrypy.config.update({ - 'server.logToScreen': False, - 'server.environment': 'production', - 'virtualHostFilter.on': True, - 'virtualHostFilter.prefix': '/index2', -}) - -import helper - -class VirtualHostFilterTest(helper.CPWebCase): - - def testVirtualHostFilter(self): - self.getPage("/") - self.assertBody('Hello, world') - - -if __name__ == "__main__": - helper.testmain() |