Author: scamp
Date: Wed Apr 13 11:11:54 2005
New Revision: 161192

URL: http://svn.apache.org/viewcvs?view=rev&rev=161192
Log:
APOLLO-7

Added generation of initial Resource.init() resource property code/

Modified:
    
incubator/apollo/trunk/src/java/org/apache/ws/resource/impl/ResourceDefinitionImpl.java
    incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/Wsdl2Java.java
    
incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/velocity/ServiceProperties.java
    incubator/apollo/trunk/src/templates/Home.vm
    incubator/apollo/trunk/src/templates/Resource.vm

Modified: 
incubator/apollo/trunk/src/java/org/apache/ws/resource/impl/ResourceDefinitionImpl.java
URL: 
http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/java/org/apache/ws/resource/impl/ResourceDefinitionImpl.java?view=diff&r1=161191&r2=161192
==============================================================================
--- 
incubator/apollo/trunk/src/java/org/apache/ws/resource/impl/ResourceDefinitionImpl.java
 (original)
+++ 
incubator/apollo/trunk/src/java/org/apache/ws/resource/impl/ResourceDefinitionImpl.java
 Wed Apr 13 11:11:54 2005
@@ -39,16 +39,14 @@
     private Port m_port;
     private String m_name;
     private String m_endpointURL;
-    private QName m_serviceName;
 
-    public ResourceDefinitionImpl(Definition def, javax.wsdl.Port port, QName 
serviceName, URL baseUrl)
+    public ResourceDefinitionImpl(Definition def, javax.wsdl.Port port, URL 
baseUrl)
             throws InvalidWsrfWsdlException
     {
         super( def, getResourcePortType( port ), baseUrl);
         m_port = port;
         m_endpointURL = extractEndpointURL( m_port );
         m_name = m_port.getName();
-        m_serviceName = serviceName;
     }
 
 
@@ -119,8 +117,4 @@
         return endpointURL;
     }
 
-    public QName getServiceName()
-    {
-        return m_serviceName;
-    }
 }

Modified: 
incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/Wsdl2Java.java
URL: 
http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/Wsdl2Java.java?view=diff&r1=161191&r2=161192
==============================================================================
--- incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/Wsdl2Java.java 
(original)
+++ incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/Wsdl2Java.java 
Wed Apr 13 11:11:54 2005
@@ -26,7 +26,6 @@
 import org.apache.velocity.app.Velocity;
 import org.apache.velocity.runtime.RuntimeConstants;
 import org.apache.ws.resource.ResourceDefinition;
-import org.apache.ws.resource.InvalidWsrfWsdlException;
 import org.apache.ws.resource.i18n.Keys;
 import org.apache.ws.resource.i18n.MessagesImpl;
 import org.apache.ws.resource.impl.ResourceDefinitionImpl;
@@ -40,8 +39,8 @@
 import org.apache.xmlbeans.impl.tool.SchemaCompiler;
 
 import javax.wsdl.Definition;
-import javax.wsdl.Service;
 import javax.wsdl.Port;
+import javax.wsdl.Service;
 import javax.wsdl.factory.WSDLFactory;
 import javax.wsdl.xml.WSDLReader;
 import javax.xml.namespace.QName;
@@ -59,8 +58,6 @@
 import java.util.Map;
 import java.util.StringTokenizer;
 
-import com.ibm.wsdl.extensions.soap.SOAPAddressImpl;
-
 /**
  * Generates Java Web service types and skeletons from a WSRF WSDL.
  *
@@ -205,7 +202,7 @@
             while (iterator.hasNext())
             {
                 Port port = (Port) iterator.next();
-                ResourceDefinition resourceDef = new ResourceDefinitionImpl( 
def, port, service.getQName(), wsdlFile.toURL());
+                ResourceDefinition resourceDef = new ResourceDefinitionImpl( 
def, port, wsdlFile.toURL());
                 File serviceDir = new File( m_outputDir, resourceDef.getName() 
);
                 System.out.println( "Processing WSRF WSDL port \"" + 
resourceDef.getName() + "\"..." );
                 processTemplates( resourceDef, wsdlFile, serviceDir );
@@ -431,14 +428,17 @@
             
props.setNamespaceVersionHolder(org.apache.ws.resource.properties.v2004_11.impl.NamespaceVersionHolderImpl.class);
         }
 
-        /** These props are for JIRA Apollo-4 and could be added to context obj
+        /**
+         * These props are for JIRA Apollo-4 and could be added to context obj
          *  The question is whether the service name here should be the real 
wsdl
          * service name or the service name as we use it...
-         * **/
+         **/
         String portName = resourceDef.getPort().getName();
