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. |