Changeset 567
- Timestamp:
- 08/28/05 11:48:54
- Files:
-
- trunk/cherrypy/lib/filter/sessionfilter/__init__.py (modified) (2 diffs)
- trunk/cherrypy/lib/filter/sessionfilter/anydbadaptor.py (modified) (1 diff)
- trunk/cherrypy/lib/filter/sessionfilter/baseadaptor.py (modified) (5 diffs)
- trunk/cherrypy/lib/filter/sessionfilter/fileadaptor.py (modified) (5 diffs)
- trunk/cherrypy/test/test_session_filter.py (modified) (1 diff)
- trunk/cherrypy/test/test_tutorials.py (modified) (2 diffs)
- trunk/cherrypy/tutorial/tut08_advanced_sessions.py (deleted)
- trunk/cherrypy/tutorial/tut08_generators_and_yield.py (moved) (moved from trunk/cherrypy/tutorial/tut09_generators_and_yield.py)
- trunk/cherrypy/tutorial/tut09_file_upload.py (moved) (moved from trunk/cherrypy/tutorial/tut10_file_upload.py)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/cherrypy/lib/filter/sessionfilter/__init__.py
r547 r567 122 122 # manager was defined 123 123 124 cookiePath = sessionManager.getSetting('cookiePath')124 cookiePath = cherrypy.config.get('sessionFilter.cookiePath') 125 125 if not cookiePath: 126 126 cookiePath = sessionManager.path 127 127 128 timeout = sessionManager.getSetting('timeout')128 timeout = cherrypy.config.get('sessionFilter.timeout') 129 129 130 130 cherrypy.response.simpleCookie[cookieName] = sessionKey … … 133 133 134 134 # try and set the cookie domain 135 cookieDomain = sessionManager.getSetting('cookieDomain')135 cookieDomain = cherrypy.config.get('sessionFilter.cookieDomain') 136 136 if cookieDomain: 137 137 cherrypy.response.simpleCookie[cookieName]['domain'] = cookieDomain 138 138 139 139 # try and set a cookie comment 140 cookieComment = sessionManager.getSetting('cookieComment')140 cookieComment = cherrypy.config.get('sessionFilter.cookieComment') 141 141 if cookieComment: 142 142 cherrypy.response.simpleCookie[cookieName]['comment'] = cookieComment trunk/cherrypy/lib/filter/sessionfilter/anydbadaptor.py
r566 r567 51 51 defaultFile = '%s.db' % sessionName 52 52 53 storagePath = self.getSetting('storagePath')53 storagePath = cherrypy.config.get('sessionFilter.storagePath') 54 54 55 55 dbFile = os.path.join(storagePath, defaultFile) trunk/cherrypy/lib/filter/sessionfilter/baseadaptor.py
r566 r567 62 62 attributes = { 63 63 'timestamp' : int(time.time()), 64 'timeout' : self.getSetting('timeout'),64 'timeout' : cherrypy.config.get('sessionFilter.timeout'), 65 65 'lastAccess' : int(time.time()), 66 66 'key' : self.generateSessionKey() … … 84 84 self.path = sessionPath 85 85 86 cleanUpDelay = self.getSetting('cleanUpDelay')87 timeMultiple = self.getSetting('timeMultiple')86 cleanUpDelay = cherrypy.config.get('sessionFilter.cleanUpDelay') 87 timeMultiple = cherrypy.config.get('sessionFilter.timeMultiple') 88 88 89 89 self.nextCleanUp = time.time()+cleanUpDelay * timeMultiple 90 90 91 91 # find the cookie name 92 cookiePrefix = self.getSetting('cookiePrefix')92 cookiePrefix = cherrypy.config.get('sessionFilter.cookiePrefix') 93 93 94 94 self.cookieName = '%s_%s' % (cookiePrefix, sessionName) … … 99 99 from cherrypy._cpthreadinglocal import local 100 100 101 def getSetting(self, settingName, default = None):102 missing = object()103 result = cherrypy.config.get('sessionFilter.%s.%s' % (self.name, settingName), missing)104 if result is missing:105 result = cherrypy.config.get('sessionFilter.%s' % settingName, default)106 107 return result108 109 101 def cleanUpOldSessions(self): 110 102 now = time.time() … … 148 140 self.saveSessionDict(session) 149 141 150 cacheTimeout = self.getSetting('cacheTimeout')142 cacheTimeout = cherrypy.config.get('sessionFilter.cacheTimeout') 151 143 152 144 if session.threadCount == 0 and (self.noCache or not cacheTimeout): … … 161 153 """ cleanup all inactive sessions """ 162 154 163 cacheTimeout = self.getSetting('cacheTimeout')155 cacheTimeout = cherrypy.config.get('sessionFilter.cacheTimeout') 164 156 165 157 # don't waste cycles if we aren't caching inactive sessions trunk/cherrypy/lib/filter/sessionfilter/fileadaptor.py
r566 r567 31 31 import os.path 32 32 import mrow 33 import cherrypy 33 34 34 35 from baseadaptor import BaseAdaptor … … 50 51 raise SessionNotFoundError() 51 52 52 storagePath = self.getSetting('storagePath')53 storagePath = cherrypy.config.get('sessionFilter.storagePath') 53 54 54 55 fileName = '%s-%s' % (self.name, sessionKey) … … 69 70 def saveSessionDict(self, sessionData): 70 71 71 storagePath = self.getSetting('storagePath')72 storagePath = cherrypy.config.get('sessionFilter.storagePath') 72 73 73 74 fileName = '%s-%s' % (self.name, sessionData.key) … … 85 86 self.__fileLock.lock_read() 86 87 try: 87 storagePath = self.getSetting('storagePath')88 storagePath = cherrypy.config.get('sessionFilter.storagePath') 88 89 sessionFileList = os.listdir(storagePath) 89 90 … … 103 104 self.__fileLock.lock_read() 104 105 try: 105 storagePath = self.getSetting('storagePath')106 storagePath = cherrypy.config.get('sessionFilter.storagePath') 106 107 sessionFileList = os.listdir(storagePath) 107 108 trunk/cherrypy/test/test_session_filter.py
r539 r567 122 122 self.getPage('/') 123 123 124 SessionCount = len(sessionManager._debugDump())124 SessionCount = sessionManager._sessionCount() 125 125 self.assertEqual(SessionCount, 1) 126 126 trunk/cherrypy/test/test_tutorials.py
r537 r567 137 137 "\n ") 138 138 139 def test08AdvancedSessions(self): 140 self.load_tut_module("tut08_advanced_sessions") 141 cherrypy.config.update({"sessionFilter.on": True}) 142 143 self.getPage('/') 144 self.assertInBody("viewed this page 1 times") 145 146 self.getPage('/', self.cookies) 147 self.assertInBody("viewed this page 2 times") 148 149 def test09GeneratorsAndYield(self): 150 self.load_tut_module("tut09_generators_and_yield") 139 def test08GeneratorsAndYield(self): 140 self.load_tut_module("tut08_generators_and_yield") 151 141 self.getPage('/') 152 142 self.assertBody('<html><body><h2>Generators rule!</h2>' … … 155 145 '</body></html>') 156 146 157 def test 10FileUpload(self):158 self.load_tut_module("tut 10_file_upload")147 def test09FileUpload(self): 148 self.load_tut_module("tut09_file_upload") 159 149 160 150 h = [("Content-type", "multipart/form-data; boundary=x"),

