cmlenz      02/04/20 08:41:47

  Modified:    src/share/org/apache/slide/common Tag: SLIDE_1_0
                        NamespaceConfig.java
  Log:
  - Make ContentInterceptors accept configuration parameters
  - Initialize ContentInterceptors with the NamespaceAccessToken
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.15.2.2  +29 -4     
jakarta-slide/src/share/org/apache/slide/common/NamespaceConfig.java
  
  Index: NamespaceConfig.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-slide/src/share/org/apache/slide/common/NamespaceConfig.java,v
  retrieving revision 1.15.2.1
  retrieving revision 1.15.2.2
  diff -u -r1.15.2.1 -r1.15.2.2
  --- NamespaceConfig.java      28 Mar 2002 06:41:28 -0000      1.15.2.1
  +++ NamespaceConfig.java      20 Apr 2002 15:41:47 -0000      1.15.2.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-slide/src/share/org/apache/slide/common/NamespaceConfig.java,v 
1.15.2.1 2002/03/28 06:41:28 jericho Exp $
  - * $Revision: 1.15.2.1 $
  - * $Date: 2002/03/28 06:41:28 $
  + * $Header: 
/home/cvs/jakarta-slide/src/share/org/apache/slide/common/NamespaceConfig.java,v 
1.15.2.2 2002/04/20 15:41:47 cmlenz Exp $
  + * $Revision: 1.15.2.2 $
  + * $Date: 2002/04/20 15:41:47 $
    *
    * ====================================================================
    *
  @@ -81,7 +81,7 @@
    * Configuration of the Namespace.
    * 
    * @author <a href="mailto:[EMAIL PROTECTED]";>Remy Maucherat</a>
  - * @version $Revision: 1.15.2.1 $
  + * @version $Revision: 1.15.2.2 $
    */
   public final class NamespaceConfig {
       
  @@ -820,12 +820,28 @@
                   Configuration contentInterceptorDef =
                       (Configuration) contentInteceptorsDef.nextElement();
                   String classname = contentInterceptorDef.getAttribute("class");
  +                
  +                // Load contentInterceptor parameters
  +                Enumeration contentInterceptorParametersDef =
  +                    contentInterceptorDef.getConfigurations("parameter");
  +                Hashtable contentInterceptorParameters = new Hashtable();
  +                while (contentInterceptorParametersDef.hasMoreElements()) {
  +                    Configuration parameterDefinition = (Configuration)
  +                        contentInterceptorParametersDef.nextElement();
  +                    String parameterName = 
  +                            parameterDefinition.getAttribute("name");
  +                    String parameterValue = parameterDefinition.getValue();
  +                    contentInterceptorParameters.put(parameterName,
  +                                                     parameterValue);
  +                }
  +                
                   try {
                       Class contentInterceptorClass =
                           Class.forName(classname);
                       ContentInterceptor contentInterceptor = 
                           (ContentInterceptor) 
                           contentInterceptorClass.newInstance();
  +                    contentInterceptor.setParameters(contentInterceptorParameters);
                       ContentInterceptor[] tempArray = 
                           new ContentInterceptor[contentInterceptors.length + 1];
                       for (int i = 0; i < contentInterceptors.length; i++) {
  @@ -839,6 +855,15 @@
                            ("org.apache.slide.common.InvalidContentInterceptor",
                             classname, e.getMessage()), Logger.WARNING);
                   }
  +            }
  +            
  +            // Initialize the content interceptors with the 
  +            // NamespaceAccessToken
  +            NamespaceAccessToken nat = new NamespaceAccessTokenImpl(namespace);
  +            ContentInterceptor[] contentInterceptors =
  +                namespace.getContentInterceptors();
  +            for (int i = 0; i < contentInterceptors.length; i++) {
  +                contentInterceptors[i].setNamespace(nat);
               }
           } catch (ConfigurationException e) {
               throw new InvalidNamespaceConfigurationException
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to