|
Alignment API and Server 4.1.${version.update} | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectfr.inrialpes.exmo.align.service.CacheImpl
public class CacheImpl
This class caches the content of the alignment database. I.e., It loads the metadata in the hash table It stores the alignment when requested It
Field Summary | |
---|---|
(package private) Hashtable<String,Alignment> |
alignmentTable
|
static String |
CACHED
|
(package private) Connection |
conn
|
(package private) int |
CONNECTION_ERROR
|
(package private) String |
host
|
(package private) int |
INIT_ERROR
|
(package private) Hashtable<URI,Set<Alignment>> |
ontologyTable
|
static String |
OURI1
|
static String |
OURI2
|
(package private) String |
port
|
(package private) int |
rights
|
(package private) DBService |
service
|
static String |
STORED
|
(package private) int |
SUCCESS
|
static String |
SVCNS
|
(package private) int |
VERSION
|
Constructor Summary | |
---|---|
CacheImpl(DBService serv)
|
Method Summary | |
---|---|
protected Collection<Alignment> |
alignments()
|
void |
changeColumnType(Statement st,
String tableName,
String columnName,
String newType)
|
void |
cleanUpCache()
|
void |
close()
|
Statement |
createStatement()
|
protected void |
flushAlignment(Alignment alignment)
unload the cells of an alignment... |
protected void |
flushCache()
|
String |
generateAlignmentId()
|
private String |
generateCellId(String alId)
|
Alignment |
getAlignment(String id)
retrieve full alignment from id (and cache it) |
Set<Alignment> |
getAlignments(URI uri)
|
Set<Alignment> |
getAlignments(URI uri1,
URI uri2)
returns the alignments between two ontologies if one of the ontologies is null, then return them all |
Alignment |
getMetadata(String id)
retrieve alignment metadata from id This is more difficult because we return the alignment we have disreagarding if it is complete o only metadata |
void |
init(Properties p)
loads the alignment descriptions from the database and put them in the alignmentTable hashtable |
void |
initDatabase()
|
boolean |
isAlignmentStored(Alignment alignment)
|
protected Enumeration<Alignment> |
listAlignments()
|
private void |
loadAlignments(boolean force)
loads the alignment descriptions from the database and put them in the alignmentTable hashtable index them under the ontology URIs |
String |
quote(String s)
quote: Prepare a string to be used in SQL queries by preceeding occurences of "'", """, and "\" by a "\". |
private int |
randomNum()
|
String |
recordAlignment(String id,
Alignment alignment,
boolean force)
records alignment identified by id |
String |
recordNewAlignment(Alignment alignment,
boolean force)
records newly created alignment |
String |
recordNewAlignment(String id,
Alignment al,
boolean force)
records alignment identified by id |
void |
renameColumn(Statement st,
String tableName,
String oldName,
String newName,
String newType)
|
void |
reset()
|
void |
resetCacheStamp(Alignment result)
|
void |
resetDatabase(boolean force)
|
protected Alignment |
retrieveAlignment(String id,
Alignment alignment)
loads the full alignments from the database and put them in the alignmentTable hastable should be invoked when: ( result.getExtension(CACHED) == "" && result.getExtension(STORED) != "") { |
protected Alignment |
retrieveDescription(String id)
loads the description of alignments from the database and set them in an alignment object Beware, the Alignment API has two attributes: onto1 is the Ontology object uri1 is the URI object from which loading the ontologies In the database we store: ontology1 the URI string of the ontology file1 the URI string from which loading the ontologies uri1 which should be the same as the last one... |
void |
storeAlignment(String id)
|
void |
unstoreAlignment(String id)
Non publicised class |
void |
updateDatabase()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
Hashtable<String,Alignment> alignmentTable
Hashtable<URI,Set<Alignment>> ontologyTable
String host
String port
int rights
final int VERSION
DBService service
Connection conn
final int CONNECTION_ERROR
final int SUCCESS
final int INIT_ERROR
public static final String SVCNS
public static final String CACHED
public static final String STORED
public static final String OURI1
public static final String OURI2
Constructor Detail |
---|
public CacheImpl(DBService serv)
Method Detail |
---|
public void reset() throws SQLException
SQLException
public void init(Properties p) throws SQLException, AlignmentException
SQLException
AlignmentException
public void close() throws SQLException
SQLException
public Statement createStatement() throws SQLException
SQLException
private void loadAlignments(boolean force) throws SQLException
SQLException
protected Enumeration<Alignment> listAlignments()
protected Collection<Alignment> alignments()
protected void flushCache()
protected Alignment retrieveDescription(String id)
protected Alignment retrieveAlignment(String id, Alignment alignment) throws SQLException, AlignmentException, URISyntaxException
SQLException
AlignmentException
URISyntaxException
protected void flushAlignment(Alignment alignment)
public String generateAlignmentId()
private String generateCellId(String alId)
private int randomNum()
public Alignment getMetadata(String id) throws AlignmentException
AlignmentException
public Alignment getAlignment(String id) throws AlignmentException, SQLException
AlignmentException
SQLException
public Set<Alignment> getAlignments(URI uri)
public Set<Alignment> getAlignments(URI uri1, URI uri2)
public String recordNewAlignment(Alignment alignment, boolean force)
public String recordNewAlignment(String id, Alignment al, boolean force) throws AlignmentException
AlignmentException
public String recordAlignment(String id, Alignment alignment, boolean force)
public String quote(String s)
public boolean isAlignmentStored(Alignment alignment)
public void unstoreAlignment(String id) throws SQLException, AlignmentException
SQLException
AlignmentException
public void storeAlignment(String id) throws AlignmentException, SQLException
AlignmentException
SQLException
public void resetCacheStamp(Alignment result)
public void cleanUpCache()
public void initDatabase() throws SQLException
SQLException
public void resetDatabase(boolean force) throws SQLException, AlignmentException
SQLException
AlignmentException
public void renameColumn(Statement st, String tableName, String oldName, String newName, String newType) throws SQLException
SQLException
public void changeColumnType(Statement st, String tableName, String columnName, String newType) throws SQLException
SQLException
public void updateDatabase() throws SQLException, AlignmentException
SQLException
AlignmentException
|
Alignment API and Server 4.1.${version.update} | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |