added test classes

git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/user/speciesdiscovery@85285 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Francesco Mangiacrapa 2013-11-11 13:19:04 +00:00
parent 085a9de6ed
commit 3285020ed8
5 changed files with 240 additions and 44 deletions

View File

@ -1,21 +1,22 @@
<?xml version="1.0" encoding="UTF-8" ?>
<persistence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
version="2.0" xmlns="http://java.sun.com/xml/ns/persistence">
<persistence-unit name="SPD_PERSISTENCE_FACTORY" transaction-type="RESOURCE_LOCAL">
<class>org.gcube.portlets.user.speciesdiscovery.shared.CommonName</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.Taxon</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.ResultRow</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.ItemParameter</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.Occurrence</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.TaxonomyRow</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.OccurrencesJob</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.TaxonomyJob</class>
<properties>
<property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/>
<property name="eclipselink.ddl-generation" value="create-tables" />
<property name="eclipselink.ddl-generation.output-mode"
value="database" />
</properties>
</persistence-unit>
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
version="2.0" xmlns="http://java.sun.com/xml/ns/persistence">
<persistence-unit name="SPD_PERSISTENCE_FACTORY"
transaction-type="RESOURCE_LOCAL">
<class>org.gcube.portlets.user.speciesdiscovery.shared.CommonName</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.Taxon</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.ResultRow</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.ItemParameter</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.Occurrence</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.TaxonomyRow</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.OccurrencesJob</class>
<class>org.gcube.portlets.user.speciesdiscovery.shared.TaxonomyJob</class>
<properties>
<property name="javax.persistence.jdbc.driver" value="org.h2.Driver" />
<property name="eclipselink.ddl-generation" value="create-tables" />
<property name="eclipselink.ddl-generation.output-mode"
value="database" />
</properties>
</persistence-unit>
</persistence>

View File