+        props.setPortName(portName);
         QName portTypeQName = resourceDef.getPortType().getQName();
-        QName wsdlServiceName = 
((ResourceDefinitionImpl)resourceDef).getServiceName();
-
+        props.setPortTypeQName(portTypeQName);
+        QName serviceQname = new QName(targetNamespace,serviceName);
+        props.setServiceQName(serviceQname);
         return props;
     }
 

Modified: 
incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/velocity/ServiceProperties.java
URL: 
http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/velocity/ServiceProperties.java?view=diff&r1=161191&r2=161192
==============================================================================
--- 
incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/velocity/ServiceProperties.java
 (original)
+++ 
incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/velocity/ServiceProperties.java
 Wed Apr 13 11:11:54 2005
@@ -1,6 +1,7 @@
 package org.apache.ws.resource.tool.velocity;
 
 import org.apache.ws.resource.ResourceDefinition;
+import org.apache.ws.util.XmlBeanNameUtils;
 
 import javax.xml.namespace.QName;
 import java.util.ArrayList;
@@ -39,6 +40,9 @@
     private ResourceDefinition m_resourceDef;
     private String m_namespaceVersionHolder;
     public static final String SPEC_NAMESPACE_MEMBER_NAME = 
"SPEC_NAMESPACE_SET";
+    private QName m_serviceQName;
+    private String m_portName;
+    private QName m_portTypeQName;
 
     public ServiceProperties(ResourceDefinition resourceDef)
     {
@@ -204,15 +208,15 @@
     {
         this.m_resourcekey = resourcekey;
     }
-
-    public boolean hasProperties()
+    
+    public void setHasProperties(boolean hasProps)
     {
-        return m_hasProperties;
+        m_hasProperties = hasProps;
     }
 
-    public void setHasProperties(boolean hasProps)
+    public boolean getHasProperties()
     {
-        m_hasProperties = hasProps;
+        return m_hasProperties;
     }
 
     public void setEndpointServiceName(String serviceName)
@@ -282,5 +286,40 @@
             String className = namespaceValueHolder.getName();
         m_namespaceVersionHolder = "public static final "+className+" 
"+SPEC_NAMESPACE_MEMBER_NAME+" = new " + className + "();";
         }
+    }
+
+    public void setPortName(String portName)
+    {
+       m_portName = portName;
+    }
+
+    public void setPortTypeQName(QName portTypeQName)
+    {
+       m_portTypeQName = portTypeQName;
+    }
+
+    public void setServiceQName(QName serviceQname)
+    {
+         m_serviceQName = serviceQname;
+    }
+
+    public String getPortName()
+    {
+        return m_portName;
+    }
+
+    public QName getPortTypeQName()
+    {
+        return m_portTypeQName;
+    }
+
+    public QName getServiceQName()
+    {
+        return m_serviceQName;
+    }
+
+    public String getDocumentElementXmlBeanClassName(QName prop_qname)
+    {
+        return XmlBeanNameUtils.getDocumentElementXmlBeanClassName(prop_qname);
     }
 }

Modified: incubator/apollo/trunk/src/templates/Home.vm
URL: 
http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/templates/Home.vm?view=diff&r1=161191&r2=161192
==============================================================================
--- incubator/apollo/trunk/src/templates/Home.vm (original)
+++ incubator/apollo/trunk/src/templates/Home.vm Wed Apr 13 11:11:54 2005
@@ -1,5 +1,7 @@
 #set( $package = $generated.packageName )
