diff --git a/src/fr/inrialpes/exmo/align/service/CacheImpl.java b/src/fr/inrialpes/exmo/align/service/CacheImpl.java index dae4cbe72c4c400c8e154332e8df2d88faffec18..82c403a1a831b2c03acefa866e309cd1a1edd6e0 100644 --- a/src/fr/inrialpes/exmo/align/service/CacheImpl.java +++ b/src/fr/inrialpes/exmo/align/service/CacheImpl.java @@ -25,6 +25,8 @@ import java.util.Hashtable; import java.util.Vector; import java.util.Set; import java.util.HashSet; +import java.util.Date; +import java.util.Random; import java.net.URI; import java.net.URISyntaxException; @@ -38,7 +40,7 @@ import org.semanticweb.owl.util.OWLManager; import org.semanticweb.owl.model.OWLEntity; import org.semanticweb.owl.model.OWLOntology; import org.semanticweb.owl.model.OWLException; -import org.semanticweb.owl.util.OWLManager; +//import org.semanticweb.owl.util.OWLManager; import fr.inrialpes.exmo.align.impl.BasicRelation; import fr.inrialpes.exmo.align.impl.BasicAlignment; @@ -47,9 +49,8 @@ import org.semanticweb.owl.align.Alignment; import org.semanticweb.owl.align.AlignmentException; import org.semanticweb.owl.align.Cell; -import org.semanticweb.owl.model.OWLEntity; -import org.semanticweb.owl.model.OWLOntology; -import org.semanticweb.owl.model.OWLException; +//import org.semanticweb.owl.model.OWLEntity; +//import org.semanticweb.owl.model.OWLOntology; /** * This class caches the content of the alignment database. I.e., @@ -130,8 +131,6 @@ public class CacheImpl implements Cache { String query; String tag; String method; - OWLEntity ent1 = null, ent2 = null; - Cell cell = null; Alignment result = new BasicAlignment(); @@ -143,7 +142,7 @@ public class CacheImpl implements Cache { result.setFile1(new URI(rs.getString("uri1"))); result.setFile2(new URI(rs.getString("uri2"))); result.setLevel(rs.getString("level")); - result.setType(rs.getString("type")); + result.setType(rs.getString("type")); } // Get extension metadata @@ -217,7 +216,16 @@ public class CacheImpl implements Cache { private String generateAlignmentId() { // Generate an id based on a URI prefix + Date + random number - return "http://blavlacestmoi"; + Date date; + String id; + date = new Date(); + id = "http://blavlacestmoi" + date.getTime() + randomNum(); + return id; + } + + private int randomNum() { + Random rand = new Random(System.currentTimeMillis()); + return Math.abs(rand.nextInt(1000)); } //********************************************************************** @@ -226,11 +234,14 @@ public class CacheImpl implements Cache { */ public Alignment getMetadata( String id ) { Alignment result = null; - String query = null; +// String query = null; result = (Alignment)alignmentTable.get( id ); - - // Raise an exception if no result + +// Raise an exception if no result (by Seungkeun) + if(result == null) { + System.out.println("Metadata Loading Error in CacheImpl.getMetadata"); + } return result; } @@ -239,15 +250,18 @@ public class CacheImpl implements Cache { */ public Alignment getAlignment( String id ) throws Exception { Alignment result = null; - String query = null; +// String query = null; result = (Alignment)alignmentTable.get( id ); - - if ( result.getExtension("fr.inrialpes.exmo.align.service.cached") == "" && result.getExtension("fr.inrialpes.exmo.align.service.stored") != "") { + +// Raise an exception if no result + if(result == null) { + System.out.println("Metadata Loading Error in CacheImpl.getMetadata"); + } + else if ( result.getExtension("fr.inrialpes.exmo.align.service.cached") == "" && result.getExtension("fr.inrialpes.exmo.align.service.stored") != "") { retrieveAlignment( id, result ); - } - - // Raise an exception if no result + } + return result; } @@ -365,6 +379,4 @@ public class CacheImpl implements Cache { parser.setConnection(OWLManager.getOWLConnection()); return parser.parseOntology(uri); } - - } diff --git a/src/fr/inrialpes/exmo/align/service/DBService.java b/src/fr/inrialpes/exmo/align/service/DBService.java index 8a938432c2043089b52fc778333fd4dbe087dea8..91beb85f77a803d4099731c2206584d672bd7934 100644 --- a/src/fr/inrialpes/exmo/align/service/DBService.java +++ b/src/fr/inrialpes/exmo/align/service/DBService.java @@ -20,7 +20,7 @@ package fr.inrialpes.exmo.align.service; -import java.net.URI; +//import java.net.URI; import java.sql.Connection; import java.sql.SQLException; diff --git a/src/fr/inrialpes/exmo/align/service/DBServiceImpl.java b/src/fr/inrialpes/exmo/align/service/DBServiceImpl.java index 2724590065392034cd7a9520dfdf2f11a842595b..6ed6f76b7ba385955548819fced5fa3f06241ef7 100644 --- a/src/fr/inrialpes/exmo/align/service/DBServiceImpl.java +++ b/src/fr/inrialpes/exmo/align/service/DBServiceImpl.java @@ -22,8 +22,7 @@ package fr.inrialpes.exmo.align.service; import java.lang.ClassNotFoundException; import java.lang.IllegalAccessException; -import java.util.Vector; -import java.net.URI; + import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; @@ -41,6 +40,7 @@ public class DBServiceImpl implements DBService{ String driverPrefix = "jdbc:mysql"; Statement st = null; ResultSet rs = null; + Cache cache = null; public DBServiceImpl() throws ClassNotFoundException, InstantiationException, IllegalAccessException { Class.forName("com.mysql.jdbc.Driver").newInstance(); @@ -51,7 +51,8 @@ public class DBServiceImpl implements DBService{ driverPrefix = prefix; } - public void init() {}; + public void init() { + } public void connect( String password ) throws SQLException { connect( IPAddress, port, user, password ); @@ -68,14 +69,14 @@ public class DBServiceImpl implements DBService{ public void connect(String IPAddress, String port, String user, String password ) throws SQLException { conn = DriverManager.getConnection(driverPrefix+"://"+IPAddress+":"+port+"/DBService", user, password); st = (Statement) conn.createStatement(); - } + } public Connection getConnection() { return conn; } // JE: I think that there is no interest now - public synchronized long nextID(){ +/* public synchronized long nextID(){ long id = 0; try { st.executeUpdate("insert into id_seq (aa) values ('a')"); @@ -90,7 +91,7 @@ public class DBServiceImpl implements DBService{ return -1; } return id; - } + } */ public void close() { try { @@ -98,7 +99,7 @@ public class DBServiceImpl implements DBService{ st.close(); rs.close(); } catch (Exception ex) { - // Do something + System.out.println("DB Closing Error"); } } diff --git a/src/fr/inrialpes/exmo/align/service/dbschema.sql b/src/fr/inrialpes/exmo/align/service/dbschema.sql index 0e456999da2e0a1e3a0f48e583350909deb0e728..d7accac438a2460ba1acbdb8f0c465fb81414345 100644 --- a/src/fr/inrialpes/exmo/align/service/dbschema.sql +++ b/src/fr/inrialpes/exmo/align/service/dbschema.sql @@ -1,14 +1,7 @@ -// id tabel - -create table id_seq( - id bigint not null auto_increment, - primary key (id), - aa char(1)); - // alignment info create table alignment ( - id varchar(10), + id varchar(50), owlontology1 varchar(100), owlontology2 varchar(100), type varchar(5), @@ -22,7 +15,7 @@ create table alignment ( // cell info create table cell( - id varchar(10), + id varchar(50), cell_id varchar(20), uri1 varchar(100), uri2 varchar(100), @@ -34,6 +27,6 @@ create table cell( // cell method create table method( - id varchar(10), + id varchar(50), tag varchar(20), - extension varchar(100)) \ No newline at end of file + extension varchar(100)); \ No newline at end of file