apuser.setOrganization("disOrganised");
String appdata_ref = "vamsas:org.vamsas.test.simpleclient.VamsasArchive/"+apuser.getOrganization()+"/"+apuser.getFullname();
org.vamsas.client.simpleclient.VamsasArchive va = new org.vamsas.client.simpleclient.VamsasArchive(backup, true);
+ log.info("Getting the document from the backup-original.");
+ VamsasDocument vadoc;
VamsasArchiveReader vread = va.getOriginalArchiveReader();
+
+ vadoc = va.getVamsasDocument();
+ log.info("Got document. Adding stuff.");
+
if (vread.getAppdataStream(appdata_ref)!=null) {
int i=0;
while (vread.getAppdataStream(appdata_ref+"/"+Integer.toString(++i))!=null)
apdos.writeObject(appdata_ref);
apdos.writeObject(apuser); // some random content
apdos.close(); // this should *not* close the archive!
+ log.info("Written Appdata Stream");
log.info("Preparing to write new document.");
doc.addApplicationData(appdata);
doc.addVAMSAS(Core.getDemoVamsas());
- PrintWriter vxml = varchive.getDocumentOutputStream();
- doc.marshal(vxml);
+ va.putVamsasDocument(doc); // gets stream and puts it.
// TODO: verify that the vxml stream close method overridden ?
va.closeArchive();
log.info("Dump of new vamsas document :");
va = new org.vamsas.client.simpleclient.VamsasArchive(backup, true); // TODO - refactor Reader class to have deserializing helpers
ArchiveReports.reportDocument(va.getVamsasDocument(), va.getOriginalArchiveReader(), true);
- backup.delete(); // tidy up
+ // backup.delete(); // tidy up
}
- log.info("Cancelling write to original archive "+av);
+ log.info("Now Cancelling write to original archive "+av);
varchive.cancelArchive();
} catch (Exception e) {