Author: rfeng
Date: Wed Oct 4 11:36:17 2006
New Revision: 452968
URL: http://svn.apache.org/viewvc?view=rev&rev=452968
Log:
Adding a complex property to the sample with AXIOM databinding
Modified:
incubator/tuscany/java/samples/sca/echo.databinding/src/test/java/echo/ComponentAImpl.java
incubator/tuscany/java/samples/sca/echo.databinding/src/test/resources/META-INF/sca/default.scdl
incubator/tuscany/java/sca/services/databinding/databinding-axiom/src/main/java/org/apache/tuscany/databinding/axiom/String2OMElement.java
Modified:
incubator/tuscany/java/samples/sca/echo.databinding/src/test/java/echo/ComponentAImpl.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/samples/sca/echo.databinding/src/test/java/echo/ComponentAImpl.java?view=diff&rev=452968&r1=452967&r2=452968
==============================================================================
---
incubator/tuscany/java/samples/sca/echo.databinding/src/test/java/echo/ComponentAImpl.java
(original)
+++
incubator/tuscany/java/samples/sca/echo.databinding/src/test/java/echo/ComponentAImpl.java
Wed Oct 4 11:36:17 2006
@@ -18,6 +18,7 @@
*/
package echo;
+import org.apache.axiom.om.OMElement;
import org.osoa.sca.annotations.Constructor;
import org.osoa.sca.annotations.Property;
import org.osoa.sca.annotations.Reference;
@@ -32,6 +33,8 @@
private String prefix;
private String bar;
+
+ private OMElement omProperty;
@Constructor
public ComponentAImpl(@Reference(name = "componentBReference", required =
true)
@@ -69,6 +72,14 @@
@Property(name="bar")
public void setBar(String bar) {
this.bar = bar;
+ }
+
+ /**
+ * @param omProperty the omProperty to set
+ */
+ @Property(name="omProperty")
+ public void setOmProperty(OMElement omProperty) {
+ this.omProperty = omProperty;
}
}
Modified:
incubator/tuscany/java/samples/sca/echo.databinding/src/test/resources/META-INF/sca/default.scdl
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/samples/sca/echo.databinding/src/test/resources/META-INF/sca/default.scdl?view=diff&rev=452968&r1=452967&r2=452968
==============================================================================
---
incubator/tuscany/java/samples/sca/echo.databinding/src/test/resources/META-INF/sca/default.scdl
(original)
+++
incubator/tuscany/java/samples/sca/echo.databinding/src/test/resources/META-INF/sca/default.scdl
Wed Oct 4 11:36:17 2006
@@ -33,6 +33,7 @@
<reference name="componentBReference">ComponentB</reference>
<property name="prefix">ABC</property>
<property name="bar"
source="$complexProperty/*[local-name()='foo']/*[local-name()='bar']"></property>
+ <property name="omProperty"><a><b>XYZ</b></a></property>
</component>
<component name="ComponentB">
Modified:
incubator/tuscany/java/sca/services/databinding/databinding-axiom/src/main/java/org/apache/tuscany/databinding/axiom/String2OMElement.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/databinding/databinding-axiom/src/main/java/org/apache/tuscany/databinding/axiom/String2OMElement.java?view=diff&rev=452968&r1=452967&r2=452968
==============================================================================
---
incubator/tuscany/java/sca/services/databinding/databinding-axiom/src/main/java/org/apache/tuscany/databinding/axiom/String2OMElement.java
(original)
+++
incubator/tuscany/java/sca/services/databinding/databinding-axiom/src/main/java/org/apache/tuscany/databinding/axiom/String2OMElement.java
Wed Oct 4 11:36:17 2006
@@ -37,7 +37,7 @@
@Service(Transformer.class)
public class String2OMElement extends TransformerExtension<String, OMElement>
implements
- PullTransformer<String, OMElement> {
+ PullTransformer<String, OMElement> {
@SuppressWarnings("unchecked")
public OMElement transform(String source, TransformationContext context) {
@@ -57,15 +57,18 @@
*/
private void adjustElementName(TransformationContext context, OMElement
element) {
if (context != null) {
- DataType<QName> dataType = context.getTargetDataType();
- QName targetQName = dataType == null ? null :
dataType.getLogical();
- if (targetQName != null &&
!element.getQName().equals(targetQName)) {
+ DataType dataType = context.getTargetDataType();
+ Object targetQName = dataType == null ? null :
dataType.getLogical();
+ if (!(targetQName instanceof QName)) {
+ return;
+ }
+ if (!element.getQName().equals(targetQName)) {
// TODO: Throw expection or switch to the new Element
OMFactory factory = OMAbstractFactory.getOMFactory();
- OMNamespace namespace =
-
factory.createOMNamespace(targetQName.getNamespaceURI(),
targetQName.getPrefix());
+ QName name = (QName)targetQName;
+ OMNamespace namespace =
factory.createOMNamespace(name.getNamespaceURI(), name.getPrefix());
element.setNamespace(namespace);
- element.setLocalName(targetQName.getLocalPart());
+ element.setLocalName(name.getLocalPart());
}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]