-#set( $serviceName = $generated.ServiceName )
+#set( $capitalServiceName = $generated.ServiceName )
+#set( $lowerCaseServiceName = $generated.EndpointServiceName )
+
 package $package;
 
 import org.apache.ws.resource.Resource;
@@ -13,13 +15,20 @@
 import java.io.Serializable;
 
 /**
- * Home for $serviceName WS-Resources.
+ * Home for $capitalServiceName WS-Resources.
  */
-public class ${serviceName}Home
+public class ${capitalServiceName}Home
         extends AbstractResourceHome
         implements Serializable
 {
 
+    /** The service name associated with this home. **/
+    private static final String SERVICE_NAME  = "${lowerCaseServiceName}";
+    
+    /** A constant for the JNDI Lookup name for this home. **/
+    public static final String  HOME_LOCATION =
+     org.apache.ws.resource.JndiConstants.CONTEXT_NAME_SERVICES + "/" + 
SERVICE_NAME + "/" + org.apache.ws.resource.JndiConstants.ATOMIC_NAME_HOME;
+    
     /**
      *
      * @param resourceContext DOCUMENT_ME

Modified: incubator/apollo/trunk/src/templates/Resource.vm
URL: 
http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/templates/Resource.vm?view=diff&r1=161191&r2=161192
==============================================================================
--- incubator/apollo/trunk/src/templates/Resource.vm (original)
+++ incubator/apollo/trunk/src/templates/Resource.vm Wed Apr 13 11:11:54 2005
@@ -1,6 +1,13 @@
 #set( $package = $generated.packageName)
 #set( $serviceName = $generated.serviceName)
 #set( $namespaceVersionHolder = $generated.NamespaceVersionHolder)
+#set( $endpointServiceName = $generated.ServiceQName)
+#set( $portName = $generated.PortName)
+#set( $portTypeName = $generated.PortTypeQName)
+
+
+
+
 
 package $package;
 
@@ -13,8 +20,17 @@
 
 {
 
-    #if($namespaceVersionHolder)
+    /**  The service endpoint name as registered with the SOAP Platform.  This 
is useful for building EPR's. **/
+    public static final javax.xml.namespace.QName SERVICE_NAME = 
javax.xml.namespace.QName.valueOf("${endpointServiceName}");
+
     
+    /** The management PortType associated with this resource. This is useful 
for building EPR's.**/ 
+    public static final javax.xml.namespace.QName PORT_TYPE = 
javax.xml.namespace.QName.valueOf("${portTypeName}");    
+    
+    /**The WSDL Port name associated with the resource. This is useful for 
building EPR's.**/
+    public static final String PORT_NAME = "${portName}";
+    
+    #if($namespaceVersionHolder)    
     /**
      * A NamespaceVerionHolder which maintains the QNames of Spec Wsdls
      */
@@ -26,13 +42,30 @@
      */
     public void init()
     {
-        super.init();
-        
-        #foreach( $includeFile in $generated.ResourceInitIncludeLocations )
-       #parse( $includeFile )
-        #end       
+        super.init();               
+
+        #if($generated.HasProperties())
+        /**
+         * The ResourcePropertySet which contains all the defined 
ResourceProperties
+         */
+       org.apache.ws.resource.properties.ResourcePropertySet 
resourcePropertySet = getResourcePropertySet();
+       ResourceProperty resourceProperty = null;
         
         // TODO: init all custom properties - this includes setting values, 
registering callbacks, and adding prop value changed topics
+       #foreach($key in $generated.PropertyMap.keySet())
+       #set( $varName = "$key".toLowerCase() )
+       resourceProperty = 
resourcePropertySet.get(${serviceName}PropertyQNames.$key);
+       packagename.{$generated.PropertyMap.get($key).LocalPart}Document 
$varName = 
packagename.{$generated.PropertyMap.get($key).LocalPart}Document.Factory.newInstance();
     
+       // TODO: init this document object  ...also could call 
resourceProperty.setCallback(...); to add a custom callback object for this 
property
+        resourceProperty.add($varName);
+       #end
+
+       
+       #end
+       
+       #foreach( $includeFile in $generated.ResourceInitIncludeLocations )
+               #parse( $includeFile )
+        #end    
     }
 
 }



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

Reply via email to