Table of Contents | ||||||||
---|---|---|---|---|---|---|---|---|
|
Serializer
MetadataSerializer is responsible for serializing and deserializing OpenmrsObjects. It is build upon XStream library and uses XML format. It is able to produce a list of metadata with all related items and a package header that contains information such as name, description, creation date, OpenMRS version. They are stored in two separate files called metadata.xml and header.xml and packaged in a zip file.
You can implement the writeReplace/readResolve methods in your shareable class if you want to provide a custom serialization. It needs to conform standard rules specified in the Java documentation. You can use it to provide extra dependencies for your object which you need to export together with your object. Typically it is not needed since all fields of your object will be examined and references to other objects resolved and serialized as well. However, you will need to define an extra field for dependencies and initialize it in the writeReplace method, if you reference objects in xmls or other text formats.
...
Example of a publish URL: http:/localhost:8080/openmrs/ws/rest/metadatasharing/package/7f2d4731-0a98-4118-8fe0-d4b9731986c6/latest
Example of a curl to this URL |
---|
Code Block | ||||
---|---|---|---|---|
| ||||
<subscriptionHeader id="1">
<packageHeader id="2" uuid="874f1efb-d73e-4093-9dd9-6e532be3a6fe">
<dateCreated id="3">2011-08-18 00:30:45</dateCreated>
<name>Roles</name>
<description>All available roles</description>
<openmrsVersion>1.8.2 Build 21762</openmrsVersion>
<version>5</version>
<group>7f2d4731-0a98-4118-8fe0-d4b9731986c6</group>
</packageHeader>
<contentUri id="4">../7f2d4731-0a98-4118-8fe0-d4b9731986c6/5/download</contentUri>
</subscriptionHeader> |
The packageHeader node contains all header information about the package.
...