From: Stefan K. <sh...@us...> - 2006-02-23 22:28:33
|
Update of /cvsroot/cdk/cdkweb/src/java/org/openscience/cdkweb In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22207/src/java/org/openscience/cdkweb Modified Files: CdkwebServlet.java Log Message: adds an rss feed Index: CdkwebServlet.java =================================================================== RCS file: /cvsroot/cdk/cdkweb/src/java/org/openscience/cdkweb/CdkwebServlet.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- CdkwebServlet.java 21 Feb 2006 22:34:37 -0000 1.4 +++ CdkwebServlet.java 23 Feb 2006 22:28:28 -0000 1.5 @@ -1,9 +1,8 @@ package org.openscience.cdkweb; -import java.io.BufferedReader; -import java.io.FileReader; import java.io.IOException; import java.io.PrintWriter; +import java.sql.Connection; import java.text.DecimalFormat; import java.util.HashMap; import java.util.Iterator; @@ -16,20 +15,24 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.FileItemFactory; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; -import org.apache.commons.fileupload.FileItem; +import org.apache.torque.Torque; +import org.apache.turbine.util.ServletUtils; import org.openscience.cdk.DefaultChemObjectBuilder; +import org.openscience.cdk.SetOfAtomContainers; import org.openscience.cdk.interfaces.IAtomContainer; import org.openscience.cdk.interfaces.IMolecule; +import org.openscience.cdk.io.RssWriter; import org.openscience.cdk.io.iterator.IteratingMDLReader; +import org.openscience.cdkweb.om.DBMoleculePeer; import org.openscience.cdkweb.util.GeneralUtils; import org.openscience.cdkweb.util.displayStructure; import org.openscience.cdkweb.util.displayStructureAsPDFTable; -import com.lowagie.text.Document; -import com.lowagie.text.pdf.PdfPTable; +import com.workingdogs.village.Record; @@ -59,7 +62,37 @@ public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { PrintWriter out = null; ServletOutputStream outstream=null; - try { + try { + String action = req.getParameter("nmrshiftdbaction"); + if (action.equals("test")){ + try{ + res.setContentType("text/plain"); + out = res.getWriter(); + /*List l=DBSpectrumPeer.executeQuery("select SPECTRUM_ID from SPECTRUM limit 1"); + if(l.size()>0) + spectrumId=((Record)l.get(0)).getValue(1).asInt(); + out.write("success");*/ + } + catch(Exception ex){ + out.write("failure"); + } + }else if(action.equals("rss")){ + res.setContentType("text/xml"); + out = res.getWriter(); + RssWriter writer=new RssWriter(); + writer.setWriter(out); + int numberofmols=Integer.parseInt(req.getParameter("numberofmols")); + String relativepath = ServletUtils.expandRelative(this.getServletConfig(),"/WEB-INF"); + Torque.init(relativepath +"/conf/Torque.properties"); + Connection dbconn=Torque.getConnection("allmolecules"); + List l=DBMoleculePeer.executeQuery("SELECT MOLECULE_ID from MOLECULE order by DATE desc limit "+numberofmols); + SetOfAtomContainers soacs=new SetOfAtomContainers(); + for(int i=0;i<l.size();i++){ + soacs.addAtomContainer(((DBMoleculePeer.retrieveByPK(((Record) l.get(i)).getValue(1).asInt()).getAsCDKMoleculeAsEntered(1,dbconn)))); + } + writer.write(soacs); + out.flush(); + }else if( action.equals("pdf")){ res.setContentType("application/pdf"); outstream=res.getOutputStream(); @@ -100,10 +133,10 @@ ds.close(); outstream.flush(); } - catch (Exception ex) { - ex.printStackTrace(); - out.print(GeneralUtils.logError(ex,"NmrshiftdbServlet",null)); - out.flush(); - } + }catch (Exception ex) { + ex.printStackTrace(); + out.print(GeneralUtils.logError(ex,"NmrshiftdbServlet",null)); + out.flush(); + } } } |