[prev in list] [next in list] [prev in thread] [next in thread] 

List:       soap-dev
Subject:    cvs commit: xml-soap/java/src/org/apache/soap/util/xml QName.java XMLJavaMappingRegistry.java
From:       snichol () apache ! org
Date:       2002-10-30 14:33:02
[Download RAW message or body]

snichol     2002/10/30 06:33:02

  Modified:    java/src/org/apache/soap/util/xml QName.java
                        XMLJavaMappingRegistry.java
  Log:
  Require fewer memory allocations by doing four things
  
  QName.java:
      Use StringBuffer rather than String concatenation in toString.
  
  XMLJavaMappingRegistry:
      Use bare encodingStyleURI as key when QName or Class is null,
          submitted by Pavel Ausianik <Pavel_Ausianik@epam.com>.
      Use Class#getName rather than Class#toString,
          submitted by Pavel Ausianik <Pavel_Ausianik@epam.com>.
      Don't create a key in mapTypes unless it is going to be used.
  
  Revision  Changes    Path
  1.8       +2 -1      xml-soap/java/src/org/apache/soap/util/xml/QName.java
  
  Index: QName.java
  ===================================================================
  RCS file: /home/cvs/xml-soap/java/src/org/apache/soap/util/xml/QName.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- QName.java	4 Oct 2002 13:26:03 -0000	1.7
  +++ QName.java	30 Oct 2002 14:33:02 -0000	1.8
  @@ -144,6 +144,7 @@
   
     public String toString()
     {
  -    return namespaceURI + ':' + localPart;
  +    return new StringBuffer(namespaceURI.length() + 1 + localPart.length())
  +               .append(namespaceURI).append(':').append(localPart).toString();
     }
   }
  
  
  
  1.11      +26 -7     \
xml-soap/java/src/org/apache/soap/util/xml/XMLJavaMappingRegistry.java  
  Index: XMLJavaMappingRegistry.java
  ===================================================================
  RCS file: /home/cvs/xml-soap/java/src/org/apache/soap/util/xml/XMLJavaMappingRegistry.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- XMLJavaMappingRegistry.java	23 Oct 2002 19:35:19 -0000	1.10
  +++ XMLJavaMappingRegistry.java	30 Oct 2002 14:33:02 -0000	1.11
  @@ -127,16 +127,18 @@
     public void mapTypes(String encodingStyleURI, QName elementType,
                          Class javaType, Serializer s, Deserializer ds)
     {
  -    String java2XMLKey = getKey(javaType, encodingStyleURI);
  -    String xml2JavaKey = getKey(elementType, encodingStyleURI);
  +    String java2XMLKey = null;
  +    String xml2JavaKey = null;
   
       if (s != null)
       {
  +      java2XMLKey = getKey(javaType, encodingStyleURI);
         sReg.put(java2XMLKey, s);
       }
   
       if (ds != null)
       {
  +      xml2JavaKey = getKey(elementType, encodingStyleURI);
         dsReg.put(xml2JavaKey, ds);
       }
   
  @@ -177,7 +179,7 @@
       }
       else
       {
  -      java2XMLKey = getKey(null, encodingStyleURI);
  +      java2XMLKey = getKey((Class) null, encodingStyleURI);
         return (Serializer)sReg.get(java2XMLKey);
       }
     }
  @@ -235,7 +237,7 @@
       }
       else
       {
  -      xml2JavaKey = getKey(null, encodingStyleURI);
  +      xml2JavaKey = getKey((QName) null, encodingStyleURI);
         return (Deserializer)dsReg.get(xml2JavaKey);
       }
     }
  @@ -400,13 +402,30 @@
     /**
      * Creates a key for the registry Hashtables.
      *
  -   * @param type The Java type (as a Class) or the XML type (as a QName).
  +   * @param type The XML type.
  +   * @param encodingStyleURI The encoding style.
  +   * @return The key.
  +   */
  +  private static String getKey(QName type, String encodingStyleURI)
  +  {
  +    if (type == null)
  +      return encodingStyleURI;
  +    String strObj = type.toString();
  +    return new StringBuffer(strObj.length() + 3 + \
encodingStyleURI.length()).append(strObj).append(" + \
").append(encodingStyleURI).toString();  +  }
  +
  +  /**
  +   * Creates a key for the registry Hashtables.
  +   *
  +   * @param type The Java type.
      * @param encodingStyleURI The encoding style.
      * @return The key.
      */
  -  private static String getKey(Object type, String encodingStyleURI)
  +  private static String getKey(Class type, String encodingStyleURI)
     {
  -    String strObj = String.valueOf(type);
  +    if (type == null)
  +      return encodingStyleURI;
  +    String strObj = type.getName();
       return new StringBuffer(strObj.length() + 3 + \
encodingStyleURI.length()).append(strObj).append(" + \
").append(encodingStyleURI).toString();  }
   
  
  
  

--
To unsubscribe, e-mail:   <mailto:soap-dev-unsubscribe@xml.apache.org>
For additional commands, e-mail: <mailto:soap-dev-help@xml.apache.org>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic