KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > openccm > uml > transformation > rules > xml > MethodNotPresentCondition


1 /*====================================================================
2
3 OpenCCM: The Open CORBA Component Model Platform
4 Copyright (C) 2000-2004 INRIA - USTL - LIFL - GOAL
5 Contact: openccm@objectweb.org
6
7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Lesser General Public
9 License as published by the Free Software Foundation; either
10 version 2.1 of the License, or any later version.
11
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Lesser General Public License for more details.
16
17 You should have received a copy of the GNU Lesser General Public
18 License along with this library; if not, write to the Free Software
19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20 USA
21
22 Initial developer(s): Pierre Carpentier.
23 Contributor(s): Philippe Merle.
24
25 ---------------------------------------------------------------------
26 $Id: MethodNotPresentCondition.java,v 1.1 2004/05/26 11:25:35 carpentier Exp $
27 ====================================================================*/

28
29 package org.objectweb.openccm.uml.transformation.rules.xml;
30
31 import ispuml.mdaTransformation.RuleContext;
32 import ispuml.mdaTransformation.TransformationException;
33 import ispuml.mdaTransformation.rules.xml.Condition;
34
35 /**
36  * Condition to test if a method is not present inside the bean.
37  *
38  * @author Pierre Carpentier
39  */

40 public class MethodNotPresentCondition extends Condition {
41
42     /** The method name to search. */
43     private String JavaDoc methodName;
44
45     /**
46      * Sets the boolean value to test.
47      * @param value The boolean value.
48      */

49     public void setMethodName(String JavaDoc methodName) {
50         this.methodName = methodName;
51     }
52     
53     /* (non-Javadoc)
54      * @see ispuml.mdaTransformation.Guard#isAllowed(java.lang.Object, ispuml.mdaTransformation.RuleContext)
55      */

56     public boolean isAllowed(Object JavaDoc object, RuleContext context) throws TransformationException {
57         org.omg.uml.core.Classifier classifier = (org.omg.uml.core.Classifier)object;
58         java.util.List JavaDoc features = classifier.getFeature();
59         java.util.Iterator JavaDoc it = features.iterator();
60         while (it.hasNext()) {
61             Object JavaDoc feature = it.next();
62             if (feature instanceof org.omg.uml.core.Method
63                 && ((org.omg.uml.core.Method)feature).getSpecification().getName().equals(this.methodName))
64                 return false;
65         }
66         return true;
67     }
68
69 }
70
Popular Tags