redefine AccessRecordManager as an IJobManager adapter
git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3020 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
		
							parent
							
								
									e184ed92a7
								
							
						
					
					
						commit
						75dc6ec50b
					
				
					 5 changed files with 33 additions and 7 deletions
				
			
		
										
											Binary file not shown.
										
									
								
							|  | @ -3,7 +3,7 @@ msgstr "" | ||||||
| 
 | 
 | ||||||
| "Project-Id-Version: $Id$\n" | "Project-Id-Version: $Id$\n" | ||||||
| "POT-Creation-Date: 2007-05-22 12:00 CET\n" | "POT-Creation-Date: 2007-05-22 12:00 CET\n" | ||||||
| "PO-Revision-Date: 2008-10-15 12:00 CET\n" | "PO-Revision-Date: 2008-11-01 12:00 CET\n" | ||||||
| "Last-Translator: Helmut Merz <helmutm@cy55.de>\n" | "Last-Translator: Helmut Merz <helmutm@cy55.de>\n" | ||||||
| "Language-Team: loops developers <helmutm@cy55.de>\n" | "Language-Team: loops developers <helmutm@cy55.de>\n" | ||||||
| "MIME-Version: 1.0\n" | "MIME-Version: 1.0\n" | ||||||
|  | @ -377,3 +377,6 @@ msgstr "loops-Notiz anlegen" | ||||||
| msgid "State information for $definition: $title" | msgid "State information for $definition: $title" | ||||||
| msgstr "Status ($definition): $title" | msgstr "Status ($definition): $title" | ||||||
| 
 | 
 | ||||||
|  | msgid "User ID" | ||||||
|  | msgstr "Benutzerkennung" | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | @ -89,6 +89,7 @@ in the request; all collected data are then written triggered by the | ||||||
| EndRequestEvent. | EndRequestEvent. | ||||||
| 
 | 
 | ||||||
|   >>> from loops.organize.tracking.access import logfile_option, record, logAccess |   >>> from loops.organize.tracking.access import logfile_option, record, logAccess | ||||||
|  |   >>> #from loops.organize.tracking.access import AccessRecordManagerView | ||||||
|   >>> from loops.organize.tracking.access import AccessRecordManager |   >>> from loops.organize.tracking.access import AccessRecordManager | ||||||
|   >>> from loops.organize.tracking.tests import testDir |   >>> from loops.organize.tracking.tests import testDir | ||||||
|   >>> from loops.browser.node import NodeView |   >>> from loops.browser.node import NodeView | ||||||
|  | @ -121,7 +122,8 @@ of job control. | ||||||
|   >>> len(access) |   >>> len(access) | ||||||
|   0 |   0 | ||||||
| 
 | 
 | ||||||
|   >>> rm = AccessRecordManager(loopsRoot, TestRequest()) |   >>> #rm = AccessRecordManagerView(loopsRoot, TestRequest()) | ||||||
|  |   >>> rm = AccessRecordManager(loopsRoot) | ||||||
|   >>> rm.baseDir = testDir |   >>> rm.baseDir = testDir | ||||||
|   >>> rm.loadRecordsFromLog() |   >>> rm.loadRecordsFromLog() | ||||||
|   >>> len(access) |   >>> len(access) | ||||||
|  | @ -138,7 +140,7 @@ Tracking Reports | ||||||
|   >>> result['macro'][4][1][u'define-macro'] |   >>> result['macro'][4][1][u'define-macro'] | ||||||
|   u'overview' |   u'overview' | ||||||
|   >>> result['data'] |   >>> result['data'] | ||||||
|   [{'access': 2, 'new': 0, 'changed': 1, 'period': '2008-11', 'count': 3}] |   [{'access': 2, 'new': 0, 'changed': 1, 'period': '...', 'count': 3}] | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| Fin de partie | Fin de partie | ||||||
|  |  | ||||||
|  | @ -38,6 +38,7 @@ from cybertools.tracking.btree import Track, getTimeStamp | ||||||
| from cybertools.tracking.interfaces import ITrack | from cybertools.tracking.interfaces import ITrack | ||||||
| from cybertools.tracking.logfile import Logger, loggers | from cybertools.tracking.logfile import Logger, loggers | ||||||
| from loops.interfaces import ILoopsObject | from loops.interfaces import ILoopsObject | ||||||
|  | from loops.organize.job.base import JobManager | ||||||
| from loops.organize.tracking.base import BaseRecordManager | from loops.organize.tracking.base import BaseRecordManager | ||||||
| from loops import util | from loops import util | ||||||
| 
 | 
 | ||||||
