axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From R J Scheuerle Jr <sc...@us.ibm.com>
Subject Re: [Proposal][Axis2][Axiom] Adding writable capability to OM elements
Date Sat, 17 Jun 2006 11:56:00 GMT





+1 to Eran's comments.

Question 1:  Will there be a factory for creating the
"OMObjectWrappingElement" for a particular OM implemenatation ?

Question 2: (Restating my question from an earlier post)  When you insert
an OMOWE into a tree, what is the defined behavior when it is touched ?
Is this the behavior:
i) The OMOWE is a child of a normal parent OMElement.  A consumer invokes
an method (i..e "get child") on the parent.
ii) The OM implementation detaches the "OMOWE" from the tree.
iii) A new OMElement is inserted into the tree at the same location.
iv) The new OMElement is sourced by the XMLStreamReader obtained from the
OMOWE


Great work, I would like to see more posts

Rich Scheuerle
Senior Developer
IBM WebSphere Web Services Engine & Tooling
512-838-5115  (IBM TL 678-5115)


                                                                           
             Eran Chinthaka                                                
             <chinthaka@openso                                             
             urce.lk>                                                   To 
                                       axis-dev@ws.apache.org              
             06/17/2006 02:57                                           cc 
             AM                                                            
                                                                   Subject 
                                       Re: [Proposal][Axis2][Axiom] Adding 
             Please respond to         writable capability to OM elements  
             axis-dev@ws.apach                                             
                   e.org                                                   
                                                                           
                                                                           
                                                                           
                                                                           




Ajith,

I'd like to suggest a small change for your proposal.

> Hi All,
> There have been some talk about performance improvements for Axis2
> next steps. So here is a small proposal of how to do a possible
> optimization with AXIOM and ADB.
>
> 1. AXIOM needs to have an interface that allows a XMLStreamWriter to
> passed. This allows the implementer (of the interface) to have code
> that directly uses the writer. (Currently the OMDataSource has the
> necessary methods. We actually need only one, the write method).
>
> 2. We have a special OMElement abstract class that implements the
> OMDataSource that has a constructor taking in an ADBBean.

OMDataSource having dependency on ADBBean? I think u didn't mean it :).

Let me re-phrase this. Ajith, please confirm if you agree.

There will be a new OMElement implementation (say,
ObjectWrappingOMElement) which extends from OMElement. It will have a
constructor to get an instance of OMObjectWrapper.

public interface OMObjectWrapper(){

 public XMLStreamReader getPullParser();

 public void writeYourSelf(XMLStreamWriter);

}

public class OMObjectWrappingElement extends OMElement{

  public OMObjectWrappingElement(OMObjectWrapper wrapper){

  }

  public void serializeWithConsume(XMLStreamWriter writer){
     wrapper.writeYourSelf(writer)
  }

}

And perhaps implement the OMObjectWrapper interface to ADBBean so that
ADBBean can be directly input to the constructor of the
OMObjectWrappingElement.

(See attached file: signature.asc)
Mime
View raw message