Author: jkaputin
Date: Wed Nov  9 07:17:12 2005
New Revision: 332066

URL: http://svn.apache.org/viewcvs?rev=332066&view=rev
Log:
Added methods to build InterfaceOperation and its 

sub components. This completes the component model

build of Interface and its sub components.

Modified:
    
incubator/woden/java/src/org/apache/woden/internal/util/ComponentModelBuilder.java

Modified: 
incubator/woden/java/src/org/apache/woden/internal/util/ComponentModelBuilder.java
URL: 
http://svn.apache.org/viewcvs/incubator/woden/java/src/org/apache/woden/internal/util/ComponentModelBuilder.java?rev=332066&r1=332065&r2=332066&view=diff
==============================================================================
--- 
incubator/woden/java/src/org/apache/woden/internal/util/ComponentModelBuilder.java
 (original)
+++ 
incubator/woden/java/src/org/apache/woden/internal/util/ComponentModelBuilder.java
 Wed Nov  9 07:17:12 2005
@@ -27,14 +27,21 @@
 import org.apache.woden.internal.wsdl20.DescriptionImpl;

 import org.apache.woden.internal.wsdl20.ElementDeclarationImpl;

 import org.apache.woden.internal.wsdl20.InterfaceFaultImpl;

+import org.apache.woden.internal.wsdl20.InterfaceFaultReferenceImpl;

 import org.apache.woden.internal.wsdl20.InterfaceImpl;

+import org.apache.woden.internal.wsdl20.InterfaceMessageReferenceImpl;

+import org.apache.woden.internal.wsdl20.InterfaceOperationImpl;

 import org.apache.woden.internal.wsdl20.PropertyImpl;

 import org.apache.woden.internal.wsdl20.TypeDefinitionImpl;

 import org.apache.woden.schema.Schema;

 import org.apache.woden.schema.SchemaImport;

+import org.apache.woden.wsdl20.Interface;

 import org.apache.woden.wsdl20.WSDL20Component;

+import org.apache.woden.wsdl20.xml.FaultReferenceElement;

 import org.apache.woden.wsdl20.xml.InterfaceElement;

 import org.apache.woden.wsdl20.xml.InterfaceFaultElement;

+import org.apache.woden.wsdl20.xml.InterfaceMessageReferenceElement;

+import org.apache.woden.wsdl20.xml.InterfaceOperationElement;

 import org.apache.woden.wsdl20.xml.PropertyElement;

 import org.apache.woden.wsdl20.xml.TypesElement;

 import org.apache.ws.commons.schema.XmlSchema;

@@ -212,6 +219,7 @@
             InterfaceImpl intImpl = (InterfaceImpl)interfaceEls[i];

             buildProperties(intImpl.getPropertyElements(), intImpl);

             buildInterfaceFaults(intImpl);

+            buildInterfaceOperations(intImpl);

             

         }

     }

@@ -226,6 +234,49 @@
             if(qname != null)

             {

                 
fault.setElementDeclaration(fDesc.getElementDeclaration(qname));

+            }

+        }

+    }

+    

+    private void buildInterfaceOperations(InterfaceImpl intface)

+    {

+        InterfaceOperationElement[] operations = 
intface.getInterfaceOperationElements();

+        for(int i=0; i<operations.length; i++)

+        {

+            InterfaceOperationImpl oper = 
(InterfaceOperationImpl)operations[i];

+            buildInterfaceFaultReferences(oper);

+            buildInterfaceMessageReferences(oper);

+        }

+    }

+    

+    private void buildInterfaceFaultReferences(InterfaceOperationImpl oper)

+    {

+        FaultReferenceElement[] faultRefs = oper.getFaultReferenceElements();

+        for(int i=0; i<faultRefs.length; i++)

+        {

+            InterfaceFaultReferenceImpl faultRef = 
(InterfaceFaultReferenceImpl)faultRefs[i];

+            QName qname = faultRef.getRef();

+            if(qname != null)

+            {

+                Interface intface = (Interface)oper.getParent();

+                faultRef.setInterfaceFault(intface.getInterfaceFault(qname));

+            }

+        }

+    }

+    

+    private void buildInterfaceMessageReferences(InterfaceOperationImpl oper)

+    {

+        InterfaceMessageReferenceElement[] messages = 
oper.getMessageReferenceElements();

+        for(int i=0; i<messages.length; i++)

+        {

+            InterfaceMessageReferenceImpl message = 
(InterfaceMessageReferenceImpl)messages[i];

+            
if(Constants.NMTOKEN_ELEMENT.equals(message.getMessageContentModel()))

+            {

+                QName qname = message.getElementQName();

+                if(qname != null)

+                {

+                    
message.setElementDeclaration(fDesc.getElementDeclaration(qname));

+                }

             }

         }

     }




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to