|
[HepData-svn] r1577 - trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/queryblackhole at projects.hepforge.org blackhole at projects.hepforge.orgTue Oct 2 11:52:24 BST 2012
Author: whalley Date: Tue Oct 2 11:52:24 2012 New Revision: 1577 Log: updates and addtions for locating with DOI for Elsevier Modified: trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/query/ConstructQueryPaper.java Modified: trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/query/ConstructQueryPaper.java ============================================================================== --- trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/query/ConstructQueryPaper.java Tue Oct 2 11:51:25 2012 (r1576) +++ trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/query/ConstructQueryPaper.java Tue Oct 2 11:52:24 2012 (r1577) @@ -68,6 +68,7 @@ String sqrts = null; String spiresid = null; String inspireid = null; + String doi = null; String redid = null; String experiment = null; String author = null; @@ -89,6 +90,7 @@ if(parts[0].equals("OBS")) {observable = parts[1];} if(parts[0].equals("IRN")) {spiresid = parts[1];} if(parts[0].equals("INS")) {inspireid = parts[1];} + if(parts[0].equals("DOI")) {doi = parts[1];} if(parts[0].equals("RED")) {redid = parts[1];} if(parts[0].equals("EXP") || parts[0].equals("DE") || parts[0].equals("CN")) {experiment = parts[1];} if(parts[0].equals("AUTH") || parts[0].equals("A") || parts[0].equals("AUTHOR") ) {author = parts[1];} @@ -154,6 +156,7 @@ } if(spiresid != null) { return SpiresId(spiresid,flag,_session);} else if(inspireid != null) { return InspireId(inspireid,flag,_session);} + else if(doi != null) { return Doi(doi,flag,_session);} else if(redid != null) { return RedId(redid,flag,_session);} else if(author != null) { return Author(author,flag,_session);} else if(dsreaction!= null) { return DsReaction(dsreaction,dsobservable,flag,_session);} @@ -656,6 +659,24 @@ return q; } +////// query constructor for DOI (doi) only/// + public static Query Doi(String doi,String flag, org.hibernate.Session _session){ + Query q=null; + StringBuffer b = new StringBuffer(); + + if (flag.equals("count")){ + b.append("select count(distinct p) from Paper p"); + } + else{ + b.append("select distinct p from Paper p"); + } + b.append(" where p._doi like '"); + b.append(doi); + b.append("' order by p._inspireId desc"); + q = _session.createQuery(b.toString()); + + return q; + } ////// query constructor for red only/// public static Query RedId(String redid,String flag, org.hibernate.Session _session){ // System.out.println("using RedId");
More information about the HepData-svn mailing list |