AMETAS.data.type
Class AMETASMediator

java.lang.Object
  extended byAMETAS.data.type.AMETASMediator
Direct Known Subclasses:
AMETASHybridTypeMediator, AMETASTrivialServiceMediator

public abstract class AMETASMediator
extends java.lang.Object

Basisklasse für den Vermittler der Stelle. Der Vermittler wird als ein integraler Denst von der Stelle angeboten, um einen Kontakt zwischen zwei Stellennutzern herzustellen.


Field Summary
protected  AMETASPlace m_plThePlace
          Referenz auf die Stelle.
protected  AMETASPURepository m_repPU
          Verweis auf das Repositorium.
 
Constructor Summary
AMETASMediator()
          Erzeugt einen neuen AMETASMediator.
 
Method Summary
 MediatorInfo getInfo()
          Liefert Informationen über den Mediator.
static AMETASMediator getInstance(java.lang.String sClassname)
          Methode zum Laden eines Mediators.
 KnowledgeBase[] getKnowledgeBases()
          Liefert den Satz vorhandener Wissensbasen.
 java.lang.String getName()
          Liefert die Bezeichnung des Mediators.
 boolean initialize()
          Bereitet den Mediator auf die Arbeit vor.
abstract  boolean recognizesType(AMETASType type)
          Stellt fest, ob der Mediator etwas mit dem Typ anfangen kann.
abstract  AMETASMediationResult[] request(AMETASMediationRequest req)
          Fragt beim Vermittler der Stelle nach einem Stellennutzer.
 AMETASMediationResult[] request(AMETASMediationRequest req, AMETASPlaceUserIDMask puidm, AMETASIdentityID iid)
          Fragt beim Vermittler der Stelle nach einem Stellennutzer.
 void setPlace(AMETASPlace plThePlace)
          Setzt die Referenz auf die Stelle.
 void setRepository(AMETASPURepository rep)
          Setzt einen Verweis auf das Repositorium.
abstract  AMETASType typeForString(java.lang.String sStringRep, java.lang.String sMode)
          Konstruiert einen Typ aus dem übergebenen String.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_repPU

protected AMETASPURepository m_repPU
Verweis auf das Repositorium.


m_plThePlace

protected AMETASPlace m_plThePlace
Referenz auf die Stelle.

Constructor Detail

AMETASMediator

public AMETASMediator()
Erzeugt einen neuen AMETASMediator. Es müssen aber noch die notwendigen Referenzen gesetzt werden.

Method Detail

getInstance

public static AMETASMediator getInstance(java.lang.String sClassname)
                                  throws java.lang.ClassNotFoundException
Methode zum Laden eines Mediators.

Parameters:
sClassname - Vollständiger Klassenname des Mediators.
Returns:
Instanz des Mediators.
Throws:
java.lang.ClassNotFoundException - wenn der Mediator nicht gefunden oder gestartet werden konnte.

setPlace

public void setPlace(AMETASPlace plThePlace)
Setzt die Referenz auf die Stelle.

Parameters:
plThePlace - Referenz auf die Stelle.

setRepository

public void setRepository(AMETASPURepository rep)
Setzt einen Verweis auf das Repositorium.

Parameters:
rep - Referenz auf das Repositorium.

initialize

public boolean initialize()
Bereitet den Mediator auf die Arbeit vor. Hier können Initialisierungen vorgenommen werden.

Returns:
true (Initialisierung erfolgreich).

recognizesType

public abstract boolean recognizesType(AMETASType type)
Stellt fest, ob der Mediator etwas mit dem Typ anfangen kann.

Parameters:
type - Typ.
Returns:
true, wenn der Typ anzeptabel ist, sonst false.

request

public abstract AMETASMediationResult[] request(AMETASMediationRequest req)
Fragt beim Vermittler der Stelle nach einem Stellennutzer.

Parameters:
req - Beschreibung des gewünschten Stellennutzers.
Returns:
Feld, das AMETASMediationResult-Objekte zu allen passenden Stellennutzern enthält oder null, falls die Abfrage fehlerhaft war. Wurde kein passender Stellennutzer gefunden, ist das Feld leer.

request

public AMETASMediationResult[] request(AMETASMediationRequest req,
                                       AMETASPlaceUserIDMask puidm,
                                       AMETASIdentityID iid)
Fragt beim Vermittler der Stelle nach einem Stellennutzer. Diese Methode kann zwei Filter übernehmen, die dazu dienen, eine spezielle Sicht auf das Ergebnis zu definieren.

Parameters:
req - Beschreibung des gewünschten Stellennutzers.
puidm - Maske für Stellennutzer-IDs. Ist sie null oder ist req keine Instanzanfrage, wird sie ignoriert.
iid - Identitäts-ID des Starters. Ist sie null oder ist req keine Instanzanfrage, wird sie ignoriert.
Returns:
Feld, das AMETASMediationResult-Objekte zu allen passenden Stellennutzern enthält oder null, falls die Abfrage fehlerhaft war. Wurde kein passender Stellennutzer gefunden, ist das Feld leer.
Since:
2.3.0

getKnowledgeBases

public KnowledgeBase[] getKnowledgeBases()
Liefert den Satz vorhandener Wissensbasen.

Returns:
Feld mit Wissensbasen. Diese Methode liefert null, da keine Wissensbasen definiert sind. Sie ist von speziellen Mediatoren geeignet zu überladen.

getName

public java.lang.String getName()
Liefert die Bezeichnung des Mediators. Dies ist in der Regel der vollqualifizierte Klassenname.

Returns:
Bezeichnung des Mediators.

getInfo

public MediatorInfo getInfo()
Liefert Informationen über den Mediator. Dies sind zurzeit der Name des Mediators sowie die verfügbaren Wissensbasen.

Returns:
Mediatorinformationen.

typeForString

public abstract AMETASType typeForString(java.lang.String sStringRep,
                                         java.lang.String sMode)
                                  throws TypeException
Konstruiert einen Typ aus dem übergebenen String. Dies kann der Mediator so tun, dass eine Anfrage erfolgreich sein kann; der einfachste Mediator könnte z.B. eine AMETASServiceDescription aus einem String konstruieren. Der Modus ist ein String, der vom jeweiligen Mediator korrekt zu interpretieren ist.

Parameters:
sStringRep - Typbeschreibung als String.
sMode - Modus für den Mediator.
Returns:
Instanz eines Typs.
Throws:
TypeException - wenn die Repräsentation fehlerhaft ist.