1 /*
2 wsmo4j - a WSMO API and Reference Implementation
3
4 Copyright (c) 2004-2005, OntoText Lab. / SIRMA
5
6 This library is free software; you can redistribute it and/or modify it under
7 the terms of the GNU Lesser General Public License as published by the Free
8 Software Foundation; either version 2.1 of the License, or (at your option)
9 any later version.
10 This library is distributed in the hope that it will be useful, but WITHOUT
11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
13 details.
14 You should have received a copy of the GNU Lesser General Public License along
15 with this library; if not, write to the Free Software Foundation, Inc.,
16 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 */
18
19 /**
20 * <p>Title: WSMO4J</p>
21 * <p>Description: WSMO API and a Reference Implementation</p>
22 * <p>Copyright: Copyright (c) 2004-2005</p>
23 * <p>Company: OntoText Lab. / SIRMA </p>
24 */
25
26 package org.wsmo.mediator;
27
28
29 import java.util.*;
30
31 import org.wsmo.common.*;
32 import org.wsmo.common.exception.*;
33
34
35 public interface Mediator
36 extends TopEntity {
37
38 /**
39 * Returns set of the source components for this mediator.
40 * Depending on the type of the mediator, the source component
41 * may be IRI of a TopEntity such as WebService, Goal, ... .
42 * @return : The set of the source components for this mediator.
43 * @see org.wsmo.common.IRI
44 */
45 Set <IRI> listSources()
46 throws SynchronisationException;
47
48 /**
49 * add a source component to this mediator.
50 * @param iri a source component of this mediator.
51 * @see #removeSource(IRI iri)
52 */
53 void addSource(IRI iri)
54 throws SynchronisationException, InvalidModelException;
55
56 /**
57 * remove a source component from this mediator.
58 * @param iri : a source component to remove.
59 */
60 void removeSource(IRI iri)
61 throws SynchronisationException, InvalidModelException;
62
63 /**
64 * Returns the target component of this mediator.
65 * Depending on the type of the mediator, the target component
66 * may be IRI of a TopEntity such as WebService, Goal, ... .
67 * @return : The target component (TopEntity) of this mediator.
68 * @see #setTarget(IRI target)
69 */
70 IRI getTarget()
71 throws SynchronisationException;
72
73 /**
74 * Sets the target component of this mediator.
75 * Depending on the type of the mediator, the target component may be a TopEntity such as WebService, Goal, ...
76 * @param target : The new target component.
77 * @see #getTarget()
78 */
79 void setTarget(IRI target)
80 throws SynchronisationException, InvalidModelException;
81
82 /**
83 * Returns the mediation service of this mediator.
84 * @return : The identificator of the mediation service of this mediator.
85 * @see #setMediationSerivice(Identifier medServiceID)
86 */
87 IRI getMediationService()
88 throws SynchronisationException;
89
90 /**
91 * Sets the ID of the service which performs the actual mediation.
92 * @param newServiceID The ID of the service which performs the actual mediation.
93 */
94 void setMediationService(IRI medServiceID)
95 throws SynchronisationException, InvalidModelException;
96 }
97
98 /*
99 * $Log$
100 * Revision 1.13 2007/04/02 12:13:15 morcen
101 * Generics support added to wsmo-api, wsmo4j and wsmo-test
102 *
103 * Revision 1.12 2006/03/29 08:49:52 vassil_momtchev
104 * mediator reference source/target by IRI (changed from TopEntity); mediator reference mediationService by IRI (changed from Identifier)
105 *
106 * Revision 1.11 2005/11/08 13:54:44 alex_simov
107 * mistyping: setMediationSerivice() -> setMediationService()
108 *
109 * Revision 1.10 2005/06/01 10:57:43 marin_dimitrov
110 * v0.4.0
111 *
112 * Revision 1.4 2005/05/13 15:38:26 marin
113 * fixed javadoc errors
114 *
115 * Revision 1.3 2005/05/13 13:00:16 marin
116 * 1.javadoc, header, footer, etc
117 * 2. changed source/target component from java.lang.Object to org.wsmo.common.TopEntity
118 *
119 */