axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From gdani...@apache.org
Subject cvs commit: ws-axis/java/src/org/apache/axis/message MessageElement.java
Date Tue, 17 Aug 2004 13:18:53 GMT
gdaniels    2004/08/17 06:18:53

  Modified:    java/src/org/apache/axis/encoding
                        DeserializationContext.java
               java/src/org/apache/axis/message MessageElement.java
  Log:
  Minor changes to aid with external ID/HREF processing.
  
  * MessageElement now has an accessor to obtain the
    DeserializationContext
  
  * DeserializationContext now has a predicate to test for
    the presence of multirefs
  
  Revision  Changes    Path
  1.58      +13 -3     ws-axis/java/src/org/apache/axis/encoding/DeserializationContext.java
  
  Index: DeserializationContext.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/encoding/DeserializationContext.java,v
  retrieving revision 1.57
  retrieving revision 1.58
  diff -u -r1.57 -r1.58
  --- DeserializationContext.java	29 Jul 2004 21:40:26 -0000	1.57
  +++ DeserializationContext.java	17 Aug 2004 13:18:52 -0000	1.58
  @@ -1,12 +1,12 @@
   /*
    * Copyright 2001-2004 The Apache Software Foundation.
  - * 
  + *
    * Licensed under the Apache License, Version 2.0 (the "License");
    * you may not use this file except in compliance with the License.
    * You may obtain a copy of the License at
  - * 
  + *
    *      http://www.apache.org/licenses/LICENSE-2.0
  - * 
  + *
    * Unless required by applicable law or agreed to in writing, software
    * distributed under the License is distributed on an "AS IS" BASIS,
    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  @@ -713,6 +713,16 @@
               idMap = new HashMap();
   
           idMap.put(id, resolver);
  +    }
  +
  +    /**
  +     * Return true if any ids are being tracked by this DeserializationContext
  +     *
  +     * @return true if any ides are being tracked by this DeserializationContext
  +     */
  +    public boolean hasElementsByID()
  +    {
  +        return idMap == null ? false : idMap.size() > 0;
       }
   
       /**
  
  
  
  1.179     +56 -46    ws-axis/java/src/org/apache/axis/message/MessageElement.java
  
  Index: MessageElement.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/message/MessageElement.java,v
  retrieving revision 1.178
  retrieving revision 1.179
  diff -u -r1.178 -r1.179
  --- MessageElement.java	29 Jul 2004 21:40:27 -0000	1.178
  +++ MessageElement.java	17 Aug 2004 13:18:52 -0000	1.179
  @@ -1,12 +1,12 @@
   /*
    * Copyright 2001-2004 The Apache Software Foundation.
  - * 
  + *
    * Licensed under the Apache License, Version 2.0 (the "License");
    * you may not use this file except in compliance with the License.
    * You may obtain a copy of the License at
  - * 
  + *
    *      http://www.apache.org/licenses/LICENSE-2.0
  - * 
  + *
    * Unless required by applicable law or agreed to in writing, software
    * distributed under the License is distributed on an "AS IS" BASIS,
    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  @@ -110,7 +110,7 @@
   
       /** No-arg constructor for building messages?
        */
  -    public MessageElement() 
  +    public MessageElement()
       {
       }
   
  @@ -128,7 +128,7 @@
           addMapping(new Mapping(namespace, prefix));
       }
   
  -    public MessageElement(Name eltName) 
  +    public MessageElement(Name eltName)
       {
           this(eltName.getLocalName(),eltName.getPrefix(), eltName.getURI());
       }
  @@ -139,7 +139,7 @@
           objectValue = value;
       }
   
  -    public MessageElement(QName name) 
  +    public MessageElement(QName name)
       {
           this(name.getNamespaceURI(), name.getLocalPart());
       }
  @@ -230,7 +230,7 @@
                   encodingStyle = null;
   
               // If we have an encoding style, and are not a MESSAGE style
  -            // operation (in other words - we're going to do some data 
  +            // operation (in other words - we're going to do some data
               // binding), AND we're SOAP 1.2, check the encoding style against
               // the ones we've got type mappings registered for.  If it isn't
               // registered, throw a DataEncodingUnknown fault as per the
  @@ -253,6 +253,16 @@
           }
       }
   
  +    /**
  +     * Retrieve the DeserializationContext associated with this MessageElement
  +     *
  +     * @return The DeserializationContext associated with this MessageElement
  +     */
  +    public DeserializationContext getDeserializationContext()
  +    {
  +        return context;
  +    }
  +
       /** !!! TODO : Make sure this handles multiple targets
        */
       Deserializer fixupDeserializer;
  @@ -267,7 +277,7 @@
       {
           return fixupDeserializer;
       }
  - 
  +
       public void setEndIndex(int endIndex)
       {
           endEventIndex = endIndex;
  @@ -301,7 +311,7 @@
        * specified. And, cloning <code>Document</code>,
        * <code>DocumentType</code>, <code>Entity</code>, and
        * <code>Notation</code> nodes is implementation dependent.
  -     * 
  +     *
        * @param deep If <code>true</code>, recursively clone the subtree under
        *             the specified node; if <code>false</code>, clone only the
node
        *             itself (and its attributes, if it is an <code>Element</code>).
  @@ -404,7 +414,7 @@
       {
           removeContents();
       }
  -    
  +
       /**
        * Obtain an Attributes collection consisting of all attributes
        * for this MessageElement, including namespace declarations.
  @@ -414,13 +424,13 @@
       public Attributes getCompleteAttributes() {
           if (namespaces == null)
               return attributes;
  -        
  +
           AttributesImpl attrs = null;
           if (attributes == NullAttributes.singleton)
               attrs = new AttributesImpl();
           else
               attrs = new AttributesImpl(attributes);
  -        
  +
           for (Iterator iterator = namespaces.iterator(); iterator.hasNext();) {
               Mapping mapping = (Mapping) iterator.next();
               String prefix = mapping.getPrefix();
  @@ -433,7 +443,7 @@
   
       public String getName() { return( name ); }
       public void setName(String name) { this.name = name; }
  -    
  +
       public QName getQName() { return new QName(namespaceURI, name); }
       public void setQName(QName qName) {
           this.name = qName.getLocalPart();
  @@ -523,7 +533,7 @@
        *     there was a problem in the encoding style being set.
        * @see #getEncodingStyle() getEncodingStyle()
        */
  -    public void setEncodingStyle(String encodingStyle) throws SOAPException { 
  +    public void setEncodingStyle(String encodingStyle) throws SOAPException {
           if (encodingStyle == null) {
               encodingStyle = "";
           }
  @@ -546,7 +556,7 @@
       public void addChild(MessageElement el) throws SOAPException
       {
           if (objectValue != null) {
  -            SOAPException exc = 
  +            SOAPException exc =
                   new SOAPException(Messages.getMessage("valuePresent"));
               log.error(Messages.getMessage("valuePresent"), exc);
               throw exc;
  @@ -561,11 +571,11 @@
           return children;
       }
   
  -    public void setContentsIndex(int index) 
  +    public void setContentsIndex(int index)
       {
           startContentsIndex = index;
       }
  - 
  +
       public void setNSMappings(ArrayList namespaces)
       {
           this.namespaces = namespaces;
  @@ -666,12 +676,12 @@
           this.objectValue = newValue;
       }
   
  -    public Object getValueAsType(QName type) throws Exception 
  +    public Object getValueAsType(QName type) throws Exception
       {
           return getValueAsType(type, null);
       }
   
  -    public Object getValueAsType(QName type, Class cls) throws Exception 
  +    public Object getValueAsType(QName type, Class cls) throws Exception
       {
           if (context == null)
               throw new Exception(Messages.getMessage("noContext00"));
  @@ -773,7 +783,7 @@
           message = env;
       }
   
  -    public SOAPEnvelope getEnvelope() 
  +    public SOAPEnvelope getEnvelope()
       {
           return message;
       }
  @@ -793,7 +803,7 @@
           return (MessageElement)obj;
       }
   
  -    public Document getAsDocument() throws Exception 
  +    public Document getAsDocument() throws Exception
       {
           String elementString = getAsString();
   
  @@ -822,7 +832,7 @@
           return writer.getBuffer().toString();
       }
   
  -    public Element getAsDOM() throws Exception 
  +    public Element getAsDOM() throws Exception
       {
           return getAsDocument().getDocumentElement();
       }
  @@ -835,7 +845,7 @@
           recorder.replay(startEventIndex, endEventIndex, handler);
       }
   
  -    public void publishContents(ContentHandler handler) throws SAXException 
  +    public void publishContents(ContentHandler handler) throws SAXException
       {
           if (recorder == null)
               throw new SAXException(Messages.getMessage("noRecorder00"));
  @@ -898,7 +908,7 @@
   
       /** Subclasses can override
        */
  -    protected void outputImpl(SerializationContext context) throws Exception 
  +    protected void outputImpl(SerializationContext context) throws Exception
       {
           if (textRep != null) {
               boolean oldPretty = context.getPretty();
  @@ -926,7 +936,7 @@
                   Mapping mapping = (Mapping) i.next();
                   context.registerPrefixForURI(mapping.getPrefix(), mapping.getNamespaceURI());
               }
  -        }            
  +        }
   
           if (objectValue != null) {
               context.serialize(new QName(namespaceURI, name),
  @@ -955,7 +965,7 @@
       }
   
       public void addMapping(Mapping map) {
  -        if (namespaces == null) 
  +        if (namespaces == null)
               namespaces = new ArrayList();
           namespaces.add(map);
       }
  @@ -963,7 +973,7 @@
       // JAXM SOAPElement methods...
   
       public SOAPElement addChildElement(Name name) throws SOAPException {
  -        MessageElement child = new MessageElement(name.getLocalName(), 
  +        MessageElement child = new MessageElement(name.getLocalName(),
                                                     name.getPrefix(),
                                                     name.getURI());
           addChild(child);
  @@ -1130,7 +1140,7 @@
   
       /**
        * Convenience method to get the first matching child for a given QName.
  -     * 
  +     *
        * @param qname
        * @return
        */
  @@ -1216,8 +1226,8 @@
           if(index < 0){ // not found
               String uri = "";
               String localname  = name;
  -            String qname = name;     
  -            String type = "CDDATA";  
  +            String qname = name;
  +            String type = "CDDATA";
               impl.addAttribute(uri,localname,qname,type,value);
           }else{         // found
               impl.setLocalName(index, value);
  @@ -1300,9 +1310,9 @@
           return null;
       }
   
  -    public void setAttributeNS(String namespaceURI, String qualifiedName, 
  -                               String value) 
  -        throws DOMException 
  +    public void setAttributeNS(String namespaceURI, String qualifiedName,
  +                               String value)
  +        throws DOMException
       {
           AttributesImpl attributes = makeAttributesEditable();
           String localName =  qualifiedName.substring(qualifiedName.indexOf(":")+1, qualifiedName.length());
  @@ -1321,8 +1331,8 @@
           return null;  //TODO: Fix this for SAAJ 1.2 Implementation
       }
   
  -    public NodeList getElementsByTagNameNS(String namespaceURI, 
  -                                           String localName) 
  +    public NodeList getElementsByTagNameNS(String namespaceURI,
  +                                           String localName)
       {
           return getElementsNS(this,namespaceURI,localName);
       }
  @@ -1350,7 +1360,7 @@
           }
           return matches;
       }
  -    
  +
       public Node item(int index) {
           if(children !=null && children.size() > index){
               return (Node)children.get(index);
  @@ -1358,14 +1368,14 @@
               return null;
           }
       }
  -    
  +
       /**
        * The number of nodes in the list. The range of valid child node indices
        * is 0 to <code>length-1</code> inclusive.
        *
        * @since SAAJ 1.2 : Nodelist Interface
        */
  -    public int getLength() 
  +    public int getLength()
       {
           return (children == null) ? 0 : children.size();
       }
  @@ -1373,13 +1383,13 @@
       // setEncodingStyle implemented above
   
       // getEncodingStyle() implemented above
  -    
  +
       MessageElement findElement(Vector vec, String namespace,
  -                               String localPart) 
  +                               String localPart)
       {
           if (vec.isEmpty())
               return null;
  -     
  +
           QName qname = new QName(namespace, localPart);
           Enumeration e = vec.elements();
           MessageElement element;
  @@ -1388,11 +1398,11 @@
               if (element.getQName().equals(qname))
                   return element;
           }
  -        
  +
           return null;
       }
  -    
  -    public boolean equals(Object obj) 
  +
  +    public boolean equals(Object obj)
       {
           if (obj == null || !(obj instanceof MessageElement))
               return false;
  @@ -1436,8 +1446,8 @@
           org.w3c.dom.NodeList children = element.getChildNodes();
           for(int i = 0; i < children.getLength(); i++){
               org.w3c.dom.Node child = children.item(i);
  -            if(child.getNodeType()==TEXT_NODE || 
  -               child.getNodeType()==CDATA_SECTION_NODE || 
  +            if(child.getNodeType()==TEXT_NODE ||
  +               child.getNodeType()==CDATA_SECTION_NODE ||
                  child.getNodeType()==COMMENT_NODE ) {
                   MessageElement childElement = new MessageElement((CharacterData)child);
                   parent.appendChild(childElement);
  
  
  

Mime
View raw message