[HepData-svn] r1577 - trunk/hepdata-webapp/src/main/java/cedar/hepdata/webapp/query

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Tue 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