This is an old revision of the document!
Custom object persistence
GroIMP require Node, Node's attribute, and SCO to implements PersistenceCapable, to process the save/ load/ query operations.
GroIMP define its own persistence management. To be managed by the GroIMP persistence an object need to implements either PersistenceCapable (GroIMP interface), or Serializable (java interface).
Usually the persistence is handled in memory, but GroIMP provides a way to integrate it with file persistence (the object is written/loaded from the file). This rely on EmbeddedSharedObject and EmbeddedFileObject.
Embedded objects
In GroIMP embedded objects are objects whose persistence is pushed in a file.
EmbeddedSharedObject is a class, thus the object needs to extends it. The EmbeddedSharedObject create on the fly and manage a EmbeddedFileObject.
The object that extends EmbeddedSharedObject need to implements the following methods:
public MimeType getMimeType()
: to provide the mimetype to use when writing and loading the object (see GroIMP mimetype).