Alignment API and Server 4.0

fr.inrialpes.exmo.align.service
Class AServProtocolManager

java.lang.Object
  extended by fr.inrialpes.exmo.align.service.AServProtocolManager

public class AServProtocolManager
extends Object

This is the main class that control the behaviour of the Alignment Server It is as independent from the OWL API as possible. However, it is still necessary to test for the reachability of an ontology and moreover to resolve its URI for that of its source. For these reasons we still need a parser of OWL files here.


Nested Class Summary
protected  class AServProtocolManager.Aligner
           
 
Field Summary
(package private)  CacheImpl alignmentCache
           
(package private)  Properties commandLineParams
           
(package private)  Hashtable<String,Directory> directories
           
(package private)  Set<String> evaluators
           
(package private)  int localId
           
(package private)  Set<String> methods
           
(package private)  String myId
           
(package private)  Set<String> renderers
           
(package private)  Set<String> services
           
 
Constructor Summary
AServProtocolManager(Hashtable<String,Directory> dir)
          Initialization and constructor
 
Method Summary
 Message align(Message mess)
           
 Collection<Alignment> alignments()
           
 void close()
           
 Message compose(Message mess)
           
 Message eval(Message mess)
           
 Message existingAlignments(Message mess)
           
static void exploreJar(Set<String> list, Set<String> visited, Class tosubclass, JarFile jar, boolean debug)
           
 Message failure(Message mess)
           
 Message find(Message mess)
           
 void flush()
           
 Message getResults(Message mess)
          Retrieve the results (all registered result) of a particular test
 Message groupEval(Message mess)
          Evaluate a track: a set of results
 Message harden(Message mess)
           
static void implementations(Class tosubclass, Set<String> list, boolean debug)
          Utilities: Finding the implementation of an interface
static Set<String> implementations(String interfaceName)
          Display all the classes inheriting or implementing a given interface in the currently loaded packages.
static boolean implementsInterface(String classname, Class tosubclass, boolean debug)
           
 void init(DBService connection, Properties prop)
           
 Message inverse(Message mess)
           
 Message join(Message mess)
           
 Set<String> listevaluators()
           
 Set<String> listmethods()
          Extra administration primitives
 Set<String> listrenderers()
           
 Set<String> listservices()
           
 Message load(Message mess)
          Basic protocol primitives
 Message meet(Message mess)
           
 Message metadata(Message mess)
           
private  int newId()
           
 String query(String query)
           
 LoadedOntology reachable(URI uri)
          Utilities: reaching and loading ontologies
 Message render(Message mess)
           
 Message replyto(Message mess)
           
 Message replywith(Message mess)
          Ideal network implementation protocol: - publication (to some directory) registerID publishServices unregisterID (publishRenderer) (publishMethods) : can be retrieved through the classical interface.
 void reset()
           
private  Message retrieveAlignment(Message mess)
          returns null if alignment not retrieved Otherwise returns AlignmentId or an ErrorMsg
 String serverURL()
           
 void shutdown()
           
 Message store(Message mess)
          Extended protocol primitives
 boolean storedAlignment(Message mess)
           
 Message storeEval(Message mess)
          Store evaluation result from its URI
 Message storeGroupEval(Message mess)
          Store the result
 Message translate(Message mess)
           
 Message trim(Message mess)
          Extra alignment primitives All these primitives must create a new alignment and return its Id There is no way an alignment server could modify an alignment
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

alignmentCache

CacheImpl alignmentCache

commandLineParams

Properties commandLineParams

renderers

Set<String> renderers

methods

Set<String> methods

services

Set<String> services

evaluators

Set<String> evaluators

directories

Hashtable<String,Directory> directories

localId

int localId

myId

String myId
Constructor Detail

AServProtocolManager

public AServProtocolManager(Hashtable<String,Directory> dir)
Initialization and constructor

Method Detail

init

public void init(DBService connection,
                 Properties prop)
          throws SQLException,
                 AlignmentException
Throws:
SQLException
AlignmentException

close

public void close()

reset

public void reset()

flush

public void flush()

shutdown

public void shutdown()

newId

private int newId()

listmethods

public Set<String> listmethods()
Extra administration primitives


listrenderers

public Set<String> listrenderers()

listservices

public Set<String> listservices()

listevaluators

public Set<String> listevaluators()

alignments

public Collection<Alignment> alignments()

query

public String query(String query)

serverURL

public String serverURL()

load

public Message load(Message mess)
Basic protocol primitives


align

public Message align(Message mess)

retrieveAlignment

private Message retrieveAlignment(Message mess)
returns null if alignment not retrieved Otherwise returns AlignmentId or an ErrorMsg


existingAlignments

public Message existingAlignments(Message mess)

find

public Message find(Message mess)

translate

public Message translate(Message mess)

render

public Message render(Message mess)

store

public Message store(Message mess)
Extended protocol primitives


metadata

public Message metadata(Message mess)

trim

public Message trim(Message mess)
Extra alignment primitives All these primitives must create a new alignment and return its Id There is no way an alignment server could modify an alignment


harden

public Message harden(Message mess)

inverse

public Message inverse(Message mess)

meet

public Message meet(Message mess)

join

public Message join(Message mess)

compose

public Message compose(Message mess)

eval

public Message eval(Message mess)

storeEval

public Message storeEval(Message mess)
Store evaluation result from its URI


groupEval

public Message groupEval(Message mess)
Evaluate a track: a set of results


storeGroupEval

public Message storeGroupEval(Message mess)
Store the result


getResults

public Message getResults(Message mess)
Retrieve the results (all registered result) of a particular test


storedAlignment

public boolean storedAlignment(Message mess)

replywith

public Message replywith(Message mess)
Ideal network implementation protocol: - publication (to some directory) registerID publishServices unregisterID (publishRenderer) (publishMethods) : can be retrieved through the classical interface. requires a direcory - subscribe style subscribe() : ask to receive new metadata notify( metadata ) : send new metadata to subscriber unsubscribe() : update( metadata ) : update some modification requires to store the subscribers - query style: this is the classical protocol that can be done through WSDL getMetadata() getAlignment() requires to store the node that can be


replyto

public Message replyto(Message mess)

failure

public Message failure(Message mess)

reachable

public LoadedOntology reachable(URI uri)
Utilities: reaching and loading ontologies


implementations

public static void implementations(Class tosubclass,
                                   Set<String> list,
                                   boolean debug)
Utilities: Finding the implementation of an interface


exploreJar

public static void exploreJar(Set<String> list,
                              Set<String> visited,
                              Class tosubclass,
                              JarFile jar,
                              boolean debug)

implementsInterface

public static boolean implementsInterface(String classname,
                                          Class tosubclass,
                                          boolean debug)

implementations

public static Set<String> implementations(String interfaceName)
Display all the classes inheriting or implementing a given interface in the currently loaded packages.

Parameters:
interfaceName - the name of the interface to implement

Alignment API and Server 4.0

(C) INRIA & friends, 2003-2010