|  | @ -95,15 +96,17 @@ def marshall(data): | ||||||
| 
 | 
 | ||||||
| # record manager | # record manager | ||||||
| 
 | 
 | ||||||
| class AccessRecordManager(BaseRecordManager): | class AccessRecordManager(BaseRecordManager, JobManager): | ||||||
| 
 | 
 | ||||||
|     storageName = 'access' |     storageName = 'access' | ||||||
| 
 | 
 | ||||||
|     def __init__(self, context, request): |     def __init__(self, context): | ||||||
|         self.context = context |         self.context = context | ||||||
|         self.request = request |  | ||||||
|         self.baseDir = util.getVarDirectory() |         self.baseDir = util.getVarDirectory() | ||||||
| 
 | 
 | ||||||
|  |     def process(self): | ||||||
|  |         self.loadRecordsFromLog() | ||||||
|  | 
 | ||||||
|     @Lazy |     @Lazy | ||||||
|     def logfile(self): |     def logfile(self): | ||||||
|         value = self.options(logfile_option) |         value = self.options(logfile_option) | ||||||
|  | @ -161,6 +164,16 @@ class AccessRecordManager(BaseRecordManager): | ||||||
|                                    timeStamp=timeStamp) |                                    timeStamp=timeStamp) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | class AccessRecordManagerView(AccessRecordManager): | ||||||
|  |     # obsolete, records are now loaded via AccessRecordManager adapter | ||||||
|  |     # that is called via a job executor view. | ||||||
|  | 
 | ||||||
|  |     def __init__(self, context, request): | ||||||
|  |         self.context = context | ||||||
|  |         self.request = request | ||||||
|  |         self.baseDir = util.getVarDirectory() | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| class IAccessRecord(ITrack): | class IAccessRecord(ITrack): | ||||||
| 
 | 
 | ||||||
|     pass |     pass | ||||||
|  |  | ||||||
|  | @ -26,6 +26,14 @@ | ||||||
| 
 | 
 | ||||||
|   <zope:subscriber handler="loops.organize.tracking.access.logAccess" /> |   <zope:subscriber handler="loops.organize.tracking.access.logAccess" /> | ||||||
| 
 | 
 | ||||||
|  |   <zope:adapter | ||||||
|  |       factory="loops.organize.tracking.access.AccessRecordManager" | ||||||
|  |       name="load_access_records" | ||||||
|  |       trusted="True" /> | ||||||
|  |   <zope:class class="loops.organize.tracking.access.AccessRecordManager"> | ||||||
|  |     <allow attributes="process" /> | ||||||
|  |   </zope:class> | ||||||
|  | 
 | ||||||
|   <!-- views --> |   <!-- views --> | ||||||
| 
 | 
 | ||||||
|   <browser:page |   <browser:page | ||||||
|  | @ -51,7 +59,7 @@ | ||||||
|   <browser:page |   <browser:page | ||||||
|       name="load_access_records" |       name="load_access_records" | ||||||
|       for="loops.interfaces.ILoops" |       for="loops.interfaces.ILoops" | ||||||
|       class="loops.organize.tracking.access.AccessRecordManager" |       class="loops.organize.tracking.access.AccessRecordManagerView" | ||||||
|       attribute="loadRecordsFromLog" |       attribute="loadRecordsFromLog" | ||||||
|       permission="zope.Public" /> |       permission="zope.Public" /> | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 helmutm
						helmutm