Re: [Zope] Re: Appending to a file via manage_edit?

2007-12-11 Thread Andreas Jung



--On 11. Dezember 2007 18:33:14 +0100 Josef Meile <[EMAIL PROTECTED]> 
wrote:



I've been looking around for this, but can't seem to find anything.  I'm
assuming that it is just not possible, but thought I'd ask just in case.

For File objects, I see that manage_edit() has the parameters: title,
content_type, precondition, filedata & REQUEST.  Setting something in
the filedata parameter will replace the file's current data with that.

This implies (to me at least) that the only way one can edit a file is a
complete rewrite.  Does there exist a way to simply append data to the
end
of the file?  For instance, if one wanted to write to a file line by
line,
is that possible in Zope?


out-of-the-box: NO

Appending data would require the manipulation of the linked list of Pdata
elements. There is no API for this available...so basically forget it.

What about the python pickle/cpickle and marshal modules? If I'm not
wrong zope uses cpickle to append data to the Data.fs, or am I wrong?

I haven't read the module documetation deeply, but as I understand,
pickle/cpickle is used for serializing python objects, while marshal is
for binary data.

http://docs.python.org/lib/module-pickle.html
http://docs.python.org/lib/module-marshal.html

Anyway, you still need to load the whole file into a temporal memory.



Completely unrelated at this point. You can only update a file as a whole
with the existing functionality. You are of course free to write your own
file implementation.

-aj

pgpytWst8Amcy.pgp
Description: PGP signature
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] Re: Appending to a file via manage_edit?

2007-12-11 Thread Josef Meile

I've been looking around for this, but can't seem to find anything.  I'm
assuming that it is just not possible, but thought I'd ask just in case.

For File objects, I see that manage_edit() has the parameters: title,
content_type, precondition, filedata & REQUEST.  Setting something in the
filedata parameter will replace the file's current data with that.

This implies (to me at least) that the only way one can edit a file is a
complete rewrite.  Does there exist a way to simply append data to the 
end
of the file?  For instance, if one wanted to write to a file line by 
line,

is that possible in Zope?


out-of-the-box: NO

Appending data would require the manipulation of the linked list of Pdata
elements. There is no API for this available...so basically forget it.

What about the python pickle/cpickle and marshal modules? If I'm not
wrong zope uses cpickle to append data to the Data.fs, or am I wrong?

I haven't read the module documetation deeply, but as I understand,
pickle/cpickle is used for serializing python objects, while marshal is
for binary data.

http://docs.python.org/lib/module-pickle.html
http://docs.python.org/lib/module-marshal.html

Anyway, you still need to load the whole file into a temporal memory.

Best regards
Josef
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
http://mail.zope.org/mailman/listinfo/zope-announce

http://mail.zope.org/mailman/listinfo/zope-dev )