KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > cocoon > selection > AbstractSwitchSelector


1 /*
2  * Copyright 1999-2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16 package org.apache.cocoon.selection;
17
18 import org.apache.avalon.framework.logger.AbstractLogEnabled;
19 import org.apache.avalon.framework.parameters.Parameters;
20
21 import java.util.Map JavaDoc;
22
23 /**
24  * Abstract SwitchSelector class.
25  *
26  * @author <a HREF="mailto:crafterm@apache.org">Marcus Crafter</a>
27  * @author <a HREF="mailto:sylvain@apache.org">Sylvain Wallez</a>
28  * @version CVS $Id: AbstractSwitchSelector.java 30932 2004-07-29 17:35:38Z vgritsenko $
29  */

30 public abstract class AbstractSwitchSelector extends AbstractLogEnabled
31     implements SwitchSelector {
32
33     /**
34      * Method to create a selector context.
35      *
36      * @param objectModel The <code>Map</code> containing object of the
37      * calling environment which may be used
38      * to select values to test the expression.
39      * @param parameters The sitemap parameters, as specified by
40      * &lt;parameter/&gt; tags.
41      * @return selector context
42      */

43     public abstract Object JavaDoc getSelectorContext(Map JavaDoc objectModel, Parameters parameters);
44
45     /**
46      * Selectors test pattern against some objects in a <code>Map</code>
47      * model and signals success with the returned boolean value
48      * @param expression The expression to test.
49      * @return boolean Signals successful test.
50      */

51     public abstract boolean select(String JavaDoc expression, Object JavaDoc selectorContext);
52
53     /**
54      * Selectors test pattern against some objects in a <code>Map</code>
55      * model and signals success with the returned boolean value
56      * @param expr The expression to test.
57      * @return Signals successful test.
58      */

59     public boolean select(String JavaDoc expr, Map JavaDoc objectModel, Parameters params) {
60         return select(expr, getSelectorContext(objectModel, params));
61     }
62 }
63
64
65
Popular Tags