From 75dc6ec50b3105bf8a2966bf895eab216838df1c Mon Sep 17 00:00:00 2001 From: helmutm Date: Mon, 1 Dec 2008 10:23:02 +0000 Subject: [PATCH] redefine AccessRecordManager as an IJobManager adapter git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3020 fd906abe-77d9-0310-91a1-e0d9ade77398 --- locales/de/LC_MESSAGES/loops.mo | Bin 7495 -> 7535 bytes locales/de/LC_MESSAGES/loops.po | 5 ++++- organize/tracking/README.txt | 6 ++++-- organize/tracking/access.py | 19 ++++++++++++++++--- organize/tracking/configure.zcml | 10 +++++++++- 5 files changed, 33 insertions(+), 7 deletions(-) diff --git a/locales/de/LC_MESSAGES/loops.mo b/locales/de/LC_MESSAGES/loops.mo index 2125c46d29ce6a6ff8c7a7747b0df1669f625748..58c0a55754a7f20d077360b2f3d638725885a29a 100644 GIT binary patch delta 2177 zcmXZde@K;A9LMqRL%Msf`CC_6ZrPe^?G}1bYikKEB@m;ZEOrBv8h4E>OTDJG+7;T8 z#cHDmlOQn)N(k0ZW0Pb*hyoiClof2X`eXhROxc*s+1lP8cf@;N=Q-y*=leb1=Q(;~ z$;gt#qwJ(k<7Y3Qd_K>nn4Q6&1AOt*mSVOVcVid_QA1-m8=qq)zC6_|6^oE1Y$@_< z6|R2;zQ}bHr{N9^nI-H1jTh+n5;L$1*Wnoq;sh#S607H6DrRE=DsTz%YgK${oi)h9 z_8w|{GwQx()cPH+zYBATZ@o08GcbTNa0nIPH`ni_{ePW@x%4luxC42}I%J2w{Qat7++(HF&+RKOT2;jLJRtr^r`JL#rF3x9~SkxE7V*CY*)aGpWCB_{>c_;wB!$H|Xz0J%T%^1&2`yJw+ujhV${6 z8-I;*s3Kv$7GgOnP(5mX2kIR<4vcaXW}+gDLYW( zN0D2t2X)LYqR#hq)J7hnUb;V={~*P(0E2Zp|1)Ul8MdJ^KY+}!!>DI<%3YsBJP;NHY)IaRDfYr#=k)=@I98|UDV%!5R+7a5{%$m?z$e8SR<;^?Z_?mNrHxUe!_Vk z^>TfO+Tkr!LJx2eK1TiXna-E`%TNK!ot3V?8uj+CLGAc`M&HldNVz1Tj3x>Vj{*z!=S__l)v!2f$|I^SaugM<@g}u1% zr4)H>ek3LA?Y&f+vNI5Pw>j2SP+jH!nDu*7WMOgS(hu49LK(|q4K49Kv8MW1Lqki$ J7QZY1{C{Z2*P{Rc delta 2114 zcmXZdeQcdm9Ki8&(>uMlTerUGs_v>OlbE|kt5vKMsaTjlR`w!AWfrkjm`z7(s;&&_ zhWW#jrS-NTOo(lw|19&iL~6v#pEa7)7HNf<=Ef`t;`^0zbMNyx&pGEgzu);i&(qE> zJG!heRh8Zo_zdz}#P4)T2yfz-r5yP5mW6O5-i>)Yj1J9U1OAE?IDc*k^RNL~A}mF| zp*i+1#~RL8;zC@H*$@h$pT=2qJcbK!7}wwkX7D5$@HAHA-&lneL^JROXy7&uuG5Ju z9Ii*lSEJY6iLO5o`-kyt;)hWhwG8aXb8s9DFctfY@jP4Z1yl*^u>~u!3)8p(4ZIP_ zF>FN>dIa6b<2WCmL9cre=Mg{br(vdt(G0&pCr+Y?{EU|FALJXV8FYRll3TbGxeMWH zbo>T1U^mXe4QN7}&;+-k2@hex40q6I!(DO0N9aPIp$kpK{_oLS@e{g(Vzh*;X@(j! z&|JB8-C;9&Pur0M6+mx zYSHVP(17je20PFMuR#;M33GUR1@-rW?Q!CcIB^$VO#di)3qC;?oIn$rL=%|7CHPAm zUr1T3OpZenHlcxTL+1~m&(Kgjf385ol8mAO-avQqcI-cb2K)+5^cXtt1TMuH^fjy| zODoul2I`1*#{TQjI9=#EJ$OZm`+paWYw6g_JJNwapc5KMGmjVHxwsZB;TClKQRLDv zjJ{qkpzrkobOYn)!!{Y6Mv4?>aXmVTTUQ8o&@l7+kg?E@-lM1E`3QOs-$Cb%p%r-_ zeQiHQ6P!Yd5&n$MB^wi}=TL`j(N$=iUR><^KSaX?UWD=~-$+=I`24|z$sjXXX>cGfmTpAcd`x*(1VtCOFSPy zt_e?}iM}2^fL?b94g4`0;A^yU-=NRRDYPc%{mFPH zpL!@MW=6^%V78x|`E5`3WV=%LC)3${YFkoSc1da==`72q2FEs+Z7ofvD~svork2ab NzN?zZCPx+>{0}=0$o&8S diff --git a/locales/de/LC_MESSAGES/loops.po b/locales/de/LC_MESSAGES/loops.po index ffc763d..dcd9da5 100644 --- a/locales/de/LC_MESSAGES/loops.po +++ b/locales/de/LC_MESSAGES/loops.po @@ -3,7 +3,7 @@ msgstr "" "Project-Id-Version: $Id$\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 \n" "Language-Team: loops developers \n" "MIME-Version: 1.0\n" @@ -377,3 +377,6 @@ msgstr "loops-Notiz anlegen" msgid "State information for $definition: $title" msgstr "Status ($definition): $title" +msgid "User ID" +msgstr "Benutzerkennung" + diff --git a/organize/tracking/README.txt b/organize/tracking/README.txt index f2c34d8..487038c 100644 --- a/organize/tracking/README.txt +++ b/organize/tracking/README.txt @@ -89,6 +89,7 @@ in the request; all collected data are then written triggered by the EndRequestEvent. >>> 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.tests import testDir >>> from loops.browser.node import NodeView @@ -121,7 +122,8 @@ of job control. >>> len(access) 0 - >>> rm = AccessRecordManager(loopsRoot, TestRequest()) + >>> #rm = AccessRecordManagerView(loopsRoot, TestRequest()) + >>> rm = AccessRecordManager(loopsRoot) >>> rm.baseDir = testDir >>> rm.loadRecordsFromLog() >>> len(access) @@ -138,7 +140,7 @@ Tracking Reports >>> result['macro'][4][1][u'define-macro'] u'overview' >>> 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 diff --git a/organize/tracking/access.py b/organize/tracking/access.py index 3ac479e..fe8e801 100644 --- a/organize/tracking/access.py +++ b/organize/tracking/access.py @@ -38,6 +38,7 @@ from cybertools.tracking.btree import Track, getTimeStamp from cybertools.tracking.interfaces import ITrack from cybertools.tracking.logfile import Logger, loggers from loops.interfaces import ILoopsObject +from loops.organize.job.base import JobManager from loops.organize.tracking.base import BaseRecordManager from loops import util @@ -95,15 +96,17 @@ def marshall(data): # record manager -class AccessRecordManager(BaseRecordManager): +class AccessRecordManager(BaseRecordManager, JobManager): storageName = 'access' - def __init__(self, context, request): + def __init__(self, context): self.context = context - self.request = request self.baseDir = util.getVarDirectory() + def process(self): + self.loadRecordsFromLog() + @Lazy def logfile(self): value = self.options(logfile_option) @@ -161,6 +164,16 @@ class AccessRecordManager(BaseRecordManager): 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): pass diff --git a/organize/tracking/configure.zcml b/organize/tracking/configure.zcml index d452e10..53d52f4 100644 --- a/organize/tracking/configure.zcml +++ b/organize/tracking/configure.zcml @@ -26,6 +26,14 @@ + + + + +