X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Forg%2Fvamsas%2Ftest%2Fsimpleclient%2FVamsasArchive.java;h=91dc35efb89c6860d2a2ed54a0c7a865b55f62cf;hb=2b329d524c11576c358e631d2005640fd51b1c55;hp=ceae705ae7ec5d809fbc6e3f063d261775efe8d2;hpb=8d474dd77c01354948a5db3ee135e04af8f97503;p=vamsas.git diff --git a/src/org/vamsas/test/simpleclient/VamsasArchive.java b/src/org/vamsas/test/simpleclient/VamsasArchive.java index ceae705..91dc35e 100644 --- a/src/org/vamsas/test/simpleclient/VamsasArchive.java +++ b/src/org/vamsas/test/simpleclient/VamsasArchive.java @@ -10,7 +10,6 @@ import java.io.PrintWriter; 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; @@ -55,33 +54,35 @@ public class VamsasArchive { // 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 @@ -90,11 +91,13 @@ public class VamsasArchive { 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 }