Author: rfeng
Date: Thu Oct 12 11:43:45 2006
New Revision: 463371
URL: http://svn.apache.org/viewvc?view=rev&rev=463371
Log:
Fix the default xmlType for a java property annotation
Modified:
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/PropertyProcessor.java
incubator/tuscany/java/spec/sca/src/main/java/org/osoa/sca/annotations/Property.java
Modified:
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/PropertyProcessor.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/PropertyProcessor.java?view=diff&rev=463371&r1=463370&r2=463371
==============================================================================
---
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/PropertyProcessor.java
(original)
+++
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/PropertyProcessor.java
Thu Oct 12 11:43:45 2006
@@ -24,7 +24,9 @@
import org.apache.tuscany.spi.annotation.Autowire;
import org.apache.tuscany.spi.component.CompositeComponent;
+import org.apache.tuscany.spi.databinding.extension.SimpleTypeMapperExtension;
import org.apache.tuscany.spi.deployer.DeploymentContext;
+import org.apache.tuscany.spi.idl.TypeInfo;
import org.apache.tuscany.spi.implementation.java.AbstractPropertyProcessor;
import
org.apache.tuscany.spi.implementation.java.ImplementationProcessorService;
import org.apache.tuscany.spi.implementation.java.JavaMappedProperty;
@@ -41,7 +43,8 @@
* @version $Rev$ $Date$
*/
public class PropertyProcessor extends AbstractPropertyProcessor<Property> {
-
+ private SimpleTypeMapperExtension typeMapper = new
SimpleTypeMapperExtension();
+
public PropertyProcessor(@Autowire ImplementationProcessorService service)
{
super(Property.class, service);
}
@@ -55,7 +58,15 @@
CompositeComponent parent,
DeploymentContext context) {
property.setOverride(OverrideOptions.valueOf(annotation.override().toUpperCase()));
- property.setXmlType(QName.valueOf(annotation.xmlType()));
+ String xmlType = annotation.xmlType();
+ if (xmlType != null && xmlType.length() != 0) {
+ property.setXmlType(QName.valueOf(annotation.xmlType()));
+ } else {
+ TypeInfo type = typeMapper.getXMLType(property.getJavaType());
+ if (type != null) {
+ property.setXmlType(type.getQName());
+ }
+ }
}
public <T> void visitConstructor(CompositeComponent parent, Constructor<T>
constructor,
Modified:
incubator/tuscany/java/spec/sca/src/main/java/org/osoa/sca/annotations/Property.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/spec/sca/src/main/java/org/osoa/sca/annotations/Property.java?view=diff&rev=463371&r1=463370&r2=463371
==============================================================================
---
incubator/tuscany/java/spec/sca/src/main/java/org/osoa/sca/annotations/Property.java
(original)
+++
incubator/tuscany/java/spec/sca/src/main/java/org/osoa/sca/annotations/Property.java
Thu Oct 12 11:43:45 2006
@@ -49,6 +49,6 @@
/**
* The XML Type in a QName format
*/
- public String xmlType() default "{http://www.w3.org/2001/XMLSchema}string";
+ public String xmlType() default "";
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]