1 package org.vamsas.test.simpleclient;
3 import java.io.BufferedInputStream;
5 import java.io.InputStream;
6 import java.io.InputStreamReader;
9 import uk.ac.vamsas.client.simpleclient.VamsasArchiveReader;
10 import uk.ac.vamsas.objects.core.VAMSAS;
11 import uk.ac.vamsas.objects.core.VamsasDocument;
13 public class ArchiveReader {
15 * tests VamsasArchiveReader archive reader on a vamsas jar file
18 public static void main(String args[]) {
21 File av = new File(args[0]);
22 VamsasArchiveReader var = new VamsasArchiveReader(av);
25 InputStreamReader vdoc = new InputStreamReader(var.getVamsasDocumentStream());
26 VamsasDocument doc = VamsasDocument.unmarshal(vdoc);
27 if (ArchiveReports.reportDocument(doc, var, true, System.out)) {
28 roots = doc.getVAMSAS();
31 InputStream vxmlis = var.getVamsasXmlStream();
33 if (vxmlis!=null) { // Might be an old vamsas file.
34 BufferedInputStream ixml = new BufferedInputStream(var.getVamsasXmlStream());
35 InputStreamReader vxml = new InputStreamReader(ixml);
37 // unmarshal seems to always close the stream (should check this)
38 if ((root = VAMSAS.unmarshal(vxml))!=null) {
39 System.out.println("Read a root.");
40 roots = new VAMSAS[1];
45 if (!ArchiveReports.rootReport(roots, true, System.out))
46 System.err.print(args[0]+" is not a valid vamsas archive.");
47 } catch (Exception e) {
48 e.printStackTrace(System.err);