From: <rv...@us...> - 2009-06-25 02:39:29
|
Revision: 104 http://treebase.svn.sourceforge.net/treebase/?rev=104&view=rev Author: rvos Date: 2009-06-25 02:39:28 +0000 (Thu, 25 Jun 2009) Log Message: ----------- Added NeXML->RDF serialization, removed old, commented out code. Modified Paths: -------------- trunk/treebase-web/src/main/java/org/cipres/treebase/web/controllers/DownloadATreeController.java Modified: trunk/treebase-web/src/main/java/org/cipres/treebase/web/controllers/DownloadATreeController.java =================================================================== --- trunk/treebase-web/src/main/java/org/cipres/treebase/web/controllers/DownloadATreeController.java 2009-06-25 02:38:58 UTC (rev 103) +++ trunk/treebase-web/src/main/java/org/cipres/treebase/web/controllers/DownloadATreeController.java 2009-06-25 02:39:28 UTC (rev 104) @@ -20,29 +20,21 @@ package org.cipres.treebase.web.controllers; -//import java.io.File; -//import java.io.FileWriter; -//import java.io.IOException; - import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -//import org.apache.log4j.Logger; -import org.springframework.web.servlet.ModelAndView; -import org.springframework.web.servlet.mvc.Controller; - import org.cipres.treebase.TreebaseUtil; import org.cipres.treebase.domain.nexus.NexusDataSet; import org.cipres.treebase.domain.study.Study; import org.cipres.treebase.domain.study.StudyService; +import org.cipres.treebase.domain.taxon.TaxonLabelSet; import org.cipres.treebase.domain.tree.PhyloTree; import org.cipres.treebase.domain.tree.PhyloTreeService; import org.cipres.treebase.domain.tree.TreeBlock; import org.cipres.treebase.web.util.ControllerUtil; -//import org.cipres.treebase.web.util.WebUtil; +import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.servlet.mvc.Controller; -import org.cipres.treebase.domain.taxon.TaxonLabelSet; - /** * DownloadATreeController.java * @@ -56,7 +48,6 @@ */ public class DownloadATreeController extends AbstractDownloadController implements Controller { -// private static final Logger LOGGER = Logger.getLogger(DownloadATreeController.class); private PhyloTreeService mPhyloTreeService; private StudyService mStudyService; @@ -95,90 +86,14 @@ */ public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { - -// String sep = System.getProperty("file.separator"); if (request.getParameter("treeid") == null) { return null; } long treeid = Long.parseLong(request.getParameter("treeid")); generateAFileDynamically(request, response, treeid); return null; -// String fileName = getFileName(treeid,request); -// -// String downloadDir = request.getSession().getServletContext().getRealPath( -// "/NexusFileDownload") -// + sep + request.getRemoteUser(); -// String downloadDir = getDownloadDir(request); -// -// long start = System.currentTimeMillis(); -// -// generateAFileDynamically(request, treeid, downloadDir); -// WebUtil.downloadFile(response, downloadDir, fileName); -// -// long end = System.currentTimeMillis(); -// -// if (LOGGER.isDebugEnabled()) { -// LOGGER.debug("TIME DIFFERENCE FOR A SINGAL FILE: " + (end - start)); -// } -// -// return null; // new ModelAndView("treeList", Constants.TREE_LIST, phyloTrees); } - /** - * - * @param request - * @param pTreeId It is tree id. - * @param downloadDirName download directory where files will be created - */ - - /* - private void generateAFileDynamically( - HttpServletRequest request, - long pTreeId, - String downloadDirName) { - - Study study = ControllerUtil.findStudy(request, mStudyService); - -// File dirPath = new File(downloadDirName); -// if (!dirPath.exists()) { -// dirPath.mkdirs(); -// } - - PhyloTree tree = getPhyloTreeService().findByID(pTreeId); - TaxonLabelSet tbnlblSet = tree.getTreeBlock().getTaxonLabelSet(); - -// String tmp = getFileName(pTreeId,request); - - StringBuilder builder = new StringBuilder(); - - builder.append("#NEXUS\n\n"); - - // header: - TreebaseUtil.attachStudyHeader(study, builder); - - // taxa: - // one taxon label per line, no line number. - tbnlblSet.buildNexusBlockTaxa(builder, true, false); - - //tree block: - tree.buildNexusBlock(builder); - - generateAFileDynamically(request, pTreeId); - -// try { -// -// File file = new File(downloadDirName + TreebaseUtil.FILESEP + tmp); -// FileWriter out = new FileWriter(file); -// -// out.write(builder.toString()); -// -// out.close(); -// -// } catch (IOException e) { -// e.printStackTrace(); -// } - } -*/ @Override protected String getFileNamePrefix() { return "T"; @@ -200,6 +115,15 @@ nds.getTreeBlocks().add(treeBlock); return getNexmlService().serialize(nds); } + else if ( getFormat(request) == FORMAT_RDF ) { + NexusDataSet nds = new NexusDataSet(); + nds.getTaxonLabelSets().add(tls); + TreeBlock treeBlock = new TreeBlock(); + treeBlock.setTaxonLabelSet(tls); + treeBlock.addPhyloTree(tree); + nds.getTreeBlocks().add(treeBlock); + return getRdfaService().serialize(nds); + } else { StringBuilder builder = new StringBuilder(); builder.append("#NEXUS\n\n"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rv...@us...> - 2011-05-12 20:40:05
|
Revision: 863 http://treebase.svn.sourceforge.net/treebase/?rev=863&view=rev Author: rvos Date: 2011-05-12 20:39:59 +0000 (Thu, 12 May 2011) Log Message: ----------- Passing in the containing study to the overloaded serialize method is supposed to prevent the NPEs we were apparently getting when trying to download a tree as nexml (not a study). This should fix things. Modified Paths: -------------- trunk/treebase-web/src/main/java/org/cipres/treebase/web/controllers/DownloadATreeController.java Modified: trunk/treebase-web/src/main/java/org/cipres/treebase/web/controllers/DownloadATreeController.java =================================================================== --- trunk/treebase-web/src/main/java/org/cipres/treebase/web/controllers/DownloadATreeController.java 2011-05-12 20:36:56 UTC (rev 862) +++ trunk/treebase-web/src/main/java/org/cipres/treebase/web/controllers/DownloadATreeController.java 2011-05-12 20:39:59 UTC (rev 863) @@ -96,7 +96,7 @@ treeBlock.setTaxonLabelSet(tls); treeBlock.addPhyloTree(tree); nds.getTreeBlocks().add(treeBlock); - return getNexmlService().serialize(nds,getDefaultProperties(request)); + return getNexmlService().serialize(nds,getDefaultProperties(request),tree.getStudy()); } else if ( getFormat(request) == FORMAT_RDF ) { NexusDataSet nds = new NexusDataSet(); @@ -105,7 +105,7 @@ treeBlock.setTaxonLabelSet(tls); treeBlock.addPhyloTree(tree); nds.getTreeBlocks().add(treeBlock); - return getRdfaService().serialize(nds,getDefaultProperties(request)); + return getRdfaService().serialize(nds,getDefaultProperties(request),tree.getStudy()); } else { StringBuilder builder = new StringBuilder(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |