KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > infoglue > cms > applications > workflowtool > condition > PropertysetContains


1 /* ===============================================================================
2 *
3 * Part of the InfoGlue Content Management Platform (www.infoglue.org)
4 *
5 * ===============================================================================
6 *
7 * Copyright (C)
8 *
9 * This program is free software; you can redistribute it and/or modify it under
10 * the terms of the GNU General Public License version 2, as published by the
11 * Free Software Foundation. See the file LICENSE.html for more information.
12 *
13 * This program is distributed in the hope that it will be useful, but WITHOUT
14 * ANY WARRANTY, including the implied warranty of MERCHANTABILITY or FITNESS
15 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License along with
18 * this program; if not, write to the Free Software Foundation, Inc. / 59 Temple
19 * Place, Suite 330 / Boston, MA 02111-1307 / USA.
20 *
21 * ===============================================================================
22 */

23 package org.infoglue.cms.applications.workflowtool.condition;
24
25 import com.opensymphony.workflow.WorkflowException;
26
27 /**
28  * Workflow condition used to determine if the value of a propertyset key is as expected.
29  */

30 public class PropertysetContains extends InfoglueCondition
31 {
32     /**
33      * The name of the property set key argument.
34      */

35     private static final String JavaDoc NAME_ARGUMENT = "name";
36     
37     /**
38      * The name of the expected value argument.
39      */

40     private static final String JavaDoc VALUE_ARGUMENT = "value";
41     
42     /**
43      * Default constructor.
44      */

45     public PropertysetContains()
46     {
47         super();
48     }
49
50     /**
51      * Determines if a condition should signal pass or fail.
52      *
53      * @return true if the condition passes; false otherwise.
54      * @throws WorkflowException if an error (such as missing required argument) occurs while evaluating the condition.
55      */

56     protected boolean passesCondition() throws WorkflowException
57     {
58         final String JavaDoc name = getArgument(NAME_ARGUMENT);
59         if(propertySetContains(name))
60         {
61             final String JavaDoc value = getPropertySet().getAsString(name);
62             return (value != null) && value.equals(getArgument(VALUE_ARGUMENT));
63         }
64         return false;
65     }
66 }
67
Popular Tags