[[BackLinksMenu]] [[TicketQuery(summary=BASE_PERSISTENCE_IMMUTABLES_R0, format=table, col=summary|owner|status|type|component|priority|effort|importance, rows=description|analysis_owners|analysis_reviewers|analysis_score|design_owners|design_reviewers|design_score|implementation_owners|implementation_reviewers|implementation_score|test_owners|test_reviewers|test_score|)]] = Analysis = == Overview == This task is about persisting immutables. Generally the idea is that in Sophie 2 we have immutables and ProObjects/Properties and they have to be persisted. The goal of this task is to provide a concept for persisting the immutables. * Immutables are not dependent on anything else. * Their persistence is quite trivial and currently supported by the formats. These include the backgrounds, titles, sizes etc. == Task requirements == * Review persisting in the following modules: * => [source:trunk/sophie2-platform/modules/org.sophie2.base.persistence] * => [source:trunk/sophie2-platform/modules/org.sophie2.main.model.book.format.r1/src/main/java/org/sophie2/main/model/book/format/r1] * => [source:trunk/sophie2-platform/modules/org.sophie2.main.model.book.format.r2/src/main/java/org/sophie2/main/model/book/format/r2] * Describe the things used for immutables. * formats. * XML tags. * diagram of the format. * etc. * Add the new things that are to be persisted like: * margins * paddings * etc. (think of the other things after carefully examining the model.) * Explain how listed immutables should be persisted with the listed tools * Provide a few examples * Accent on the usage of SharedLoader and SharedSaver * Provide diagrams of the format that includes the tags for the persisted things. * Create integration test for new persisted immutables. * All important wiki content should be put in the corresponding section of a wiki page => [wiki:BASE_PERSISTENCE] == Task result == * wiki page * source code == Implementation idea == * review code * add new XML tags * add the new immutables to the format == Related == * [wiki:BASE_PERSISTENCE_COMMONS_R0] * [wiki:BASE_PERSISTENCE_INTERMEDIATE_STORAGE_R0] * [wiki:BASE_PERSISTENCE_FORMAT_REGISTRY_R0] * [wiki:BASE_PERSISTENCE_PROPERTY_FORMAT_R0] * [wiki:BASE_PERSISTENCE_FORMAT_POINT_R0] == How to demo == * show the wiki page. * run tests. = Design = ^(Describe your design here.)^ = Implementation = ^(Describe and link the implementation results here (from the wiki or the repository).)^ = Testing = ^(Place the testing results here.)^ = Comments = ^(Write comments for this or later revisions here.)