View Javadoc

1   /*
2    * $Id: BSFManagerFilter.java 471754 2006-11-06 14:55:09Z husted $
3    *
4    * Licensed to the Apache Software Foundation (ASF) under one
5    * or more contributor license agreements.  See the NOTICE file
6    * distributed with this work for additional information
7    * regarding copyright ownership.  The ASF licenses this file
8    * to you under the Apache License, Version 2.0 (the
9    * "License"); you may not use this file except in compliance
10   * with the License.  You may obtain a copy of the License at
11   *
12   *  http://www.apache.org/licenses/LICENSE-2.0
13   *
14   * Unless required by applicable law or agreed to in writing,
15   * software distributed under the License is distributed on an
16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17   * KIND, either express or implied.  See the License for the
18   * specific language governing permissions and limitations
19   * under the License.
20   */
21  package org.apache.struts.scripting;
22  
23  // util imports:
24  import java.util.Properties;
25  
26  // misc imports:
27  import org.apache.bsf.BSFManager;
28  
29  
30  /**
31   *  Defines a class that wants to manipulate the contents of the scripting
32   *  context before the script is executed. An example would be a class that puts
33   *  business facade classes in the context.
34   */
35  public interface BSFManagerFilter {
36  
37      /**
38       *  Initializes the filter. Properties can be retrieved as: <code>
39       *  struts-scripting.filters.FILTER_NAME.PROPERTY_NAME=PROPERTY_VALUE
40       *  </code> where FILTER_NAME is the "name" parameter.
41       *
42       *@param  name   The name of the filter
43       *@param  props  The properties
44       */
45      void init(String name, Properties props);
46  
47  
48      /**
49       *  Applies the filter.
50       *
51       *@param  mgr  The scripting manager
52       *@return      The scripting manager
53       */
54      BSFManager apply(BSFManager mgr);
55  }