@ -20,12 +20,12 @@ public class ASLLogger {
static String user = "test.user";
static String scope = "/gcube/devsec/devVRE";
static final String SPECIES = "SPECIES";
static final String DATASOURCE_SEARCHING = "DATASOURCE SEARCHING";
static final String DATASOURCE_DOWLOADED = "DATASOURCE DOWLOADED";
static final String TAXA_QUERY = "TAXA QUERY";
static final String OCCURRENCE_QUERY = "OCCURRENCE QUERY";
// static final String SPECIES = "SPECIES";
// static final String DATASOURCE_SEARCHING = "DATASOURCE SEARCHING";
// static final String DATASOURCE_DOWLOADED = "DATASOURCE DOWLOADED";
// static final String TAXA_QUERY = "TAXA QUERY";
// static final String OCCURRENCE_QUERY = "OCCURRENCE QUERY";
//
public static void main(String[] args) {
@ -56,36 +56,63 @@ public class ASLLogger {
//DATA SOURCE
String dataSources[][] = new String[1][2];
dataSources[0][0] = "GBIF";
dataSources[0][1] = SPDAccessLoggerType.DATASOURCE_SEARCHING.getId();
String query[][] = new String[3][3];
query[0][0] = SPDAccessLoggerType.SEARCH_OCCURRENCE.getName();
query[0][1] = SPDAccessLoggerType.SEARCH_OCCURRENCE.getId();
query[1][0] = SPDAccessLoggerType.BY_SCIENTIFIC_NAME.getName();
query[1][1] = SPDAccessLoggerType.BY_SCIENTIFIC_NAME.getId();
// dataSources[1][0] = "Carcharodon carcharias";
// dataSources[1][1] = SPDAccessLoggerType.TERM_SEARCHED.getId();
query[2][0] = "GBIF";
query[2][1] = SPDAccessLoggerType.DATASOURCE_USED.getId();
SimpleSearchAccessLogEntry simpleEntry = new SimpleSearchAccessLogEntry(dataSources, "GBIF");
SimpleSearchAccessLogEntry simpleEntry = new SimpleSearchAccessLogEntry(query, "Carcharodon carcharias");
log.logEntry(user, scope, simpleEntry);
//species
query = new String[3][3];
query[0][0] = SPDAccessLoggerType.SEARCH_OCCURRENCE.getName();
query[0][1] = SPDAccessLoggerType.SEARCH_OCCURRENCE.getId();
query[1][0] = SPDAccessLoggerType.BY_SCIENTIFIC_NAME.getName();
query[1][1] = SPDAccessLoggerType.BY_SCIENTIFIC_NAME.getId();
// dataSources[1][0] = "Carcharodon carcharias";
// dataSources[1][1] = SPDAccessLoggerType.TERM_SEARCHED.getId();
query[2][0] = "GBIF; OBIS";
query[2][1] = SPDAccessLoggerType.DATASOURCE_USED.getId();
String species[][] = new String[1][2];
species[0][0] = "Sarda sarda";
species[0][1] = SPDAccessLoggerType.SPECIES.getId();
simpleEntry = new SimpleSearchAccessLogEntry(query, "Carcharodon carcharias; sarda");
simpleEntry = new SimpleSearchAccessLogEntry(species, "Sarda sarda");
log.logEntry(user, scope, simpleEntry);
//species
String job[][] = new String[3][3];
job[0][0] = SPDAccessLoggerType.JOB_SUBMITTED.getName();
job[0][1] = SPDAccessLoggerType.JOB_SUBMITTED.getId();
job[1][0] = SPDAccessLoggerType.FOR_TAXON.getName();
job[1][1] = SPDAccessLoggerType.FOR_TAXON.getId();
// dataSources[1][0] = "Carcharodon carcharias";
// dataSources[1][1] = SPDAccessLoggerType.TERM_SEARCHED.getId();
job[2][0] = "GBIF; OBIS";
job[2][1] = SPDAccessLoggerType.DATASOURCE_JOB_USED.getId();
String query[][] = new String[1][2];
query[0][0] = "Taxa Query bla bla";
query[0][1] = SPDAccessLoggerType.TAXA_QUERY.getId();
simpleEntry = new SimpleSearchAccessLogEntry(job, "Taxa 1- sarda");
simpleEntry = new SimpleSearchAccessLogEntry(query, "Taxa Query bla bla");
log.logEntry(user, scope, simpleEntry);
// //species
//
// species = new String[2][2];
// species[0][0] = "Stock";
// species[0][1] = SPDAccessLoggerType.OCCURRENCE_QUERIED.getId();
// species[1][0] = SPDAccessLoggerType.SEARCH_OCCURRENCE.getName();
// species[1][1] = SPDAccessLoggerType.SEARCH_OCCURRENCE.getId();
//
// simpleEntry = new SimpleSearchAccessLogEntry(species, "Stock");
// log.logEntry(user, scope, simpleEntry);
System.out.println("completed");
}

View File

@ -0,0 +1,46 @@
///**
// *
// */
//package org.gcube.portlets.user.speciesdiscovery.client;
//
//import org.gcube.application.framework.accesslogger.model.AccessLogEntry;
//import org.gcube.application.framework.accesslogger.model.EntryTypeConstants;
//import org.gcube.application.framework.accesslogger.model.TemplateConstants;
//
///**
// * @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
// * @Nov 8, 2013
// *
// */
//public class ContentRetrievalLogEntry extends AccessLogEntry {
//
// private String objectID;
//
// private String objectName;
//
// /**
// * Constructor
// *
// * @param objectID The ID of the object that is retrieved
// * @param objectName The name of the object that is retrieved
// */
// public ContentRetrievalLogEntry(String objectID, String objectName) {
// super(EntryTypeConstants.RETRIEVE_CONTENT_ENTRY);
//
// this.objectID = replaceReservedChars(objectID);
// this.objectName = replaceReservedChars(objectName);
// }
//
// /**
// * @return The log message for a Content retrieval entry
// */
// public String getLogMessage() {
// String message = "";
// message += TemplateConstants.CONTENT_ID + TemplateConstants.eqChar +
// this.objectID + TemplateConstants.separateCharacters + TemplateConstants.CONTENT_NAME +
// TemplateConstants.eqChar + this.objectName;
//
// return message;
// }
//
//}

View File

@ -0,0 +1,103 @@
/**
*
*/
package org.gcube.portlets.user.speciesdiscovery.client;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.HashMap;
import java.util.Map;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import org.apache.log4j.Logger;
import org.h2.jdbcx.JdbcDataSource;
/**
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
* @Nov 11, 2013
*
*/
public class DBTester {
public static final String JDBCDRIVER = "jdbc:h2:";
public static Logger logger = Logger.getLogger(DBTester.class);
public static void main(String[] a) throws Exception {
Class.forName("org.h2.Driver");
Connection conn = DriverManager.getConnection("jdbc:h2:/home/francesco-mangiacrapa/Portal-Bundle2.2/tomcat-6.0.29/persistence/h2dbspecies/h2testusergcubedevsec;create=true", "","");
// add application code here
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery("select * from TaxonomyRow");
ResultSetMetaData meta = rs.getMetaData();
int columnCount = meta.getColumnCount();
while (rs.next())
{
System.out.println("New row");
for (int i = 1; i <= columnCount; i++) {
// System.out.println("ColumName: "+ meta.getColumnName(i));
System.out.println("ColumLabel: "+meta.getColumnLabel(i));
System.out.println(rs.getString(meta.getColumnLabel(i)));
}
System.out.println("\n\n");
}
conn.close();
}
public static void getConnection() throws NamingException {
JdbcDataSource ds = new JdbcDataSource();
ds.setURL("jdbc:h2:/home/francesco-mangiacrapa/Portal-Bundle2.2/tomcat-6.0.29/persistence/h2dbspecies/h2testusergcubedevsec;create=true");
Context ctx = new InitialContext();
ctx.bind("jdbc/h2testusergcubedevsec", ds);
try {
Connection conn = ds.getConnection();
conn.createStatement().execute("Select * from TaxonomyJob");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static EntityManagerFactory createEntityManagerFactory(String connectionUrl) {
Map<String, String> properties = new HashMap<String, String>();
// properties.put("javax.persistence.jdbc.driver", jdbcDriverH2);
String jdbcUrl = JDBCDRIVER + connectionUrl + ";create=true";
logger.trace("jdbc url " + jdbcUrl);
try {
properties.put("javax.persistence.jdbc.url", jdbcUrl);
} catch (Exception e) {
logger.error("error on javax.persistence.jdbc.url " + e, e);
}
// emf = Persistence.createEntityManagerFactory("jpablogPUnit");
return Persistence.createEntityManagerFactory("SPD_PERSISTENCE_FACTORY", properties);
}
}

View File

@ -10,12 +10,31 @@ package org.gcube.portlets.user.speciesdiscovery.client;
*/
public enum SPDAccessLoggerType {
SPECIES("SPECIES", "SPECIES"),
DATASOURCE_SEARCHING("DATASOURCE_SEARCHING", "DATASOURCE SEARCHING"),
DATASOURCE_DOWLOADED("DATASOURCE_DOWLOADED", "DATASOURCE DOWLOADED"),
TAXA_QUERY("TAXA_QUERY", "TAXA QUERY"),
OCCURRENCE_QUERY("OCCURRENCE_QUERY", "OCCURRENCE QUERY"),
MAP_GENERATION("MAP_GENERATION", "MAP GENERATION");
//SEARCH -> TERM IS TERM/S SEARCHED
SEARCH_OCCURRENCE("SEARCH_OCCURRENCE", "SEARCH OCCURRENCE"),
SEARCH_TAXON("SEARCH_TAXON", "SEARCH TAXON"),
BY_COMMON_NAME("BY_COMMON_NAME", "BY COMMON NAME"),
BY_SCIENTIFIC_NAME("BY_SCIENTIFIC_NAME", "BY SCIENTIFIC NAME"),
TERM_SEARCHED("TERM_SEARCHED", "TERM SEARCHED"),
DATASOURCE_USED("DATASOURCE_USED", "DATASOURCE USED"),
//JOB -> TERM IS JOB NAME
JOB_SUBMITTED("JOB_SUBMITTED", "JOB SUBMITTED"),
FOR_OCCURRENCE("FOR_OCCURRENCE", "FOR OCCURRENCE"),
FOR_TAXON("FOR_TAXON", "FOR TAXON"),
DATASOURCE_JOB_USED("DATASOURCE_JOB_USED", "DATASOURCE JOB USED"),
//SAVE -> TERM IS JOB NAME
JOB_SAVED("JOB_SAVED", "JOB SAVED"),
// FOR_OCCURRENCE("FOR_OCCURRENCE", "FOR OCCURRENCE"),
// FOR_TAXON("FOR_TAXON", "FOR TAXON"),
DATASOURCE_JOB_DOWLOADED("DATASOURCE_JOB_DOWLOADED", "DATASOURCE JOB DOWLOADED"),
//MAP -> TERM IS TERM/S SEARCHED
MAP_GENERATED("MAP_GENERATED", "MAP GENERATED"),
// FOR_OCCURRENCE("FOR_OCCURRENCE", "FOR OCCURRENCE"),
// FOR_TAXON("FOR_TAXON", "FOR TAXON"),
DATASOURCE_MAP_GENERATED("DATASOURCE_MAP_GENERATED", "DATASOURCE MAP GENERATED");
private String name;
private String id;