jboynes     2005/06/29 13:10:27

  Modified:    modules/core/src/java/org/openejb/corba/compiler
                        PortableStubCompiler.java
  Log:

  fix StringIndex error with single char properties
  
  Revision  Changes    Path
  1.5       +7 -7      
openejb/modules/core/src/java/org/openejb/corba/compiler/PortableStubCompiler.java
  
  Index: PortableStubCompiler.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/corba/compiler/PortableStubCompiler.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- PortableStubCompiler.java 23 Jun 2005 04:28:03 -0000      1.4
  +++ PortableStubCompiler.java 29 Jun 2005 17:10:27 -0000      1.5
  @@ -149,10 +149,10 @@
               }
   
               String propertyName;
  -            if (Character.isLowerCase(methodName.charAt(verb.length() + 1))) 
{
  -                propertyName = 
Character.toLowerCase(methodName.charAt(verb.length())) + 
methodName.substring(verb.length() + 1);
  -            } else {
  +            if (methodName.length() > verb.length() + 1 && 
Character.isUpperCase(methodName.charAt(verb.length() + 1))) {
                   propertyName = methodName.substring(verb.length());
  +            } else {
  +                propertyName = 
Character.toLowerCase(methodName.charAt(verb.length())) + 
methodName.substring(verb.length() + 1);
               }
               getterByMethod.put(method, propertyName);
               getterByName.put(propertyName, method);
  @@ -195,10 +195,10 @@
               }
   
               String propertyName;
  -            if (Character.isLowerCase(methodName.charAt(3 + 1))) {
  -                propertyName = Character.toLowerCase(methodName.charAt(3)) + 
methodName.substring(4);
  -            } else {
  +            if (methodName.length() > 4 && 
Character.isUpperCase(methodName.charAt(4 + 1))) {
                   propertyName = methodName.substring(3);
  +            } else {
  +                propertyName = Character.toLowerCase(methodName.charAt(3)) + 
methodName.substring(3 + 1);
               }
   
               // must have a matching getter
  
  
  

Reply via email to