[Nmrshiftdb-devel] CVS: nmrshiftdb/src/java/org/openscience/nmrshiftdb/portlets ResultPortlet.java,1
Brought to you by:
steinbeck
|
From: Stefan K. <sk...@us...> - 2002-03-11 13:17:43
|
Update of /cvsroot/nmrshiftdb/nmrshiftdb/src/java/org/openscience/nmrshiftdb/portlets In directory usw-pr-cvs1:/tmp/cvs-serv16932 Modified Files: ResultPortlet.java SubmitPortlet.java Log Message: by submitting a molecule a fingerprint is written to the database Index: ResultPortlet.java =================================================================== RCS file: /cvsroot/nmrshiftdb/nmrshiftdb/src/java/org/openscience/nmrshiftdb/portlets/ResultPortlet.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** ResultPortlet.java 19 Feb 2002 17:04:06 -0000 1.2 --- ResultPortlet.java 11 Mar 2002 13:17:39 -0000 1.3 *************** *** 7,10 **** --- 7,16 ---- import org.apache.jetspeed.util.servlet.*; import javax.servlet.http.*; + import org.openscience.cdk.io.MDLReader; + import org.openscience.cdk.Molecule; + import java.io.*; + import org.apache.turbine.util.Log; + import java.util.BitSet; + import org.openscience.cdk.fingerprint.Fingerprinter; /** *************** *** 14,18 **** *@created 12. Februar 2002 */ ! public class ResultPortlet extends AbstractPortlet { /** * Gets the content attribute of the ResultPortlet object --- 20,25 ---- *@created 12. Februar 2002 */ ! public class ResultPortlet extends AbstractPortlet ! { /** * Gets the content attribute of the ResultPortlet object *************** *** 21,31 **** *@return The content value */ ! public ConcreteElement getContent(RunData runData) { HttpServletRequest req = runData.getRequest(); String spec = req.getParameter("spectrum"); ! return (new StringElement("<html><body>Your result is:" + spec + "</body></html>")); } - } - - --- 28,56 ---- *@return The content value */ ! public ConcreteElement getContent(RunData runData) ! { HttpServletRequest req = runData.getRequest(); String spec = req.getParameter("spectrum"); ! ! String struc = ""; ! MDLReader mdlReader = new MDLReader(new StringReader(req.getParameter("MolTxt"))); ! Molecule mol = new Molecule(); ! try ! { ! mol = (Molecule) mdlReader.read(new Molecule()); ! Fingerprinter fprinter = new Fingerprinter(); ! BitSet fprint = fprinter.getFingerprint(mol); ! struc = fprint.toString(); ! } ! catch (Throwable ex) ! { ! Log.debug("Fehler1: " + ex.getMessage()); ! StringWriter strWr = new StringWriter(); ! PrintWriter prWr = new PrintWriter(strWr); ! ex.printStackTrace(prWr); ! Log.debug(strWr.toString()); ! } ! ! return (new StringElement("<html><body>Your result is:" + spec + " <br> fingerprint: " + struc + "<br> getAtomCount " + mol.getAtomCount()+ "</body></html>")); } } Index: SubmitPortlet.java =================================================================== RCS file: /cvsroot/nmrshiftdb/nmrshiftdb/src/java/org/openscience/nmrshiftdb/portlets/SubmitPortlet.java,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -r1.12 -r1.13 *** SubmitPortlet.java 8 Mar 2002 10:46:53 -0000 1.12 --- SubmitPortlet.java 11 Mar 2002 13:17:39 -0000 1.13 *************** *** 27,30 **** --- 27,32 ---- import java.io.*; + import java.lang.String; + import java.math.BigInteger; import JSX.*; *************** *** 185,188 **** --- 187,227 ---- dbmol.setMolecularWeight(new MFAnalyser(mol).getMass()); dbmol.setFingerprint(Fingerprinter.getFingerprint(mol).toString().getBytes()); + + byte[] bfinger = Fingerprinter.getFingerprint(mol).toString().getBytes(); + System.err.println("bfinger.length: " + bfinger.length + ""); + dbmol.setMolecularFormula(bfinger.length + ""); + byte[] subfinger = getSubByteArray(bfinger, 8); + dbmol.setFingerprint1((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 16); + dbmol.setFingerprint2((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 24); + dbmol.setFingerprint3((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 32); + dbmol.setFingerprint4((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 40); + dbmol.setFingerprint5((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 48); + dbmol.setFingerprint6((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 56); + dbmol.setFingerprint7((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 64); + dbmol.setFingerprint8((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 72); + dbmol.setFingerprint9((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 80); + dbmol.setFingerprint10((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 88); + dbmol.setFingerprint11((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 96); + dbmol.setFingerprint12((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 104); + dbmol.setFingerprint13((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 112); + dbmol.setFingerprint14((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 120); + dbmol.setFingerprint15((new BigInteger(subfinger)).longValue()); + subfinger = getSubByteArray(bfinger, 128); + dbmol.setFingerprint16((new BigInteger(subfinger)).longValue()); + NmrshiftdbUser user=(NmrshiftdbUser)runData.getUser(); dbmol.setUserId((NumberKey)user.getPrimaryKey()); *************** *** 210,214 **** spectrum.setDBMolecule(dbmol); spectrum.setUserId((NumberKey)user.getPrimaryKey()); ! spectrum.setFingerprint(subData.getMolecule().getBytes());//not yet final spectrum.setSpectrumTypeId(new NumberKey(12));//not yet final spectrum.setDBMeasurementCondition(conds); --- 249,253 ---- spectrum.setDBMolecule(dbmol); spectrum.setUserId((NumberKey)user.getPrimaryKey()); ! //spectrum.setFingerprint(subData.getMolecule().getBytes());//not yet final spectrum.setSpectrumTypeId(new NumberKey(12));//not yet final spectrum.setDBMeasurementCondition(conds); *************** *** 295,298 **** --- 334,352 ---- } return (new StringElement(returnValue)); + } + + private byte[] getSubByteArray(byte[] b, int pos) + { + byte returnb[] = new byte[8]; + if(pos >= 8 && pos < b.length) + { + for(int i = 0; i <= 7; i++) + { + returnb[i] = b[pos - 8 + i]; + System.err.println("returnb: " + returnb); + System.err.println("b.length: " + b.length + ""); + } + } + return returnb; } |