niallp      2004/06/08 17:25:15

  Modified:    src/share/org/apache/struts/action DynaActionFormClass.java
                        ActionServlet.java
  Log:
  Changes for bug 28668/22207
  
  Revision  Changes    Path
  1.19      +10 -60    
jakarta-struts/src/share/org/apache/struts/action/DynaActionFormClass.java
  
  Index: DynaActionFormClass.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/action/DynaActionFormClass.java,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- DynaActionFormClass.java  8 Apr 2004 22:07:56 -0000       1.18
  +++ DynaActionFormClass.java  9 Jun 2004 00:25:15 -0000       1.19
  @@ -65,7 +65,7 @@
        *  specified in the configuration is not DynaActionForm (or a subclass
        *  of DynaActionForm)
        */
  -    private DynaActionFormClass(FormBeanConfig config) {
  +    public DynaActionFormClass(FormBeanConfig config) {
   
           introspect(config);
   
  @@ -109,23 +109,6 @@
       protected HashMap propertiesMap = new HashMap();
   
   
  -    // ------------------------------------------------------- Static Variables
  -
  -
  -    /**
  -     * <p>The set of <code>DynaActionFormClass</code> instances that have
  -     * ever been created, keyed by the form bean name.</p>
  -     */
  -    protected transient static HashMap dynaClasses = new HashMap();
  -
  -
  -    /**
  -     * <p>The lockable object we can synchronize on, even if dynaClasses
  -     * is null.</p>
  -     */
  -    protected static String lock = "";
  -
  -
       // ------------------------------------------------------ DynaClass Methods
   
   
  @@ -235,53 +218,20 @@
   
   
       /**
  -     * <p>Clear our cache of <code>DynaActionFormClass</code> instances.</p>
  +     * @deprecated No longer need to Clear our cache of 
<code>DynaActionFormClass</code> instances.
        */
       public static void clear() {
  -
  -        synchronized (lock) {
  -            if (dynaClasses == null) {
  -                dynaClasses = new HashMap();
  -            }
  -            dynaClasses.clear();
  -        }
  -
       }
   
   
       /**
  -     * <p>Create (if necessary) and return a new
  -     * <code>DynaActionFormClass</code> instance for the specified form bean
  -     * configuration instance.</p>
  -     *
  -     * @param config The FormBeanConfig instance describing the properties
  -     *  of the bean to be created
  -     * @param moduleConfig The ModuleConfig instance containing all the
  -     *  configuration information for the current module
  -     *
  -     * @exception IllegalArgumentException if the bean implementation class
  -     *  specified in the configuration is not DynaActionForm (or a subclass
  -     *  of DynaActionForm)
  +     * Return the <code>DynaActionFormClass</code> instance for the specified form 
bean
  +     * configuration instance.
        */
       public static DynaActionFormClass
  -        createDynaActionFormClass(FormBeanConfig config, ModuleConfig moduleConfig) 
{
  +        createDynaActionFormClass(FormBeanConfig config) {
   
  -        synchronized (lock) {
  -            if (dynaClasses == null) {
  -                dynaClasses = new HashMap();
  -            }
  -            String key = config.getName();
  -            if (moduleConfig != null) {
  -                key += moduleConfig.getPrefix();
  -            }
  -            DynaActionFormClass dynaClass =
  -                (DynaActionFormClass) dynaClasses.get(key);
  -            if (dynaClass == null) {
  -                dynaClass = new DynaActionFormClass(config);
  -                dynaClasses.put(key, dynaClass);
  -            }
  -            return (dynaClass);
  -        }
  +        return config.getDynaActionFormClass();
   
       }
   
  
  
  
  1.177     +5 -5      
jakarta-struts/src/share/org/apache/struts/action/ActionServlet.java
  
  Index: ActionServlet.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/action/ActionServlet.java,v
  retrieving revision 1.176
  retrieving revision 1.177
  diff -u -r1.176 -r1.177
  --- ActionServlet.java        24 Apr 2004 05:13:28 -0000      1.176
  +++ ActionServlet.java        9 Jun 2004 00:25:15 -0000       1.177
  @@ -679,7 +679,7 @@
           FormBeanConfig fbs[] = config.findFormBeanConfigs();
           for (int i = 0; i < fbs.length; i++) {
               if (fbs[i].getDynamic()) {
  -                DynaActionFormClass.createDynaActionFormClass(fbs[i], config);
  +                fbs[i].getDynaActionFormClass();
               }
           }
   
  
  
  

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

Reply via email to