import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.vamsas.client.simpleclient.*;
-import org.vamsas.objects.core.AppDataChoice;
import org.vamsas.objects.core.ApplicationData;
import org.vamsas.objects.core.User;
import org.vamsas.objects.core.VAMSAS;
// open another and...
ApplicationData appdata = new ApplicationData();
appdata.setName("org.vamsas.test.simpleclient.VamsasArchive");
- appdata.setAppDataChoice(new AppDataChoice());
- appdata.getAppDataChoice().setData(new String("this is some test data.").getBytes());
+ appdata.setData(new String("this is some test data.").getBytes());
User apuser = new User();
apuser.setFullname("arnold Bugger esq");
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);
+
+
+ File newf=new File(av.getAbsolutePath()+"_new.zip");
+ org.vamsas.client.simpleclient.VamsasArchive va = new org.vamsas.client.simpleclient.VamsasArchive(newf, true);
log.info("Getting the document from the backup-original.");
VamsasDocument vadoc;
VamsasArchiveReader vread = va.getOriginalArchiveReader();
- vadoc = va.getVamsasDocument();
+ vadoc = doc; // putting original data into new archive.
log.info("Got document. Adding stuff.");
-
- if (vread.getAppdataStream(appdata_ref)!=null) {
- int i=0;
- while (vread.getAppdataStream(appdata_ref+"/"+Integer.toString(++i))!=null)
+ if (vread!=null) {
+ if (vread.getAppdataStream(appdata_ref)!=null) {
+ int i=0;
+ while (vread.getAppdataStream(appdata_ref+"/"+Integer.toString(++i))!=null)
;
- appdata_ref+="/"+Integer.toString(i);
+ appdata_ref+="/"+Integer.toString(i);
+ }
}
log.info("Writing an apdata reference using AppDataStream interface.");
- apuser.setAppDataChoice(new AppDataChoice());
- apuser.getAppDataChoice().setDataReference(appdata_ref);
+ apuser.setDataReference(appdata_ref);
appdata.addUser(apuser);
- // TODO: FIX CYCLIC __ensure+instance_ids
+ appdata.setVersion("noggin");
+ appdata.setUrn("program:/the.nog/");
// TODO: FIX schema - User.addUser is unsatisfiable!
- apuser.addUser(apuser);
ObjectOutputStream apdos = new ObjectOutputStream(va.getAppDataStream(appdata_ref));
apdos.writeObject(appdata_ref);
apdos.writeObject(apuser); // some random content
log.info("Preparing to write new document.");
doc.addApplicationData(appdata);
doc.addVAMSAS(Core.getDemoVamsas());
+
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
+ va = new org.vamsas.client.simpleclient.VamsasArchive(newf, true); // TODO - refactor Reader class to have deserializing helpers
ArchiveReports.reportDocument(va.getVamsasDocument(), va.getOriginalArchiveReader(), true);
// backup.delete(); // tidy up
}