X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Forg%2Fvamsas%2Ftest%2Fsimpleclient%2FVamsasArchive.java;h=09ddf347801959d979ccb2a675359331c44722c1;hb=7700d838b129db99edacb208b3153546795a33c7;hp=679301905b839da5a425fc9cff4044602eb51317;hpb=d2cb3f9a881f6b937adb5c54a4b20a08eb2e99db;p=vamsas.git diff --git a/src/org/vamsas/test/simpleclient/VamsasArchive.java b/src/org/vamsas/test/simpleclient/VamsasArchive.java index 6793019..09ddf34 100644 --- a/src/org/vamsas/test/simpleclient/VamsasArchive.java +++ b/src/org/vamsas/test/simpleclient/VamsasArchive.java @@ -79,7 +79,7 @@ public class VamsasArchive { apuser.setDataReference(appdata_ref); appdata.addUser(apuser); appdata.setVersion("noggin"); - appdata.setUrn("program:/the.nog/"); + //TODO: write instance appdata appdata.setUrn("program:/the.nog/"); try { ObjectOutputStream ost = new ObjectOutputStream(va.getAppDataStream(appdata_ref)); ost.writeObject(appdata); @@ -125,12 +125,18 @@ public class VamsasArchive { } while (newf.exists()); } */ + if (newf.exists()) { + log.info("Removing existing "+newf); + newf.delete(); + } + log.info("Now writing new Archive into "+newf.getAbsolutePath()); org.vamsas.client.simpleclient.VamsasArchive va=null; { // hold lock over deletion and write of new archive. //Lock wlock = sfile.getLock(); //newf.delete(); // clear out old file. - va = new org.vamsas.client.simpleclient.VamsasArchive(newf, true, true); // , sfile); + sfile.getLock(); + va = new org.vamsas.client.simpleclient.VamsasArchive(newf, true, true, sfile); // open another and... ApplicationData appdata = makeDemoAppdata(va, "org.vamsas.test.simpleclient.VamsasArchive", "arnold Bugger esq", "disOrganised"); @@ -146,9 +152,11 @@ public class VamsasArchive { { Lock lock=sfile.getLock(); if (lock==null) - while ((lock=sfile.getLock())==null) + while ((lock=sfile.getLock())==null) { log.info("Waiting for lock."); - VamsasArchiveReader vreader = new VamsasArchiveReader(newf); + Thread.sleep(100); + } + VamsasArchiveReader vreader = new VamsasArchiveReader(sfile.getVamsasFile());// lock); // cannot do new JarFile on a locked file. // newf); SimpleDocument sdoc = new SimpleDocument("testing new vamsas write"); ArchiveReports.reportDocument(sdoc.getVamsasDocument(vreader), vreader, true, System.out); sfile.unLock(); @@ -174,14 +182,15 @@ public class VamsasArchive { va.putVamsasDocument(doc); va.closeArchive(); sfile.unLock(); - System.exit(0); log.info("Testing update: "); { Lock lock=sfile.getLock(); if (lock==null) while ((lock=sfile.getLock())==null) log.info("Waiting for lock."); - VamsasArchiveReader vreader = new VamsasArchiveReader(lock); + // VamsasArchiveReader vreader = new VamsasArchiveReader(lock); + VamsasArchiveReader vreader = new VamsasArchiveReader(newf); + SimpleDocument sdoc = new SimpleDocument("testing vamsas update"); VamsasDocument finaldoc = sdoc.getVamsasDocument(vreader); if (finaldoc!=null)