You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2006/08/17 07:43:00 UTC
svn commit: r432155 [1/3] - in
/incubator/tuscany/java/sca/databinding/databinding-framework: ./
src/main/java/org/apache/tuscany/databinding/
src/main/java/org/apache/tuscany/databinding/annotation/
src/main/java/org/apache/tuscany/databinding/extensi...
Author: rfeng
Date: Wed Aug 16 22:42:57 2006
New Revision: 432155
URL: http://svn.apache.org/viewvc?rev=432155&view=rev
Log:
Applied my own patch sent before vacation and some other SDO binding adjustments for Axis2 integration
Added:
incubator/tuscany/java/sca/databinding/databinding-framework/.ruleset
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBindingRegistry.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/DataBindingExtension.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerExtension.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerRegistrarExtension.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingDefinitionLoader.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingRegistryImpl.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/model/
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/model/DataBindingDefinition.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/DOMHelper.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/InputStreamBinding.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/OutputStreamBinding.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAX2DOM.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAXContentHandlerBinding.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/WriterBinding.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/XMLEventReaderBinding.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/XMLEventWriterBinding.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/XMLStreamReaderBinding.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/XMLStreamWriterBinding.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/XMLStringBinding.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/resources/
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/resources/META-INF/
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/resources/META-INF/sca/
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/resources/META-INF/sca/databinding.scdl
incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/impl/DataBindingRegistryImplTestCase.java (with props)
incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/util/PropertyMediatorTestCase.java (with props)
Removed:
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PushStyleTransformer.java
Modified:
incubator/tuscany/java/sca/databinding/databinding-framework/pom.xml
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBinding.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataPipe.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/Mediator.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PullTransformer.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PushTransformer.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformationContext.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformationException.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/Transformer.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformerRegistry.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/annotation/DataBinding.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/annotation/DataContext.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/MediatorImpl.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/TransformationContextImpl.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/TransformerRegistryImpl.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputSource2Node.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputSource2SAX.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputStream2Node.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputStream2SAX.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2OutputStream.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2String.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2Writer.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Reader2Node.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Reader2SAX.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Source2ResultTransformer.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/String2SAX.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/util/DirectedGraph.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/util/PipedTransformer.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/util/StreamDataPipe.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/util/Writer2ReaderDataPipe.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/DOMBinding.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2String.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/Node2XMLStreamReader.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAX2DOMPipe.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/SAXBinding.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXBinding.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StAXHelper.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/StreamBinding.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2Node.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/String2XMLStreamReader.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/XMLStreamReader2Node.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/XMLStreamReader2SAX.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/xml/XMLStreamReader2String.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/impl/MediatorImplTestCase.java
incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/trax/Node2StringTestCase.java
Added: incubator/tuscany/java/sca/databinding/databinding-framework/.ruleset
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/.ruleset?rev=432155&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/.ruleset (added)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/.ruleset Wed Aug 16 22:42:57 2006
@@ -0,0 +1,172 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ruleset name="pmd-eclipse">
+ <description>PMD Plugin preferences rule set</description>
+
+
+ <rule ref="rulesets/basic.xml/BooleanInstantiation"/>
+ <rule ref="rulesets/basic.xml/CollapsibleIfStatements"/>
+ <rule ref="rulesets/basic.xml/DoubleCheckedLocking"/>
+<!--<rule ref="rulesets/basic.xml/EmptyCatchBlock"/>-->
+<!--<rule ref="rulesets/basic.xml/EmptyFinallyBlock"/>-->
+<!--<rule ref="rulesets/basic.xml/EmptyIfStmt"/>-->
+ <rule ref="rulesets/basic.xml/EmptyStatementNotInLoop"/>
+<!--<rule ref="rulesets/basic.xml/EmptyStaticInitializer"/>-->
+<!--<rule ref="rulesets/basic.xml/EmptySwitchStatements"/>-->
+<!--<rule ref="rulesets/basic.xml/EmptySynchronizedBlock"/>-->
+<!--<rule ref="rulesets/basic.xml/EmptyTryBlock"/>-->
+<!--<rule ref="rulesets/basic.xml/EmptyWhileStmt"/>-->
+ <rule ref="rulesets/basic.xml/ForLoopShouldBeWhileLoop"/>
+ <rule ref="rulesets/basic.xml/JumbledIncrementer"/>
+<!--<rule ref="rulesets/basic.xml/OverrideBothEqualsAndHashcode"/>-->
+ <rule ref="rulesets/basic.xml/ReturnFromFinallyBlock"/>
+ <rule ref="rulesets/basic.xml/UnconditionalIfStatement"/>
+ <rule ref="rulesets/basic.xml/UnnecessaryConversionTemporary"/>
+ <rule ref="rulesets/basic.xml/UnnecessaryFinalModifier"/>
+ <rule ref="rulesets/basic.xml/UnnecessaryReturn"/>
+<!--<rule ref="rulesets/basic.xml/UselessOverridingMethod"/>-->
+
+<!--<rule ref="rulesets/braces.xml/ForLoopsMustUseBraces"/>-->
+<!--<rule ref="rulesets/braces.xml/IfElseStmtsMustUseBraces"/>-->
+<!--<rule ref="rulesets/braces.xml/IfStmtsMustUseBraces"/>-->
+<!--<rule ref="rulesets/braces.xml/WhileLoopsMustUseBraces"/>-->
+
+<!--<rule ref="rulesets/clone.xml/CloneMethodMustImplementCloneable"/>-->
+<!--<rule ref="rulesets/clone.xml/CloneThrowsCloneNotSupportedException"/>-->
+<!--<rule ref="rulesets/clone.xml/ProperCloneImplementation"/>-->
+
+<!--<rule ref="rulesets/codesize.xml/CyclomaticComplexity"/>-->
+<!--<rule ref="rulesets/codesize.xml/ExcessiveClassLength"/>-->
+<!--<rule ref="rulesets/codesize.xml/ExcessiveMethodLength"/>-->
+<!--<rule ref="rulesets/codesize.xml/ExcessiveParameterList"/>-->
+<!--<rule ref="rulesets/codesize.xml/ExcessivePublicCount"/>-->
+<!--<rule ref="rulesets/codesize.xml/TooManyFields"/>-->
+
+<rule ref="rulesets/controversial.xml/AssignmentInOperand"/>
+<!--<rule ref="rulesets/controversial.xml/AtLeastOneConstructor"/>-->
+<!--<rule ref="rulesets/controversial.xml/CallSuperInConstructor"/>-->
+<!--<rule ref="rulesets/controversial.xml/DontImportSun"/>-->
+<!--<rule ref="rulesets/controversial.xml/NullAssignment"/>-->
+<!--<rule ref="rulesets/controversial.xml/OnlyOneReturn"/>-->
+<!--<rule ref="rulesets/controversial.xml/SingularField"/>-->
+<!--<rule ref="rulesets/controversial.xml/SuspiciousOctalEscape"/>-->
+<!--<rule ref="rulesets/controversial.xml/UnnecessaryConstructor"/>-->
+<rule ref="rulesets/controversial.xml/UnnecessaryParentheses"/>
+<!--<rule ref="rulesets/controversial.xml/UnusedModifier"/>-->
+
+<!--<rule ref="rulesets/coupling.xml/CouplingBetweenObjects"/>-->
+<!--<rule ref="rulesets/coupling.xml/ExcessiveImports"/>-->
+<!--<rule ref="rulesets/coupling.xml/LooseCoupling"/>-->
+
+<!--<rule ref="rulesets/design.xml/AbstractClassWithoutAbstractMethod"/>-->
+<!--<rule ref="rulesets/design.xml/AccessorClassGeneration"/>-->
+<!--<rule ref="rulesets/design.xml/AssignmentToNonFinalStatic"/>-->
+<!--<rule ref="rulesets/design.xml/AvoidDeeplyNestedIfStmts"/>-->
+<!--<rule ref="rulesets/design.xml/AvoidInstanceofChecksInCatchClause"/>-->
+<rule ref="rulesets/design.xml/AvoidProtectedFieldInFinalClass"/>
+<!--<rule ref="rulesets/design.xml/AvoidReassigningParameters"/>-->
+<!--<rule ref="rulesets/design.xml/AvoidSynchronizedAtMethodLevel"/>-->
+<!--<rule ref="rulesets/design.xml/BadComparison"/>-->
+<!--<rule ref="rulesets/design.xml/CloseConnection"/>-->
+<!--<rule ref="rulesets/design.xml/CompareObjectsWithEquals"/>-->
+<!--<rule ref="rulesets/design.xml/ConfusingTernary"/>-->
+<rule ref="rulesets/design.xml/ConstructorCallsOverridableMethod"/>
+<!--<rule ref="rulesets/design.xml/DefaultLabelNotLastInSwitchStmt"/>-->
+<!--<rule ref="rulesets/design.xml/FinalFieldCouldBeStatic"/>-->
+<rule ref="rulesets/design.xml/IdempotentOperations"/>
+<!--<rule ref="rulesets/design.xml/ImmutableField"/>-->
+<!--<rule ref="rulesets/design.xml/InstantiationToGetClass"/>-->
+<!--<rule ref="rulesets/design.xml/MissingBreakInSwitch"/>-->
+<!--<rule ref="rulesets/design.xml/MissingStaticMethodInNonInstantiatableClass"/>-->
+<!--<rule ref="rulesets/design.xml/NonCaseLabelInSwitchStatement"/>-->
+<!--<rule ref="rulesets/design.xml/NonStaticInitializer"/>-->
+<rule ref="rulesets/design.xml/OptimizableToArrayCall"/>
+<rule ref="rulesets/design.xml/PositionLiteralsFirstInComparisons"/>
+<rule ref="rulesets/design.xml/SimplifyBooleanExpressions"/>
+<rule ref="rulesets/design.xml/SimplifyBooleanReturns"/>
+<rule ref="rulesets/design.xml/SimplifyConditional"/>
+<!--<rule ref="rulesets/design.xml/SwitchDensity"/>-->
+<!--<rule ref="rulesets/design.xml/SwitchStmtsShouldHaveDefault"/>-->
+<rule ref="rulesets/design.xml/UnnecessaryLocalBeforeReturn"/>
+<!--<rule ref="rulesets/design.xml/UseLocaleWithCaseConversions"/>-->
+<!--<rule ref="rulesets/design.xml/UseNotifyAllInsteadOfNotify"/>-->
+<!--<rule ref="rulesets/design.xml/UseSingleton"/>-->
+
+<!--<rule ref="rulesets/finalizers.xml/EmptyFinalizer"/>-->
+<!--<rule ref="rulesets/finalizers.xml/FinalizeOnlyCallsSuperFinalize"/>-->
+<!--<rule ref="rulesets/finalizers.xml/FinalizeOverloaded"/>-->
+<!--<rule ref="rulesets/finalizers.xml/FinalizeDoesNotCallSuperFinalize"/>-->
+<!--<rule ref="rulesets/finalizers.xml/FinalizeShouldBeProtected"/>-->
+<!--<rule ref="rulesets/finalizers.xml/AvoidCallingFinalize"/>-->
+
+<!--<rule ref="rulesets/imports.xml/DuplicateImports"/>-->
+<!--<rule ref="rulesets/imports.xml/DontImportJavaLang"/>-->
+<!--<rule ref="rulesets/imports.xml/UnusedImports"/>-->
+<!--<rule ref="rulesets/imports.xml/ImportFromSamePackage"/>-->
+
+<!--<rule ref="rulesets/javabeans.xml/BeanMembersShouldSerialize"/>-->
+<!--<rule ref="rulesets/javabeans.xml/MissingSerialVersionUID"/>-->
+
+<!--<rule ref="rulesets/junit.xml/JUnitStaticSuite"/>-->
+<!--<rule ref="rulesets/junit.xml/JUnitSpelling"/>-->
+<!--<rule ref="rulesets/junit.xml/JUnitAssertionsShouldIncludeMessage"/>-->
+<!--<rule ref="rulesets/junit.xml/JUnitTestsShouldIncludeAssert"/>-->
+<!--<rule ref="rulesets/junit.xml/TestClassWithoutTestCases"/>-->
+<!--<rule ref="rulesets/junit.xml/UnnecessaryBooleanAssertion"/>-->
+<!--<rule ref="rulesets/junit.xml/UseAssertEqualsInsteadOfAssertTrue"/>-->
+<!--<rule ref="rulesets/junit.xml/UseAssertSameInsteadOfAssertTrue"/>-->
+
+ <!--<rule ref="rulesets/logging-java.xml/AvoidPrintStackTrace"/>-->
+ <!--<rule ref="rulesets/logging-java.xml/LoggerIsNotStaticFinal"/>-->
+ <!--<rule ref="rulesets/logging-java.xml/MoreThanOneLogger"/>-->
+ <!--<rule ref="rulesets/logging-java.xml/LoggerIsNotStaticFinal"/>-->
+ <!--<rule ref="rulesets/logging-java.xml/LogBlockWithoutIf"/>-->
+ <!--<rule ref="rulesets/logging-java.xml/SystemPrintln"/>-->
+ <!--<rule ref="rulesets/logging-jakarta-commons.xml/UseCorrectExceptionLogging"/>-->
+ <!--<rule ref="rulesets/logging-jakarta-commons.xml/ProperLogger"/>-->
+
+ <!--<rule ref="rulesets/naming.xml/ShortVariable"/>-->
+ <!--<rule ref="rulesets/naming.xml/LongVariable"/>-->
+ <!--<rule ref="rulesets/naming.xml/ShortMethodName"/>-->
+ <!--<rule ref="rulesets/naming.xml/VariableNamingConventions"/>-->
+ <!--<rule ref="rulesets/naming.xml/MethodNamingConventions"/>-->
+ <!--<rule ref="rulesets/naming.xml/ClassNamingConventions"/>-->
+ <!--<rule ref="rulesets/naming.xml/AbstractNaming"/>-->
+ <!--<rule ref="rulesets/naming.xml/AvoidDollarSigns"/>-->
+ <!--<rule ref="rulesets/naming.xml/MethodWithSameNameAsEnclosingClass"/>-->
+ <!--<rule ref="rulesets/naming.xml/SuspiciousHashcodeMethodName"/>-->
+ <!--<rule ref="rulesets/naming.xml/SuspiciousConstantFieldName"/>-->
+ <!--<rule ref="rulesets/naming.xml/AvoidFieldNameMatchingTypeName"/>-->
+ <!--<rule ref="rulesets/naming.xml/AvoidFieldNameMatchingMethodName"/>-->
+ <!--<rule ref="rulesets/naming.xml/AvoidNonConstructorMethodsWithClassName"/>-->
+ <!--<rule ref="rulesets/naming.xml/NoPackage"/>-->
+ <!--<rule ref="rulesets/naming.xml/PackageCase"/>-->
+
+ <!--<rule ref="rulesets/optimizations.xml/LocalVariableCouldBeFinal"/>-->
+ <!--<rule ref="rulesets/optimizations.xml/MethodArgumentCouldBeFinal"/>-->
+ <!--<rule ref="rulesets/optimizations.xml/AvoidInstantiatingObjectsInLoops"/>-->
+ <!--<rule ref="rulesets/optimizations.xml/UseArrayListInsteadOfVector"/>-->
+ <!--<rule ref="rulesets/optimizations.xml/SimplifyStartsWith"/>-->
+ <!--<rule ref="rulesets/optimizations.xml/UseStringBufferForStringAppends"/>-->
+
+ <!--<rule ref="rulesets/strictexception.xml/AvoidCatchingThrowable"/>-->
+ <!--<rule ref="rulesets/strictexception.xml/SignatureDeclareThrowsException"/>-->
+ <!--<rule ref="rulesets/strictexception.xml/ExceptionAsFlowControl"/>-->
+ <!--<rule ref="rulesets/strictexception.xml/AvoidCatchingNPE"/>-->
+ <!--<rule ref="rulesets/strictexception.xml/AvoidThrowingRawExceptionTypes"/>-->
+ <!--<rule ref="rulesets/strictexception.xml/AvoidThrowingNullPointerException"/>-->
+
+ <!--<rule ref="rulesets/strings.xml/AvoidDuplicateLiterals"/>-->
+ <!--<rule ref="rulesets/strings.xml/StringInstantiation"/>-->
+ <!--<rule ref="rulesets/strings.xml/StringToString"/>-->
+ <!--<rule ref="rulesets/strings.xml/AvoidConcatenatingNonLiteralsInStringBuffer"/>-->
+ <!--<rule ref="rulesets/strings.xml/UnnecessaryCaseChange"/>-->
+
+ <!--<rule ref="rulesets/sunsecure.xml/MethodReturnsInternalArray"/>-->
+ <!--<rule ref="rulesets/sunsecure.xml/ArrayIsStoredDirectly"/>-->
+
+ <rule ref="rulesets/unusedcode.xml/UnusedLocalVariable"/>
+ <rule ref="rulesets/unusedcode.xml/UnusedPrivateField"/>
+ <rule ref="rulesets/unusedcode.xml/UnusedPrivateMethod"/>
+ <!--<rule ref="rulesets/unusedcode.xml/UnusedFormalParameter"/>-->
+
+</ruleset>
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/pom.xml?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/pom.xml (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/pom.xml Wed Aug 16 22:42:57 2006
@@ -45,6 +45,7 @@
</dependency>
+<!--
<dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
@@ -59,6 +60,7 @@
<version>2.7.0</version>
<scope>compile</scope>
</dependency>
+ -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBinding.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBinding.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBinding.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBinding.java Wed Aug 16 22:42:57 2006
@@ -18,31 +18,36 @@
*/
package org.apache.tuscany.databinding;
-import javax.xml.transform.Result;
-import javax.xml.transform.Source;
/**
- * DataBinding interface defines a data binding
+ * DataBinding interface defines a data binding.
*/
public interface DataBinding {
/**
- * Get the name of the data binding
+ * Get the name of the data binding. For example, "sdo" for Service Data Object (SDO).
+ * The name is NOT case sensitive. We recommond a pattern as "xxx.yyy", for example, "sdo.dataObject"
+ *
+ *
+ *
* @return The name which uniquely idetifies the data binding
*/
public String getName();
-
+
/**
- * @param source
- * @param sourceType
+ * Check if the given java type is supported by this data type
+ * @param javaClass
* @return
*/
- public Source createSource(Object source, Class sourceType);
-
+ public boolean isSupported(Class javaClass);
+
/**
- * Create a result object
- * @param resultType
- * @return
+ * Check if the data binding is for writing only (for example, Writer, OutputStream and ContentHandler)
+ * @return true if the data type if for writing only
*/
- public Result createResult(Class resultType);
+ public boolean isSinkOnly();
+
+ public Object getAttribute(String name);
+ public void setAttribute(String name, Object value);
+
}
Added: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBindingRegistry.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBindingRegistry.java?rev=432155&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBindingRegistry.java (added)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBindingRegistry.java Wed Aug 16 22:42:57 2006
@@ -0,0 +1,57 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation or its licensors as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.tuscany.databinding;
+
+/**
+ * The registry for data bindings
+ */
+public interface DataBindingRegistry {
+ /**
+ * Register a data binding
+ * @param dataBinding
+ */
+ public void register(DataBinding dataBinding);
+
+ /**
+ * Look up a data binding by id
+ * @param id
+ * @return
+ */
+ public DataBinding getDataBinding(String id);
+
+ /**
+ * Unregister a data binding
+ * @param id
+ * @return
+ */
+ public DataBinding unregister(String id);
+
+ /**
+ * Introspect the java class to figure out what DataType supports it
+ * @param javaType The java class or interface
+ * @return
+ */
+ public DataBinding introspectType(Class<?> javaType);
+
+ /**
+ * Introspect the object to figure out what DataType supports it
+ * @param object The value
+ * @return
+ */
+ public DataBinding introspectValue(Object object);
+}
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBindingRegistry.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataBindingRegistry.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataPipe.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataPipe.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataPipe.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/DataPipe.java Wed Aug 16 22:42:57 2006
@@ -24,7 +24,7 @@
* @param <S> The data binding type of the sink
* @param <R> The data binding type of the result
*/
-public interface DataPipe<S, R> extends Transformer<S, R>{
+public interface DataPipe<S, R> extends Transformer {
/**
* Returns a sink (for example, java.io.OutputStream, java.io.Writer or org.xml.sax.ContentHandler) to
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/Mediator.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/Mediator.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/Mediator.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/Mediator.java Wed Aug 16 22:42:57 2006
@@ -25,22 +25,22 @@
*
*/
public interface Mediator {
+
/**
- * @param source The source object to be mediated
- * @param sourceType The type of the source data
- * @param resultType The type of the result data
- * @param context The context
- * @return The mediated result
+ * Mediate the data from the source binding type to the target binding type
+ * @param source
+ * @param sourceBinding
+ * @param targetBinding
+ * @return
*/
- public Object mediate(Object source, Object sourceType, Object resultType, TransformationContext context);
+ public Object mediate(Object source, DataBinding sourceBinding, DataBinding targetBinding);
/**
+ * Mediate the data
* @param source
* @param target
- * @param sourceType
- * @param resultType
- * @param context
- * @return
+ * @param sourceBinding
+ * @param targetBinding
*/
- public Object mediate(Object source, Object target, Object sourceType, Object resultType, TransformationContext context);
+ public void mediate(Object source, Object target, DataBinding sourceBinding, DataBinding targetBinding);
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PullTransformer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PullTransformer.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PullTransformer.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PullTransformer.java Wed Aug 16 22:42:57 2006
@@ -18,17 +18,22 @@
*/
package org.apache.tuscany.databinding;
-
/**
* PullTransformer transforms data from one binding format to the other one which can be directly consumed
- * @param <S> The source data type
- * @param <R> the target data type
+ *
+ * @param <S>
+ * The source data type
+ * @param <R>
+ * the target data type
*/
-public interface PullTransformer<S, R> extends Transformer<S, R>{
+public interface PullTransformer<S, R> extends Transformer {
/**
- * Transform source data into the result type.
- * @param source The source data
- * @param context The context for the transformation
+ * Transform source data into the result type.
+ *
+ * @param source
+ * The source data
+ * @param context
+ * The context for the transformation
* @return The transformed result
*/
public R transform(S source, TransformationContext context);
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PushTransformer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PushTransformer.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PushTransformer.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/PushTransformer.java Wed Aug 16 22:42:57 2006
@@ -24,7 +24,7 @@
* @param <S>
* @param <R>
*/
-public interface PushTransformer<S, R> extends Transformer<S, R>{
+public interface PushTransformer<S, R> extends Transformer {
/**
* @param source
* @param sink
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformationContext.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformationContext.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformationContext.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformationContext.java Wed Aug 16 22:42:57 2006
@@ -18,34 +18,34 @@
*/
package org.apache.tuscany.databinding;
-
-
/**
* Context for data transformation
- *
+ *
*/
public interface TransformationContext {
/**
* @return
*/
- public DataBinding getSourceBinding();
+ public DataBinding getSourceDataBinding();
+
/**
* @return
*/
- public DataBinding getTargetBinding();
+ public DataBinding getTargetDataBinding();
+
/**
- * @return
+ * @param sourceNode
*/
- public ClassLoader getClassLoader();
+ public void setSourceDataBinding(DataBinding sourceNode);
+
/**
- * @param name
- * @return
+ * @param targetNode
*/
- public Object getAttribute(String name);
-
+ public void setTargetDataBinding(DataBinding targetNode);
+
/**
- * @param name
- * @param object
+ * @return
*/
- public void setAttribute(String name, Object object);
+ public ClassLoader getClassLoader();
+
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformationException.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformationException.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformationException.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformationException.java Wed Aug 16 22:42:57 2006
@@ -20,27 +20,27 @@
import org.apache.tuscany.api.TuscanyRuntimeException;
+/**
+ * Reports problems during data transformation
+ */
public class TransformationException extends TuscanyRuntimeException {
- /**
- *
- */
private static final long serialVersionUID = 7662385613693006428L;
public TransformationException() {
super();
}
- public TransformationException(String arg0, Throwable arg1) {
- super(arg0, arg1);
+ public TransformationException(String message, Throwable cause) {
+ super(message, cause);
}
- public TransformationException(String arg0) {
- super(arg0);
+ public TransformationException(String message) {
+ super(message);
}
- public TransformationException(Throwable arg0) {
- super(arg0);
+ public TransformationException(Throwable cause) {
+ super(cause);
}
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/Transformer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/Transformer.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/Transformer.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/Transformer.java Wed Aug 16 22:42:57 2006
@@ -20,30 +20,33 @@
/**
- * Transformer transforms data from one binding format to the other one.
- *
- * @param <S> The source data type
- * @param <R> the target data type
+ * A transformer provides the data transformation from source type to target type. The cost
+ * of the transformation is modeled as weight.
*/
-public interface Transformer<S, R> {
+public interface Transformer {
// FIXME: [rfeng] I'm not very sure if Class is a good id to represent the data type. Another option
// is to use URI strings
/**
- * Get the source type that this transformer transforms data from
- * @return
+ * Get the source type that this transformer transforms data from. The type is used as the key when the
+ * transformer is registered with TransformerRegistry.
+ *
+ * @return A key indentifying the source type
*/
- public Class<S> getSourceType();
+ public String getSourceBinding();
/**
- * Get the target type that this transformer transforms data into
- * @return
+ * Get the target type that this transformer transforms data into. The type is used as the key when the
+ * transformer is registered with TransformerRegistry.
+ *
+ * @return A key indentifying the target type
*/
- public Class<R> getTargetType();
+ public String getTargetBinding();
/**
* Get the cost of the transformation. The weight can be used to choose the most efficient path if
* there are more than one available from the source to the target.
- * @return
+ *
+ * @return An integer representing the cost of the transformation
*/
public int getWeight();
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformerRegistry.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformerRegistry.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformerRegistry.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/TransformerRegistry.java Wed Aug 16 22:42:57 2006
@@ -28,10 +28,10 @@
/**
* @param sourceType
* @param resultType
- * @param transformer
* @param weight
+ * @param transformer
*/
- public void registerTransformer(Object sourceType, Object resultType, Transformer transformer, int weight);
+ public void registerTransformer(Object sourceType, Object resultType, int weight, Transformer transformer);
/**
* @param transformer
@@ -43,7 +43,7 @@
* @param resultType
* @return
*/
- public boolean removeTransformer(Object sourceType, Object resultType);
+ public boolean unregisterTransformer(Object sourceType, Object resultType);
/**
* Get the direct Transformer which can transform data from source type to result type
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/annotation/DataBinding.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/annotation/DataBinding.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/annotation/DataBinding.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/annotation/DataBinding.java Wed Aug 16 22:42:57 2006
@@ -34,6 +34,15 @@
* @return Name of the data binding
*/
String name();
+
+ /**
+ * @return Type of the data
+ */
+ Class type() default Object.class;
+
+ /**
+ * @return Context
+ */
DataContext[] context() default {};
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/annotation/DataContext.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/annotation/DataContext.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/annotation/DataContext.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/annotation/DataContext.java Wed Aug 16 22:42:57 2006
@@ -29,8 +29,14 @@
@Target( {})
@Retention(RetentionPolicy.RUNTIME)
public @interface DataContext {
+ /**
+ * @return key for the context entry
+ */
String key();
+ /**
+ * @return key for the context value
+ */
String value();
}
Added: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/DataBindingExtension.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/DataBindingExtension.java?rev=432155&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/DataBindingExtension.java (added)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/DataBindingExtension.java Wed Aug 16 22:42:57 2006
@@ -0,0 +1,95 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation or its licensors as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.tuscany.databinding.extension;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.tuscany.databinding.DataBinding;
+import org.apache.tuscany.databinding.DataBindingRegistry;
+import org.apache.tuscany.spi.annotation.Autowire;
+import org.osoa.sca.annotations.Init;
+
+/**
+ * Base Implementation of DataBinding
+ */
+@org.osoa.sca.annotations.Scope("MODULE")
+public abstract class DataBindingExtension implements DataBinding {
+ protected Map<String, Object> attrs = new HashMap<String, Object>();
+
+ protected DataBindingRegistry registry;
+
+ protected boolean isSink = false;
+
+ protected Class baseType = null;
+
+ protected String name = null;
+
+ protected DataBindingExtension(Class baseType) {
+ this(baseType, false);
+ }
+
+ protected DataBindingExtension(Class baseType, boolean isSink) {
+ this(baseType.getName(), baseType, isSink);
+ }
+
+ protected DataBindingExtension(String name, Class baseType, boolean isSink) {
+ this.name = name;
+ this.baseType = baseType;
+ this.isSink = isSink;
+ }
+
+ @Autowire
+ public void setDataBindingRegistry(DataBindingRegistry registry) {
+ this.registry = registry;
+ }
+
+ @Init(eager = true)
+ public void init() {
+ registry.register(this);
+ }
+
+ protected Class getBaseType() {
+ return baseType;
+ }
+
+ /**
+ * @see org.apache.tuscany.databinding.DataType#isSinkOnly()
+ */
+ public boolean isSinkOnly() {
+ return isSink;
+ }
+
+ @SuppressWarnings("unchecked")
+ public boolean isSupported(Class javaClass) {
+ return getBaseType().isAssignableFrom(javaClass);
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public Object getAttribute(String name) {
+ return attrs.get(name);
+ }
+
+ public void setAttribute(String name, Object value) {
+ attrs.put(name, value);
+ }
+
+}
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/DataBindingExtension.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/DataBindingExtension.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerExtension.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerExtension.java?rev=432155&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerExtension.java (added)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerExtension.java Wed Aug 16 22:42:57 2006
@@ -0,0 +1,59 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation or its licensors as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.tuscany.databinding.extension;
+
+import org.apache.tuscany.databinding.Transformer;
+import org.apache.tuscany.databinding.TransformerRegistry;
+import org.apache.tuscany.spi.annotation.Autowire;
+import org.osoa.sca.annotations.Init;
+
+/**
+ * Base Implementation of Transformer which provides the registration to the transformer registry
+ */
+@org.osoa.sca.annotations.Scope("MODULE")
+public abstract class TransformerExtension<S, T> implements Transformer {
+
+ protected TransformerRegistry registry;
+
+ protected TransformerExtension() {
+ super();
+ }
+
+ @Autowire
+ public void setTransformerRegistry(TransformerRegistry registry) {
+ this.registry = registry;
+ }
+
+ @Init(eager = true)
+ public void init() {
+ registry.registerTransformer(this);
+ }
+
+ protected abstract Class getSourceType();
+ protected abstract Class getTargetType();
+
+ public String getSourceBinding() {
+ return getSourceType().getName();
+ }
+
+ public String getTargetBinding() {
+ return getTargetType().getName();
+ }
+
+
+}
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerExtension.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerExtension.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerRegistrarExtension.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerRegistrarExtension.java?rev=432155&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerRegistrarExtension.java (added)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerRegistrarExtension.java Wed Aug 16 22:42:57 2006
@@ -0,0 +1,53 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation or its licensors as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.tuscany.databinding.extension;
+
+import java.util.Collection;
+
+import org.apache.tuscany.databinding.Transformer;
+import org.apache.tuscany.databinding.TransformerRegistry;
+import org.apache.tuscany.spi.annotation.Autowire;
+import org.osoa.sca.annotations.Init;
+
+/**
+ * A base class responsible to register a collection of transformers. The purpose is to group
+ * a list of transformer contributions in one system component
+ */
+@org.osoa.sca.annotations.Scope("MODULE")
+public abstract class TransformerRegistrarExtension {
+ protected TransformerRegistry registry;
+
+ public TransformerRegistrarExtension() {
+ super();
+ }
+
+ @Autowire
+ public void setTransformerRegistry(TransformerRegistry registry) {
+ this.registry = registry;
+ }
+
+ @Init(eager = true)
+ public void init() {
+ for (Transformer t : getTransformers()) {
+ registry.registerTransformer(t);
+ }
+ }
+
+ protected abstract Collection<Transformer> getTransformers();
+
+}
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerRegistrarExtension.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/extension/TransformerRegistrarExtension.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingDefinitionLoader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingDefinitionLoader.java?rev=432155&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingDefinitionLoader.java (added)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingDefinitionLoader.java Wed Aug 16 22:42:57 2006
@@ -0,0 +1,74 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation or its licensors as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.tuscany.databinding.impl;
+
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+
+import org.apache.tuscany.databinding.model.DataBindingDefinition;
+import org.apache.tuscany.spi.annotation.Autowire;
+import org.apache.tuscany.spi.component.CompositeComponent;
+import org.apache.tuscany.spi.deployer.DeploymentContext;
+import org.apache.tuscany.spi.extension.LoaderExtension;
+import org.apache.tuscany.spi.loader.LoaderException;
+import org.apache.tuscany.spi.loader.LoaderRegistry;
+import org.osoa.sca.annotations.Constructor;
+
+/**
+ * The StAX loader for data binding
+ */
+public class DataBindingDefinitionLoader extends LoaderExtension<DataBindingDefinition> {
+ public static final QName DATA_BINDING = new QName("http://tuscany.apache.org/xmlns/databinding/1.0", "databinding");
+
+ @Constructor( { "registry" })
+ public DataBindingDefinitionLoader(@Autowire
+ LoaderRegistry registry) {
+ super(registry);
+ }
+
+ @Override
+ public QName getXMLType() {
+ return DATA_BINDING;
+ }
+
+ public DataBindingDefinition load(CompositeComponent parent, XMLStreamReader reader, DeploymentContext deploymentContext)
+ throws XMLStreamException, LoaderException {
+ assert DATA_BINDING.equals(reader.getName());
+ DataBindingDefinition definition = new DataBindingDefinition();
+ String name = reader.getAttributeValue(null, "name");
+ definition.setName(name);
+ String javaType = reader.getAttributeValue(null, "javaType");
+ if (javaType != null) {
+ Class<?> cls;
+ try {
+ cls = Class.forName(javaType, false, deploymentContext.getClassLoader());
+ definition.setJavaType(cls);
+ } catch (ClassNotFoundException e) {
+ LoaderException ex = new LoaderException(e);
+ ex.addContextName(javaType);
+ throw ex;
+ }
+ }
+ String xmlType = reader.getAttributeValue(null, "xmlType");
+ if (xmlType != null) {
+ definition.setXmlType(new QName(xmlType));
+ }
+ return definition;
+ }
+}
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingDefinitionLoader.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingDefinitionLoader.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingRegistryImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingRegistryImpl.java?rev=432155&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingRegistryImpl.java (added)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingRegistryImpl.java Wed Aug 16 22:42:57 2006
@@ -0,0 +1,74 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation or its licensors as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.tuscany.databinding.impl;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.tuscany.databinding.DataBinding;
+import org.apache.tuscany.databinding.DataBindingRegistry;
+import org.osoa.sca.annotations.Init;
+
+/**
+ * The default implementation of a data binding registry
+ */
+public class DataBindingRegistryImpl implements DataBindingRegistry {
+ private final Map<String, DataBinding> bindings = new HashMap<String, DataBinding>();
+
+ /**
+ * @see org.apache.tuscany.databinding.DataBindingRegistry#getDataBinding(java.lang.String)
+ */
+ public DataBinding getDataBinding(String id) {
+ return bindings.get(id.toLowerCase());
+ }
+
+ /**
+ * @see org.apache.tuscany.databinding.DataBindingRegistry#register(org.apache.tuscany.databinding.DataBinding)
+ */
+ public void register(DataBinding dataBinding) {
+ bindings.put(dataBinding.getName().toLowerCase(), dataBinding);
+ }
+
+ /**
+ * @see org.apache.tuscany.databinding.DataBindingRegistry#unregister(java.lang.String)
+ */
+ public DataBinding unregister(String id) {
+ return bindings.remove(id.toLowerCase());
+ }
+
+ @Init(eager = true)
+ public void init() {
+ }
+
+ @SuppressWarnings("unchecked")
+ public DataBinding introspectType(Class<?> javaType) {
+ for (DataBinding binding : bindings.values()) {
+ if (binding.isSupported(javaType)) {
+ return binding;
+ }
+ }
+ return null;
+ }
+
+ public DataBinding introspectValue(Object object) {
+ if (object == null)
+ return null;
+ return introspectType(object.getClass());
+ }
+
+}
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingRegistryImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/DataBindingRegistryImpl.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/MediatorImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/MediatorImpl.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/MediatorImpl.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/MediatorImpl.java Wed Aug 16 22:42:57 2006
@@ -21,6 +21,7 @@
import java.util.Iterator;
import java.util.List;
+import org.apache.tuscany.databinding.DataBinding;
import org.apache.tuscany.databinding.DataPipe;
import org.apache.tuscany.databinding.Mediator;
import org.apache.tuscany.databinding.PullTransformer;
@@ -50,15 +51,19 @@
* org.apache.tuscany.databinding.TransformationContext)
*/
@SuppressWarnings("unchecked")
- public Object mediate(Object source, Object sourceType, Object resultType, TransformationContext context) {
- List<Transformer> path = registry.getTransformerChain(sourceType, resultType);
+ public Object mediate(Object source, DataBinding sourceBinding, DataBinding targetBinding) {
+ List<Transformer> path = registry.getTransformerChain(sourceBinding.getName(), targetBinding.getName());
Object result = source;
for (Iterator<Transformer> i = path.iterator(); i.hasNext();) {
Transformer transformer = i.next();
+ // FIXME: We probably need to reset the context for each transformation on the path to reflect
+ // the source and target type
if (transformer instanceof PullTransformer) {
+ TransformationContext context = new TransformationContextImpl(sourceBinding, targetBinding, Thread.currentThread().getContextClassLoader());
result = ((PullTransformer) transformer).transform(result, context);
} else if (transformer instanceof PushTransformer) {
+ TransformationContext context = new TransformationContextImpl(sourceBinding, targetBinding, Thread.currentThread().getContextClassLoader());
DataPipe dataPipe = i.hasNext() ? (DataPipe) i.next() : null;
((PushTransformer) transformer).transform(result, dataPipe.getSink(), context);
result = dataPipe.getResult();
@@ -69,22 +74,23 @@
}
@SuppressWarnings("unchecked")
- public Object mediate(Object source, Object target, Object sourceType, Object resultType, TransformationContext context) {
- List<Transformer> path = registry.getTransformerChain(sourceType, resultType);
+ public void mediate(Object source, Object target, DataBinding sourceBinding, DataBinding targetBinding) {
+ List<Transformer> path = registry.getTransformerChain(sourceBinding.getName(), targetBinding.getName());
Object result = source;
for (Iterator<Transformer> i = path.iterator(); i.hasNext();) {
Transformer transformer = i.next();
if (transformer instanceof PullTransformer) {
+ TransformationContext context = new TransformationContextImpl(sourceBinding, targetBinding, Thread.currentThread().getContextClassLoader());
result = ((PullTransformer) transformer).transform(result, context);
} else if (transformer instanceof PushTransformer) {
+ TransformationContext context = new TransformationContextImpl(sourceBinding, targetBinding, Thread.currentThread().getContextClassLoader());
DataPipe dataPipe = i.hasNext() ? (DataPipe) i.next() : null;
Object sink = dataPipe != null ? dataPipe.getSink() : target;
((PushTransformer) transformer).transform(result, sink, context);
result = (dataPipe != null) ? dataPipe.getResult() : null;
}
}
- return result;
}
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/TransformationContextImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/TransformationContextImpl.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/TransformationContextImpl.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/TransformationContextImpl.java Wed Aug 16 22:42:57 2006
@@ -19,54 +19,51 @@
package org.apache.tuscany.databinding.impl;
import java.lang.ref.WeakReference;
-import java.util.HashMap;
import org.apache.tuscany.databinding.DataBinding;
import org.apache.tuscany.databinding.TransformationContext;
-public class TransformationContextImpl extends HashMap<String, Object> implements TransformationContext {
- private static final long serialVersionUID = -3502340459778408138L;
+public class TransformationContextImpl implements TransformationContext {
+ private DataBinding sourceDataBinding;
- private DataBinding sourceBinding;
-
- private DataBinding targetBinding;
+ private DataBinding targetDataBinding;
private WeakReference<ClassLoader> classLoaderRef;
- public DataBinding getSourceBinding() {
- return sourceBinding;
+ public TransformationContextImpl() {
+ super();
+ setClassLoader(Thread.currentThread().getContextClassLoader());
}
- public Object getAttribute(String name) {
- return get(name);
+ public TransformationContextImpl(DataBinding sourceDataBinding, DataBinding targetDataBinding, ClassLoader classLoader) {
+ super();
+ this.sourceDataBinding = sourceDataBinding;
+ this.targetDataBinding = targetDataBinding;
+ setClassLoader(classLoader);
}
- public void setAttribute(String name, Object object) {
- put(name, object);
+ public DataBinding getSourceDataBinding() {
+ return sourceDataBinding;
}
- public DataBinding getTargetBinding() {
- return targetBinding;
+ public DataBinding getTargetDataBinding() {
+ return targetDataBinding;
}
- public void setSourceBinding(DataBinding sourceBinding) {
- this.sourceBinding = sourceBinding;
+ public void setSourceDataBinding(DataBinding sourceDataBinding) {
+ this.sourceDataBinding = sourceDataBinding;
}
- public void setTargetBinding(DataBinding targetBinding) {
- this.targetBinding = targetBinding;
+ public void setTargetDataBinding(DataBinding targetDataBinding) {
+ this.targetDataBinding = targetDataBinding;
}
- public void setClassLoader(ClassLoader classLoader) {
+ final public void setClassLoader(ClassLoader classLoader) {
this.classLoaderRef = new WeakReference<ClassLoader>(classLoader);
}
public ClassLoader getClassLoader() {
- // FIXME
- if (classLoaderRef == null)
- return Thread.currentThread().getContextClassLoader();
- else
- return classLoaderRef.get();
+ return classLoaderRef.get();
}
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/TransformerRegistryImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/TransformerRegistryImpl.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/TransformerRegistryImpl.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/impl/TransformerRegistryImpl.java Wed Aug 16 22:42:57 2006
@@ -24,20 +24,25 @@
import org.apache.tuscany.databinding.Transformer;
import org.apache.tuscany.databinding.TransformerRegistry;
import org.apache.tuscany.databinding.util.DirectedGraph;
+import org.osoa.sca.annotations.Init;
public class TransformerRegistryImpl implements TransformerRegistry {
- private DirectedGraph<Object, Transformer> graph = new DirectedGraph<Object, Transformer>();
+ private final DirectedGraph<Object, Transformer> graph = new DirectedGraph<Object, Transformer>();
+
+ @Init(eager = true)
+ public void init() {
+ }
- public void registerTransformer(Object sourceType, Object resultType, Transformer transformer, int weight) {
+ public void registerTransformer(Object sourceType, Object resultType, int weight, Transformer transformer) {
graph.addEdge(sourceType, resultType, transformer, weight);
}
public void registerTransformer(Transformer transformer) {
- graph.addEdge(transformer.getSourceType(), transformer.getTargetType(), transformer, transformer.getWeight());
+ graph.addEdge(transformer.getSourceBinding(), transformer.getTargetBinding(), transformer, transformer.getWeight());
}
- public boolean removeTransformer(Object sourceType, Object resultType) {
+ public boolean unregisterTransformer(Object sourceType, Object resultType) {
return graph.removeEdge(sourceType, resultType);
}
Added: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/model/DataBindingDefinition.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/model/DataBindingDefinition.java?rev=432155&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/model/DataBindingDefinition.java (added)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/model/DataBindingDefinition.java Wed Aug 16 22:42:57 2006
@@ -0,0 +1,61 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation or its licensors as applicable
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.tuscany.databinding.model;
+
+import javax.xml.namespace.QName;
+
+import org.apache.tuscany.spi.model.ModelObject;
+
+/**
+ * SCDL model extension for DataBinding
+ */
+public class DataBindingDefinition extends ModelObject {
+ // The logical name of the data binding, for example, sdo.xmldocument
+ private String name;
+
+ // The instance class
+ private Class<?> javaType;
+
+ // The QName of the xsd type
+ private QName xmlType;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Class<?> getJavaType() {
+ return javaType;
+ }
+
+ public void setJavaType(Class<?> javaType) {
+ this.javaType = javaType;
+ }
+
+ public QName getXmlType() {
+ return xmlType;
+ }
+
+ public void setXmlType(QName xmlType) {
+ this.xmlType = xmlType;
+ }
+
+}
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/model/DataBindingDefinition.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/model/DataBindingDefinition.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputSource2Node.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputSource2Node.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputSource2Node.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputSource2Node.java Wed Aug 16 22:42:57 2006
@@ -27,13 +27,15 @@
import org.apache.tuscany.databinding.PullTransformer;
import org.apache.tuscany.databinding.TransformationContext;
import org.apache.tuscany.databinding.TransformationException;
+import org.apache.tuscany.databinding.extension.TransformerExtension;
import org.w3c.dom.Node;
+import org.xml.sax.InputSource;
/**
* Push DOM InputStream to Node
*
*/
-public class InputSource2Node implements PullTransformer<InputStream, Node> {
+public class InputSource2Node extends TransformerExtension<InputSource, Node> implements PullTransformer<InputStream, Node> {
private static final Source2ResultTransformer transformer = new Source2ResultTransformer();
public Node transform(InputStream source, TransformationContext context) {
@@ -47,11 +49,11 @@
}
}
- public Class<InputStream> getSourceType() {
+ public Class getSourceType() {
return InputStream.class;
}
- public Class<Node> getTargetType() {
+ public Class getTargetType() {
return Node.class;
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputSource2SAX.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputSource2SAX.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputSource2SAX.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputSource2SAX.java Wed Aug 16 22:42:57 2006
@@ -21,6 +21,7 @@
import org.apache.tuscany.databinding.PushTransformer;
import org.apache.tuscany.databinding.TransformationContext;
import org.apache.tuscany.databinding.TransformationException;
+import org.apache.tuscany.databinding.extension.TransformerExtension;
import org.xml.sax.ContentHandler;
import org.xml.sax.InputSource;
import org.xml.sax.XMLReader;
@@ -30,7 +31,7 @@
* Push InputSource to SAX
*
*/
-public class InputSource2SAX implements PushTransformer<InputSource, ContentHandler> {
+public class InputSource2SAX extends TransformerExtension<InputSource, ContentHandler> implements PushTransformer<InputSource, ContentHandler> {
public void transform(InputSource source, ContentHandler target, TransformationContext context) {
try {
XMLReader reader = XMLReaderFactory.createXMLReader();
@@ -43,11 +44,11 @@
}
}
- public Class<InputSource> getSourceType() {
+ public Class getSourceType() {
return InputSource.class;
}
- public Class<ContentHandler> getTargetType() {
+ public Class getTargetType() {
return ContentHandler.class;
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputStream2Node.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputStream2Node.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputStream2Node.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputStream2Node.java Wed Aug 16 22:42:57 2006
@@ -18,6 +18,8 @@
*/
package org.apache.tuscany.databinding.trax;
+import java.io.InputStream;
+
import javax.xml.transform.Source;
import javax.xml.transform.dom.DOMResult;
import javax.xml.transform.sax.SAXSource;
@@ -25,6 +27,7 @@
import org.apache.tuscany.databinding.PullTransformer;
import org.apache.tuscany.databinding.TransformationContext;
import org.apache.tuscany.databinding.TransformationException;
+import org.apache.tuscany.databinding.extension.TransformerExtension;
import org.w3c.dom.Node;
import org.xml.sax.InputSource;
@@ -32,7 +35,7 @@
* Push DOM InputSource to Node
*
*/
-public class InputStream2Node implements PullTransformer<InputSource, Node> {
+public class InputStream2Node extends TransformerExtension<InputStream, Node> implements PullTransformer<InputSource, Node> {
private static final Source2ResultTransformer transformer = new Source2ResultTransformer();
public Node transform(InputSource source, TransformationContext context) {
@@ -46,11 +49,11 @@
}
}
- public Class<InputSource> getSourceType() {
+ public Class getSourceType() {
return InputSource.class;
}
- public Class<Node> getTargetType() {
+ public Class getTargetType() {
return Node.class;
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputStream2SAX.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputStream2SAX.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputStream2SAX.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/InputStream2SAX.java Wed Aug 16 22:42:57 2006
@@ -23,6 +23,7 @@
import org.apache.tuscany.databinding.PushTransformer;
import org.apache.tuscany.databinding.TransformationContext;
import org.apache.tuscany.databinding.TransformationException;
+import org.apache.tuscany.databinding.extension.TransformerExtension;
import org.xml.sax.ContentHandler;
import org.xml.sax.InputSource;
import org.xml.sax.XMLReader;
@@ -32,7 +33,7 @@
* Push InputStream to SAX
*
*/
-public class InputStream2SAX implements PushTransformer<InputStream, ContentHandler> {
+public class InputStream2SAX extends TransformerExtension<InputStream, ContentHandler> implements PushTransformer<InputStream, ContentHandler> {
public void transform(InputStream source, ContentHandler target, TransformationContext context) {
try {
XMLReader reader = XMLReaderFactory.createXMLReader();
@@ -43,11 +44,11 @@
}
}
- public Class<InputStream> getSourceType() {
+ public Class getSourceType() {
return InputStream.class;
}
- public Class<ContentHandler> getTargetType() {
+ public Class getTargetType() {
return ContentHandler.class;
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2OutputStream.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2OutputStream.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2OutputStream.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2OutputStream.java Wed Aug 16 22:42:57 2006
@@ -28,13 +28,14 @@
import org.apache.tuscany.databinding.PushTransformer;
import org.apache.tuscany.databinding.TransformationContext;
import org.apache.tuscany.databinding.TransformationException;
+import org.apache.tuscany.databinding.extension.TransformerExtension;
import org.w3c.dom.Node;
/**
* Push DOM Node to OutputStream
*
*/
-public class Node2OutputStream implements PushTransformer<Node, OutputStream> {
+public class Node2OutputStream extends TransformerExtension<Node, OutputStream> implements PushTransformer<Node, OutputStream> {
private static final Source2ResultTransformer transformer = new Source2ResultTransformer();
public void transform(Node source, OutputStream writer, TransformationContext context) {
@@ -47,11 +48,11 @@
}
}
- public Class<Node> getSourceType() {
+ public Class getSourceType() {
return Node.class;
}
- public Class<OutputStream> getTargetType() {
+ public Class getTargetType() {
return OutputStream.class;
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2String.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2String.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2String.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2String.java Wed Aug 16 22:42:57 2006
@@ -23,13 +23,14 @@
import org.apache.tuscany.databinding.PullTransformer;
import org.apache.tuscany.databinding.TransformationContext;
import org.apache.tuscany.databinding.TransformationException;
+import org.apache.tuscany.databinding.extension.TransformerExtension;
import org.w3c.dom.Node;
/**
* Transform DOM Node to XML String
*
*/
-public class Node2String implements PullTransformer<Node, String> {
+public class Node2String extends TransformerExtension<Node, String> implements PullTransformer<Node, String> {
private static final Node2Writer transformer = new Node2Writer();
public String transform(Node source, TransformationContext context) {
@@ -42,11 +43,11 @@
}
}
- public Class<Node> getSourceType() {
+ public Class getSourceType() {
return Node.class;
}
- public Class<String> getTargetType() {
+ public Class getTargetType() {
return String.class;
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2Writer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2Writer.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2Writer.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Node2Writer.java Wed Aug 16 22:42:57 2006
@@ -28,13 +28,14 @@
import org.apache.tuscany.databinding.PushTransformer;
import org.apache.tuscany.databinding.TransformationContext;
import org.apache.tuscany.databinding.TransformationException;
+import org.apache.tuscany.databinding.extension.TransformerExtension;
import org.w3c.dom.Node;
/**
* Push DOM Node to Writer
*
*/
-public class Node2Writer implements PushTransformer<Node, Writer> {
+public class Node2Writer extends TransformerExtension<Node, Writer> implements PushTransformer<Node, Writer> {
private static final Source2ResultTransformer transformer = new Source2ResultTransformer();
public void transform(Node source, Writer writer, TransformationContext context) {
@@ -47,11 +48,11 @@
}
}
- public Class<Node> getSourceType() {
+ public Class getSourceType() {
return Node.class;
}
- public Class<Writer> getTargetType() {
+ public Class getTargetType() {
return Writer.class;
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Reader2Node.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Reader2Node.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Reader2Node.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Reader2Node.java Wed Aug 16 22:42:57 2006
@@ -27,13 +27,14 @@
import org.apache.tuscany.databinding.PullTransformer;
import org.apache.tuscany.databinding.TransformationContext;
import org.apache.tuscany.databinding.TransformationException;
+import org.apache.tuscany.databinding.extension.TransformerExtension;
import org.w3c.dom.Node;
/**
* Push DOM Reader to Node
*
*/
-public class Reader2Node implements PullTransformer<Reader, Node> {
+public class Reader2Node extends TransformerExtension<Reader, Node> implements PullTransformer<Reader, Node> {
private static final Source2ResultTransformer transformer = new Source2ResultTransformer();
public Node transform(Reader source, TransformationContext context) {
@@ -47,11 +48,11 @@
}
}
- public Class<Reader> getSourceType() {
+ public Class getSourceType() {
return Reader.class;
}
- public Class<Node> getTargetType() {
+ public Class getTargetType() {
return Node.class;
}
Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Reader2SAX.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Reader2SAX.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Reader2SAX.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/main/java/org/apache/tuscany/databinding/trax/Reader2SAX.java Wed Aug 16 22:42:57 2006
@@ -23,6 +23,7 @@
import org.apache.tuscany.databinding.PushTransformer;
import org.apache.tuscany.databinding.TransformationContext;
import org.apache.tuscany.databinding.TransformationException;
+import org.apache.tuscany.databinding.extension.TransformerExtension;
import org.xml.sax.ContentHandler;
import org.xml.sax.InputSource;
@@ -30,7 +31,7 @@
* Transform XML string to SAX
*
*/
-public class Reader2SAX implements PushTransformer<Reader, ContentHandler> {
+public class Reader2SAX extends TransformerExtension<Reader, ContentHandler> implements PushTransformer<Reader, ContentHandler> {
public void transform(Reader source, ContentHandler target, TransformationContext context) {
try {
new InputSource2SAX().transform(new InputSource(source), target, context);
@@ -39,11 +40,11 @@
}
}
- public Class<Reader> getSourceType() {
+ public Class getSourceType() {
return Reader.class;
}
- public Class<ContentHandler> getTargetType() {
+ public Class getTargetType() {
return ContentHandler.class;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org