You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsif-dev@ws.apache.org by an...@apache.org on 2003/04/17 13:42:39 UTC

cvs commit: xml-axis-wsif/java/src/org/apache/wsif/providers/ejb WSIFOperation_EJB.java

antelder    2003/04/17 04:42:39

  Modified:    java/src/org/apache/wsif/providers/ejb
                        WSIFOperation_EJB.java
  Log:
  More code tidy up and use lazy init in EJB getOperation method (as in Java provider)
  
  Revision  Changes    Path
  1.30      +25 -30    xml-axis-wsif/java/src/org/apache/wsif/providers/ejb/WSIFOperation_EJB.java
  
  Index: WSIFOperation_EJB.java
  ===================================================================
  RCS file: /home/cvs/xml-axis-wsif/java/src/org/apache/wsif/providers/ejb/WSIFOperation_EJB.java,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- WSIFOperation_EJB.java	14 Mar 2003 11:48:07 -0000	1.29
  +++ WSIFOperation_EJB.java	17 Apr 2003 11:42:39 -0000	1.30
  @@ -113,6 +113,8 @@
       protected WSIFPort_EJB fieldPort;
       protected javax.wsdl.BindingOperation fieldBindingOperationModel;
       protected EJBOperation fieldEJBOperationModel;
  +    protected Operation wsdlOperation;
  +
       transient protected Method fieldMethod = null;
       transient protected Method[] fieldAllMethods = null;
       protected String[] fieldInParameterNames = null;
  @@ -204,6 +206,7 @@
                   fieldPortModel,
                   fieldBindingOperationModel,
                   fieldPort);
  +        woe.wsdlOperation = wsdlOperation;
           Trc.exit(woe);
           return woe;
       }
  @@ -525,38 +528,30 @@
   
       protected Operation getOperation() throws Exception {
           Trc.entry(this);
  -        Operation operation = null;
  -        buildTypeMap();
  +        if (wsdlOperation == null) {
  +            buildTypeMap();
   
  -        // <input> and <output> tags in binding operations are not mandatory
  -        // so deal with null BindingInputs or BindingOutputs
  -        String inputName = null;
  -        try {
  -            inputName =
  -                this.fieldBindingOperationModel.getBindingInput().getName();
  -        } catch (NullPointerException e) {
  -        	Trc.ignoredException(e);
  -            inputName = null;
  -        }
  +            // <input> and <output> tags in binding operations are not mandatory
  +            // so deal with null BindingInputs or BindingOutputs
  +            String inputName = null;
  +            if (fieldBindingOperationModel.getBindingInput()!=null) {
  +                inputName = fieldBindingOperationModel.getBindingInput().getName();
  +            }
   
  -        String outputName = null;
  -        try {
  -            outputName =
  -                this.fieldBindingOperationModel.getBindingOutput().getName();
  -        } catch (NullPointerException e) {
  -        	Trc.ignoredException(e);
  -            outputName = null;
  -        }
  -
  -        // Build the parts list
  -        operation =
  -            this.fieldPortModel.getBinding().getPortType().getOperation(
  -                this.fieldBindingOperationModel.getName(),
  -                inputName,
  -                outputName);
  -        //this.fieldBindingOperationModel.getBindingInput().getName(),
  -        Trc.exit(operation);
  -        return operation;
  +            String outputName = null;
  +            if (fieldBindingOperationModel.getBindingOutput()!=null) {
  +                outputName = fieldBindingOperationModel.getBindingOutput().getName();
  +            }
  +
  +            // Build the parts list
  +            wsdlOperation =
  +                this.fieldPortModel.getBinding().getPortType().getOperation(
  +                    this.fieldBindingOperationModel.getName(),
  +                    inputName,
  +                    outputName);
  +        }
  +        Trc.exit(wsdlOperation);
  +        return wsdlOperation;
       }
   
       protected Object getMethodReturnClass() throws WSIFException {