Author: scamp
Date: Wed Apr 13 14:00:40 2005
New Revision: 161210

URL: http://svn.apache.org/viewcvs?view=rev&rev=161210
Log:
Updated to ensure only the props which we do not implement appear...

Modified:
    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/Resource.vm

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=161209&r2=161210
==============================================================================
--- 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 14:00:40 2005
@@ -379,6 +379,13 @@
             }
             props.setPropertyMap( propMap );
         }
+
+        //tell the service props which props we implemement for the user..
+        
props.addImplementedProperty(org.apache.ws.resource.lifetime.v2004_06.porttype.ScheduledResourceTerminationPortType.PROP_QNAME_TERMINATION_TIME);
+        
props.addImplementedProperty(org.apache.ws.resource.lifetime.v2004_06.porttype.ScheduledResourceTerminationPortType.PROP_QNAME_CURRENT_TIME);
+        
props.addImplementedProperty(org.apache.ws.resource.lifetime.v2004_11.porttype.ScheduledResourceTerminationPortType.PROP_QNAME_TERMINATION_TIME);
+        
props.addImplementedProperty(org.apache.ws.resource.lifetime.v2004_11.porttype.ScheduledResourceTerminationPortType.PROP_QNAME_CURRENT_TIME);
+
         props.setResourceImplements( 
ImplementsListBuilder.getResourceImplementsList( resourceDef, m_portTypeInfoMap 
) );
         QName propertiesDocumentName = resourceDef.getPropertiesDocumentName();
         if( propertiesDocumentName != null)

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=161209&r2=161210
==============================================================================
--- 
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 14:00:40 2005
@@ -7,6 +7,7 @@
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
+import java.util.HashMap;
 
 /**
  * A bean that contains all properties that are needed by our Velocity 
templates.
@@ -43,6 +44,7 @@
     private QName m_serviceQName;
     private String m_portName;
     private QName m_portTypeQName;
+    private List m_implementedProps = new ArrayList();
 
     public ServiceProperties(ResourceDefinition resourceDef)
     {
@@ -208,7 +210,7 @@
     {
         this.m_resourcekey = resourcekey;
     }
-    
+
     public void setHasProperties(boolean hasProps)
     {
         m_hasProperties = hasProps;
@@ -321,5 +323,51 @@
     public String getDocumentElementXmlBeanClassName(QName prop_qname)
     {
         return XmlBeanNameUtils.getDocumentElementXmlBeanClassName(prop_qname);
+    }
+
+    /**
+     * Use this method to tell the ServiceProperties which ResourceProperties 
we implement for the user.
+     *
+     * @param propQnameTerminationTime
+     */
+    public void addImplementedProperty(QName propQnameTerminationTime)
+    {
+        m_implementedProps.add(propQnameTerminationTime);
+    }
+
+    /**
+     * Returns a list of only the properties which the implementor has defined
+     * in their wsdl AND that ARE implemented for them.
+     *
+     * @return A list of the props which the implementor will not need to 
implement.
+     */
+    public List getImplementedProperties()
+    {
+        List list = new ArrayList();
+        for (int i = 0; i < m_implementedProps.size(); i++)
+        {
+            if (m_propertyMap.values().contains(m_implementedProps.get(i)))
+            {
+                list.add(m_implementedProps.get(i));
+            }
+        }
+        return list;
+    }
+
+    /**
+     * Returns a Map of the properties which the implementor will
+     * need to implement.
+     *
+     * @return The Map of props which need to be implenmented/
+     */
+    public Map getImplementableProperties()
+    {
+        Map implementableMap = new HashMap(m_propertyMap);
+        for (int i = 0; i < m_implementedProps.size(); i++)
+        {
+            implementableMap.remove( m_implementedProps.get(i));
+
+        }
+        return implementableMap;
     }
 }

Modified: incubator/apollo/trunk/src/templates/Resource.vm
URL: 
http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/templates/Resource.vm?view=diff&r1=161209&r2=161210
==============================================================================
--- incubator/apollo/trunk/src/templates/Resource.vm (original)
+++ incubator/apollo/trunk/src/templates/Resource.vm Wed Apr 13 14:00:40 2005
@@ -47,8 +47,9 @@
                org.apache.ws.resource.properties.ResourcePropertySet 
resourcePropertySet = getResourcePropertySet();
                org.apache.ws.resource.properties.ResourceProperty 
resourceProperty = null;
 
+
                
-       #foreach($key in $generated.PropertyMap.keySet())
+       #foreach($key in $generated.ImplementableProperties.keySet())
        // init the ${generated.PropertyMap.get($key).toString()} Resource 
Property
                resourceProperty = 
resourcePropertySet.get(${serviceName}PropertyQNames.$key);
                
${generated.getDocumentElementXmlBeanClassName(${generated.PropertyMap.get($key)})}
 prop_${generated.PropertyMap.get($key).LocalPart.toLowerCase()} = 
${generated.getDocumentElementXmlBeanClassName(${generated.PropertyMap.get($key)})}.Factory.newInstance();
@@ -57,6 +58,10 @@
                
resourceProperty.add(prop_${generated.PropertyMap.get($key).LocalPart.toLowerCase()});
        
        
+       #end
+       
+       #foreach( $implementedProp in $generated.ImplementedProperties )
+       // Resource Property ${implementedProp.toString()} is implemented by 
Apollo
        #end
        #end
        



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

Reply via email to