139 ## Core code |
139 ## Core code |
140 ## |
140 ## |
141 |
141 |
142 def startNewRequest(self, request): |
142 def startNewRequest(self, request): |
143 """Prepares core to handle a new request. |
143 """Prepares core to handle a new request. |
|
144 |
|
145 Args: |
|
146 request: a Django HttpRequest object |
144 """ |
147 """ |
145 |
148 |
146 self.in_request = True |
149 self.in_request = True |
147 self.per_request_value = {} |
150 self.per_request_value = {} |
148 self.setRequestValue('request', request) |
151 self.setRequestValue('request', request) |
149 |
152 |
150 def endRequest(self, request): |
153 def endRequest(self, request): |
151 """Performs cleanup after current request. |
154 """Performs cleanup after current request. |
|
155 |
|
156 Args: |
|
157 request: a Django HttpRequest object |
152 """ |
158 """ |
153 |
159 |
154 old_request = self.getRequestValue('request') |
160 old_request = self.getRequestValue('request') |
155 self.per_request_value = {} |
161 self.per_request_value = {} |
156 self.in_request = False |
162 self.in_request = False |
159 logging.error("ending request: \n'%s'\n != \n'%s'\n" % ( |
165 logging.error("ending request: \n'%s'\n != \n'%s'\n" % ( |
160 old_request, request)) |
166 old_request, request)) |
161 |
167 |
162 def getRequestValue(self, key, default=None): |
168 def getRequestValue(self, key, default=None): |
163 """Gets a per-request value. |
169 """Gets a per-request value. |
|
170 |
|
171 Args: |
|
172 key: the key of the to be retrieved value |
|
173 default: the default value (returned if no value is set) |
164 """ |
174 """ |
165 |
175 |
166 assert self.in_request |
176 assert self.in_request |
167 return self.per_request_value.get(key, default) |
177 return self.per_request_value.get(key, default) |
168 |
178 |
169 def setRequestValue(self, key, value): |
179 def setRequestValue(self, key, value): |
170 """Sets a per-request value. |
180 """Sets a per-request value. |
|
181 |
|
182 Args: |
|
183 key: the key of the to be set value |
|
184 value: the value that should be set |
171 """ |
185 """ |
172 |
186 |
173 assert self.in_request |
187 assert self.in_request |
174 self.per_request_value[key] = value |
188 self.per_request_value[key] = value |
175 |
189 |