-ν wœ=csNdZdkZdkZdklZdfd„ƒYZdS(sA TransactionBuffer store transaction updates until commit or abort. A transaction may generate enough data that it is not practical to always hold pending updates in memory. Instead, a TransactionBuffer is used to store the data until a commit or abort. N(sLocksTransactionBuffercsƒtZ8d„ZCd„ZNd„ZUd„Zad„Zkd„Z{d„Z‡d„Z Žd „Z ™d „Z RS( Ncs|89tiddƒ|_:tƒ|_;d|_<d|_=d|_@t i |idƒ|_ Ad|i _ dS(Nssuffixs.tbufii( stempfiles TemporaryFilesselfsfilesLockslocksclosedscountssizescPicklesPicklerspicklersfast(sself((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pys__init__8s   cstCD|iiƒEzCFd|_GyH|iiƒWnItj o JnXWdKL|iiƒXdS(Ni(sselfslocksacquiresclosedsfilesclosesOSErrorsrelease(sself((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pyscloseCs  csKNO|iiƒPzQ|i|||ƒWdRS|iiƒXdS(N(sselfslocksacquires_storesoidsversionsdatasrelease(sselfsoidsversionsdata((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pysstoreNs cs’UVW|io XdSnY|ii|||fƒZ|id7_\|it |ƒd|_]|o+_|it |ƒt |ƒd|_ndS(s,Store oid, version, data for later retrievalNiii ( sselfsclosedspicklersdumpsoidsversionsdatascountssizeslen(sselfsoidsversionsdata((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pys_storeUs   cs{ab|iiƒczJd|io edSnf|ii||tfƒg|i d7_ Wdhi|ii ƒXdS(Ni( sselfslocksacquiresclosedspicklersdumpsoidsversionsNonescountsrelease(sselfsoidsversion((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pys invalidateas  cs{klm|iiƒnzGo|io pdSnq|iidƒrd|_sd|_Wdtu|iiƒXdS(sMark the buffer as emptyNi( sselfslocksacquiresclosedsfilesseekscountssizesrelease(sself((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pysclearks   cs‹{|}|iiƒ~zW|io €dSn|iiƒ‚|iidƒƒti|iƒ|_ Wd„…|ii ƒXdS(s-Move the file pointer in advance of iterationNi( sselfslocksacquiresclosedsfilesflushsseekscPickles Unpicklers unpicklersrelease(sself((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pys begin_iterate{s  csB‡ˆ|iiƒ‰zŠ|iƒSWd‹Œ|iiƒXdS(N(sselfslocksacquires_nextsrelease(sself((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pysnext‡s cstŽ|io ‘tSn’|idjo“|`”tSn•|iiƒ}–|id8_—|SdS(s(Return next tuple of data or None if EOFiiN(sselfsclosedsNonescounts unpicklersloads oid_ver_data(sselfs oid_ver_data((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pys_nextŽs    cs™šœ|iSdS(s3Return size of data stored in buffer (just a hint).N(sselfssize(sself((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pysget_size™s( s__name__s __module__s__init__sclosesstores_stores invalidatesclears begin_iteratesnexts_nextsget_size(((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pysTransactionBuffers     (s__doc__scPicklestempfiles threadingsLocksTransactionBuffer(stempfilesLockscPicklesTransactionBuffer((s=/usr/pkg/lib/python2.2/site-packages/ZEO/TransactionBuffer.pys?s