You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsrf-dev@ws.apache.org by sc...@apache.org on 2004/12/24 00:00:56 UTC
svn commit: r123241 - in incubator/apollo/trunk/src: java/org/apache/ws/resource java/org/apache/ws/util/velocity templates
Author: scamp
Date: Thu Dec 23 15:00:54 2004
New Revision: 123241
URL: http://svn.apache.org/viewcvs?view=rev&rev=123241
Log:
updated for codegen
Removed:
incubator/apollo/trunk/src/java/org/apache/ws/util/velocity/Method.java
Modified:
incubator/apollo/trunk/src/java/org/apache/ws/resource/Wsdl2Java.java
incubator/apollo/trunk/src/java/org/apache/ws/util/velocity/ImplementsListBuilder.java
incubator/apollo/trunk/src/templates/AbstractService.vm
incubator/apollo/trunk/src/templates/CustomOperationsPortType.vm
incubator/apollo/trunk/src/templates/Service.vm
Modified: incubator/apollo/trunk/src/java/org/apache/ws/resource/Wsdl2Java.java
Url: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/java/org/apache/ws/resource/Wsdl2Java.java?view=diff&rev=123241&p1=incubator/apollo/trunk/src/java/org/apache/ws/resource/Wsdl2Java.java&r1=123240&p2=incubator/apollo/trunk/src/java/org/apache/ws/resource/Wsdl2Java.java&r2=123241
==============================================================================
--- incubator/apollo/trunk/src/java/org/apache/ws/resource/Wsdl2Java.java (original)
+++ incubator/apollo/trunk/src/java/org/apache/ws/resource/Wsdl2Java.java Thu Dec 23 15:00:54 2004
@@ -27,12 +27,12 @@
import org.apache.ws.resource.i18n.Keys;
import org.apache.ws.resource.i18n.MessagesImpl;
import org.apache.ws.resource.impl.ResourceDefinitionImpl;
+import org.apache.ws.util.XmlBeanNameUtils;
+import org.apache.ws.util.GenerationUtils;
+import org.apache.ws.util.i18n.Messages;
import org.apache.ws.util.velocity.ConstQNames;
+import org.apache.ws.util.velocity.ImplementsListBuilder;
import org.apache.ws.util.velocity.ServiceProperties;
-import org.apache.ws.util.i18n.Messages;
-import org.apache.ws.util.ImplementsListBuilder;
-import org.apache.ws.util.XmlBeanUtils;
-import org.apache.ws.util.XmlBeanNameUtils;
import org.apache.xmlbeans.impl.common.XmlErrorPrinter;
import org.apache.xmlbeans.impl.tool.SchemaCompiler;
@@ -44,8 +44,10 @@
import java.io.File;
import java.io.FileWriter;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
import java.util.StringTokenizer;
/**
@@ -298,57 +300,50 @@
try
{
VelocityContext context = new VelocityContext( );
- ServiceProperties props = new ServiceProperties();
- props.setPackageName();
- props.setServiceName(serviceName);
- props.setServiceImplements(ImplementsListBuilder.getServiceImplementsList(resourceDef));
- String targetNamespace = resourceDef.getDefinition().getTargetNamespace();
- props.setNamespace(targetNamespace);
- props.setPrefix();
- props.setCustomMappings();
- props.setPropertyMap();//todo
- props.setResourceImplements(ImplementsListBuilder.getResourceImplementsList(resourceDef));
- props.setPropertyDocumentName(XmlBeanNameUtils.getDocumentElementXmlBeanClassName(resourceDef.getPropertiesDocumentName()));
- props.setWsdlName(wsdlFileName);
- if( m_resourceKey == null )
- {
- //if its not a singleton and is null, create a default
- if(m_isSingleton == false)
- {
- props.setResourcekey(new QName(targetNamespace,"ResourceID"));
- }
- }
- else
- {
- props.setResourcekey(QName.valueOf(m_resourceKey));
- }
+ ServiceProperties props = buildServiceProperties(serviceName, resourceDef, wsdlFileName);
+
+ //add to context
context.put( "generated", props );
context.put( "qnames", new ConstQNames() );
+
+ //generate files
+
File generatedSrc = new File( m_srcOutputDir, "Abstract" + serviceName + "Service.java" );
writeGeneratedSrcFile( context,
"templates/AbstractService.vm",
generatedSrc.getAbsolutePath( ) );
generatedSrc = new File( m_srcOutputDir, serviceName + "Service.java" );
- writeGeneratedSrcFile( context,
+ //only generate if it doesn't exist
+ if(!generatedSrc.exists())
+ {
+ writeGeneratedSrcFile( context,
"templates/Service.vm",
generatedSrc.getAbsolutePath( ) );
-
+ }
generatedSrc = new File( m_srcOutputDir, "Abstract" + serviceName + "Resource.java" );
writeGeneratedSrcFile( context,
"templates/AbstractResource.vm",
generatedSrc.getAbsolutePath( ) );
generatedSrc = new File( m_srcOutputDir, serviceName + "Resource.java" );
- writeGeneratedSrcFile( context,
+ //only generate if it doesn't exist
+ if(!generatedSrc.exists())
+ {
+ writeGeneratedSrcFile( context,
"templates/Resource.vm",
generatedSrc.getAbsolutePath( ) );
+ }
generatedSrc = new File( m_srcOutputDir, serviceName + "Home.java" );
+ //only generate if it doesn't exist
+ if(!generatedSrc.exists())
+ {
writeGeneratedSrcFile( context,
"templates/Home.vm",
generatedSrc.getAbsolutePath( ) );
+ }
//only if they implemented properties does this make sense.
if(resourceDef.hasProperties())
{
@@ -381,7 +376,51 @@
}
}
- private void generateXmlBeans( )
+ private ServiceProperties buildServiceProperties(String serviceName, ResourceDefinition resourceDef, String wsdlFileName)
+ {
+ ServiceProperties props = new ServiceProperties();
+ String targetNamespace = resourceDef.getDefinition().getTargetNamespace();
+ props.setPackageName(GenerationUtils.getJavaPackageName(targetNamespace));
+ props.setServiceName(serviceName);
+ props.setServiceImplements(ImplementsListBuilder.getServiceImplementsList(resourceDef));
+ props.setNamespace(targetNamespace);
+ props.setPrefix(GenerationUtils.getPrefix(targetNamespace));
+ props.setCustomMappings();
+
+ QName[] customPropertyNames = resourceDef.getCustomPropertyNames();
+ Map customPropMap = new HashMap();
+ for (int i = 0; i < customPropertyNames.length; i++)
+ {
+ QName customPropertyName = customPropertyNames[i];
+ String propName = customPropertyName.getLocalPart().toUpperCase();
+ int count = 2;
+ while(customPropMap.containsKey(propName))
+ {
+ propName = propName + count;
+ count++;
+ }
+ customPropMap.put(propName,customPropertyName);
+ }
+ props.setPropertyMap(customPropMap);
+ props.setResourceImplements(ImplementsListBuilder.getResourceImplementsList(resourceDef));
+ props.setPropertyDocumentName(XmlBeanNameUtils.getDocumentElementXmlBeanClassName(resourceDef.getPropertiesDocumentName()));
+ props.setWsdlName(wsdlFileName);
+ if( m_resourceKey == null )
+ {
+ //if its not a singleton and is null, create a default
+ if(m_isSingleton == false)
+ {
+ props.setResourcekey(new QName(targetNamespace,"ResourceID"));
+ }
+ }
+ else
+ {
+ props.setResourcekey(QName.valueOf(m_resourceKey));
+ }
+ return props;
+ }
+
+ private void generateXmlBeans( )
throws Exception
{
SchemaCompiler.Parameters scompParams = new SchemaCompiler.Parameters( );
Modified: incubator/apollo/trunk/src/java/org/apache/ws/util/velocity/ImplementsListBuilder.java
Url: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/java/org/apache/ws/util/velocity/ImplementsListBuilder.java?view=diff&rev=123241&p1=incubator/apollo/trunk/src/java/org/apache/ws/util/velocity/ImplementsListBuilder.java&r1=123240&p2=incubator/apollo/trunk/src/java/org/apache/ws/util/velocity/ImplementsListBuilder.java&r2=123241
==============================================================================
--- incubator/apollo/trunk/src/java/org/apache/ws/util/velocity/ImplementsListBuilder.java (original)
+++ incubator/apollo/trunk/src/java/org/apache/ws/util/velocity/ImplementsListBuilder.java Thu Dec 23 15:00:54 2004
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*=============================================================================*/
-package org.apache.ws.util;
+package org.apache.ws.util.velocity;
import org.apache.ws.resource.ResourceDefinition;
import org.apache.ws.resource.PropertiesResource;
Deleted: /incubator/apollo/trunk/src/java/org/apache/ws/util/velocity/Method.java
Url: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/java/org/apache/ws/util/velocity/Method.java?view=auto&rev=123240
==============================================================================
Modified: incubator/apollo/trunk/src/templates/AbstractService.vm
Url: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/templates/AbstractService.vm?view=diff&rev=123241&p1=incubator/apollo/trunk/src/templates/AbstractService.vm&r1=123240&p2=incubator/apollo/trunk/src/templates/AbstractService.vm&r2=123241
==============================================================================
--- incubator/apollo/trunk/src/templates/AbstractService.vm (original)
+++ incubator/apollo/trunk/src/templates/AbstractService.vm Thu Dec 23 15:00:54 2004
@@ -3,7 +3,7 @@
#set( $implements = $generated.serviceImplements)
#set( $namespace = $generated.namespace)
#set( $prefix = $generated.prefix)
-#set( $customMappings = $generated.customMappings)
+#set( $customMethodList = $generated.customMethodList)
#set( $qnames = $qnames)
@@ -82,8 +82,8 @@
{
m_methodNameMap = new ServiceSoapMethodNameMap( getResourceContext( ) );
- #foreach( $key in $customMappings.keySet() )
- m_methodNameMap.addMapping( $key, $customMappings.get($key).Name )
+ #foreach( $key in $customMethodList.keySet() )
+ m_methodNameMap.addMapping( $key, $customMethodList.get($key).JavaMethodName )
#end
isInitialized = true;
}
Modified: incubator/apollo/trunk/src/templates/CustomOperationsPortType.vm
Url: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/templates/CustomOperationsPortType.vm?view=diff&rev=123241&p1=incubator/apollo/trunk/src/templates/CustomOperationsPortType.vm&r1=123240&p2=incubator/apollo/trunk/src/templates/CustomOperationsPortType.vm&r2=123241
==============================================================================
--- incubator/apollo/trunk/src/templates/CustomOperationsPortType.vm (original)
+++ incubator/apollo/trunk/src/templates/CustomOperationsPortType.vm Thu Dec 23 15:00:54 2004
@@ -1,7 +1,6 @@
#set( $package = $generated.packageName)
#set( $serviceName = $generated.serviceName)
#set( $customMethodList = $generated.customMethodList)
-#set( $customMappings = $generated.customMappings)
package $package;
@@ -18,10 +17,7 @@
{
#foreach( $method in $customMethodList.valueSet() )
- public $method.ReturnType $method.Name ( $method.Params)
- {
- //todo implement
- }
+ $method.JavaMethodSignature;
#end
}
Modified: incubator/apollo/trunk/src/templates/Service.vm
Url: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/templates/Service.vm?view=diff&rev=123241&p1=incubator/apollo/trunk/src/templates/Service.vm&r1=123240&p2=incubator/apollo/trunk/src/templates/Service.vm&r2=123241
==============================================================================
--- incubator/apollo/trunk/src/templates/Service.vm (original)
+++ incubator/apollo/trunk/src/templates/Service.vm Thu Dec 23 15:00:54 2004
@@ -1,5 +1,6 @@
#set( $package = $generated.packageName)
#set( $serviceName = $generated.serviceName)
+#set( $customMethodList = $generated.customMethodList)
package $package;
@@ -47,27 +48,19 @@
return m_resourceContext;
}
- public XmlObject mount( XmlObject requestDoc )
+ #foreach( $method in $customMethodList.valueSet() )
+ public $method.JavaMethodSignature
{
- try
- {
- return XmlObject.Factory.parse( "<MountResponse />" );
- }
- catch ( XmlException xe )
- {
- throw new JAXRPCException( xe );
- }
- }
-
- public XmlObject unmount( XmlObject requestDoc )
- {
- try
- {
- return XmlObject.Factory.parse( "<UnmountResponse />" );
- }
- catch ( XmlException xe )
- {
- throw new JAXRPCException( xe );
- }
+ //todo implement
+ try
+ {
+ return XmlObject.Factory.parse( "<MountResponse />" );
+ }
+ catch ( XmlException xe )
+ {
+ throw new JAXRPCException( xe );
+ }
}
+ #end
+
}
---------------------------------------------------------------------
To unsubscribe, e-mail: apollo-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: apollo-dev-help@ws.apache.org