|
From: <rv...@us...> - 2009-06-19 02:17:13
|
Revision: 67
http://treebase.svn.sourceforge.net/treebase/?rev=67&view=rev
Author: rvos
Date: 2009-06-19 02:17:12 +0000 (Fri, 19 Jun 2009)
Log Message:
-----------
Implemented serialize() methods.
Modified Paths:
--------------
trunk/treebase-core/src/main/java/org/cipres/treebase/service/nexus/NexusServiceNexml.java
Modified: trunk/treebase-core/src/main/java/org/cipres/treebase/service/nexus/NexusServiceNexml.java
===================================================================
--- trunk/treebase-core/src/main/java/org/cipres/treebase/service/nexus/NexusServiceNexml.java 2009-06-19 02:16:12 UTC (rev 66)
+++ trunk/treebase-core/src/main/java/org/cipres/treebase/service/nexus/NexusServiceNexml.java 2009-06-19 02:17:12 UTC (rev 67)
@@ -3,18 +3,25 @@
import java.io.File;
import java.util.Collection;
+import javax.xml.parsers.ParserConfigurationException;
+
import org.apache.log4j.Logger;
import org.cipres.treebase.domain.DomainHome;
import org.cipres.treebase.domain.nexus.NexusDataSet;
import org.cipres.treebase.domain.nexus.NexusService;
import org.cipres.treebase.domain.nexus.nexml.NexmlConverter;
+import org.cipres.treebase.domain.nexus.nexml.NexmlDocumentConverter;
import org.cipres.treebase.domain.study.Study;
+import org.cipres.treebase.domain.taxon.TaxonLabelHome;
import org.cipres.treebase.event.ProgressionListener;
import org.cipres.treebase.service.AbstractServiceImpl;
+import org.nexml.model.Document;
+import org.nexml.model.DocumentFactory;
public class NexusServiceNexml extends AbstractServiceImpl implements NexusService {
private static final Logger LOGGER = Logger.getLogger(NexusServiceNexml.class);
private DomainHome mDomainHome;
+ private TaxonLabelHome mTaxonLabelHome;
@Override
public Class defaultResultClass() {
@@ -32,8 +39,12 @@
public NexusDataSet parseNexus(Study study, Collection<File> nexusFiles,
ProgressionListener listener) {
- // TODO Auto-generated method stub
- return null;
+ NexusDataSet data = new NexusDataSet();
+ NexmlConverter converter = new NexmlConverter();
+ for ( File nexusFile : nexusFiles ) {
+ converter.parseOneFile(nexusFile, study, data);
+ }
+ return data;
}
public NexusDataSet parseNexus(Study study, File nexusFile) {
@@ -49,4 +60,34 @@
return data;
}
+ public String serialize(NexusDataSet nexusDataSet) {
+ Document document = null;
+ try {
+ document = DocumentFactory.createDocument();
+ } catch (ParserConfigurationException e) {
+ e.printStackTrace();
+ }
+ NexmlDocumentConverter ndc = new NexmlDocumentConverter(null,getTaxonLabelHome(),document);
+ return ndc.fromTreeBaseToXml(nexusDataSet).getXmlString();
+ }
+
+ public String serialize(Study study) {
+ Document document = null;
+ try {
+ document = DocumentFactory.createDocument();
+ } catch (ParserConfigurationException e) {
+ e.printStackTrace();
+ }
+ NexmlDocumentConverter ndc = new NexmlDocumentConverter(study,getTaxonLabelHome(),document);
+ return ndc.fromTreeBaseToXml(study).getXmlString();
+ }
+
+ public TaxonLabelHome getTaxonLabelHome() {
+ return mTaxonLabelHome;
+ }
+
+ public void setTaxonLabelHome(TaxonLabelHome taxonLabelHome) {
+ mTaxonLabelHome = taxonLabelHome;
+ }
+
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|