1   /*
2    * Copyright 2001-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  
17  
18  package org.apache.commons.beanutils.priv;
19  
20  
21  /**
22   * <p>This class is designed to test the default access jvm problem workaround.
23   * The issue is that public methods of a public subclass contained in a default access
24   * superclass are returned by reflection but an IllegalAccessException is thrown 
25   * when they are invoked.</p>
26   *
27   * <p>This is the default access superclass</p>
28   *
29   * @author Robert Burrell Donkin
30   * @version $Revision: 1.4 $ $Date: 2004/02/28 13:18:37 $
31   */
32  
33  public class PublicSubBean extends PackageBean {
34  
35  
36      // ----------------------------------------------------------- Constructors
37  
38  
39      /**
40       * Package private constructor - can only use factory method to create
41       * beans.
42       */
43      public PublicSubBean() {
44  
45          super();
46  
47      }
48  
49  
50      // ------------------------------------------------------------- Properties
51  
52  
53      /**
54       * A directly implemented property.
55       */
56      private String foo = "This is foo";
57  
58      public String getFoo() {
59  
60          return (this.foo);
61  
62      }
63      
64      public void setFoo(String foo) {
65  
66          this.foo = foo;
67  
68      }
69  }