1 /*
2 wsmo4j extension - a Choreography API and Reference Implementation
3
4 Copyright (c) 2005, University of Innsbruck, Austria
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 package org.wsmo.service.signature;
20
21 import org.omwg.ontology.Concept;
22 import org.omwg.ontology.Relation;
23
24 /**
25 * A Mode entry container. Defines only one method to get the Concept or
26 * Relation associated with it. A Mode can be either a concept or a relation
27 * but not both.
28 *
29 * <pre>
30 * Created on Jul 26, 2005
31 * Committed by $Author: vassil_momtchev $
32 * $Source$
33 * </pre>
34 *
35 * @author James Scicluna
36 * @author Thomas Haselwanter
37 * @author Holger Lausen
38 *
39 * @version $Revision: 1849 $ $Date: 2006-10-24 17:56:41 +0300 (Tue, 24 Oct 2006) $
40 */
41 public abstract interface Mode {
42
43 /**
44 * Returns the Concept which is associated with the
45 * mode
46 *
47 * @return A Concept object associated with the Mode
48 */
49 public Concept getConcept();
50
51 /**
52 * Returns the Relation which is associated with the
53 * mode
54 *
55 * @return A Relation object associated with the Mode
56 */
57 public Relation getRelation();
58
59 /**
60 * Determines whether the mode is associated with a concept (true
61 * if yes, false if it's a relation)
62 * @return
63 */
64 public boolean isConcept();
65
66 }