summaryrefslogtreecommitdiffstats
path: root/branches
diff options
context:
space:
mode:
authorlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2009-11-02 22:22:47 +0000
committerlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2009-11-02 22:22:47 +0000
commitd0e86aec253c57f94e4ebcdb2c417a825daafe3b (patch)
tree6c7cefe221bd8ef7e7f673ad98108f2e6a4a0907 /branches
parentc6103c7c9a6b6971d2aa0b8e3997608cb5f2c36f (diff)
moving das branches
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@832145 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'branches')
-rw-r--r--branches/das-java-M2/BUILDING.txt58
-rw-r--r--branches/das-java-M2/LICENSE.txt202
-rw-r--r--branches/das-java-M2/NOTICE.txt32
-rw-r--r--branches/das-java-M2/README.txt10
-rw-r--r--branches/das-java-M2/RELEASE_NOTES.txt53
-rw-r--r--branches/das-java-M2/STATUS.txt73
-rw-r--r--branches/das-java-M2/distribution/binary/LICENSE.txt202
-rw-r--r--branches/das-java-M2/distribution/binary/NOTICE.txt32
-rw-r--r--branches/das-java-M2/distribution/binary/README.txt10
-rw-r--r--branches/das-java-M2/distribution/binary/RELEASE_NOTES.txt53
-rw-r--r--branches/das-java-M2/distribution/binary/STATUS.txt73
-rw-r--r--branches/das-java-M2/distribution/binary/pom.xml63
-rw-r--r--branches/das-java-M2/distribution/binary/src/main/assembly/das.xml48
-rw-r--r--branches/das-java-M2/distribution/samples/LICENSE.txt202
-rw-r--r--branches/das-java-M2/distribution/samples/NOTICE.txt32
-rw-r--r--branches/das-java-M2/distribution/samples/RELEASE_NOTES.txt53
-rw-r--r--branches/das-java-M2/distribution/samples/STATUS.txt73
-rw-r--r--branches/das-java-M2/distribution/samples/pom.xml64
-rw-r--r--branches/das-java-M2/distribution/samples/src/main/assembly/das-samples.xml77
-rw-r--r--branches/das-java-M2/pom.xml122
-rw-r--r--branches/das-java-M2/rdb/pom.xml110
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Command.java68
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/ConfigHelper.java108
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Converter.java54
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/DAS.java67
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/DASFactory.java76
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Pager.java64
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/MappingWrapper.java491
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/QualifiedColumn.java49
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/RelationshipWrapper.java47
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/TableWrapper.java145
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/BaseGenerator.java36
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/DeleteGenerator.java84
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/InsertGenerator.java159
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/UpdateGenerator.java194
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DataObjectMaker.java121
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DefaultConverter.java84
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/GraphBuilderMetadata.java247
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/MultiTableRegistry.java105
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultMetadata.java285
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultSetProcessor.java141
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultSetRow.java186
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/RowObjects.java146
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/SingleTableRegistry.java48
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/TableData.java86
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/TableRegistry.java47
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/schema/ResultSetTypeMap.java138
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ApplyChangesCommandImpl.java80
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/BaseCommandImpl.java50
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeFactory.java179
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeOperation.java88
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeSummarizer.java242
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Changes.java82
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CommandImpl.java99
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ConnectionImpl.java126
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CreateOperation.java30
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DASFactoryImpl.java50
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DASImpl.java247
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DatabaseObject.java162
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteCommandImpl.java34
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteList.java77
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteOperation.java38
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/FactoryRegistry.java58
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertCommandImpl.java66
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertList.java96
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ManagedParameterImpl.java39
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/OptimisticWriteCommandImpl.java56
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/PagerImpl.java69
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ParameterImpl.java120
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Parameters.java114
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ReadCommandImpl.java124
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ResultSetShape.java123
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypeHelper.java109
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypes.java98
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SPCommandImpl.java101
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Statement.java234
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateCommandImpl.java34
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateList.java45
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateOperation.java32
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/WriteCommandImpl.java85
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/merge/impl/GraphMerger.java195
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/ConfigUtil.java58
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/DataObjectUtil.java79
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/LoggerFactory.java79
-rw-r--r--branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/LoggerLayout.java56
-rw-r--r--branches/das-java-M2/rdb/src/main/resources/META-INF/LICENSE.txt1277
-rw-r--r--branches/das-java-M2/rdb/src/main/resources/META-INF/MANIFEST.MF13
-rw-r--r--branches/das-java-M2/rdb/src/main/resources/META-INF/NOTICE18
-rw-r--r--branches/das-java-M2/rdb/src/main/resources/META-INF/README.txt35
-rw-r--r--branches/das-java-M2/rdb/src/main/resources/config.xsd112
-rw-r--r--branches/das-java-M2/rdb/src/main/resources/dasmodel4.mdl4622
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/AliasTests.java162
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/BestPracticeTests.java153
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CUDGeneration.java111
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CommandGroupTests.java161
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CompanyTests.java101
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CompoundKeyTests.java109
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ConverterTests.java157
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CorrectedDefectTests.java304
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java350
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java106
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ExceptionTests.java149
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GeneratedCommandTests.java94
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GeneratedId.java293
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GraphMergeTests.java188
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ImpliedRelationshipTests.java112
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/KennelTests.java123
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OCCTests.java131
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OneToOneRelationshipTests.java174
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OperationOrderingTests.java116
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/Paging.java100
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PartialUpdateTests.java99
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PassiveConnectionTests.java94
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ProgrammaticConfigTests.java299
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ReadDBSchemaTests.java55
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/RecursiveTests.java71
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/RelationshipTests.java113
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ResultSetShapeTests.java93
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/SerializationTests.java76
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/SimplestCrud.java228
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/StoredProcs.java142
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TopDown.java73
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TypeTests.java90
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersByLastnameCommand.java56
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersCommand.java57
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersStaticTypesCommand.java60
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersWithShapeCommand.java63
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/SimpleReadCustomersWithShapeCommand.java83
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/BookData.java46
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CityData.java54
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyData.java44
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyDeptData.java41
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyEmpData.java45
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CustomerData.java39
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DepEmpData.java43
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DepartmentData.java43
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DogData.java54
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/EmployeeData.java44
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/KennelData.java53
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OrderData.java41
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OrderDetailsData.java43
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OwnerData.java53
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OwnerDogData.java41
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/PartData.java48
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/StateData.java48
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/TypesData.java38
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/VisitData.java52
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DB2Setup.java37
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DasTest.java147
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DatabaseSetup.java410
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DerbySetup.java44
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/JavaStoredProcs.java97
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/MySQLSetup.java98
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/RelationshipData.java80
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/TestData.java126
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/TestDataWithExplicitColumns.java88
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/IntegerToBooleanConverter.java43
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/SillyDateStringConverter.java77
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToIntegerConverter.java39
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToLongConverter.java37
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllCommonTests.java109
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsDB2.java44
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsDerby.java35
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsMySQL.java39
-rw-r--r--branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/typed/SimplestStaticCrud.java56
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/1xM_mapping_no_cud.xml37
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/BooksConfig.xml30
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/BooksConfigWithAlias.xml36
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/CompanyConfig.xml43
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/CompanyEmployeeConfig.xml54
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/CustomerConfigWithConverter.xml34
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/CustomerConfigWithIDConverter.xml32
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/CustomersOrdersConfig.xml51
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/InvalidConfig1.xml33
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/InvalidConverter.xml38
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/ManagedBooksConfig.xml30
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/OneToOneRestrictedConfig.xml54
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/OrdersOrderDetailsConfig.xml36
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/PartsConfig.xml50
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/basicCompanyDepartmentMapping.xml39
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/basicCompanyMapping.xml25
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/basicCustomerMapping.xml29
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithCUD.xml28
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithCUD2.xml31
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithInvalidCUD.xml32
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/basicCustomerOrderMapping.xml35
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/basicStaticCustomer.xml30
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/cityStates.xml40
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/company.xsd48
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/companyMapping.xml42
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/companyMappingWithConverters.xml46
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/customer.xsd43
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/customerMapping.xml28
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/customerOrderRelationshipMapping.xml34
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/passiveConnection.xml26
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/staticCustomer.xml25
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/staticCustomerOrder.xml38
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/staticInvalid.xml25
-rw-r--r--branches/das-java-M2/rdb/src/test/resources/storedProcTest.xml27
-rw-r--r--branches/das-java-M2/samples/build.xml29
-rw-r--r--branches/das-java-M2/samples/companyweb/build.xml55
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/db.lckbin38 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/log/log.ctrlbin48 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/log/log1.datbin1048576 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/log/logmirror.ctrlbin48 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c10.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c101.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c111.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c121.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c130.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c141.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c150.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c161.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c171.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c180.datbin24576 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c191.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c1a1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c1b1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c1c0.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c1d1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c1e0.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c1f1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c20.datbin24576 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c200.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c211.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c221.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c230.datbin86016 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c241.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c251.datbin12288 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c260.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c271.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c281.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c290.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c2a1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c2b1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c2c1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c2d0.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c2e1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c2f0.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c300.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c31.datbin16384 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c311.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c320.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c331.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c340.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c351.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c360.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c371.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c380.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c391.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c3a0.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c3b1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c3c0.datbin24576 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c3d1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c3e0.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c3f1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c400.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c41.datbin16384 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c411.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c420.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c431.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c440.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c451.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c460.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c471.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c481.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c490.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c4a1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c51.datbin16384 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c60.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c71.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c81.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/c90.datbin20480 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/ca1.datbin24576 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/cb1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/cc0.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/cd1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/ce1.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/seg0/cf0.datbin8192 -> 0 bytes
-rw-r--r--branches/das-java-M2/samples/companyweb/dastest/service.properties22
-rw-r--r--branches/das-java-M2/samples/companyweb/pom.xml57
-rw-r--r--branches/das-java-M2/samples/companyweb/readme.htm654
-rw-r--r--branches/das-java-M2/samples/companyweb/src/main/java/org/apache/tuscany/samples/das/companyweb/CompanyClient.java151
-rw-r--r--branches/das-java-M2/samples/companyweb/src/main/resources/CompanyConfig.xml46
-rw-r--r--branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/LICENSE.txt202
-rw-r--r--branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/NOTICE32
-rw-r--r--branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/README.txt35
-rw-r--r--branches/das-java-M2/samples/companyweb/src/main/resources/log4j.properties29
-rw-r--r--branches/das-java-M2/samples/companyweb/src/main/webapp/Company.jsp158
-rw-r--r--branches/das-java-M2/samples/companyweb/src/main/webapp/META-INF/context.xml25
-rw-r--r--branches/das-java-M2/samples/companyweb/src/main/webapp/WEB-INF/web.xml30
-rw-r--r--branches/das-java-M2/samples/pom.xml36
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/build.xml291
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/companyweb/pom.xml80
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/LICENSE.txt1277
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/NOTICE18
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/README.txt35
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/companyweb/src/test/java/org/apache/tuscany/test/das/DasTestCase.java249
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/context.xsl51
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/datasource.xsl39
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/pom.xml113
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/readme.htm71
-rw-r--r--branches/das-java-M2/samples/testing/tomcat/server.xsl51
303 files changed, 0 insertions, 27136 deletions
diff --git a/branches/das-java-M2/BUILDING.txt b/branches/das-java-M2/BUILDING.txt
deleted file mode 100644
index 934e991641..0000000000
--- a/branches/das-java-M2/BUILDING.txt
+++ /dev/null
@@ -1,58 +0,0 @@
-DAS Java Build Environment Setup
-
-For the most updated documentation on how to build Tuscany :
- - http://incubator.apache.org/tuscany/java-projects.html
-
-For the most updated documentation on how to build DAs :
- - http://incubator.apache.org/tuscany/java_das_overview.html
-
-
-
-Building DAS
-
-
-1. Set up your environment using the instructions for building the whole of Tuscany (http://incubator.apache.org/tuscany/java-projects.html),
-but only download and install Java 5, Maven and Svn
-
-2. Make sure 'mvn' and 'svn' commands are in your PATH environment variable.
-
-3. Check out the DAS open source projects from Apache.
-
- Commands:
-
- md <local tuscany dir>
- cd <local tuscany dir>
- md java
- cd java
- svn co https://svn.apache.org/repos/asf/incubator/tuscany/java/das das
- cd das
- svn up das
-
-4.Run "mvn" under <local tuscany dir>/java/das directory to install POM files from the root project to the local repository
-
-
- Commands:
-
- cd <local tuscany dir>/java/das
- mvn
-
- Notes:
- 1.If the mvn command completed successfully, you will see BUILD SUCCESSFUL in the output and tuscany-das-rdb-1.0-SNAPSHOT.jar is created under <local tuscany dir>/java/das/rdb/target directory.
- 2.External resources are at times unavailable. It may be necessary to run "mvn" again at a later time.
- 3.If you are taking time to reply to firewall prompts, this can cause some requests to time out. Set up the firewall to permit the action without prompting.
-
-Dependency Jars
-
-
-The DAS.RDB project has a dependency on SDO and requires the following SDO runtime jars to build
-
- * sdo-api-r2.0.1-1.0-SNAPSHOT.jar - SDO 2.0 Interfaces
- * tuscany-sdo-impl-1.0-SNAPSHOT.jar - SDO 2.0 implementation
-
-The SDO.IMPL project have dependencies on the following EMF (Eclipse Modeling Framework - www.eclipse.org/emf) runtime jars to build:
-
- * emf-common-2.2.0-SNAPSHOT.jar - some common framework utility and base classes
- * emf-ecore-2.2.0-SNAPSHOT.jar - the EMF core runtime implementation classes (the Ecore metamodel)
- * emf-ecore-change-2.2.0-SNAPSHOT.jar - the EMF change recorder and framework
- * emf-ecore-xmi-2.2.0-SNAPSHOT.jar - EMF's default XML (and XMI) serializer and loader
- * xsd-2.2.0-SNAPSHOT.jar - the XML Schema model
diff --git a/branches/das-java-M2/LICENSE.txt b/branches/das-java-M2/LICENSE.txt
deleted file mode 100644
index 75b52484ea..0000000000
--- a/branches/das-java-M2/LICENSE.txt
+++ /dev/null
@@ -1,202 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- 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.
diff --git a/branches/das-java-M2/NOTICE.txt b/branches/das-java-M2/NOTICE.txt
deleted file mode 100644
index 59f0b4314f..0000000000
--- a/branches/das-java-M2/NOTICE.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-Apache Tuscany DAS for Java
-Copyright 2006 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Apache Tuscany is an effort undergoing incubation at The Apache Software Foundation (ASF),
-sponsored by the Apache Web Services PMC. Incubation is required of all newly accepted
-projects until a further review indicates that the infrastructure, communications,
-and decision making process have stabilized in a manner consistent with other successful
-ASF projects. While incubation status is not necessarily a reflection of the completeness
-or stability of the code, it does indicate that the project has yet to be fully endorsed
-by the ASF.
-
-Unless otherwise indicated, all distribution made available by the Apache Software Foundation
-is provided to you under the terms and conditions of the Apache License Version 2.0 ("AL").
-A copy of the AL is provided with this distribution as the LICENSE.txt file present in the
-root directory, and is also available at http://www.apache.org/licenses/.
-
-The terms and conditions governing the distribution may refer to the AL or other license
-agreements, notices or terms and conditions. Some of these other license agreements may
-include (but are not limited to):
-
- . Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)
- . Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)
-
-This product also includes software developed by:
-- the Eclipse Modeling Framework project (http://www.eclipse.org/emf/)
-
-It is your obligation to read and accept all such terms and conditions prior to use of the
-distribution. If term or condition is provided, please contact the Apache Software Foundation
-to determine what terms and conditions govern that particular distribution.
diff --git a/branches/das-java-M2/README.txt b/branches/das-java-M2/README.txt
deleted file mode 100644
index b2634b42ed..0000000000
--- a/branches/das-java-M2/README.txt
+++ /dev/null
@@ -1,10 +0,0 @@
- Apache Tuscany
- -------------------------------------------
-
-Welcome to Tuscany! Please read the release notes (RELEASE_NOTES.txt) in this directory for
-details on the current release.
-
-Thanks from all of us on the Tuscany team for downloading the package; help
-us make it better by sending comments to tuscany-user@ws.apache.org.
-
-
diff --git a/branches/das-java-M2/RELEASE_NOTES.txt b/branches/das-java-M2/RELEASE_NOTES.txt
deleted file mode 100644
index a116778476..0000000000
--- a/branches/das-java-M2/RELEASE_NOTES.txt
+++ /dev/null
@@ -1,53 +0,0 @@
-What's new in DAS Java M2
-
- DAS Core features
-
- - MySQL support
-
- - Static Data Objects
-
- - Dynamic root for static graphs
-
- - "Unique" attribute on relationships
-
- - Explicit ResultSet shape definition
-
- - Improved logging
-
- - Programmatic Configuration
-
- - Helper for empty SDO Graph
-
- - Convention over configuration
-
- - Column named "ID" is the PK
-
- - Column named "xxx_ID" is the FK to table "xxx"
-
-
- DAS Samples
-
- - Tomcat integration and automated DAS samples testing (htmlUnit)
-
- - DAS Samples now have all dependencies and source code inside the sample war
-
-
- For detailed user documentation and feature descriptions, access Tuscany DAS Wiki page
-
- http://wiki.apache.org/ws/Tuscany/TuscanyJava/DAS_Java_Overview
-
- Downloading
-
- http://incubator.apache.org/tuscany/downloads.html#Apache%20Tuscany%20Java%20Downloads
-
-
-Details are described below.
-
- DAS Java M2 is a superset of previous DAS Java M1 release.
- Anything in M1 is also in M2, but M2 contains features and bugfixes not present in M1 release.
-
-Compatibility Concerns
-
- - We have removed support for named parameters and previous DAS configuration files will have to be updated as needed.
-
-
diff --git a/branches/das-java-M2/STATUS.txt b/branches/das-java-M2/STATUS.txt
deleted file mode 100644
index 24a37ea606..0000000000
--- a/branches/das-java-M2/STATUS.txt
+++ /dev/null
@@ -1,73 +0,0 @@
-Apache Tuscany Status
-
-Tuscany provides multiple language implementations of the Service Component Architecture (SCA) specifications and related technologies such as SDO.
-
-PROJECT STATUS
-==============
-
- Tuscany is being incubated at the request of the Apache Web Services PMC.
- For information on incubation please visit the project page at
- http://incubator.apache.org/projects/tuscany.html
-
-PENDING ISSUES
-==============
-XXXX-XX-XX CCLA received for IBM's contribution of a C++ implementation
-XXXX-XX-XX CCLA received for BEA and IBM joint contribution of a Java implementation
-
-RESOLVED ISSUES SINCE LAST STATUS
-=================================
-None
-
-OTHER NEWS
-==========
-
-2006-09-29 Vote to add Ignacio Silva-Lepe as a new committer
-2006-09-18 Vote to add Venkata Krishnan as a new committer
-2006-08-10 Vote to add Andrew Borley as a new committer
-2006-08-07 Vote to add Meeraj Kunnumpurath as a new committer
-2006-08-07 Vote to add Kelvin Goodson as a new committer
-2006-08-06 Vote to add Brent Daniel as a new committer
-2006-08-04 Vote to add Raymond Feng as a new committer
-2006-08-01 C++ Milestone 1 release
-2006-06-07 Java Milestone 1 release
-2006-05-02 Vote to add Dan Kulp as a new committer
-
-2006-01-05 Contribution of Java implementation by BEA and IBM committed
-2006-01-05 Contribution of C+ implementation by IBM committed
-
-RELEASE STATUS
-==============
-None
-
-REFERENCES
-==========
-Status file http://svn.apache.org/repos/asf/incubator/tuscany/STATUS
-User List tuscany-user@ws.apache.org
-Developer List tuscany-dev@ws.apache.org
-Commits List tuscany-commits@ws.apache.org
-Source Code http://svn.apache.org/repos/asf/incubator/tuscany/
-Issue Tracking http://issues.apache.org/jira/browse/TUSCANY
-
-Committers
- ajborley Andrew Borley
- antelder Ant Elder
- bdaniel Brent Daniel
- dkulp Dan Kulp
- dims Davanum Srinivas
- edslattery Ed Slattery
- ekoneil Eddie O'Neil
- frankb Frank Budinsky
- geirm Geir Magnusson Jr
- isilval Ignacio Silva-Lepe
- jsdelfino Jean-Sebastien Delfino
- jboynes Jeremy Boynes
- jmarino Jim Marino
- kelvingoodson Kelvin Goodson
- kentam Ken Tam
- kwilliams Kevin Williams
- edwardsmj Mike Edwards
- meerajk Meeraj Kunnumpurath
- rfeng Raymond Feng
- robbinspg Pete Robbins
- rineholt Rick Rineholt
- svkrish Venkata Krishnan
diff --git a/branches/das-java-M2/distribution/binary/LICENSE.txt b/branches/das-java-M2/distribution/binary/LICENSE.txt
deleted file mode 100644
index d645695673..0000000000
--- a/branches/das-java-M2/distribution/binary/LICENSE.txt
+++ /dev/null
@@ -1,202 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- 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.
diff --git a/branches/das-java-M2/distribution/binary/NOTICE.txt b/branches/das-java-M2/distribution/binary/NOTICE.txt
deleted file mode 100644
index f1aa4f1921..0000000000
--- a/branches/das-java-M2/distribution/binary/NOTICE.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-Apache Tuscany DAS for Java
-Copyright 2006 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Apache Tuscany is an effort undergoing incubation at The Apache Software Foundation (ASF),
-sponsored by the Apache Web Services PMC. Incubation is required of all newly accepted
-projects until a further review indicates that the infrastructure, communications,
-and decision making process have stabilized in a manner consistent with other successful
-ASF projects. While incubation status is not necessarily a reflection of the completeness
-or stability of the code, it does indicate that the project has yet to be fully endorsed
-by the ASF.
-
-Unless otherwise indicated, all distribution made available by the Apache Software Foundation
-is provided to you under the terms and conditions of the Apache License Version 2.0 ("AL").
-A copy of the AL is provided with this distribution as the LICENSE.txt file present in the
-root directory, and is also available at http://www.apache.org/licenses/.
-
-The terms and conditions governing the distribution may refer to the AL or other license
-agreements, notices or terms and conditions. Some of these other license agreements may
-include (but are not limited to):
-
- . Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)
- . Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)
-
-This product also includes software developed by:
-- the Eclipse Modeling Framework project (http://www.eclipse.org/emf/)
-
-It is your obligation to read and accept all such terms and conditions prior to use of the
-distribution. If term or condition is provided, please contact the Apache Software Foundation
-to determine what terms and conditions govern that particular distribution.
diff --git a/branches/das-java-M2/distribution/binary/README.txt b/branches/das-java-M2/distribution/binary/README.txt
deleted file mode 100644
index d6827f6719..0000000000
--- a/branches/das-java-M2/distribution/binary/README.txt
+++ /dev/null
@@ -1,10 +0,0 @@
- Apache Tuscany
- -------------------------------------------
-
-Welcome to Tuscany! Please read the release notes (RELEASE_NOTES.txt) in this directory for
-details on the current release.
-
-Thanks from all of us on the Tuscany team for downloading the package; help
-us make it better by sending comments to tuscany-user@ws.apache.org.
-
-
diff --git a/branches/das-java-M2/distribution/binary/RELEASE_NOTES.txt b/branches/das-java-M2/distribution/binary/RELEASE_NOTES.txt
deleted file mode 100644
index a116778476..0000000000
--- a/branches/das-java-M2/distribution/binary/RELEASE_NOTES.txt
+++ /dev/null
@@ -1,53 +0,0 @@
-What's new in DAS Java M2
-
- DAS Core features
-
- - MySQL support
-
- - Static Data Objects
-
- - Dynamic root for static graphs
-
- - "Unique" attribute on relationships
-
- - Explicit ResultSet shape definition
-
- - Improved logging
-
- - Programmatic Configuration
-
- - Helper for empty SDO Graph
-
- - Convention over configuration
-
- - Column named "ID" is the PK
-
- - Column named "xxx_ID" is the FK to table "xxx"
-
-
- DAS Samples
-
- - Tomcat integration and automated DAS samples testing (htmlUnit)
-
- - DAS Samples now have all dependencies and source code inside the sample war
-
-
- For detailed user documentation and feature descriptions, access Tuscany DAS Wiki page
-
- http://wiki.apache.org/ws/Tuscany/TuscanyJava/DAS_Java_Overview
-
- Downloading
-
- http://incubator.apache.org/tuscany/downloads.html#Apache%20Tuscany%20Java%20Downloads
-
-
-Details are described below.
-
- DAS Java M2 is a superset of previous DAS Java M1 release.
- Anything in M1 is also in M2, but M2 contains features and bugfixes not present in M1 release.
-
-Compatibility Concerns
-
- - We have removed support for named parameters and previous DAS configuration files will have to be updated as needed.
-
-
diff --git a/branches/das-java-M2/distribution/binary/STATUS.txt b/branches/das-java-M2/distribution/binary/STATUS.txt
deleted file mode 100644
index 24a37ea606..0000000000
--- a/branches/das-java-M2/distribution/binary/STATUS.txt
+++ /dev/null
@@ -1,73 +0,0 @@
-Apache Tuscany Status
-
-Tuscany provides multiple language implementations of the Service Component Architecture (SCA) specifications and related technologies such as SDO.
-
-PROJECT STATUS
-==============
-
- Tuscany is being incubated at the request of the Apache Web Services PMC.
- For information on incubation please visit the project page at
- http://incubator.apache.org/projects/tuscany.html
-
-PENDING ISSUES
-==============
-XXXX-XX-XX CCLA received for IBM's contribution of a C++ implementation
-XXXX-XX-XX CCLA received for BEA and IBM joint contribution of a Java implementation
-
-RESOLVED ISSUES SINCE LAST STATUS
-=================================
-None
-
-OTHER NEWS
-==========
-
-2006-09-29 Vote to add Ignacio Silva-Lepe as a new committer
-2006-09-18 Vote to add Venkata Krishnan as a new committer
-2006-08-10 Vote to add Andrew Borley as a new committer
-2006-08-07 Vote to add Meeraj Kunnumpurath as a new committer
-2006-08-07 Vote to add Kelvin Goodson as a new committer
-2006-08-06 Vote to add Brent Daniel as a new committer
-2006-08-04 Vote to add Raymond Feng as a new committer
-2006-08-01 C++ Milestone 1 release
-2006-06-07 Java Milestone 1 release
-2006-05-02 Vote to add Dan Kulp as a new committer
-
-2006-01-05 Contribution of Java implementation by BEA and IBM committed
-2006-01-05 Contribution of C+ implementation by IBM committed
-
-RELEASE STATUS
-==============
-None
-
-REFERENCES
-==========
-Status file http://svn.apache.org/repos/asf/incubator/tuscany/STATUS
-User List tuscany-user@ws.apache.org
-Developer List tuscany-dev@ws.apache.org
-Commits List tuscany-commits@ws.apache.org
-Source Code http://svn.apache.org/repos/asf/incubator/tuscany/
-Issue Tracking http://issues.apache.org/jira/browse/TUSCANY
-
-Committers
- ajborley Andrew Borley
- antelder Ant Elder
- bdaniel Brent Daniel
- dkulp Dan Kulp
- dims Davanum Srinivas
- edslattery Ed Slattery
- ekoneil Eddie O'Neil
- frankb Frank Budinsky
- geirm Geir Magnusson Jr
- isilval Ignacio Silva-Lepe
- jsdelfino Jean-Sebastien Delfino
- jboynes Jeremy Boynes
- jmarino Jim Marino
- kelvingoodson Kelvin Goodson
- kentam Ken Tam
- kwilliams Kevin Williams
- edwardsmj Mike Edwards
- meerajk Meeraj Kunnumpurath
- rfeng Raymond Feng
- robbinspg Pete Robbins
- rineholt Rick Rineholt
- svkrish Venkata Krishnan
diff --git a/branches/das-java-M2/distribution/binary/pom.xml b/branches/das-java-M2/distribution/binary/pom.xml
deleted file mode 100644
index ffd7fbd4fb..0000000000
--- a/branches/das-java-M2/distribution/binary/pom.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.
--->
-<project>
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.apache.tuscany.das</groupId>
- <artifactId>tuscany-das</artifactId>
- <version>1.0-incubator-M2-SNAPSHOT</version>
- </parent>
- <artifactId>das</artifactId>
- <packaging>pom</packaging>
- <name>Tuscany DAS Distribution</name>
- <description>Tuscany Distribution for DAS.</description>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.tuscany.das</groupId>
- <artifactId>tuscany-das-rdb</artifactId>
- <version>${pom.version}</version>
- </dependency>
- </dependencies>
-
- <build>
- <defaultGoal>install</defaultGoal>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-assembly-plugin</artifactId>
- <version>2.2-SNAPSHOT</version>
- <executions>
- <execution>
- <phase>package</phase>
- <goals>
- <goal>single</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <descriptors>
- <descriptor>src/main/assembly/das.xml</descriptor>
- </descriptors>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/branches/das-java-M2/distribution/binary/src/main/assembly/das.xml b/branches/das-java-M2/distribution/binary/src/main/assembly/das.xml
deleted file mode 100644
index 82b3492a7b..0000000000
--- a/branches/das-java-M2/distribution/binary/src/main/assembly/das.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.
---><assembly>
- <id>bin</id>
- <includeBaseDirectory>false</includeBaseDirectory>
- <formats>
- <format>zip</format>
- <format>tar.gz</format>
- </formats>
-
- <fileSets>
- <!-- include legal and other files -->
- <fileSet>
- <includes>
- <include>*.txt</include>
- <include>*.htm</include>
- <include>*.html</include>
- </includes>
- </fileSet>
- </fileSets>
-
- <dependencySets>
- <dependencySet>
- <outputDirectory>lib</outputDirectory>
- <includes>
- <include>org.apache.tuscany.das:tuscany-das-rdb</include>
- </includes>
- <fileMode>644</fileMode>
- </dependencySet>
- </dependencySets>
-</assembly>
-
diff --git a/branches/das-java-M2/distribution/samples/LICENSE.txt b/branches/das-java-M2/distribution/samples/LICENSE.txt
deleted file mode 100644
index d645695673..0000000000
--- a/branches/das-java-M2/distribution/samples/LICENSE.txt
+++ /dev/null
@@ -1,202 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- 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.
diff --git a/branches/das-java-M2/distribution/samples/NOTICE.txt b/branches/das-java-M2/distribution/samples/NOTICE.txt
deleted file mode 100644
index f1aa4f1921..0000000000
--- a/branches/das-java-M2/distribution/samples/NOTICE.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-Apache Tuscany DAS for Java
-Copyright 2006 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Apache Tuscany is an effort undergoing incubation at The Apache Software Foundation (ASF),
-sponsored by the Apache Web Services PMC. Incubation is required of all newly accepted
-projects until a further review indicates that the infrastructure, communications,
-and decision making process have stabilized in a manner consistent with other successful
-ASF projects. While incubation status is not necessarily a reflection of the completeness
-or stability of the code, it does indicate that the project has yet to be fully endorsed
-by the ASF.
-
-Unless otherwise indicated, all distribution made available by the Apache Software Foundation
-is provided to you under the terms and conditions of the Apache License Version 2.0 ("AL").
-A copy of the AL is provided with this distribution as the LICENSE.txt file present in the
-root directory, and is also available at http://www.apache.org/licenses/.
-
-The terms and conditions governing the distribution may refer to the AL or other license
-agreements, notices or terms and conditions. Some of these other license agreements may
-include (but are not limited to):
-
- . Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)
- . Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)
-
-This product also includes software developed by:
-- the Eclipse Modeling Framework project (http://www.eclipse.org/emf/)
-
-It is your obligation to read and accept all such terms and conditions prior to use of the
-distribution. If term or condition is provided, please contact the Apache Software Foundation
-to determine what terms and conditions govern that particular distribution.
diff --git a/branches/das-java-M2/distribution/samples/RELEASE_NOTES.txt b/branches/das-java-M2/distribution/samples/RELEASE_NOTES.txt
deleted file mode 100644
index a116778476..0000000000
--- a/branches/das-java-M2/distribution/samples/RELEASE_NOTES.txt
+++ /dev/null
@@ -1,53 +0,0 @@
-What's new in DAS Java M2
-
- DAS Core features
-
- - MySQL support
-
- - Static Data Objects
-
- - Dynamic root for static graphs
-
- - "Unique" attribute on relationships
-
- - Explicit ResultSet shape definition
-
- - Improved logging
-
- - Programmatic Configuration
-
- - Helper for empty SDO Graph
-
- - Convention over configuration
-
- - Column named "ID" is the PK
-
- - Column named "xxx_ID" is the FK to table "xxx"
-
-
- DAS Samples
-
- - Tomcat integration and automated DAS samples testing (htmlUnit)
-
- - DAS Samples now have all dependencies and source code inside the sample war
-
-
- For detailed user documentation and feature descriptions, access Tuscany DAS Wiki page
-
- http://wiki.apache.org/ws/Tuscany/TuscanyJava/DAS_Java_Overview
-
- Downloading
-
- http://incubator.apache.org/tuscany/downloads.html#Apache%20Tuscany%20Java%20Downloads
-
-
-Details are described below.
-
- DAS Java M2 is a superset of previous DAS Java M1 release.
- Anything in M1 is also in M2, but M2 contains features and bugfixes not present in M1 release.
-
-Compatibility Concerns
-
- - We have removed support for named parameters and previous DAS configuration files will have to be updated as needed.
-
-
diff --git a/branches/das-java-M2/distribution/samples/STATUS.txt b/branches/das-java-M2/distribution/samples/STATUS.txt
deleted file mode 100644
index 24a37ea606..0000000000
--- a/branches/das-java-M2/distribution/samples/STATUS.txt
+++ /dev/null
@@ -1,73 +0,0 @@
-Apache Tuscany Status
-
-Tuscany provides multiple language implementations of the Service Component Architecture (SCA) specifications and related technologies such as SDO.
-
-PROJECT STATUS
-==============
-
- Tuscany is being incubated at the request of the Apache Web Services PMC.
- For information on incubation please visit the project page at
- http://incubator.apache.org/projects/tuscany.html
-
-PENDING ISSUES
-==============
-XXXX-XX-XX CCLA received for IBM's contribution of a C++ implementation
-XXXX-XX-XX CCLA received for BEA and IBM joint contribution of a Java implementation
-
-RESOLVED ISSUES SINCE LAST STATUS
-=================================
-None
-
-OTHER NEWS
-==========
-
-2006-09-29 Vote to add Ignacio Silva-Lepe as a new committer
-2006-09-18 Vote to add Venkata Krishnan as a new committer
-2006-08-10 Vote to add Andrew Borley as a new committer
-2006-08-07 Vote to add Meeraj Kunnumpurath as a new committer
-2006-08-07 Vote to add Kelvin Goodson as a new committer
-2006-08-06 Vote to add Brent Daniel as a new committer
-2006-08-04 Vote to add Raymond Feng as a new committer
-2006-08-01 C++ Milestone 1 release
-2006-06-07 Java Milestone 1 release
-2006-05-02 Vote to add Dan Kulp as a new committer
-
-2006-01-05 Contribution of Java implementation by BEA and IBM committed
-2006-01-05 Contribution of C+ implementation by IBM committed
-
-RELEASE STATUS
-==============
-None
-
-REFERENCES
-==========
-Status file http://svn.apache.org/repos/asf/incubator/tuscany/STATUS
-User List tuscany-user@ws.apache.org
-Developer List tuscany-dev@ws.apache.org
-Commits List tuscany-commits@ws.apache.org
-Source Code http://svn.apache.org/repos/asf/incubator/tuscany/
-Issue Tracking http://issues.apache.org/jira/browse/TUSCANY
-
-Committers
- ajborley Andrew Borley
- antelder Ant Elder
- bdaniel Brent Daniel
- dkulp Dan Kulp
- dims Davanum Srinivas
- edslattery Ed Slattery
- ekoneil Eddie O'Neil
- frankb Frank Budinsky
- geirm Geir Magnusson Jr
- isilval Ignacio Silva-Lepe
- jsdelfino Jean-Sebastien Delfino
- jboynes Jeremy Boynes
- jmarino Jim Marino
- kelvingoodson Kelvin Goodson
- kentam Ken Tam
- kwilliams Kevin Williams
- edwardsmj Mike Edwards
- meerajk Meeraj Kunnumpurath
- rfeng Raymond Feng
- robbinspg Pete Robbins
- rineholt Rick Rineholt
- svkrish Venkata Krishnan
diff --git a/branches/das-java-M2/distribution/samples/pom.xml b/branches/das-java-M2/distribution/samples/pom.xml
deleted file mode 100644
index f73645eaa6..0000000000
--- a/branches/das-java-M2/distribution/samples/pom.xml
+++ /dev/null
@@ -1,64 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.
--->
-<project>
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.apache.tuscany.das</groupId>
- <artifactId>tuscany-das</artifactId>
- <version>1.0-incubator-M2-SNAPSHOT</version>
- </parent>
- <artifactId>das-samples</artifactId>
- <packaging>pom</packaging>
- <name>Tuscany DAS Samples Distribution</name>
- <description>Tuscany Distribution for DAS Samples.</description>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.tuscany.das.samples</groupId>
- <artifactId>sample-companyweb</artifactId>
- <version>${pom.version}</version>
- <type>war</type>
- </dependency>
- </dependencies>
-
- <build>
- <defaultGoal>install</defaultGoal>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-assembly-plugin</artifactId>
- <version>2.2-SNAPSHOT</version>
- <executions>
- <execution>
- <phase>package</phase>
- <goals>
- <goal>single</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <descriptors>
- <descriptor>src/main/assembly/das-samples.xml</descriptor>
- </descriptors>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/branches/das-java-M2/distribution/samples/src/main/assembly/das-samples.xml b/branches/das-java-M2/distribution/samples/src/main/assembly/das-samples.xml
deleted file mode 100644
index 4cb2fabb03..0000000000
--- a/branches/das-java-M2/distribution/samples/src/main/assembly/das-samples.xml
+++ /dev/null
@@ -1,77 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.
--->
-<assembly>
- <id>bin</id>
- <includeBaseDirectory>false</includeBaseDirectory>
- <formats>
- <format>zip</format>
- <format>tar.gz</format>
- </formats>
-
- <fileSets>
- <!-- include legal and other files -->
- <fileSet>
- <includes>
- <include>*.txt</include>
- <include>*.htm</include>
- <include>*.html</include>
- </includes>
- </fileSet>
-
- <!-- include companyweb source -->
- <!-- lresende - including companyweb using dependencySets
- <fileSet>
- <directory>../../samples/das/companyweb/src</directory>
- <lineEnding>keep</lineEnding>
- <includes>
- <include>**/*.java</include>
- <include>**/*.xml</include>
- </includes>
- <fileMode>644</fileMode>
- </fileSet>
- -->
-
-
- <fileSet>
- <directory>../../samples/companyweb/dastest</directory>
- <outputDirectory>databases/dastest</outputDirectory>
- <lineEnding>keep</lineEnding>
- <includes>
- <include>**/*.*</include>
- </includes>
- <fileMode>644</fileMode>
- </fileSet>
-
-
- </fileSets>
-
-
- <dependencySets>
- <dependencySet>
- <outputDirectory></outputDirectory>
- <includes>
- <include>org.apache.tuscany.das.samples:sample-companyweb</include>
- </includes>
- <fileMode>644</fileMode>
- </dependencySet>
- </dependencySets>
-
-</assembly>
-
diff --git a/branches/das-java-M2/pom.xml b/branches/das-java-M2/pom.xml
deleted file mode 100644
index cfa5129504..0000000000
--- a/branches/das-java-M2/pom.xml
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.
--->
-<project>
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.apache.tuscany</groupId>
- <artifactId>parent</artifactId>
- <version>1-incubator</version>
- </parent>
- <groupId>org.apache.tuscany.das</groupId>
- <artifactId>tuscany-das</artifactId>
- <packaging>pom</packaging>
- <name>Tuscany DAS</name>
- <version>1.0-incubator-M2-SNAPSHOT</version>
-
- <properties>
- <sdo.version>1.0-incubator-M2</sdo.version>
- </properties>
-
- <modules>
- <module>rdb</module>
- <module>samples</module>
- <module>distribution/binary</module>
- <module>distribution/samples</module>
- </modules>
-
- <!-- definition of repositories where the parent pom can be found -->
- <repositories>
- <repository>
- <id>apache.snapshots</id>
- <name>Apache Snapshot Repository</name>
- <url>http://people.apache.org/repo/m2-snapshot-repository</url>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </repository>
- <repository>
- <id>apache.incubator</id>
- <name>Apache Incubator Repository</name>
- <url>http://people.apache.org/repo/m2-incubating-repository/</url>
- <releases>
- <enabled>true</enabled>
- </releases>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- </repositories>
-
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>org.apache.tuscany.sdo</groupId>
- <artifactId>tuscany-sdo-impl</artifactId>
- <version>${sdo.version}</version>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>3.8.1</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
- <build>
- <defaultGoal>install</defaultGoal>
-
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <includes>
- <include>**/*TestCase.java</include>
- </includes>
- <reportFormat>brief</reportFormat>
- <useFile>false</useFile>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
- <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/branches/das-java-M2/rdb/pom.xml b/branches/das-java-M2/rdb/pom.xml
deleted file mode 100644
index 5f93bd014d..0000000000
--- a/branches/das-java-M2/rdb/pom.xml
+++ /dev/null
@@ -1,110 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.
--->
-<project>
- <parent>
- <groupId>org.apache.tuscany.das</groupId>
- <artifactId>tuscany-das</artifactId>
- <version>1.0-incubator-M2-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>tuscany-das-rdb</artifactId>
- <name>Tuscany DAS for Relational Databases</name>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.tuscany.sdo</groupId>
- <artifactId>tuscany-sdo-impl</artifactId>
- <version>${sdo.version}</version>
- </dependency>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>3.8.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.derby</groupId>
- <artifactId>derby</artifactId>
- <version>10.1.2.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <version>1.2.12</version>
- <scope>compile</scope>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.tuscany.sdo</groupId>
- <artifactId>tuscany-sdo-plugin</artifactId>
- <executions>
- <execution>
- <id>config</id>
- <configuration>
- <schemaFile>${basedir}/src/main/resources/config.xsd</schemaFile>
- <noNotification>true</noNotification>
- <noUnsettable>true</noUnsettable>
- </configuration>
- <goals>
- <goal>generate</goal>
- </goals>
- </execution>
- <execution>
- <id>company</id>
- <configuration>
- <schemaFile>${basedir}/src/test/resources/company.xsd</schemaFile>
- <noUnsettable>true</noUnsettable>
- </configuration>
- <goals>
- <goal>generate</goal>
- </goals>
- </execution>
- <execution>
- <id>customer</id>
- <configuration>
- <schemaFile>${basedir}/src/test/resources/customer.xsd</schemaFile>
- <noUnsettable>true</noUnsettable>
- </configuration>
- <goals>
- <goal>generate</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <includes>
- <include>**/*AllTestsDerby.java</include>
- </includes>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
-
-
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Command.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Command.java
deleted file mode 100644
index 3c80c34b68..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Command.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb;
-
-import commonj.sdo.DataObject;
-
-/**
- * A Command is used to execute a read or write to a database
- */
-public interface Command {
-
- /**
- * Performs the function defined by the command
- */
- void execute();
-
- /**
- * Performs the function defined by the command and return the results in the root DataObject
- *
- * @return the root DataObject
- */
- DataObject executeQuery();
-
- /**
- * Sets the value of the associated Parameter
- *
- * @param index
- * the index of the Parameter
- * @param value
- * the value for the Parameter
- */
- void setParameter(int index, Object value);
-
- /**
- * Returns the value of the associated Parameter
- *
- * @param index
- * the index of the Parameter
- * @return the value of the Parameter
- */
- Object getParameter(int index);
-
- /**
- * Returns the value of the database-generated key. This method is specific
- * to an "insert" command and will be valid only after the command has
- * been executed.
- *
- * @return the generated key
- */
- int getGeneratedKey();
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/ConfigHelper.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/ConfigHelper.java
deleted file mode 100644
index 04d450b020..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/ConfigHelper.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb;
-
-import org.apache.tuscany.das.rdb.config.Command;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.config.Relationship;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-
-/**
- * A ConfigHelper is used as an aid in programmatic construction of Config instances.
- * Manual contrution fo COnfig is an alternative to providing needed configuration
- * information in an XML file
- *
- */
-public class ConfigHelper {
-
- private Config config;
-
- private MappingWrapper configWrapper;
-
- private ConfigFactory factory = ConfigFactory.INSTANCE;
-
- public ConfigHelper() {
- config = factory.createConfig();
- configWrapper = new MappingWrapper(config);
- }
-
- public ConfigHelper(Config config) {
- this.config = config;
- configWrapper = new MappingWrapper(config);
- }
-
- public void addPrimaryKey(String columnName) {
- configWrapper.addPrimaryKey(columnName);
- }
-
- public Relationship addRelationship(String parentName, String childName) {
- return configWrapper.addRelationship(parentName, childName);
- }
-
- public Table addTable(String name, String propertyName) {
- return configWrapper.addTable(name, propertyName);
- }
-
- public void addUpdateStatement(Table table, String statement, String parameters) {
- configWrapper.addUpdateStatement(table, statement, parameters);
- }
-
- public void addCreateStatement(Table table, String statement, String parameters) {
- configWrapper.addCreateStatement(table, statement, parameters);
- }
-
- public void addDeleteStatement(Table table, String statement, String parameters) {
- configWrapper.addDeleteStatement(table, statement, parameters);
- }
-
- public void addConnectionInfo(String dataSourceName, boolean managedtx) {
- configWrapper.addConnectionInfo(dataSourceName, managedtx);
- }
-
- public void addConnectionInfo(String dataSourceName) {
- configWrapper.addConnectionInfo(dataSourceName, true);
- }
-
- public void setDataObjectModel(String dataObjectModel) {
- configWrapper.getConfig().setDataObjectModel(dataObjectModel);
- }
-
- public Command addSelectCommand(String name, String sql) {
- return configWrapper.addCommand(name, sql, "select");
- }
-
- public Command addUpdateCommand(String name, String sql) {
- return configWrapper.addCommand(name, sql, "update");
- }
-
- public Command addInsertCommand(String name, String sql) {
- return configWrapper.addCommand(name, sql, "insert");
- }
-
- public Command addDeleteCommand(String name, String sql) {
- return configWrapper.addCommand(name, sql, "delete");
- }
-
- public Config getConfig() {
- return config;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Converter.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Converter.java
deleted file mode 100644
index 24f2e5ee2e..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Converter.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb;
-
-/**
- * A lightweight Table-column <--> DataObject-property converter framework. Converters
- * allow a user to insert a transformation between a column value
- * and is destination DataObject property value. For example, by default, a VARCHAR
- * column will be represented as a String in its corresponding
- * DataObject property. A user could insert a converter that transforms the the VARCHAR
- * value to an Integer. If this is done then although the column
- * returns character data, the DataObject property will be an Integer
- *
- *
- */
-public interface Converter {
-
- /**
- * Transform the columnData object to a new value and possibly
- * new type. This should be the invers operation of #getColumnValue
- *
- * @param columnData
- * The column value to transorm
- * @return Returns the transformed value
- */
- Object getPropertyValue(Object columnData);
-
- /**
- * Transform the columnData object to a new value and possibly new
- * type. This should be the invers operation of #getPropertyValue
- *
- * @param propertyData
- * The property value to transform
- * @return Returns the transformed value
- */
- Object getColumnValue(Object propertyData);
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/DAS.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/DAS.java
deleted file mode 100644
index 43f1e30d1a..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/DAS.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb;
-
-import org.apache.tuscany.das.rdb.impl.DASFactoryImpl;
-
-import commonj.sdo.DataObject;
-
-/**
- * A CommandGroup represents a set of {@link Command} and single {@link ApplyChangesCommand}
- * that are created from a common config file.
- *
- */
-public interface DAS {
-
- DASFactory FACTORY = new DASFactoryImpl();
-
- /**
- * The change history is scanned and modifications to the graph of data objects are flushed to the database.
- *
- * @param root
- * the topmost containing data object
- */
- void applyChanges(DataObject root);
-
- /**
- * Gets the named command from this factory's inventory
- *
- * @param name
- * The identifying name of the requested command
- * @return Returns the identified command
- */
- Command getCommand(String name);
-
- /**
- * If the CommandGroup is managing connections then this method must be called
- * when the client is done with the instance.
- *
- */
- void releaseResources();
-
- /**
- * Creates a Command based on the provided SQL statement
- *
- * @param sql
- * The SQL statement
- * @return returns a Command instance
- */
- Command createCommand(String sql);
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/DASFactory.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/DASFactory.java
deleted file mode 100644
index a0e38ab7cf..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/DASFactory.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb;
-
-import java.io.InputStream;
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.config.Config;
-
-/**
- * A DASFactory produces {@link DAS} instances.
- *
- *
- */
-public interface DASFactory {
-
- /**
- * Creates a DAS based on the provided config file stream
- *
- * @param configStream
- * A stream over a DAS config file
- * @return returns a DAS instance
- */
- DAS createDAS(InputStream configStream);
-
- /**
- * Creates a DAS based on the provide config file stream and connection
- * @param configStream
- * @param connection
- * @return
- */
- DAS createDAS(InputStream configStream, Connection connection);
-
- /**
- * Creates a DAS based on the provided config
- *
- * @param config
- * A DAS config object
- * @return returns a DAS instance
- */
- DAS createDAS(Config config);
-
- /**
- * Creates a DAS based on the provided config and connection
- * @param config
- * @param connection
- * @return
- */
- DAS createDAS(Config config, Connection connection);
-
- /**
- * Creates a DAS based on the provided connection
- * @param connection
- * @return
- */
- DAS createDAS(Connection connection);
-
-
-}
-
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Pager.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Pager.java
deleted file mode 100644
index aa18558fce..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/Pager.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb;
-
-import commonj.sdo.DataObject;
-
-/**
- * An iterator-like interface to conveniently move through chunks of data. The
- * idea is that a Pager works with a read Command. The read command
- * returns a large amount of data and the client wants to work with chunks
- * of it at a time. So the Pager is created on the command and each call to
- * next returns the next chunk of data. This is done completely disconnected.
- * No cursor is maintained between calls to #next.
- *
- * TODO - This is very preliminary. We need to look at this interface
- * in the context of disonnected scenarios such as a web app. The Pager instance
- * will probably be saved in session so it must be very light and cannot
- * reference a connection. Also, we probably need to define a factory or add a
- * method to set page size.
- *
- *
- */
-public interface Pager {
-
- /**
- * Get the next page of data
- *
- * @return the next page of data
- */
- DataObject next();
-
- /**
- * Get the page prior to the last page returned
- *
- * @return the previous page
- */
- DataObject previous();
-
- /**
- * Return a specific identified page.
- *
- * @param page
- * The number of the page to return
- * @return the indicated page
- */
- DataObject getPage(int page);
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/MappingWrapper.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/MappingWrapper.java
deleted file mode 100644
index cca0db6c07..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/MappingWrapper.java
+++ /dev/null
@@ -1,491 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.config.wrapper;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.config.Column;
-import org.apache.tuscany.das.rdb.config.Command;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.config.ConnectionInfo;
-import org.apache.tuscany.das.rdb.config.Create;
-import org.apache.tuscany.das.rdb.config.Delete;
-import org.apache.tuscany.das.rdb.config.KeyPair;
-import org.apache.tuscany.das.rdb.config.Relationship;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.Update;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.Property;
-
-public class MappingWrapper {
-
- private static final ConfigFactory FACTORY = ConfigFactory.INSTANCE;
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(MappingWrapper.class);
-
- private Config config;
-
- public MappingWrapper() {
- config = FACTORY.createConfig();
- }
-
- public MappingWrapper(Config mapping) {
- if (mapping == null) {
- this.config = FACTORY.createConfig();
- } else {
- this.config = mapping;
- }
- }
-
- public Config getConfig() {
- return this.config;
- }
-
- public Table getTable(String tableName) {
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Looking for table " + tableName);
- }
-
- Iterator i = config.getTable().iterator();
- while (i.hasNext()) {
- Table t = (Table) i.next();
- if (tableName.equalsIgnoreCase(t.getTableName())) {
- return t;
- }
- }
-
- return null;
- }
-
- public Table getTableByTypeName(String typeName) {
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Looking for table by property: " + typeName);
- }
-
- Iterator i = config.getTable().iterator();
- while (i.hasNext()) {
- Table t = (Table) i.next();
- TableWrapper wrapper = new TableWrapper(t);
- if (typeName.equals(wrapper.getTypeName())) {
- return t;
- }
- }
- return null;
-
- }
-
- public void addImpliedRelationship(String parentTableName, String childTableName, String fkColumnName) {
-
- // Don't create a relationship for something like Book.Book_ID
- if (parentTableName.equalsIgnoreCase(childTableName)) {
- return;
- }
-
- // Don't create a relationship if one already exists in the config
- Iterator i = config.getRelationship().iterator();
- while (i.hasNext()) {
- Relationship r = (Relationship) i.next();
- if (r.getPrimaryKeyTable().equals(parentTableName) && r.getForeignKeyTable().equals(childTableName)) {
- return;
- }
- }
-
- Relationship r = FACTORY.createRelationship();
- r.setName(childTableName);
- r.setPrimaryKeyTable(parentTableName);
- r.setForeignKeyTable(childTableName);
-
- KeyPair pair = FACTORY.createKeyPair();
- pair.setPrimaryKeyColumn("ID");
- pair.setForeignKeyColumn(fkColumnName);
-
- r.getKeyPair().add(pair);
- r.setMany(true);
-
- config.getRelationship().add(r);
- }
-
- public Relationship addRelationship(String parentName, String childName) {
-
- QualifiedColumn parent = new QualifiedColumn(parentName);
- QualifiedColumn child = new QualifiedColumn(childName);
-
- Relationship r = FACTORY.createRelationship();
- r.setName(child.getTableName());
- r.setPrimaryKeyTable(parent.getTableName());
- r.setForeignKeyTable(child.getTableName());
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Created relationship from " + r.getPrimaryKeyTable()
- + " to " + r.getForeignKeyTable() + " named " + r.getName());
- }
-
- KeyPair pair = FACTORY.createKeyPair();
- pair.setPrimaryKeyColumn(parent.getColumnName());
- pair.setForeignKeyColumn(child.getColumnName());
-
- r.getKeyPair().add(pair);
- r.setMany(true);
-
- config.getRelationship().add(r);
-
- return r;
-
- }
-
- public void addPrimaryKey(String columnName) {
- addPrimaryKey(Collections.singletonList(columnName));
- }
-
- public void addPrimaryKey(List columnNames) {
-
- Iterator i = columnNames.iterator();
- while (i.hasNext()) {
- String columnName = (String) i.next();
-
- QualifiedColumn pkColumn = new QualifiedColumn(columnName);
- Table t = findOrCreateTable(pkColumn.getTableName());
- Column c = findOrCreateColumn(t, pkColumn.getColumnName());
- c.setPrimaryKey(true);
- }
- }
-
- public String getTableTypeName(String tableName) {
- Table t = getTable(tableName);
- if (t == null) {
- return tableName;
- }
- String propertyName = t.getTypeName();
-
- if (propertyName == null) {
- return tableName;
- }
-
- return propertyName;
- }
-
- public Column getColumn(Table t, String columnName) {
- if (t == null) {
- return null;
- }
- Iterator i = t.getColumn().iterator();
- while (i.hasNext()) {
- Column c = (Column) i.next();
- if (c.getColumnName().equals(columnName)) {
- return c;
- }
- }
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("WARNING: Could not find column " + columnName + " in table " + t.getTableName());
- }
-
- return null;
- }
-
- public Column getColumnByPropertyName(Table t, String propertyName) {
- if (t == null) {
- return null;
- }
- Iterator i = t.getColumn().iterator();
- while (i.hasNext()) {
- Column c = (Column) i.next();
- if (c.getColumnName().equals(propertyName)) {
- return c;
- }
-
- if (c.getPropertyName() != null && c.getPropertyName().equals(propertyName)) {
- return c;
- }
- }
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("WARNING: Could not find column " + propertyName + " in table " + t.getTableName());
- }
-
- return null;
- }
-
- public String getColumnPropertyName(String tableName, String columnName) {
- Table t = getTable(tableName);
- Column c = getColumn(t, columnName);
- if (c == null) {
- return columnName;
- }
-
- String propertyName = c.getPropertyName();
- if (propertyName == null) {
- return c.getColumnName();
- }
-
- return propertyName;
- }
-
- public Table addTable(String tableName, String typeName) {
- Table table = getTable(tableName);
- if (table != null) {
- throw new RuntimeException("Table " + tableName + "already exists");
- }
-
- table = ConfigFactory.INSTANCE.createTable();
- table.setTableName(tableName);
- table.setTypeName(typeName);
- config.getTable().add(table);
-
- return table;
- }
-
- private Table findOrCreateTable(String tableName) {
- Table table = getTable(tableName);
- if (table == null) {
- table = ConfigFactory.INSTANCE.createTable();
- table.setTableName(tableName);
- config.getTable().add(table);
- }
- return table;
-
- }
-
- private Column findOrCreateColumn(Table t, String name) {
- Iterator i = t.getColumn().iterator();
- while (i.hasNext()) {
- Column c = (Column) i.next();
- if (name.equals(c.getColumnName())) {
- return c;
- }
- }
-
- Column c = ConfigFactory.INSTANCE.createColumn();
- c.setColumnName(name);
- t.getColumn().add(c);
- return c;
- }
-
- public boolean hasRecursiveRelationships() {
- if (config != null) {
- Iterator i = getConfig().getRelationship().iterator();
- while (i.hasNext()) {
- Relationship r = (Relationship) i.next();
- if (r.getPrimaryKeyTable().equals(r.getForeignKeyTable())) {
- return true;
- }
- }
- }
- return false;
- }
-
- public Collection getRelationshipsByChildTable(String name) {
- List results = new ArrayList();
- if (config != null) {
- Iterator i = getConfig().getRelationship().iterator();
- while (i.hasNext()) {
- Relationship r = (Relationship) i.next();
- if (name.equals(r.getForeignKeyTable())) {
- results.add(r);
- }
- }
- }
- return results;
- }
-
- // TODO optimize
- public List getInsertOrder() {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Getting insert order");
- }
-
- List inserts = new ArrayList();
- Map parentToChild = new HashMap();
-
- List parents = new ArrayList();
- List children = new ArrayList();
- if (config != null) {
- Iterator i = getConfig().getRelationship().iterator();
- while (i.hasNext()) {
- Relationship r = (Relationship) i.next();
- parents.add(r.getPrimaryKeyTable());
- children.add(r.getForeignKeyTable());
- parentToChild.put(r.getPrimaryKeyTable(), r.getForeignKeyTable());
- }
- while (parents.size() > 0) {
- String parent = (String) parents.get(0);
- if (!children.contains(parent)) {
- if (!inserts.contains(parent)) {
- inserts.add(parent);
- }
- String child = (String) parentToChild.get(parent);
- if (!inserts.contains(child)) {
- inserts.add(child);
- }
- parents.remove(parent);
- children.remove(child);
- } else {
- parents.add(parents.remove(0));
- }
- }
- inserts.addAll(children);
- }
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug(inserts);
- }
-
- return inserts;
- }
-
- public List getDeleteOrder() {
- List deleteOrder = new ArrayList();
- deleteOrder.addAll(getInsertOrder());
- Collections.reverse(deleteOrder);
- return deleteOrder;
- }
-
- public void addConverter(String name, String converter) {
-
- QualifiedColumn column = new QualifiedColumn(name);
- Table t = findOrCreateTable(column.getTableName());
- Column c = findOrCreateColumn(t, column.getColumnName());
- c.setConverterClassName(converter);
-
- }
-
- public String getConverter(String tableName, String columnName) {
- Table t = getTable(tableName);
- Column c = getColumn(t, columnName);
- if (c != null) {
- return c.getConverterClassName();
- }
- return null;
- }
-
- public Map getConverters(Table table) {
- Map converters = new HashMap();
-
- Iterator columns = table.getColumn().iterator();
- while (columns.hasNext()) {
- Column c = (Column) columns.next();
- if (c.getConverterClassName() != null) {
- String property = c.getPropertyName();
- if (property == null) {
- property = c.getColumnName();
- }
- converters.put(property, c.getConverterClassName());
- }
- }
- return converters;
- }
-
- public Relationship getRelationshipByReference(Property ref) {
- Iterator i = config.getRelationship().iterator();
- while (i.hasNext()) {
- Relationship r = (Relationship) i.next();
- if (ref.getName().equals(r.getName()) || ref.getOpposite().getName().equals(r.getName())) {
- return r;
- }
- }
- throw new RuntimeException("Could not find relationship " + ref.getName() + " in the configuration");
- }
-
- public Relationship getRelationshipByName(String name) {
- Iterator i = config.getRelationship().iterator();
- while (i.hasNext()) {
- Relationship r = (Relationship) i.next();
- if (name.equals(r.getName())) {
- return r;
- }
- }
- throw new RuntimeException("Could not find relationship " + name + " in the configuration");
- }
-
- public void addUpdateStatement(Table table, String statement, String parameters) {
-
- Update update = ConfigFactory.INSTANCE.createUpdate();
- update.setSql(statement);
- update.setParameters(parameters);
- table.setUpdate(update);
-
- }
-
- public void addDeleteStatement(Table table, String statement, String parameters) {
-
- Delete delete = ConfigFactory.INSTANCE.createDelete();
- delete.setSql(statement);
- delete.setParameters(parameters);
- table.setDelete(delete);
-
- }
-
- public void addCreateStatement(Table table, String statement, String parameters) {
-
- Create create = ConfigFactory.INSTANCE.createCreate();
- create.setSql(statement);
- create.setParameters(parameters);
- table.setCreate(create);
-
- }
-
- public void addConnectionInfo(String dataSourceName, boolean managedtx) {
- ConnectionInfo info = ConfigFactory.INSTANCE.createConnectionInfo();
- info.setDataSource(dataSourceName);
- info.setManagedtx(managedtx);
- config.setConnectionInfo(info);
- }
-
- public Command addCommand(String name, String sql, String kind) {
- Command cmd = ConfigFactory.INSTANCE.createCommand();
- cmd.setName(name);
- cmd.setKind(kind);
- cmd.setSQL(sql);
-
- config.getCommand().add(cmd);
-
- return cmd;
- }
-
- public void addImpliedPrimaryKey(String tableName, String columnName) {
- Table t = findOrCreateTable(tableName);
-
- Iterator i = t.getColumn().iterator();
- boolean hasPK = false;
- while (i.hasNext()) {
- Column c = (Column) i.next();
- if (c.isPrimaryKey()) {
- hasPK = true;
- }
- }
-
- if (!hasPK) {
- Column c = findOrCreateColumn(t, columnName);
- c.setPrimaryKey(true);
- }
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/QualifiedColumn.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/QualifiedColumn.java
deleted file mode 100644
index 19824e4e99..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/QualifiedColumn.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.config.wrapper;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-public class QualifiedColumn {
-
- private final String tableName;
-
- private final String columnName;
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(QualifiedColumn.class);
-
- public QualifiedColumn(String name) {
- tableName = name.substring(0, name.indexOf('.'));
- columnName = name.substring(name.indexOf('.') + 1);
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Table name: " + tableName);
- this.logger.debug("Column name: " + columnName);
- }
- }
-
- public String getTableName() {
- return this.tableName;
- }
-
- public String getColumnName() {
- return this.columnName;
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/RelationshipWrapper.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/RelationshipWrapper.java
deleted file mode 100644
index 0e4447bf8b..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/RelationshipWrapper.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.config.wrapper;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.config.KeyPair;
-import org.apache.tuscany.das.rdb.config.Relationship;
-
-public class RelationshipWrapper {
-
- private Relationship relationship;
-
- public RelationshipWrapper(Relationship r) {
- this.relationship = r;
- }
-
- public Collection getForeignKeys() {
- List keys = new ArrayList();
- Iterator i = this.relationship.getKeyPair().iterator();
- while (i.hasNext()) {
- KeyPair pair = (KeyPair) i.next();
- keys.add(pair.getForeignKeyColumn());
- }
- return keys;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/TableWrapper.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/TableWrapper.java
deleted file mode 100644
index 82961861e2..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/config/wrapper/TableWrapper.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.config.wrapper;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.config.Column;
-import org.apache.tuscany.das.rdb.config.Table;
-
-public class TableWrapper {
-
- private Table table;
-
- public TableWrapper(Table table) {
- this.table = table;
- }
-
- public String getTypeName() {
- return table.getTypeName() == null ? table.getTableName() : table.getTypeName();
- }
-
- public Collection getPrimaryKeyNames() {
- List pkNames = new ArrayList();
- Iterator i = table.getColumn().iterator();
- while (i.hasNext()) {
- Column c = (Column) i.next();
- if (c.isPrimaryKey()) {
- pkNames.add(c.getColumnName());
- }
- }
- return pkNames;
- }
-
- public Collection getPrimaryKeyProperties() {
-
- List keyProperties = new ArrayList();
- Iterator columns = table.getColumn().iterator();
- while (columns.hasNext()) {
- Column c = (Column) columns.next();
- if (c.isPrimaryKey()) {
- keyProperties.add(getColumnPropertyName(c));
- }
- }
-
- return keyProperties;
- }
-
- private String getColumnPropertyName(Column c) {
- if (c.getPropertyName() != null) {
- return c.getPropertyName();
- }
-
- return c.getColumnName();
- }
-
- public boolean isGeneratedColumnProperty(String name) {
- Column c = getColumnByPropertyName(name);
- return c == null ? false : c.isGenerated();
- }
-
- public String getConverter(String propertyName) {
- Column c = getColumnByPropertyName(propertyName);
- return (c == null) ? null : c.getConverterClassName();
- }
-
- public Column getColumnByPropertyName(String propertyName) {
- Iterator columns = table.getColumn().iterator();
- while (columns.hasNext()) {
- Column c = (Column) columns.next();
- String property = c.getPropertyName();
- if (property == null) {
- property = c.getColumnName();
- }
- if (propertyName.equals(property)) {
- return c;
- }
- }
-
- return null;
- }
-
- public Column getCollisionColumn() {
- Iterator columns = table.getColumn().iterator();
- while (columns.hasNext()) {
- Column c = (Column) columns.next();
- if (c.isCollision()) {
- return c;
- }
- }
-
- return null;
-
- }
-
- public String getCollisionColumnPropertyName() {
- Column c = getCollisionColumn();
- if (c.getPropertyName() != null) {
- return c.getPropertyName();
- }
- return c.getColumnName();
-
- }
-
- public String getManagedColumnPropertyName() {
- Iterator i = table.getColumn().iterator();
- while (i.hasNext()) {
- Column c = (Column) i.next();
- if (c.isManaged()) {
- return c.getPropertyName() == null ? c.getColumnName() : c.getPropertyName();
- }
- }
- return null;
-
- }
-
- public Column getManagedColumn() {
- Iterator i = table.getColumn().iterator();
- while (i.hasNext()) {
- Column c = (Column) i.next();
- if (c.isManaged()) {
- return c;
- }
- }
- return null;
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/BaseGenerator.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/BaseGenerator.java
deleted file mode 100644
index 05d97723a7..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/BaseGenerator.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.generator.impl;
-
-import org.apache.tuscany.das.rdb.Converter;
-
-public class BaseGenerator {
-
- protected Converter getConverter(String converter) {
- if (converter != null) {
- try {
- return (Converter) Thread.currentThread().getContextClassLoader().loadClass(converter).newInstance();
- } catch (Exception ex) {
- throw new RuntimeException(ex);
- }
- }
- return null;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/DeleteGenerator.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/DeleteGenerator.java
deleted file mode 100644
index 30a222634b..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/DeleteGenerator.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.generator.impl;
-
-import java.util.Iterator;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.TableWrapper;
-import org.apache.tuscany.das.rdb.impl.DeleteCommandImpl;
-import org.apache.tuscany.das.rdb.impl.ParameterImpl;
-import org.apache.tuscany.das.rdb.impl.SDODataTypes;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-public final class DeleteGenerator extends BaseGenerator {
-
- public static final DeleteGenerator INSTANCE = new DeleteGenerator();
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(DeleteGenerator.class);
-
- private DeleteGenerator() {
- super();
- }
-
- private String getDeleteStatement(Table t) {
- TableWrapper table = new TableWrapper(t);
-
- StringBuffer statement = new StringBuffer();
- statement.append("delete from ");
- statement.append(t.getTableName());
- statement.append(" where ");
-
- Iterator names = table.getPrimaryKeyNames().iterator();
- Iterator properties = table.getPrimaryKeyProperties().iterator();
- while (names.hasNext() && properties.hasNext()) {
- String name = (String) names.next();
- statement.append(name);
- statement.append(" = ?");
- if (names.hasNext() && properties.hasNext()) {
- statement.append(" and ");
- }
- }
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug(statement.toString());
- }
-
- return statement.toString();
- }
-
- public DeleteCommandImpl getDeleteCommand(Table t) {
- TableWrapper tw = new TableWrapper(t);
- DeleteCommandImpl deleteCommand = new DeleteCommandImpl(getDeleteStatement(t));
-
- Iterator i = tw.getPrimaryKeyProperties().iterator();
- for (int idx = 1; i.hasNext(); idx++) {
- String property = (String) i.next();
- ParameterImpl p = new ParameterImpl();
- p.setName(property);
- p.setType(SDODataTypes.OBJECT);
- p.setConverter(getConverter(tw.getConverter(property)));
- p.setIndex(idx);
- deleteCommand.addParameter(p);
- }
- return deleteCommand;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/InsertGenerator.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/InsertGenerator.java
deleted file mode 100644
index 5fda043253..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/InsertGenerator.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.generator.impl;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.config.Relationship;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.config.wrapper.RelationshipWrapper;
-import org.apache.tuscany.das.rdb.config.wrapper.TableWrapper;
-import org.apache.tuscany.das.rdb.impl.InsertCommandImpl;
-import org.apache.tuscany.das.rdb.impl.ParameterImpl;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-
-public final class InsertGenerator extends BaseGenerator {
-
- public static final InsertGenerator INSTANCE = new InsertGenerator();
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(InsertGenerator.class);
-
- private InsertGenerator() {
- super();
- }
-
- public InsertCommandImpl getInsertCommand(MappingWrapper config, DataObject changedObject, Table t) {
- List parameters = new ArrayList();
- TableWrapper table = new TableWrapper(t);
- StringBuffer statement = new StringBuffer("insert into ");
- statement.append(t.getTableName());
-
- Iterator i = getAttributeProperties(changedObject, config).iterator();
-
- List attributes = new ArrayList();
- List generatedKeys = new ArrayList();
- while (i.hasNext()) {
- Property attr = (Property) i.next();
- if (table.isGeneratedColumnProperty(attr.getName())) {
- generatedKeys.add(attr.getName());
- } else {
- attributes.add(attr.getName());
- parameters.add(changedObject.getType().getProperty(attr.getName()));
- }
- }
-
- statement.append("(");
- Iterator attrs = attributes.iterator();
- while (attrs.hasNext()) {
- String name = (String) attrs.next();
- statement.append("");
- statement.append(name);
- if (attrs.hasNext()) {
- statement.append(", ");
- } else {
- statement.append(")");
- }
- }
-
- statement.append(" values (");
- for (int idx = 1; idx <= attributes.size(); idx++) {
- statement.append('?');
- if (idx < attributes.size()) {
- statement.append(", ");
- } else {
- statement.append(")");
- }
- }
-
- InsertCommandImpl cmd = new InsertCommandImpl(statement.toString(),
- (String[]) generatedKeys.toArray(new String[0]));
- Iterator params = parameters.iterator();
- for (int idx = 1; params.hasNext(); idx++) {
- Property property = (Property) params.next();
- ParameterImpl p = new ParameterImpl();
- p.setName(property.getName());
- p.setType(property.getType());
- p.setConverter(getConverter(table.getConverter(property.getName())));
- p.setIndex(idx);
- cmd.addParameter(p);
-
- }
- if (this.logger.isDebugEnabled()) {
- this.logger.debug(statement.toString());
- }
-
- return cmd;
-
- }
-
- private List getAttributeProperties(DataObject obj, MappingWrapper config) {
- List fields = new ArrayList();
- Iterator i = obj.getType().getProperties().iterator();
- while (i.hasNext()) {
- Property p = (Property) i.next();
- if (p.getType().isDataType()) {
- if (obj.isSet(p)) {
- fields.add(p);
- }
- } else {
- if (obj.isSet(p)) {
- Relationship relationship = config.getRelationshipByReference(p);
- if ((p.getOpposite() != null && p.getOpposite().isMany())
- || (hasState(config, relationship, obj))) {
- RelationshipWrapper r = new RelationshipWrapper(relationship);
- Iterator keys = r.getForeignKeys().iterator();
- while (keys.hasNext()) {
- String key = (String) keys.next();
- Property keyProp = obj.getType().getProperty(key);
- fields.add(keyProp);
- }
- }
-
- }
- }
- }
-
- return fields;
-
- }
-
- private boolean hasState(MappingWrapper config, Relationship rel, DataObject changedObject) {
-
- if (!rel.isMany()) {
- Table t = config.getTableByTypeName(changedObject.getType().getName());
- TableWrapper tw = new TableWrapper(t);
- RelationshipWrapper rw = new RelationshipWrapper(rel);
- if ((rel.getForeignKeyTable().equals(t.getTableName()))
- && (Collections.disjoint(tw.getPrimaryKeyProperties(), rw.getForeignKeys()))) {
- return true;
- }
- }
-
- return false;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/UpdateGenerator.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/UpdateGenerator.java
deleted file mode 100644
index e2c62fd6ee..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/generator/impl/UpdateGenerator.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.generator.impl;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.config.Column;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.config.wrapper.RelationshipWrapper;
-import org.apache.tuscany.das.rdb.config.wrapper.TableWrapper;
-import org.apache.tuscany.das.rdb.impl.ManagedParameterImpl;
-import org.apache.tuscany.das.rdb.impl.OptimisticWriteCommandImpl;
-import org.apache.tuscany.das.rdb.impl.ParameterImpl;
-import org.apache.tuscany.das.rdb.impl.UpdateCommandImpl;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.ChangeSummary;
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-import commonj.sdo.Type;
-
-public final class UpdateGenerator extends BaseGenerator {
-
- public static final UpdateGenerator INSTANCE = new UpdateGenerator();
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(UpdateGenerator.class);
-
- private UpdateGenerator() {
- super();
- }
-
- public UpdateCommandImpl getUpdateCommand(MappingWrapper mapping, DataObject changedObject, Table table) {
- List updatedProperties = new ArrayList();
- List managedProperties = new ArrayList();
- List whereClauseProperties = new ArrayList();
- Type type = changedObject.getType();
- TableWrapper t = new TableWrapper(table);
- StringBuffer statement = new StringBuffer("update ");
- statement.append(table.getTableName());
- statement.append(" set ");
-
- ChangeSummary summary = changedObject.getDataGraph().getChangeSummary();
- Iterator i = getChangedFields(mapping, summary, changedObject).iterator();
-
- while (i.hasNext()) {
- Property property = (Property) i.next();
- Column c = t.getColumnByPropertyName(property.getName());
- if ((c != null) && (c.isCollision() || c.isPrimaryKey())) {
- // get rid of comma if OCC or PK is last field
- if (!i.hasNext()) {
- statement.delete(statement.length() - 2, statement.length());
- }
- } else {
- updatedProperties.add(property);
- statement.append(c == null ? property.getName() : c.getColumnName());
- statement.append(" = ?");
- if (i.hasNext()) {
- statement.append(", ");
- }
- }
- }
-
- Column c = t.getManagedColumn();
- if (c != null) {
- statement.append(", ");
- statement.append(c.getColumnName());
- statement.append(" = ?");
- managedProperties.add(changedObject.getProperty(t.getManagedColumnPropertyName()));
- }
- statement.append(" where ");
-
- Iterator names = t.getPrimaryKeyNames().iterator();
- Iterator pkProperties = t.getPrimaryKeyProperties().iterator();
- while (names.hasNext() && pkProperties.hasNext()) {
- String name = (String) names.next();
- String property = (String) pkProperties.next();
- statement.append(name);
- statement.append(" = ?");
- if (names.hasNext() && pkProperties.hasNext()) {
- statement.append(" and ");
- }
- whereClauseProperties.add(type.getProperty(property));
- }
-
- if (t.getCollisionColumn() != null) {
- statement.append(" and ");
- statement.append(t.getCollisionColumn().getColumnName());
- statement.append(" = ?");
- whereClauseProperties.add(type.getProperty(t.getCollisionColumnPropertyName()));
- }
-
- UpdateCommandImpl updateCommand;
- if (t.getCollisionColumn() != null) {
- updateCommand = new OptimisticWriteCommandImpl(statement.toString());
- } else {
- updateCommand = new UpdateCommandImpl(statement.toString());
- }
-
- int idx = 1;
- Iterator params = updatedProperties.iterator();
- while (params.hasNext()) {
- Property p = (Property) params.next();
- updateCommand.addParameter(createParameter(t, p, idx++));
- }
-
- params = managedProperties.iterator();
- while (params.hasNext()) {
- Property p = (Property) params.next();
- updateCommand.addParameter(createManagedParameter(t, p, idx++));
- }
-
- params = whereClauseProperties.iterator();
- while (params.hasNext()) {
- Property p = (Property) params.next();
- updateCommand.addParameter(createParameter(t, p, idx++));
- }
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug(statement.toString());
- }
-
- return updateCommand;
- }
-
- private List getChangedFields(MappingWrapper mapping, ChangeSummary summary, DataObject obj) {
- List changes = new ArrayList();
- Iterator i = summary.getOldValues(obj).iterator();
- while (i.hasNext()) {
- ChangeSummary.Setting setting = (ChangeSummary.Setting) i.next();
- if (setting.getProperty().getType().isDataType()) {
- changes.add(setting.getProperty());
- } else {
- Property ref = setting.getProperty();
- if (!ref.isMany()) {
- RelationshipWrapper r = new RelationshipWrapper(mapping.getRelationshipByReference(ref));
-
- Iterator keys = r.getForeignKeys().iterator();
- while (keys.hasNext()) {
- String key = (String) keys.next();
- Property p = obj.getType().getProperty(key);
- changes.add(p);
- }
- }
-
- }
- }
- return changes;
- }
-
- private ParameterImpl createManagedParameter(TableWrapper table, Property property, int idx) {
- ParameterImpl param = new ManagedParameterImpl();
- param.setName(property.getName());
- param.setType(property.getType());
- param.setConverter(getConverter(table.getConverter(property.getName())));
- if (idx != -1) {
- param.setIndex(idx);
- }
-
- return param;
- }
-
- private ParameterImpl createParameter(TableWrapper table, Property property, int idx) {
- ParameterImpl param = new ParameterImpl();
- param.setName(property.getName());
- param.setType(property.getType());
- param.setConverter(getConverter(table.getConverter(property.getName())));
- if (idx != -1) {
- param.setIndex(idx);
- }
-
- return param;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DataObjectMaker.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DataObjectMaker.java
deleted file mode 100644
index d92da316ea..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DataObjectMaker.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.util.Iterator;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-import commonj.sdo.Type;
-import commonj.sdo.helper.DataFactory;
-
-public class DataObjectMaker {
-
- private final DataObject rootObject;
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(DataObjectMaker.class);
-
- public DataObjectMaker(DataObject root) {
- this.rootObject = root;
- }
-
- /**
- * @param tableData
- * @return
- */
- public DataObject createAndAddDataObject(TableData tableData, ResultMetadata resultMetadata) {
- // Get a Type from the package and create a standalone DataObject
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Looking for Type for " + tableData.getTableName());
- }
-
- Type tableClass = findTableTypeByPropertyName(tableData.getTableName());
-
- if (tableClass == null) {
- throw new RuntimeException("An SDO Type with name " + tableData.getTableName() + " was not found");
- }
-
- DataObject obj = DataFactory.INSTANCE.create(tableClass);
-
- // Now, check to see if the root data object has a containment reference
- // to this EClass. If so, add it to the graph. If not, it will be taken
- // care
- // of when we process relationships
-
- Iterator i = this.rootObject.getType().getProperties().iterator();
- while (i.hasNext()) {
- Property p = (Property) i.next();
-
- if (p.isContainment() && p.getType().equals(tableClass)) {
- if (p.isMany()) {
- rootObject.getList(p).add(obj);
- } else {
- this.rootObject.set(p, obj);
- }
- }
-
- }
-
- Iterator columnNames = resultMetadata.getPropertyNames(tableData.getTableName()).iterator();
- while (columnNames.hasNext()) {
- String propertyName = (String) columnNames.next();
-
- Property p = findProperty(obj.getType(), propertyName);
- if (p == null) {
- throw new RuntimeException("Type " + obj.getType().getName()
- + " does not contain a property named " + propertyName);
- }
-
- Object value = tableData.getColumnData(propertyName);
-
- obj.set(p, value);
- }
-
- return obj;
- }
-
- // temporary, ignoring case
- private Property findProperty(Type type, String columnName) {
- Iterator properties = type.getProperties().iterator();
- while (properties.hasNext()) {
- Property p = (Property) properties.next();
- if (columnName.equalsIgnoreCase(p.getName())) {
- return p;
- }
- }
- return null;
- }
-
- private Type findTableTypeByPropertyName(String tableName) {
- Iterator i = rootObject.getType().getProperties().iterator();
- while (i.hasNext()) {
- Property p = (Property) i.next();
- if (tableName.equals(p.getType().getName())) {
- return p.getType();
- }
- }
-
- return null;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DefaultConverter.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DefaultConverter.java
deleted file mode 100644
index a08f184b9a..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/DefaultConverter.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.sql.Blob;
-import java.sql.SQLException;
-
-import org.apache.tuscany.das.rdb.Converter;
-
-public class DefaultConverter implements Converter {
-
- public DefaultConverter() {
- super();
- }
-
- public Object getColumnValue(Object data) {
- return data;
- }
-
- public Object getPropertyValue(Object data) {
- // if (type.isInstance(data))
- // return data;
- //
- // if ( data == null )
- // return null;
- //
- // String name = type.getInstanceClass().getName();
- // if (name == "java.lang.Byte" || name == "byte") {
- // return new Byte(data.toString());
- // }
- //
- // else if (name == "java.lang.Double" || name == "double") {
- // return new Double(data.toString());
- // }
- //
- // else if (name == "java.lang.Float" || name == "float") {
- // return new Float(data.toString());
- // }
- //
- // else if (name == "java.lang.Integer" || name == "int") {
- // return new Integer(data.toString());
- // }
- //
- // else if (name == "java.lang.Long" || name == "long") {
- // return new Long(data.toString());
- // }
- //
- // else if (name == "java.lang.Short" || name == "short") {
- // return new Short(data.toString());
- // }
- //
- // else if (name == "java.lang.String") {
- // return String.valueOf(data.toString());
- // }
-
- if (data instanceof Blob) {
- Blob b = (Blob) data;
- try {
- return b.getBytes(1, (int) b.length());
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
-
- return data;
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/GraphBuilderMetadata.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/GraphBuilderMetadata.java
deleted file mode 100644
index 54afe95168..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/GraphBuilderMetadata.java
+++ /dev/null
@@ -1,247 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.Relationship;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.impl.ResultSetShape;
-import org.apache.tuscany.sdo.util.DataObjectUtil;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
-import commonj.sdo.Property;
-import commonj.sdo.Type;
-import commonj.sdo.helper.TypeHelper;
-
-/**
- */
-public class GraphBuilderMetadata {
-
- private MappingWrapper configWrapper;
-
- private final Collection resultSets = new ArrayList();
-
- private String typeURI;
-
- private Type rootType;
-
- private TypeHelper typeHelper = SDOUtil.createTypeHelper();
-
- public GraphBuilderMetadata(Collection results, Config model, ResultSetShape shape) throws SQLException {
- this.configWrapper = new MappingWrapper(model);
- if (model != null) {
- this.typeURI = model.getDataObjectModel();
- }
-
- Iterator i = results.iterator();
- while (i.hasNext()) {
- ResultSet rs = (ResultSet) i.next();
- ResultMetadata resultMetadata = new ResultMetadata(rs, configWrapper, shape);
- resultSets.add(resultMetadata);
- }
-
- }
-
- /**
- * Returns the collection of ResultMetadata objects
- */
- public Collection getResultMetadata() {
- return this.resultSets;
- }
-
- /**
- * Returns the set of defined relationships
- */
-
- public Collection getRelationships() {
- return configWrapper.getConfig().getRelationship();
- }
-
- /**
- * Returns the root Type
- */
- public Type getRootType() {
- if (this.rootType == null) {
- if (this.typeURI == null) {
- createDynamicTypes();
- } else {
- createDynamicRoot();
- }
- }
-
- return this.rootType;
- }
-
- public MappingWrapper getConfigWrapper() {
- return this.configWrapper;
- }
-
- /**
- * Creates a set of SDO Types based on the query results and supplied config information
- */
-
- private void createDynamicTypes() {
-
- DataObjectUtil.initRuntime();
-
- Type root = SDOUtil.createType(typeHelper, getDefaultURI(), "DataGraphRoot", false);
-
- Iterator iter = getResultMetadata().iterator();
- while (iter.hasNext()) {
-
- ResultMetadata resultMetadata = (ResultMetadata) iter.next();
-
- // Create a Type for each Table represented in the ResultSet
- Iterator names = resultMetadata.getAllTablePropertyNames().iterator();
- while (names.hasNext()) {
- String tableName = (String) names.next();
-
- if (root.getProperty(tableName) == null) {
- Type tableType = SDOUtil.createType(typeHelper, getDefaultURI(), tableName, false);
- Property property = SDOUtil.createProperty(root, tableName, tableType);
- SDOUtil.setMany(property, true);
- SDOUtil.setContainment(property, true);
- }
- }
-
- // TODO tablePropertyMap is temporary until Tuscany-203 is fixed
- Map tablePropertyMap = new HashMap();
-
- for (int i = 1; i <= resultMetadata.getResultSetSize(); i++) {
-
- Property ref = root.getProperty(resultMetadata.getTablePropertyName(i));
-
- if (ref == null) {
- throw new RuntimeException("Could not find table " + resultMetadata.getTablePropertyName(i)
- + " in the SDO model");
- }
-
- // TODO Temporary code to check to see if a property has already been added.
- // Replace when Tuscany-203 is fixed
- List addedProperties = (List) tablePropertyMap.get(ref.getName());
- if (addedProperties == null) {
- addedProperties = new ArrayList();
- tablePropertyMap.put(ref.getName(), addedProperties);
- }
-
-
-
- String columnName = resultMetadata.getColumnPropertyName(i);
-
- // TODO temporary check until Tuscany-203 is fixed
- if (!addedProperties.contains(columnName)) {
- addedProperties.add(columnName);
- Type atype = resultMetadata.getDataType(i);
-
- SDOUtil.createProperty(ref.getType(), columnName, atype);
-
- }
-
- }
- }
-
- MappingWrapper wrapper = getConfigWrapper();
- Iterator i = getRelationships().iterator();
- while (i.hasNext()) {
- Relationship r = (Relationship) i.next();
-
- String parentName = wrapper.getTableTypeName(r.getPrimaryKeyTable());
- String childName = wrapper.getTableTypeName(r.getForeignKeyTable());
-
- if (parentName == null) {
- throw new RuntimeException("The parent table (" + r.getPrimaryKeyTable()
- + ") in relationship " + r.getName()
- + " was not found in the mapping information.");
- } else if (childName == null) {
- throw new RuntimeException("The child table (" + r.getForeignKeyTable()
- + ") in relationship " + r.getName()
- + " was not found in the mapping information.");
- }
-
- Property parentProperty = root.getProperty(parentName);
- Property childProperty = root.getProperty(childName);
-
- if (parentProperty == null) {
- throw new RuntimeException("The parent table (" + parentName + ") in relationship "
- + r.getName() + " was not found.");
- } else if (childProperty == null) {
- throw new RuntimeException("The child table (" + childName + ") in relationship "
- + r.getName() + " was not found.");
- }
-
- Type parent = parentProperty.getType();
- Type child = childProperty.getType();
-
- Property parentProp = SDOUtil.createProperty(parent, r.getName(), child);
- Property childProp = SDOUtil.createProperty(child, r.getName() + "_opposite", parent);
- SDOUtil.setOpposite(parentProp, childProp);
- SDOUtil.setOpposite(childProp, parentProp);
- SDOUtil.setMany(parentProp, r.isMany());
- }
-
- this.rootType = root;
- }
-
- private String getDefaultURI() {
- return "http:///org.apache.tuscany.das.rdb/das";
- }
-
- /**
- * Create a dynamic root Type to act as a container Type for a set of generated Types
- *
- */
- private void createDynamicRoot() {
- Type root = SDOUtil.createType(typeHelper, getDefaultURI() + "/DataGraphRoot", "DataGraphRoot", false);
-
- List types = SDOUtil.getTypes(typeHelper, typeURI);
- if (types == null) {
- throw new RuntimeException("SDO Types have not been registered for URI " + typeURI);
- }
-
- Iterator i = types.iterator();
- while (i.hasNext()) {
- Type type = (Type) i.next();
- Property property = SDOUtil.createProperty(root, type.getName(), type);
- SDOUtil.setContainment(property, true);
- SDOUtil.setMany(property, true);
- }
- this.rootType = root;
- }
-
- public List getDefinedTypes() {
- if (this.typeURI == null) {
- return SDOUtil.getTypes(typeHelper, getDefaultURI());
- }
-
- List types = SDOUtil.getTypes(typeHelper, typeURI);
- types.add(rootType);
- return types;
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/MultiTableRegistry.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/MultiTableRegistry.java
deleted file mode 100644
index f7de59f1a1..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/MultiTableRegistry.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.DataObject;
-
-/**
- *
- * Used to store and look up table objects based on primary key This could be a lot more
- * efficient if we could use LinkedHashMap from JDK 1.4
- */
-public class MultiTableRegistry implements TableRegistry {
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(MultiTableRegistry.class);
-
- private Map tableNameMap;
-
- private Map tableValueMap;
-
- public MultiTableRegistry() {
- tableNameMap = new HashMap();
- tableValueMap = new HashMap();
- }
-
- /**
- * Get the table with the specified name and primary key
- *
- * @param tableName
- * @param primaryKey
- * @return EDataObject
- */
- public DataObject get(String tableName, List primaryKey) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Looking for table " + tableName + " with PK " + primaryKey);
- this.logger.debug("\tReturning " + getPkMap(tableName).get(primaryKey));
- }
- return (DataObject) getPkMap(tableName).get(primaryKey);
- }
-
- /**
- * Add the table with the specified name and primary key
- *
- * @param tableName
- * @param primaryKey
- * @param value
- */
- public void put(String tableName, List primaryKey, DataObject value) {
- if (getPkMap(tableName).put(primaryKey, value) == null) {
- getCreateValueList(tableName).add(value);
- }
- }
-
- /**
- * Get the HashMap that contains the primary key to table object mappings.
- *
- * @param tableName
- * @return HashMap
- */
- private Map getPkMap(String tableName) {
- Map pkMap = (HashMap) tableNameMap.get(tableName);
- if (pkMap == null) {
- pkMap = new HashMap();
- tableNameMap.put(tableName, pkMap);
- }
- return pkMap;
- }
-
- private List getCreateValueList(String tableName) {
- List values = (List) tableValueMap.get(tableName);
- if (values == null) {
- values = new ArrayList();
- tableValueMap.put(tableName, values);
- }
- return values;
- }
-
- public boolean contains(String tableName, List primaryKey) {
- return get(tableName, primaryKey) == null ? false : true;
-
- }
-
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultMetadata.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultMetadata.java
deleted file mode 100644
index 09e1a98d9d..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultMetadata.java
+++ /dev/null
@@ -1,285 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.tuscany.das.rdb.Converter;
-import org.apache.tuscany.das.rdb.config.Column;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.config.wrapper.TableWrapper;
-import org.apache.tuscany.das.rdb.impl.ResultSetShape;
-
-import commonj.sdo.Type;
-
-public class ResultMetadata {
-
- private Map tableToPropertyMap = new HashMap();
-
- private List typeNames = new ArrayList();
-
- private List propertyNames = new ArrayList();
-
- private final ResultSet resultSet;
-
- private final ResultSetShape resultSetShape;
-
- private final MappingWrapper configWrapper;
-
- private Converter[] converters;
-
- public ResultMetadata(ResultSet rs, MappingWrapper cfgWrapper, ResultSetShape shape) throws SQLException {
-
- this.resultSet = rs;
- this.configWrapper = cfgWrapper;
-
- if (shape == null) {
- this.resultSetShape = new ResultSetShape(rs.getMetaData());
- } else {
- this.resultSetShape = shape;
- }
-
- this.converters = new Converter[resultSetShape.getColumnCount()];
-
- Map impliedRelationships = new HashMap();
- for (int i = 1; i <= resultSetShape.getColumnCount(); i++) {
- String tableName = resultSetShape.getTableName(i);
-
- String typeName = configWrapper.getTableTypeName(tableName);
- String columnName = resultSetShape.getColumnName(i);
-
- if (columnName.contains("_ID")) {
- impliedRelationships.put(columnName, tableName);
- } else if (columnName.equalsIgnoreCase("ID")) {
- configWrapper.addImpliedPrimaryKey(tableName, columnName);
- }
-
- String propertyName = configWrapper.getColumnPropertyName(tableName, columnName);
- String converterName = configWrapper.getConverter(tableName, resultSetShape.getColumnName(i));
-
- converters[i - 1] = loadConverter(converterName);
-
- typeNames.add(typeName);
- propertyNames.add(propertyName);
-
- Collection properties = (Collection) tableToPropertyMap.get(typeName);
- if (properties == null) {
- properties = new ArrayList();
- }
- properties.add(propertyName);
- tableToPropertyMap.put(typeName, properties);
- }
-
- Iterator i = impliedRelationships.keySet().iterator();
- while (i.hasNext()) {
- String columnName = (String) i.next();
- String pkTableName = columnName.substring(0, columnName.indexOf("_ID"));
- String fkTableName = (String) impliedRelationships.get(columnName);
- List pkTableProperties = (List) tableToPropertyMap.get(pkTableName);
- if ((pkTableProperties != null) && (pkTableProperties.contains("ID"))) {
- configWrapper.addImpliedRelationship(pkTableName, fkTableName, columnName);
- }
- }
- // Add any tables defined in the model but not included in the ResultSet
- // to the list of propertyNames
- Config model = configWrapper.getConfig();
- if (model != null) {
- Iterator tablesFromModel = model.getTable().iterator();
- while (tablesFromModel.hasNext()) {
- TableWrapper t = new TableWrapper((Table) tablesFromModel.next());
- if (tableToPropertyMap.get(t.getTypeName()) == null) {
- tableToPropertyMap.put(t.getTypeName(), Collections.EMPTY_LIST);
- }
- }
- }
-
- }
-
- private Converter loadConverter(String converterName) {
- if (converterName != null) {
-
- try {
- Class converterClazz = Class.forName(converterName, true,
- Thread.currentThread().getContextClassLoader());
- if (null != converterClazz) {
- return (Converter) converterClazz.newInstance();
- }
-
- converterClazz = Class.forName(converterName);
- if (converterClazz != null) {
- return (Converter) converterClazz.newInstance();
- }
- } catch (ClassNotFoundException ex) {
- throw new RuntimeException(ex);
- } catch (IllegalAccessException ex) {
- throw new RuntimeException(ex);
- } catch (InstantiationException ex) {
- throw new RuntimeException(ex);
- }
- }
- return new DefaultConverter();
- }
-
- public String getColumnPropertyName(int i) {
- return (String) propertyNames.get(i - 1);
- }
-
- public String getDatabaseColumnName(int i) {
- return resultSetShape.getColumnName(i);
- }
-
- public String getTableName(String columnName) {
- return (String) typeNames.get(propertyNames.indexOf(columnName));
- }
-
- public int getTableSize(String tableName) {
- return ((Collection) tableToPropertyMap.get(tableName)).size();
- }
-
- public Type getDataType(String columnName) {
- return resultSetShape.getColumnType(propertyNames.indexOf(columnName));
- }
-
- public String getTablePropertyName(int i) {
- return (String) typeNames.get(i - 1);
- }
-
- public Collection getAllTablePropertyNames() {
- return tableToPropertyMap.keySet();
- }
-
- public String toString() {
-
- StringBuffer result = new StringBuffer(super.toString());
- result.append(" (Table Names: ");
- Iterator i = typeNames.iterator();
- while (i.hasNext()) {
- String tableName = (String) i.next();
- result.append(' ');
- result.append(tableName);
- result.append(',');
- }
-
- result.append(" columnNames: ");
-
- i = propertyNames.iterator();
- while (i.hasNext()) {
- String columnName = (String) i.next();
- result.append(' ');
- result.append(columnName);
- result.append(',');
- }
-
- result.append(" mappingModel: ");
- result.append(this.configWrapper.getConfig());
-
- result.append(" resultSet: ");
- result.append(resultSet);
-
- result.append(" resultSetSize: ");
- result.append(resultSetShape.getColumnCount());
- result.append(')');
- return result.toString();
-
- }
-
- /**
- * @return
- */
- public int getNumberOfTables() {
- return tableToPropertyMap.keySet().size();
- }
-
- /**
- * Return whether the column at the given position is part of a primary key.
- * If we don't have this information, we assume every column is a primary
- * key. This results in uniqueness checks using all columns in a table.
- *
- * @param i
- * @return
- */
- public boolean isPKColumn(int i) {
-
- Table t = configWrapper.getTableByTypeName(getTablePropertyName(i));
- if (t == null) {
- return true;
- }
-
- // If no Columns have been defined, consider every column to be part of
- // the PK
- if (t.getColumn().isEmpty()) {
- return true;
- }
-
- Column c = configWrapper.getColumn(t, getDatabaseColumnName(i));
-
- if (c == null) {
- return false;
- }
-
- if (c.isPrimaryKey()) {
- return true;
- }
-
- return false;
- }
-
- /**
- * @param i
- * @return
- */
- public Type getDataType(int i) {
- return resultSetShape.getColumnType(i);
- }
-
- /**
- * @param tableName
- * @return
- */
- public Collection getPropertyNames(String tableName) {
- return (Collection) tableToPropertyMap.get(tableName);
- }
-
- public ResultSet getResultSet() {
- return this.resultSet;
- }
-
- public int getResultSetSize() {
- return resultSetShape.getColumnCount();
- }
-
- public boolean isRecursive() {
- return configWrapper.hasRecursiveRelationships();
- }
-
- public Converter getConverter(int i) {
- return converters[i - 1];
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultSetProcessor.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultSetProcessor.java
deleted file mode 100644
index 74a4627fa1..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultSetProcessor.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.Iterator;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.DataObject;
-
-/**
- *
- * A ResultSetProcessor is used to transform the data in a ResultSet into a set of inter-related EDataObjects.
- */
-public class ResultSetProcessor {
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(ResultSetProcessor.class);
-
- private TableRegistry registry;
-
- private GraphBuilderMetadata metadata;
-
- private final DataObjectMaker doMaker;
-
- public ResultSetProcessor(DataObject g, GraphBuilderMetadata gbmd) {
-
- this.metadata = gbmd;
- if (metadata.getRelationships().size() == 0) {
- registry = new SingleTableRegistry();
- } else {
- registry = new MultiTableRegistry();
- }
-
- doMaker = new DataObjectMaker(g);
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug(metadata);
- }
-
- }
-
- // private void debug(Object output) {
- // DebugUtil.debugln(getClass(), debug, output);
- // }
-
- /**
- * Process the ResultSet. For each row in the ResultSet, a
- *
- * @link ResultSetRow object will be created to represent the row as a set of EDataObjects. Then,
- * the relevant relationships will be constructed
- * between each object in the
- * @link ResultSetRow.
- *
- * @param rs
- * The ResultSet
- */
- public void processResults(int start, int end) throws SQLException {
-
- Iterator i = metadata.getResultMetadata().iterator();
- while (i.hasNext()) {
- ResultMetadata resultMetadata = (ResultMetadata) i.next();
- ResultSet results = resultMetadata.getResultSet();
-
- processResultSet(results, resultMetadata, start, end);
-
- // TODO These statements HAVE to be closed or we will have major problems
- // results.getStatement().close();
- results.close();
- }
-
- }
-
- private void processResultSet(ResultSet rs, ResultMetadata rsMetadata, int start, int end) throws SQLException {
-
- if (rs.getType() == ResultSet.TYPE_FORWARD_ONLY) {
- while (rs.next() && start < end) {
- ResultSetRow rsr = new ResultSetRow(rs, rsMetadata);
- addRowToGraph(rsr, rsMetadata);
- ++start;
- }
- } else {
- while (rs.absolute(start) && start < end) {
- ResultSetRow rsr = new ResultSetRow(rs, rsMetadata);
- addRowToGraph(rsr, rsMetadata);
- ++start;
- }
- }
- }
-
- /**
- * @param row
- * @param resultMetadata
- */
- private void addRowToGraph(ResultSetRow row, ResultMetadata resultMetadata) {
- RowObjects tableObjects = new RowObjects(metadata, registry);
- Iterator tables = row.getAllTableData().iterator();
- while (tables.hasNext()) {
- TableData rawDataFromRow = (TableData) tables.next();
-
- if (!rawDataFromRow.hasValidPrimaryKey()) {
- continue;
- }
-
- String tableName = rawDataFromRow.getTableName();
- DataObject tableObject = registry.get(tableName, rawDataFromRow.getPrimaryKeyValues());
- if (tableObject == null) {
- tableObject = doMaker.createAndAddDataObject(rawDataFromRow, resultMetadata);
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Putting table " + tableName + " with PK "
- + rawDataFromRow.getPrimaryKeyValues() + " into registry");
- }
-
- registry.put(tableName, rawDataFromRow.getPrimaryKeyValues(), tableObject);
- }
- tableObjects.put(tableName, tableObject);
- }
-
- tableObjects.processRelationships();
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultSetRow.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultSetRow.java
deleted file mode 100644
index 12a3e4b47f..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/ResultSetRow.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-/**
- *
- * A ResultSetRow is used to transform a single row of a ResultSet into a set of EDataObjects.
- */
-public class ResultSetRow {
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(ResultSetRow.class);
-
- private final ResultMetadata metadata;
-
- private Map tableMap = new HashMap();
-
- private List allTableData;
-
- /**
- * Method ResultSetRow.
- *
- * @param rs
- * A ResultSet positioned on the desired row
- * @param ePackage
- * The package used to create EDataObjects
- */
- public ResultSetRow(ResultSet rs, ResultMetadata m) throws SQLException {
- this.metadata = m;
- if (m.isRecursive()) {
- processRecursiveRow(rs);
- } else {
- processRow(rs);
- }
- }
-
- /**
- * Processes a single row in the ResultSet Method processRow.
- *
- * @param rs
- */
- private void processRow(ResultSet rs) throws SQLException {
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("");
- }
- for (int i = 1; i <= metadata.getResultSetSize(); i++) {
- Object data = getObject(rs, i);
-
- TableData table = getRawData(metadata.getTablePropertyName(i));
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Adding column: " + metadata.getColumnPropertyName(i) + "\tValue: "
- + data + "\tTable: "
- + metadata.getTablePropertyName(i));
- }
- table.addData(metadata.getColumnPropertyName(i), metadata.isPKColumn(i), data);
- }
-
- }
-
- public void processRecursiveRow(ResultSet rs) throws SQLException {
- this.allTableData = new ArrayList();
- int i = 1;
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("");
- }
-
- while (i <= metadata.getResultSetSize()) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("");
- }
- TableData table = new TableData(metadata.getTablePropertyName(i));
- this.allTableData.add(table);
-
- while ((i <= metadata.getResultSetSize()) && (metadata.isPKColumn(i))) {
- Object data = getObject(rs, i);
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Adding column: " + metadata.getColumnPropertyName(i)
- + "\tValue: " + data + "\tTable: "
- + metadata.getTablePropertyName(i));
- }
- table.addData(metadata.getColumnPropertyName(i), true, data);
- i++;
- }
-
- while ((i <= metadata.getResultSetSize()) && (!metadata.isPKColumn(i))) {
- Object data = getObject(rs, i);
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Adding column: " + metadata.getColumnPropertyName(i)
- + "\tValue: " + data + "\tTable: "
- + metadata.getTablePropertyName(i));
- }
- table.addData(metadata.getColumnPropertyName(i), false, data);
- i++;
- }
- }
- }
-
- /**
- * @param rs
- * @param metadata
- * @param i
- * @return
- */
- private Object getObject(ResultSet rs, int i) throws SQLException {
-
- Object data = rs.getObject(i);
-
- if (rs.wasNull()) {
- return null;
- }
-
- return metadata.getConverter(i).getPropertyValue(data);
-
- }
-
- /**
- * Returns a HashMap that holds data for the specified table
- *
- * @param tableName
- * The name of the table
- * @return HashMap
- */
- public TableData getTable(String tableName) {
- return (TableData) tableMap.get(tableName);
- }
-
- /**
- * Returns a HashMap that holds data for the specified table If the HashMap
- * doesn't exist, it will be created. This is used internally to build
- * the ResultSetRow, whereas getTable is used externally to retrieve existing table data.
- *
- * @param tableName
- * The name of the table
- * @return HashMap
- */
- private TableData getRawData(String tableName) {
-
- TableData table = (TableData) tableMap.get(tableName);
-
- if (table == null) {
- table = new TableData(tableName);
- tableMap.put(tableName, table);
- }
-
- return table;
- }
-
- public List getAllTableData() {
- if (this.allTableData == null) {
- this.allTableData = new ArrayList();
- this.allTableData.addAll(tableMap.values());
- }
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug(allTableData);
- }
-
- return this.allTableData;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/RowObjects.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/RowObjects.java
deleted file mode 100644
index 64809f7996..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/RowObjects.java
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.config.KeyPair;
-import org.apache.tuscany.das.rdb.config.Relationship;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-
-public class RowObjects {
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(RowObjects.class);
-
- private Map objectsByTableName;
-
- private List tableObjects;
-
- private final GraphBuilderMetadata metadata;
-
- private final TableRegistry registry;
-
- public RowObjects(GraphBuilderMetadata metadata, TableRegistry registry) {
- objectsByTableName = new HashMap();
- tableObjects = new ArrayList();
- this.metadata = metadata;
- this.registry = registry;
- }
-
- public void put(String key, DataObject value) {
- objectsByTableName.put(key, value);
- tableObjects.add(value);
- }
-
- public DataObject get(String tablePropertyName) {
- return (DataObject) objectsByTableName.get(tablePropertyName);
- }
-
- void processRelationships() {
- MappingWrapper wrapper = metadata.getConfigWrapper();
- if (wrapper.hasRecursiveRelationships()) {
- processRecursiveRelationships(wrapper);
- return;
- }
-
- Iterator i = metadata.getRelationships().iterator();
- while (i.hasNext()) {
- Relationship r = (Relationship) i.next();
-
- DataObject parentTable = get(wrapper.getTableTypeName(r.getPrimaryKeyTable()));
- DataObject childTable = get(wrapper.getTableTypeName(r.getForeignKeyTable()));
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Parent table: " + parentTable);
- this.logger.debug("Child table: " + childTable);
- }
- if ((parentTable == null) || (childTable == null)) {
- continue;
- }
-
- Property p = parentTable.getType().getProperty(r.getName());
- setOrAdd(parentTable, childTable, p);
-
- }
- }
-
- private void processRecursiveRelationships(MappingWrapper wrapper) {
- Iterator i = tableObjects.iterator();
- while (i.hasNext()) {
- DataObject table = (DataObject) i.next();
-
- Iterator relationships = wrapper.getRelationshipsByChildTable(table.getType().getName()).iterator();
- while (relationships.hasNext()) {
- Relationship r = (Relationship) relationships.next();
-
- DataObject parentTable = findParentTable(table, r, wrapper);
-
- if (parentTable == null) {
- continue;
- }
-
- Property p = parentTable.getType().getProperty(r.getName());
- setOrAdd(parentTable, table, p);
- }
-
- }
- }
-
- private void setOrAdd(DataObject parent, DataObject child, Property p) {
- if (p.isMany()) {
- parent.getList(p).add(child);
- } else {
- parent.set(p, child);
- }
- }
-
- private DataObject findParentTable(DataObject childTable, Relationship r, MappingWrapper wrapper) {
-
- List fkValue = new ArrayList();
- Iterator keyPairs = r.getKeyPair().iterator();
- while (keyPairs.hasNext()) {
- KeyPair pair = (KeyPair) keyPairs.next();
- String childProperty = wrapper.getColumnPropertyName(r.getPrimaryKeyTable(), pair.getForeignKeyColumn());
-
- Property p = childTable.getType().getProperty(childProperty);
- fkValue.add(childTable.get(p));
- }
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Trying to find parent of " + r.getForeignKeyTable() + " with FK " + fkValue);
- }
-
- DataObject parentTable = registry.get(r.getPrimaryKeyTable(), fkValue);
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Parent table from registry: " + parentTable);
- }
-
- return parentTable;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/SingleTableRegistry.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/SingleTableRegistry.java
deleted file mode 100644
index 72040e9834..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/SingleTableRegistry.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.util.List;
-
-import commonj.sdo.DataObject;
-
-/**
- */
-public class SingleTableRegistry implements TableRegistry {
-
-
- public SingleTableRegistry() {
- // Empty Constructor
- }
-
- public DataObject get(String tableName, List primaryKey) {
- return null;
- }
-
-
- public void put(String tableName, List primaryKey, DataObject value) {
- // do nothing
-
- }
-
- public boolean contains(String name, List list) {
- return false;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/TableData.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/TableData.java
deleted file mode 100644
index 35bfb591bd..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/TableData.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-/**
- *
- */
-public class TableData {
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(TableData.class);
-
- private Map columnData = new HashMap();
-
- private List primaryKey = new ArrayList();
-
- private final String name;
-
- private boolean hasValidPrimaryKey = true;
-
- public TableData(String tableName) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Creating TableData for table " + tableName);
- }
-
- this.name = tableName;
- }
-
- public void addData(String columnName, boolean isPrimaryKeyColumn, Object data) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Adding column " + columnName + " with value " + data);
- }
-
- columnData.put(columnName, data);
- if (isPrimaryKeyColumn) {
- if (data == null) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Column " + columnName + " is a primary key column and is null");
- }
- hasValidPrimaryKey = false;
- }
- primaryKey.add(data);
- }
- }
-
- public Object getColumnData(String columnName) {
- return columnData.get(columnName);
- }
-
- public String getTableName() {
- return this.name;
- }
-
- /**
- * @return
- */
- public List getPrimaryKeyValues() {
- return primaryKey;
- }
-
- public boolean hasValidPrimaryKey() {
- return hasValidPrimaryKey;
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/TableRegistry.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/TableRegistry.java
deleted file mode 100644
index 60759c90f4..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/impl/TableRegistry.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.impl;
-
-import java.util.List;
-
-import commonj.sdo.DataObject;
-
-/**
- */
-public interface TableRegistry {
- /**
- * Get the table with the specified name and primary key
- *
- * @param tableName
- * @param primaryKey
- * @return DataObject
- */
- DataObject get(String tableName, List primaryKey);
-
- /**
- * Add the table with the specified name and primary key
- *
- * @param tableName
- * @param primaryKey
- * @param value
- */
- void put(String tableName, List primaryKey, DataObject value);
-
- boolean contains(String name, List list);
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/schema/ResultSetTypeMap.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/schema/ResultSetTypeMap.java
deleted file mode 100644
index 1fb45243d0..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/graphbuilder/schema/ResultSetTypeMap.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.graphbuilder.schema;
-
-import java.sql.Types;
-
-import org.apache.tuscany.sdo.SDOPackage;
-
-import commonj.sdo.Type;
-import commonj.sdo.helper.TypeHelper;
-
-/**
- */
-public class ResultSetTypeMap {
-
- public static final ResultSetTypeMap INSTANCE = new ResultSetTypeMap();
-
- /**
- * Constructor for ResultSetTypeMap.
- */
- protected ResultSetTypeMap() {
- // Empty Constructor
- }
-
- /**
- * These mappings taken primarily from "JDBC API and Tutorial and Reference" by Fisher, Ellis and Bruce.
- *
- * @param type
- * @param isNullable
- * @return
- */
- public Type getEDataType(int type, boolean isNullable) {
-
- TypeHelper helper = TypeHelper.INSTANCE;
- SDOPackage.eINSTANCE.eClass();
- switch (type) {
-
- case Types.CHAR:
- case Types.VARCHAR:
- case Types.LONGVARCHAR:
- return helper.getType("commonj.sdo", "String");
-
- case Types.NUMERIC:
- case Types.DECIMAL:
- return helper.getType("commonj.sdo", "Decimal");
-
- case Types.BIT:
- case Types.BOOLEAN:
- if (isNullable) {
- return helper.getType("commonj.sdo", "Boolean");
- }
- return helper.getType("commonj.sdo", "boolean");
-
-
- case Types.TINYINT:
- case Types.SMALLINT:
- case Types.INTEGER:
- if (isNullable) {
- return helper.getType("commonj.sdo", "IntObject");
- }
-
- return helper.getType("commonj.sdo", "Int");
-
-
- case Types.BIGINT:
- if (isNullable) {
- return helper.getType("commonj.sdo", "Long");
- }
- return helper.getType("commonj.sdo", "long");
-
- case Types.REAL:
- if (isNullable) {
- return helper.getType("commonj.sdo", "Float");
- }
- return helper.getType("commonj.sdo", "float");
-
-
- case Types.FLOAT:
- case Types.DOUBLE:
- if (isNullable) {
- return helper.getType("commonj.sdo", "Double");
- }
- return helper.getType("commonj.sdo", "double");
-
-
- case Types.BINARY:
- case Types.VARBINARY:
- case Types.LONGVARBINARY:
- return helper.getType("commonj.sdo", "ByteArray");
-
- case Types.DATE:
- case Types.TIME:
- case Types.TIMESTAMP:
- return helper.getType("commonj.sdo", "Date");
-
- case Types.CLOB:
- return helper.getType("commonj.sdo", "Clob");
-
- case Types.BLOB:
- return helper.getType("commonj.sdo", "Blob");
-
- case Types.ARRAY:
- return helper.getType("commonj.sdo", "Array");
-
- case Types.DISTINCT:
- case Types.STRUCT:
- case Types.REF:
- case Types.DATALINK:
- case Types.JAVA_OBJECT:
- return helper.getType("commonj.sdo", "Object");
-
- default:
- return helper.getType("commonj.sdo", "Object");
- }
-
- }
-
- public Type getType(int columnType, boolean b) {
- return getEDataType(columnType, b);
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ApplyChangesCommandImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ApplyChangesCommandImpl.java
deleted file mode 100644
index c3b4617e7f..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ApplyChangesCommandImpl.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.Connection;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.DataObject;
-
-/**
- *
- */
-public class ApplyChangesCommandImpl extends BaseCommandImpl {
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(ApplyChangesCommandImpl.class);
-
- private ChangeSummarizer summarizer = new ChangeSummarizer();
-
- public ApplyChangesCommandImpl(MappingWrapper config, Connection connection) {
- this.configWrapper = config;
- if (connection != null) {
- setConnection(connection, config.getConfig());
- }
-
- }
-
- public void setConnection(ConnectionImpl connection) {
- summarizer.setConnection(connection);
- }
-
- public void execute(DataObject root) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Executing ApplyChangesCmd");
- }
-
- if (summarizer.getConnection() == null) {
- throw new RuntimeException("A connection must be provided");
- }
-
- if (!root.equals(root.getDataGraph().getRootObject())) {
- throw new RuntimeException("'root' argument must be the root of the datagraph");
- }
-
- summarizer.setMapping(configWrapper);
-
- Changes changes = summarizer.loadChanges(root);
-
- boolean success = false;
- try {
- changes.execute();
- success = true;
- } finally {
- if (success) {
- summarizer.getConnection().cleanUp();
- } else {
- summarizer.getConnection().errorCleanUp();
- }
- }
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/BaseCommandImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/BaseCommandImpl.java
deleted file mode 100644
index d1b990d421..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/BaseCommandImpl.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-
-public abstract class BaseCommandImpl {
-
- protected MappingWrapper configWrapper = new MappingWrapper();
-
- public void setConnection(Connection connection) {
- setConnection(new ConnectionImpl(connection));
- }
-
- public void setConnection(Connection connection, Config config) {
- boolean managed = true;
- if (config != null && config.getConnectionInfo() != null) {
- managed = config.getConnectionInfo().isManagedtx();
- }
- setConnection(connection, managed);
- }
-
- public void setConnection(Connection connection, boolean manageTransaction) {
- ConnectionImpl c = new ConnectionImpl(connection);
- c.setManageTransactions(manageTransaction);
- setConnection(c);
- }
-
- public abstract void setConnection(ConnectionImpl c);
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeFactory.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeFactory.java
deleted file mode 100644
index c6628d3456..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeFactory.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.config.Create;
-import org.apache.tuscany.das.rdb.config.Delete;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.Update;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.config.wrapper.TableWrapper;
-import org.apache.tuscany.das.rdb.generator.impl.DeleteGenerator;
-import org.apache.tuscany.das.rdb.generator.impl.InsertGenerator;
-import org.apache.tuscany.das.rdb.generator.impl.UpdateGenerator;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.DataObject;
-
-public class ChangeFactory {
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(ChangeFactory.class);
-
- private InsertCommandImpl createCommand;
-
- private UpdateCommandImpl updateCommand;
-
- private DeleteCommandImpl deleteCommand;
-
- private final MappingWrapper mapping;
-
- private final ConnectionImpl connection;
-
- public ChangeFactory(MappingWrapper mapping, ConnectionImpl connection) {
- this.mapping = mapping;
- this.connection = connection;
- }
-
- public void setCreateCommand(InsertCommandImpl cmd) {
- createCommand = cmd;
- }
-
- public void setUpdateCommand(UpdateCommandImpl cmd) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Setting Update Command to " + cmd);
- }
-
- updateCommand = cmd;
- }
-
- public void setDeleteCommand(DeleteCommandImpl cmd) {
- deleteCommand = cmd;
- }
-
- ChangeOperation createUpdateOperation(DataObject changedObject, String propagatedID) {
- return new UpdateOperation(getUpdateCommand(changedObject), changedObject, propagatedID);
- }
-
- ChangeOperation createUpdateOperation(DataObject changedObject) {
- return createUpdateOperation(changedObject, null);
- }
-
- ChangeOperation createDeleteOperation(DataObject changedObject) {
- return new DeleteOperation(getDeleteCommand(changedObject), changedObject);
- }
-
- ChangeOperation createInsertOperation(DataObject changedObject, String propagatedID) {
- return new CreateOperation(getCreateCommand(changedObject), changedObject, propagatedID);
- }
-
- private InsertCommandImpl getCreateCommand(DataObject changedObject) {
-
- if (createCommand == null) {
- Table table = mapping.getTableByTypeName(changedObject.getType().getName());
- if (table == null) {
- if (changedObject.getType().getProperty("ID") != null) {
- // If the table is not defined in the config, assume it has a primary key of "ID"
- mapping.addPrimaryKey(changedObject.getType().getName() + ".ID");
- table = mapping.getTableByTypeName(changedObject.getType().getName());
- } else {
- throw new RuntimeException("Table " + changedObject.getType().getName()
- + " was changed in the DataGraph but is not present in the Config");
- }
- }
-
- Create create = table.getCreate();
-
- if (create == null) {
- createCommand = InsertGenerator.INSTANCE.getInsertCommand(mapping, changedObject, table);
- } else {
- createCommand = new InsertCommandImpl(create);
- }
- createCommand.setConnection(connection);
- createCommand.configWrapper = mapping;
- }
- return createCommand;
- }
-
- private DeleteCommandImpl getDeleteCommand(DataObject changedObject) {
-
- if (deleteCommand == null) {
- Table table = mapping.getTableByTypeName(changedObject.getType().getName());
- if (table == null) {
- if (changedObject.getType().getProperty("ID") != null) {
- // If the table is not defined in the config, assume it has a primary key of "ID"
- mapping.addPrimaryKey(changedObject.getType().getName() + ".ID");
- table = mapping.getTableByTypeName(changedObject.getType().getName());
- } else {
- throw new RuntimeException("Table " + changedObject.getType().getName()
- + " was changed in the DataGraph but is not present in the Config");
- }
- }
-
- Delete delete = table.getDelete();
-
- if (delete == null) {
- deleteCommand = DeleteGenerator.INSTANCE.getDeleteCommand(table);
- } else {
- deleteCommand = new DeleteCommandImpl(delete);
- }
- deleteCommand.setConnection(connection);
- deleteCommand.configWrapper = mapping;
- }
- return deleteCommand;
- }
-
- private UpdateCommandImpl getUpdateCommand(DataObject changedObject) {
-
- if (updateCommand == null) {
- Table table = mapping.getTableByTypeName(changedObject.getType().getName());
- if (table == null) {
- if (changedObject.getType().getProperty("ID") != null) {
- mapping.addPrimaryKey(changedObject.getType().getName() + ".ID");
- table = mapping.getTableByTypeName(changedObject.getType().getName());
- } else {
- throw new RuntimeException("Table " + changedObject.getType().getName()
- + " was changed in the DataGraph but is not present in the Config");
- }
- }
- Update update = table.getUpdate();
- if (update == null) {
- updateCommand = UpdateGenerator.INSTANCE.getUpdateCommand(mapping, changedObject, table);
- } else {
- TableWrapper t = new TableWrapper(table);
- if (t.getCollisionColumn() != null) {
- updateCommand = new OptimisticWriteCommandImpl(update);
- } else {
- updateCommand = new UpdateCommandImpl(update);
- }
- }
- updateCommand.setConnection(connection);
- updateCommand.configWrapper = mapping;
- }
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Returning updateCommand: " + updateCommand);
- }
-
- return updateCommand;
- }
-
- public MappingWrapper getConfig() {
- return this.mapping;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeOperation.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeOperation.java
deleted file mode 100644
index ca44591213..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeOperation.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.util.Iterator;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.DataObject;
-
-/**
- */
-public abstract class ChangeOperation {
- protected DatabaseObject dObject;
-
- protected String propagatedID;
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(ChangeOperation.class);
-
- private final WriteCommandImpl writeCommand;
-
- private boolean isInsert;
-
-
- public ChangeOperation(DeleteCommandImpl command) {
- writeCommand = command;
- }
-
- public ChangeOperation(InsertCommandImpl command, DataObject changedObject) {
- writeCommand = command;
- dObject = new DatabaseObject(command.getMappingModel(), changedObject);
- this.isInsert = true;
- }
-
- public ChangeOperation(UpdateCommandImpl command, DataObject changedObject) {
- writeCommand = command;
- dObject = new DatabaseObject(command.getMappingModel(), changedObject);
- }
-
- public void execute() {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Executing change operation");
- }
-
- Iterator i = writeCommand.getParameters().iterator();
- while (i.hasNext()) {
- ParameterImpl parm = (ParameterImpl) i.next();
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("setting " + parm.getName() + " to " + dObject.get(parm.getName()));
- }
-
- parm.setValue(dObject.get(parm.getName()));
- }
-
- writeCommand.execute();
-
- if (isInsert && (propagatedID != null)) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Propagating key " + propagatedID);
- }
- int id = writeCommand.getGeneratedKey();
- dObject.setPropagatedID(propagatedID, id);
- }
- }
-
- public String getTableName() {
- return dObject.getTableName();
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeSummarizer.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeSummarizer.java
deleted file mode 100644
index 49785b423d..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ChangeSummarizer.java
+++ /dev/null
@@ -1,242 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.config.Column;
-import org.apache.tuscany.das.rdb.config.Relationship;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.config.wrapper.RelationshipWrapper;
-import org.apache.tuscany.das.rdb.config.wrapper.TableWrapper;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-import org.apache.tuscany.sdo.impl.ChangeSummaryImpl;
-
-import commonj.sdo.ChangeSummary;
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-import commonj.sdo.Type;
-
-public class ChangeSummarizer {
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(ChangeSummarizer.class);
-
- private Changes changes = new Changes();
-
- private FactoryRegistry registry;
-
- private MappingWrapper mapping = new MappingWrapper();
-
- private ConnectionImpl connection;
-
- private Map generatedKeys = new HashMap();
-
- public ChangeSummarizer() {
- // Empty Constructor
- }
-
- public Changes loadChanges(DataObject root) {
- ChangeSummary changeSummary = root.getDataGraph().getChangeSummary();
- if (changeSummary.isLogging()) {
- ((ChangeSummaryImpl) changeSummary).summarize();
- }
-
- List changedObjects = changeSummary.getChangedDataObjects();
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("List of changed objects contains " + changedObjects.size() + " object(s)");
- }
-
- changes.setInsertOrder(mapping.getInsertOrder());
- changes.setDeleteOrder(mapping.getDeleteOrder());
-
- Iterator i = changedObjects.iterator();
- while (i.hasNext()) {
- DataObject o = (DataObject) i.next();
-
- if (!(o.equals(root))) {
- createChange(changeSummary, o);
- }
- }
-
- return changes;
- }
-
- public void createChange(ChangeSummary changeSummary, DataObject changedObject) {
-
- if (changeSummary.isCreated(changedObject)) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Change is a create");
- }
- if (!changeSummary.isDeleted(changedObject)) {
- ChangeFactory factory = getRegistry().getFactory(changedObject.getType());
- String propagatedID = (String) generatedKeys.get(changedObject.getType().getName());
- changes.addInsert(factory.createInsertOperation(changedObject, propagatedID));
- }
- } else if (changeSummary.isDeleted(changedObject)) {
- ChangeFactory factory = getRegistry().getFactory(changedObject.getType());
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Change is a delete");
- }
- changes.addDelete(factory.createDeleteOperation(changedObject));
- } else {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Change is a modify");
- }
- List attrList = changeSummary.getOldValues(changedObject);
- if (hasAttributeChange(attrList)) {
- ChangeFactory factory = getRegistry().getFactory(changedObject.getType());
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Attribute Change for " + changedObject.getType().getName());
- }
- String propagatedID = (String) generatedKeys.get(changedObject.getType().getName());
- changes.addUpdate(factory.createUpdateOperation(changedObject, propagatedID));
- } else {
- List values = changeSummary.getOldValues(changedObject);
- Iterator i = values.iterator();
- while (i.hasNext()) {
- ChangeSummary.Setting setting = (ChangeSummary.Setting) i.next();
- if (!setting.getProperty().getType().isDataType()) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Reference change for " + changedObject.getType().getName());
- }
- Property ref = setting.getProperty();
- if (this.logger.isDebugEnabled()) {
- this.logger.debug(ref.getName());
- }
- if (hasState(ref, changedObject)) {
- ChangeFactory factory = getRegistry().getFactory(changedObject.getType());
- changes.addUpdate(factory.createUpdateOperation(changedObject));
- }
- }
- }
- }
- }
-
- }
-
- private boolean hasState(Property ref, DataObject changedObject) {
- if (ref.getOpposite().isMany()) {
- return true;
- }
-
- MappingWrapper mw = this.mapping;
- if (mw.getConfig() == null) {
- mw = registry.getFactory(changedObject.getType()).getConfig();
- }
- if (mw.getConfig() == null) {
- return false;
- }
-
- Relationship rel = mw.getRelationshipByReference(ref);
-
- if (!rel.isMany()) {
- if (rel.isKeyRestricted()) {
- throw new RuntimeException("Can not modify a one to one relationship that is key restricted");
- }
- // This is a one-one relationship
- Table t = mapping.getTableByTypeName(changedObject.getType().getName());
- TableWrapper tw = new TableWrapper(t);
- RelationshipWrapper rw = new RelationshipWrapper(rel);
- if ((rel.getForeignKeyTable().equals(t.getTableName()))
- && (Collections.disjoint(tw.getPrimaryKeyProperties(), rw.getForeignKeys()))) {
- return true;
- }
-
- }
-
- return false;
- }
-
- private boolean hasAttributeChange(List theChanges) {
- Iterator i = theChanges.iterator();
- while (i.hasNext()) {
- ChangeSummary.Setting setting = (ChangeSummary.Setting) i.next();
- if (setting.getProperty().getType().isDataType()) {
- return true;
- }
- }
- return false;
- }
-
- public void addCreateCommand(Type type, Command cmd) {
- ChangeFactory cf = getRegistry().getFactory(type);
- cf.setCreateCommand((InsertCommandImpl) cmd);
- ((CommandImpl) cmd).setConnection(connection);
- }
-
- public void addUpdateCommand(Type type, Command cmd) {
- ChangeFactory cf = getRegistry().getFactory(type);
- cf.setUpdateCommand((UpdateCommandImpl) cmd);
- ((CommandImpl) cmd).setConnection(connection);
- }
-
- public void addDeleteCommand(Type type, Command cmd) {
- ChangeFactory cf = getRegistry().getFactory(type);
- cf.setDeleteCommand((DeleteCommandImpl) cmd);
- ((CommandImpl) cmd).setConnection(connection);
-
- }
-
- private FactoryRegistry getRegistry() {
- if (this.registry == null) {
- this.registry = new FactoryRegistry(mapping, connection);
- }
- return this.registry;
- }
-
- public void setConnection(ConnectionImpl connection) {
- this.connection = connection;
- }
-
- public void setMapping(MappingWrapper map) {
- this.mapping = map;
-
- if (mapping.getConfig() == null) {
- return;
- }
-
- Iterator i = mapping.getConfig().getTable().iterator();
- while (i.hasNext()) {
- Table t = (Table) i.next();
- Iterator columns = t.getColumn().iterator();
- while (columns.hasNext()) {
- Column c = (Column) columns.next();
- if (c.isPrimaryKey() && c.isGenerated()) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("adding generated key " + t.getTableName() + "." + c.getColumnName());
- }
-
- generatedKeys.put(t.getTableName(), c.getColumnName());
- }
- }
- }
- }
-
- public ConnectionImpl getConnection() {
- return this.connection;
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Changes.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Changes.java
deleted file mode 100644
index 2cc5f906c9..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Changes.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.util.Iterator;
-import java.util.List;
-
-/**
- * Manages a set of graph-change operations. This simple implementaiton can be
- * replaced with a version that provides R/I sorting
- *
- */
-public class Changes {
-
- private InsertList inserts = new InsertList();
-
- private UpdateList updates = new UpdateList();
-
- private DeleteList deletes = new DeleteList();
-
- public void addInsert(ChangeOperation c) {
- inserts.add(c);
- }
-
- public void addUpdate(ChangeOperation c) {
- updates.add(c);
- }
-
- public void addDelete(ChangeOperation c) {
- deletes.add(c);
- }
-
- /**
- * Execute all my change
- */
- public void execute() {
-
- Iterator i = inserts.getSortedList().iterator();
- while (i.hasNext()) {
- ChangeOperation c = (ChangeOperation) i.next();
- c.execute();
- }
-
- i = updates.getSortedList().iterator();
- while (i.hasNext()) {
- ChangeOperation c = (ChangeOperation) i.next();
- c.execute();
- }
-
- i = deletes.getSortedList().iterator();
- while (i.hasNext()) {
- ChangeOperation c = (ChangeOperation) i.next();
- c.execute();
- }
-
- }
-
- public void setInsertOrder(List insertOrder) {
- inserts.setOrder(insertOrder);
- }
-
- public void setDeleteOrder(List deleteOrder) {
- deletes.setOrder(deleteOrder);
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CommandImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CommandImpl.java
deleted file mode 100644
index 8c5658935f..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CommandImpl.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.Command;
-
-import commonj.sdo.DataObject;
-import commonj.sdo.helper.XSDHelper;
-
-public abstract class CommandImpl extends BaseCommandImpl implements Command {
-
- protected Statement statement;
-
- protected Parameters parameters = new Parameters();
-
-
-
- protected ResultSetShape resultSetShape;
-
- public CommandImpl(String sqlString) {
- statement = new Statement(sqlString);
-
- try {
- URL url = getClass().getResource("/xml/sdoJava.xsd");
- if (url == null) {
- throw new RuntimeException("Could not find resource: xml/sdoJava.xsd");
- }
-
- InputStream inputStream = url.openStream();
- XSDHelper.INSTANCE.define(inputStream, url.toString());
- inputStream.close();
- } catch (IOException ex) {
- throw new RuntimeException(ex);
- }
-
- }
-
- public abstract void execute();
-
- public abstract DataObject executeQuery();
-
- public void setParameter(int index, Object value) {
- parameters.setParameter(index, value);
- }
-
- public void addParameter(ParameterImpl param) {
- parameters.add(param);
- }
-
- public List getParameters() {
- return parameters.parameterList();
- }
-
- public Object getParameter(int index) {
- return parameters.parameterWithIndex(index).getValue();
- }
-
- public void setConnection(ConnectionImpl connection) {
- statement.setConnection(connection);
- }
-
- protected ConnectionImpl getConnection() {
- return statement.getConnection();
- }
-
- /*
- * The default impl is to throw an exception. This is overridden by InsertCommandImpl
- */
- public int getGeneratedKey() {
-
- throw new RuntimeException("This method is only valid for insert commands");
- }
-
- public void close() {
- statement.close();
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ConnectionImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ConnectionImpl.java
deleted file mode 100644
index d3a2c77844..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ConnectionImpl.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.CallableStatement;
-import java.sql.Connection;
-import java.sql.DatabaseMetaData;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-public class ConnectionImpl {
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(ConnectionImpl.class);
-
- private Connection connection;
-
- private boolean managingTransaction = true;
-
- private final boolean useGetGeneratedKeys;
-
- public ConnectionImpl(Connection connection) {
- this.connection = connection;
-
- try {
- DatabaseMetaData dbmd = connection.getMetaData();
-
- if (dbmd.getDatabaseProductName().contains("Oracle")) {
- this.useGetGeneratedKeys = false;
- } else {
- this.useGetGeneratedKeys = true;
- }
- if (connection.getAutoCommit()) {
- throw new RuntimeException("AutoCommit must be off");
- }
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
-
- }
-
- public Connection getJDBCConnection() {
- return connection;
- }
-
- public void cleanUp() {
- try {
- if (managingTransaction) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Committing Transaction");
- }
- connection.commit();
- }
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
-
- public void errorCleanUp() {
- try {
- if (managingTransaction) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Rolling back Transaction");
- }
- connection.rollback();
- }
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
-
- public PreparedStatement prepareStatement(String queryString, String[] returnKeys) throws SQLException {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Preparing Statement: " + queryString);
- }
-
- if (useGetGeneratedKeys) {
- return connection.prepareStatement(queryString, Statement.RETURN_GENERATED_KEYS);
- } else if (returnKeys.length > 0) {
- return connection.prepareStatement(queryString, returnKeys);
- }
-
- return connection.prepareStatement(queryString);
- }
-
- public PreparedStatement preparePagedStatement(String queryString) throws SQLException {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Preparing Statement: " + queryString);
- }
-
- return connection.prepareStatement(queryString, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
- }
-
- public void setManageTransactions(boolean manageTransactions) {
- managingTransaction = manageTransactions;
-
- }
-
- public CallableStatement prepareCall(String queryString) throws SQLException {
- return connection.prepareCall(queryString);
- }
-
- public boolean useGetGeneratedKeys() {
- return this.useGetGeneratedKeys;
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CreateOperation.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CreateOperation.java
deleted file mode 100644
index 0163f96686..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/CreateOperation.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import commonj.sdo.DataObject;
-
-public class CreateOperation extends ChangeOperation {
-
- public CreateOperation(InsertCommandImpl command, DataObject changedObject, String id) {
- super(command, changedObject);
- this.propagatedID = id;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DASFactoryImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DASFactoryImpl.java
deleted file mode 100644
index ba80b3bcb5..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DASFactoryImpl.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.io.InputStream;
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.DASFactory;
-import org.apache.tuscany.das.rdb.config.Config;
-
-public class DASFactoryImpl implements DASFactory {
-
- public DAS createDAS(InputStream configStream) {
- return new DASImpl(configStream);
- }
-
- public DAS createDAS(Config config) {
- return new DASImpl(config);
- }
-
- public DAS createDAS(InputStream configStream, Connection connection) {
- return new DASImpl(configStream, connection);
- }
-
- public DAS createDAS(Config config, Connection connection) {
- return new DASImpl(config, connection);
- }
-
- public DAS createDAS(Connection connection) {
- return new DASImpl(connection);
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DASImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DASImpl.java
deleted file mode 100644
index 55f8e2c83b..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DASImpl.java
+++ /dev/null
@@ -1,247 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.io.InputStream;
-import java.sql.Connection;
-import java.sql.SQLException;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
-import javax.sql.DataSource;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.util.ConfigUtil;
-
-import commonj.sdo.DataObject;
-
-/**
- * An ConfiguredCommandFactory produces instances of Command and ApplyChangesCommand. This
- * factory is initialized with a configuration that defines
- * the commands it produces.
- *
- */
-public class DASImpl implements DAS {
-
- private MappingWrapper configWrapper;
-
- private Connection connection;
-
- private Map commands = new HashMap();
-
- public DASImpl(InputStream stream) {
- this(ConfigUtil.loadConfig(stream));
-
- }
-
- public DASImpl(Config inConfig) {
- Config cfg = inConfig;
- if (cfg == null) {
- cfg = ConfigFactory.INSTANCE.createConfig();
- }
- this.configWrapper = new MappingWrapper(cfg);
-
- Iterator i = configWrapper.getConfig().getCommand().iterator();
- while (i.hasNext()) {
- org.apache.tuscany.das.rdb.config.Command commandConfig =
- (org.apache.tuscany.das.rdb.config.Command) i.next();
- String kind = commandConfig.getKind();
- if (kind.equalsIgnoreCase("select")) {
- commands
- .put(commandConfig.getName(), new ReadCommandImpl(commandConfig.getSQL(),
- configWrapper, commandConfig.getResultDescriptor()));
- } else if (kind.equalsIgnoreCase("update")) {
- commands.put(commandConfig.getName(), new UpdateCommandImpl(commandConfig.getSQL()));
- } else if (kind.equalsIgnoreCase("insert")) {
- commands.put(commandConfig.getName(), new InsertCommandImpl(commandConfig.getSQL(), new String[0]));
- } else if (kind.equalsIgnoreCase("delete")) {
- commands.put(commandConfig.getName(), new DeleteCommandImpl(commandConfig.getSQL()));
- } else if (kind.equalsIgnoreCase("procedure")) {
- commands.put(commandConfig.getName(), new SPCommandImpl(commandConfig.getSQL(),
- configWrapper, commandConfig.getParameter()));
- } else {
- throw new RuntimeException("Invalid kind of command: " + kind);
- }
-
- }
-
- }
-
- public DASImpl(Config inConfig, Connection inConnection) {
- this(inConfig);
- setConnection(inConnection);
- }
-
- public DASImpl(InputStream configStream, Connection inConnection) {
- this(ConfigUtil.loadConfig(configStream), inConnection);
- }
-
- public DASImpl(Connection inConnection) {
- this(ConfigFactory.INSTANCE.createConfig());
- setConnection(inConnection);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.das.rdb.CommandGroup#getApplyChangesCommand()
- */
- public ApplyChangesCommandImpl getApplyChangesCommand() {
- ApplyChangesCommandImpl cmd = new ApplyChangesCommandImpl(configWrapper, connection);
- return cmd;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.das.rdb.CommandGroup#getCommand(java.lang.String)
- */
- public Command getCommand(String name) {
- if (!commands.containsKey(name)) {
- throw new RuntimeException("CommandGroup has no command named: " + name);
- }
- CommandImpl cmd = (CommandImpl) commands.get(name);
- cmd.setConnection(getConnection(), configWrapper.getConfig());
- return cmd;
- }
-
- public void setConnection(Connection connection) {
- this.connection = connection;
- }
-
- public Connection getConnection() {
- if (connection == null) {
- initializeConnection();
- }
- return connection;
- }
-
- private void initializeConnection() {
- Config config = configWrapper.getConfig();
- if (config == null || config.getConnectionInfo() == null
- || config.getConnectionInfo().getDataSource() == null) {
- throw new RuntimeException("No connection has been provided and no data source has been specified");
- }
-
- Connection connection = null;
-
- InitialContext ctx;
- try {
- ctx = new InitialContext();
- } catch (NamingException e) {
- throw new RuntimeException(e);
- }
- try {
- DataSource ds = (DataSource) ctx.lookup(configWrapper.getConfig().getConnectionInfo().getDataSource());
- try {
- connection = ds.getConnection();
- if (connection == null) {
- throw new RuntimeException("Could not obtain a Connection from DataSource");
- }
- connection.setAutoCommit(false);
- setConnection(connection);
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- } catch (NamingException e) {
- throw new RuntimeException(e);
- }
-
- }
-
- public void releaseResources() {
-
- if (managingConnections()) {
- closeConnection();
- }
- }
-
- private void closeConnection() {
- if (connection != null) {
- try {
- connection.close();
- connection = null;
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
- }
-
- /**
- * If the config has connection properties then we are "managing" the connection via DataSource
- */
- private boolean managingConnections() {
-
- if (configWrapper.getConfig().getConnectionInfo().getDataSource() == null) {
- return false;
- }
-
- return true;
-
- }
-
- public Command createCommand(String sql) {
- return baseCreateCommand(sql, this.configWrapper);
- }
-
- public Command createCommand(String sql, Config config) {
- return baseCreateCommand(sql, new MappingWrapper(config));
- }
-
- private Command baseCreateCommand(String inSql, MappingWrapper config) {
- CommandImpl returnCmd = null;
- String sql = inSql.trim(); // Remove leading white space
- char firstChar = Character.toUpperCase(sql.charAt(0));
- switch (firstChar) {
- case 'S':
- returnCmd = new ReadCommandImpl(sql, config, null);
- break;
- case 'I':
- returnCmd = new InsertCommandImpl(sql, new String[0]);
- break;
- case 'U':
- returnCmd = new UpdateCommandImpl(sql);
- break;
- case 'D':
- returnCmd = new DeleteCommandImpl(sql);
- break;
- case '{':
- returnCmd = new SPCommandImpl(sql, config, Collections.EMPTY_LIST);
- break;
- default:
- throw new RuntimeException("SQL => " + sql + " is not valid");
- }
-
- returnCmd.setConnection(getConnection(), config.getConfig());
- return returnCmd;
- }
-
- public void applyChanges(DataObject root) {
- getApplyChangesCommand().execute(root);
- }
-
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DatabaseObject.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DatabaseObject.java
deleted file mode 100644
index de42b595b4..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DatabaseObject.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.config.Column;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.KeyPair;
-import org.apache.tuscany.das.rdb.config.Relationship;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-
-/**
- * DatabaseObject wraps DataObject. If a field is an FK field, it will return the value from the parent.
- *
- *
- */
-public class DatabaseObject {
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(DatabaseObject.class);
-
- private final MappingWrapper mappingWrapper;
-
- private final DataObject dataObject;
-
- private Property parentReference;
-
- private Map keyMappings = new HashMap();
-
- public DatabaseObject(Config model, DataObject changedObject) {
- this.mappingWrapper = new MappingWrapper(model);
- this.dataObject = changedObject;
- initialize();
- }
-
- // Initialize Key Mappings
- private void initialize() {
- if (mappingWrapper.getConfig() != null) {
- List relationships = mappingWrapper.getConfig().getRelationship();
- Iterator i = relationships.iterator();
- while (i.hasNext()) {
- Relationship r = (Relationship) i.next();
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Initializing relationship: " + r.getName());
- }
- if (r.getForeignKeyTable().equals(getTypeName())) {
- List pairs = r.getKeyPair();
- Iterator iter = pairs.iterator();
- while (iter.hasNext()) {
- KeyPair pair = (KeyPair) iter.next();
- keyMappings.put(pair.getForeignKeyColumn(), r);
- }
- }
- }
- }
- }
-
- public Object get(String parameter) {
-
- if (isPartOfPrimaryKey(parameter)) {
- return dataObject.get(parameter);
- }
-
- Relationship r = (Relationship) keyMappings.get(parameter);
- if (r == null) {
- return dataObject.get(parameter);
- }
-
- Property parentRef = getParentReference(r.getPrimaryKeyTable());
- DataObject parent = dataObject.getDataObject(parentRef);
- if (parent == null) {
- return null;
- }
- String parentKey = getParentKey(r, parameter);
- return parent.get(parentKey);
-
- }
-
- private String getParentKey(Relationship r, String parameter) {
- List keyPairs = r.getKeyPair();
- Iterator i = keyPairs.iterator();
- while (i.hasNext()) {
- KeyPair pair = (KeyPair) i.next();
- if (pair.getForeignKeyColumn().equals(parameter)) {
- return pair.getPrimaryKeyColumn();
- }
- }
- return null;
- }
-
- public Property getParentReference(String parentName) {
- if (this.parentReference == null) {
-
- Iterator i = dataObject.getType().getProperties().iterator();
- while (i.hasNext()) {
- Property ref = (Property) i.next();
- if ((!ref.getType().isDataType()) && (ref.getType().getName().equals(parentName))) {
- this.parentReference = ref;
- }
- }
- }
- return this.parentReference;
- }
-
- public String getTableName() {
- if (mappingWrapper.getConfig() != null) {
- return mappingWrapper.getTableByTypeName(getTypeName()).getTableName();
- }
- return null;
- }
-
- public String getTypeName() {
- return dataObject.getType().getName();
- }
-
- public void setPropagatedID(String propagatedID, int id) {
- dataObject.setInt(propagatedID, id);
- }
-
- private boolean isPartOfPrimaryKey(String parameter) {
- if (mappingWrapper.getConfig() == null) {
- return false;
- }
-
- Table t = mappingWrapper.getTable(getTableName());
- if (t == null) {
- return false;
- }
- Column c = mappingWrapper.getColumnByPropertyName(t, parameter);
- if (c == null) {
- return false;
- }
-
- return c.isPrimaryKey();
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteCommandImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteCommandImpl.java
deleted file mode 100644
index 78e38cee0b..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteCommandImpl.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import org.apache.tuscany.das.rdb.config.Delete;
-
-public class DeleteCommandImpl extends WriteCommandImpl {
-
- public DeleteCommandImpl(String sqlString) {
- super(sqlString);
- }
-
- public DeleteCommandImpl(Delete delete) {
- super(delete.getSql());
- addParameters(delete.getParameters());
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteList.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteList.java
deleted file mode 100644
index feb7e31411..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteList.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-/**
- * DeleteList will sort delete operations so that child objects are deleted before their parents
- *
- *
- */
-public class DeleteList {
-
- private Map opsByTableName = new HashMap();
-
- private List order;
-
- private List deleteOperations = new ArrayList();
-
- public DeleteList() {
- super();
- }
-
- public void add(ChangeOperation op) {
- if ((order.size() == 0) || (op.getTableName() == null)) {
- deleteOperations.add(op);
- } else {
- String name = op.getTableName();
- List ops = (List) opsByTableName.get(name);
- if (ops == null) {
- ops = new ArrayList();
- }
- ops.add(op);
- opsByTableName.put(name, ops);
- }
- }
-
- public Collection getSortedList() {
- if ((order.size() > 0) && (opsByTableName.keySet().size() > 0)) {
- Iterator i = this.order.iterator();
- while (i.hasNext()) {
- String name = (String) i.next();
- if (opsByTableName.get(name) != null) {
- deleteOperations.addAll((Collection) opsByTableName.get(name));
- }
- }
- }
-
- return deleteOperations;
- }
-
- public void setOrder(List deleteOrder) {
- this.order = deleteOrder;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteOperation.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteOperation.java
deleted file mode 100644
index 52935599c1..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/DeleteOperation.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import org.apache.tuscany.das.rdb.util.DataObjectUtil;
-
-import commonj.sdo.DataObject;
-
-public class DeleteOperation extends ChangeOperation {
-
- /**
- * @param command
- * @param changedObject
- * Objects deleted from the graph have lost their "settings" and must be restored
- */
- public DeleteOperation(DeleteCommandImpl command, DataObject changedObject) {
- super(command);
- this.dObject = new DatabaseObject(command.getMappingModel(), DataObjectUtil.getRestoredCopy(changedObject));
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/FactoryRegistry.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/FactoryRegistry.java
deleted file mode 100644
index 9e4a4b47b5..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/FactoryRegistry.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.Type;
-
-public class FactoryRegistry {
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(FactoryRegistry.class);
-
- private Map registry = new HashMap();
-
- private final MappingWrapper mapping;
-
- private final ConnectionImpl connection;
-
- public FactoryRegistry(MappingWrapper mapping, ConnectionImpl connection) {
- this.mapping = mapping;
- this.connection = connection;
- }
-
- public ChangeFactory getFactory(Type type) {
- ChangeFactory factory = (ChangeFactory) registry.get(type);
- if (factory == null) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Creating new ChangeFactory for type " + type.getName());
- }
-
- factory = new ChangeFactory(mapping, connection);
- registry.put(type, factory);
- }
- return factory;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertCommandImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertCommandImpl.java
deleted file mode 100644
index 048ee7fef5..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertCommandImpl.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.SQLException;
-
-import org.apache.tuscany.das.rdb.config.Create;
-
-public class InsertCommandImpl extends WriteCommandImpl {
-
- private String[] keys;
-
- public InsertCommandImpl(String sqlString, String[] generatedKeys) {
- super(sqlString);
- keys = generatedKeys;
- }
-
- public InsertCommandImpl(Create create) {
- super(create.getSql());
- addParameters(create.getParameters());
- this.keys = new String[0];
- }
-
- public void execute() {
-
- boolean success = false;
- try {
- statement.executeUpdate(parameters, keys);
- success = true;
- } catch (SQLException e) {
- throw new RuntimeException(e);
- } finally {
- if (success) {
- statement.getConnection().cleanUp();
- } else {
- statement.getConnection().errorCleanUp();
- }
- }
-
- }
-
- public int getGeneratedKey() {
- try {
- return statement.getGeneratedKey();
- } catch (SQLException ex) {
- throw new RuntimeException(ex);
- }
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertList.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertList.java
deleted file mode 100644
index dea65feb3c..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/InsertList.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-/**
- * InsertList will sort ChangeOperation objects so that parents are inserted before children
- *
- *
- */
-public class InsertList {
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(InsertList.class);
-
- private Map opsByTableName = new HashMap();
-
- private List insertOperations = new ArrayList();
-
- private List order;
-
- public void add(ChangeOperation op) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Adding insert operation ");
- }
-
- // If nothing has been added yet, or this is no ordering, simply
- // add the operation to the list
- if ((order.size() == 0) || (op.getTableName() == null)) {
- insertOperations.add(op);
- } else {
- String name = op.getTableName();
- List ops = (List) opsByTableName.get(name);
- if (ops == null) {
- ops = new ArrayList();
- }
-
- ops.add(op);
- opsByTableName.put(name, ops);
- }
- }
-
- public Collection getSortedList() {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Getting sorted insert list");
- }
-
- if ((order.size() > 0) && opsByTableName.keySet().size() > 0) {
- Iterator i = this.order.iterator();
- while (i.hasNext()) {
- String name = (String) i.next();
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Adding operations for table " + name);
- }
-
- // A null here means a table is in the config but hasn't been changed here
- if (opsByTableName.get(name) != null) {
- insertOperations.addAll((Collection) opsByTableName.get(name));
- }
- }
- }
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Returning " + insertOperations.size() + " insert operations");
- }
-
- return insertOperations;
- }
-
- public void setOrder(List insertOrder) {
- this.order = insertOrder;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ManagedParameterImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ManagedParameterImpl.java
deleted file mode 100644
index d91200fd03..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ManagedParameterImpl.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.math.BigDecimal;
-
-public class ManagedParameterImpl extends ParameterImpl {
-
- public void setValue(Object oldValue) {
- this.value = updateValue(oldValue);
- }
-
- private Object updateValue(Object oldValue) {
- if (oldValue instanceof Integer) {
- return Integer.valueOf(((Integer) oldValue).intValue() + 1);
- } else if (oldValue instanceof BigDecimal) {
- return ((BigDecimal) oldValue).add(new BigDecimal(1));
- } else {
- throw new RuntimeException("Unsupported type for managed column: " + oldValue.getClass().getName());
- }
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/OptimisticWriteCommandImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/OptimisticWriteCommandImpl.java
deleted file mode 100644
index a1ced26ecf..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/OptimisticWriteCommandImpl.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.SQLException;
-
-import org.apache.tuscany.das.rdb.config.Update;
-
-public class OptimisticWriteCommandImpl extends UpdateCommandImpl {
-
- public OptimisticWriteCommandImpl(String sqlString) {
- super(sqlString);
- }
-
- public OptimisticWriteCommandImpl(Update update) {
- super(update);
- addParameters(update.getParameters());
- }
-
- public void execute() {
-
- boolean success = false;
- try {
- int rowsAffected = statement.executeUpdate(parameters);
- success = true;
- if (rowsAffected == 0) {
- throw new RuntimeException("An update collision occurred");
- }
- } catch (SQLException e) {
- throw new RuntimeException(e);
- } finally {
- if (success) {
- statement.getConnection().cleanUp();
- } else {
- statement.getConnection().errorCleanUp();
- }
- }
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/PagerImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/PagerImpl.java
deleted file mode 100644
index 27b653763b..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/PagerImpl.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.Pager;
-
-import commonj.sdo.DataObject;
-
-public class PagerImpl implements Pager {
-
- private final ReadCommandImpl command;
-
- private final int size;
-
- private int idx = 1;
-
- public PagerImpl(Command command, int size) {
- this.command = (ReadCommandImpl) command;
- this.command.enablePaging();
- this.size = size;
- }
-
- public DataObject next() {
- int start = idx;
- int end = idx + size;
- idx += size;
- command.setStartRow(start);
- command.setEndRow(end);
- return command.executeQuery();
- }
-
- public DataObject getPage(int page) {
- int end = (page * size) + 1;
- int start = end - size;
- idx = end;
- command.setStartRow(start);
- command.setEndRow(end);
- return command.executeQuery();
- }
-
- public DataObject previous() {
- int start = idx - (2 * size);
- if (start < 1) {
- start = 1;
- }
- int end = start + size;
- idx = end;
- command.setStartRow(start);
- command.setEndRow(end);
- return command.executeQuery();
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ParameterImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ParameterImpl.java
deleted file mode 100644
index 3e23faf069..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ParameterImpl.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import org.apache.tuscany.das.rdb.Converter;
-
-import commonj.sdo.Type;
-
-public class ParameterImpl {
-
- /**
- * Value for "Direction" that indicates that a parameter is soley for input.
- */
- static final int IN = 1;
-
- /**
- * Value for "Direction" that indicates that a parameter is soley for output.
- * Out parameters only apply to Stored Procedures
- */
- static final int OUT = 2;
-
- /**
- * Value for "Direction" that indicates that a parameter is for both input and output.
- * In-out parameters only apply to stored procedures
- */
- static final int IN_OUT = 3;
-
- protected Object value;
-
- private int index;
-
- private Type type;
-
- private String name;
-
- private int direction = IN;
-
- private Converter converter;
-
-
- public ParameterImpl() {
- super();
- }
-
- public ParameterImpl(int index) {
- this.index = index;
- }
-
- public void setType(Type type) {
- this.type = type;
- }
-
- public void setIndex(int index) {
- if (index == 0) {
- throw new RuntimeException("Index of zero not allowed");
- }
- this.index = index;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public void setValue(Object value) {
- this.value = value;
- }
-
- public void setDirection(int direction) {
- this.direction = direction;
- }
-
- public Type getType() {
- return this.type;
- }
-
- public int getIndex() {
- return this.index;
- }
-
- public String getName() {
- return this.name;
- }
-
- public Object getValue() {
- if (getConverter() != null) {
- return getConverter().getColumnValue(this.value);
- }
-
- return this.value;
- }
-
- public int getDirection() {
- return this.direction;
- }
-
- public void setConverter(Converter converter) {
- this.converter = converter;
- }
-
- public Converter getConverter() {
- return this.converter;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Parameters.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Parameters.java
deleted file mode 100644
index 3f38687942..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Parameters.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.Type;
-
-public class Parameters {
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(Parameters.class);
-
- private List parameters = new ArrayList();
-
- private List inParams = new ArrayList();
-
- private List outParams = new ArrayList();
-
- public Parameters() {
- super();
- }
-
- public ParameterImpl get(int index) {
- return (ParameterImpl) parameters.get(index);
- }
-
- public List outParams() {
- return outParams;
- }
-
- public List inParams() {
- return inParams;
- }
-
- private void addParameter(ParameterImpl param) {
- if (param.getDirection() == ParameterImpl.IN) {
- inParams.add(param);
- } else if ((param.getDirection() == ParameterImpl.OUT) || (param.getDirection() == ParameterImpl.IN_OUT)) {
- outParams.add(param);
- }
-
- this.parameters.add(param);
- }
-
- public void add(ParameterImpl param) {
- addParameter(param);
- }
-
- public ParameterImpl findOrCreateParameterWithIndex(int index, int direction, Type sdoType) {
- Iterator i = parameters.iterator();
- while (i.hasNext()) {
- ParameterImpl param = (ParameterImpl) i.next();
-
- if (param.getIndex() == index) {
- return param;
- }
- }
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Creating new parameter with index " + index);
- }
-
- ParameterImpl newParam = new ParameterImpl(index);
- newParam.setDirection(direction);
- newParam.setType(sdoType);
- addParameter(newParam);
- return newParam;
- }
-
- public List parameterList() {
- return parameters;
- }
-
- public ParameterImpl findOrCreateParameterWithIndex(int index) {
- return findOrCreateParameterWithIndex(index, ParameterImpl.IN, null);
- }
-
- public void setParameter(int index, Object value) {
- ParameterImpl param = findOrCreateParameterWithIndex(index);
- param.setValue(value);
- }
-
- public ParameterImpl parameterWithIndex(int index) {
- Iterator i = parameters.iterator();
- while (i.hasNext()) {
- ParameterImpl param = (ParameterImpl) i.next();
-
- if (param.getIndex() == index) {
- return param;
- }
- }
- return null;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ReadCommandImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ReadCommandImpl.java
deleted file mode 100644
index 725285048d..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ReadCommandImpl.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.SQLException;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.graphbuilder.impl.GraphBuilderMetadata;
-import org.apache.tuscany.das.rdb.graphbuilder.impl.ResultSetProcessor;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
-import commonj.sdo.ChangeSummary;
-import commonj.sdo.DataGraph;
-import commonj.sdo.DataObject;
-
-public class ReadCommandImpl extends CommandImpl {
-
- private int startRow = 1;
-
- private int endRow = Integer.MAX_VALUE;
-
- public ReadCommandImpl(String sqlString, MappingWrapper mapping, List resultDescriptor) {
- super(sqlString);
- this.configWrapper = mapping;
-
- if (resultDescriptor != null && !resultDescriptor.isEmpty()) {
- this.resultSetShape = new ResultSetShape(resultDescriptor);
- }
- }
-
-
- public void execute() {
- throw new UnsupportedOperationException();
- }
-
- public DataObject executeQuery() {
-
- if (statement.getConnection() == null) {
- throw new RuntimeException("A DASConnection object must be specified before executing the query.");
- }
-
- boolean success = false;
- try {
- List results = statement.executeQuery(parameters);
- success = true;
- return buildGraph(results);
- } catch (SQLException e) {
- throw new RuntimeException(e);
- } finally {
- if (success) {
- statement.getConnection().cleanUp();
- } else {
- statement.getConnection().errorCleanUp();
- }
- }
- }
-
- protected DataObject buildGraph(List results) throws SQLException {
-
- // Before we use the mappingModel, do some checking/updating. If
- // inferrable information
- // isn't specified, add it in.
-
- GraphBuilderMetadata gbmd = new GraphBuilderMetadata(results, configWrapper.getConfig(),
- resultSetShape);
-
- // Create the DataGraph
- DataGraph g = SDOUtil.createDataGraph();
-
- // Create the root object
- g.createRootObject(gbmd.getRootType());
-
- SDOUtil.registerDataGraphTypes(g, gbmd.getDefinedTypes());
-
- ChangeSummary summary = g.getChangeSummary();
-
- ResultSetProcessor rsp = new ResultSetProcessor(g.getRootObject(), gbmd);
- rsp.processResults(getStartRow(), getEndRow());
-
- summary.beginLogging();
-
- return g.getRootObject();
- }
-
-
- protected int getStartRow() {
- return startRow;
- }
-
- protected int getEndRow() {
- return endRow;
- }
-
- protected void setStartRow(int startRow) {
- this.startRow = startRow;
- }
-
- protected void setEndRow(int endRow) {
- this.endRow = endRow;
- }
-
-
- protected void enablePaging() {
- statement.enablePaging();
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ResultSetShape.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ResultSetShape.java
deleted file mode 100644
index a47b7cd7be..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/ResultSetShape.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.ResultSetMetaData;
-import java.sql.SQLException;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.config.ResultDescriptor;
-import org.apache.tuscany.das.rdb.graphbuilder.schema.ResultSetTypeMap;
-
-import commonj.sdo.Type;
-import commonj.sdo.helper.TypeHelper;
-
-/**
- * Describes the structure of the result set returned from
- * execution of a SELECT statement. This description is typcially
- * not required since the shape can be retreived from the JDBC
- * ResultSetMetadata. However, some platforms such as Oracle do not
- * support fully suport ResultSetMedata.
- * <p>
- * There may also be a performance boost when using this interface.
- *
- *
- */
-public class ResultSetShape {
-
- private final String[] columns;
-
- private final String[] tables;
-
- private final Type[] types;
-
- public ResultSetShape(ResultSetMetaData metadata) throws SQLException {
- columns = new String[metadata.getColumnCount()];
- tables = new String[metadata.getColumnCount()];
- types = new Type[metadata.getColumnCount()];
-
- ResultSetTypeMap typeMap = ResultSetTypeMap.INSTANCE;
- for (int i = 1; i <= metadata.getColumnCount(); i++) {
- tables[i - 1] = metadata.getTableName(i);
- columns[i - 1] = metadata.getColumnName(i);
- types[i - 1] = typeMap.getType(metadata.getColumnType(i), true);
- }
- }
-
- public ResultSetShape(List resultDescriptor) {
- TypeHelper helper = TypeHelper.INSTANCE;
- int size = resultDescriptor.size();
- columns = new String[size];
- tables = new String[size];
- types = new Type[size];
-
- for (int i = 0; i < size; i++) {
- ResultDescriptor desc = (ResultDescriptor) resultDescriptor.get(i);
- tables[i] = desc.getTableName();
- columns[i] = desc.getColumnName();
-
- int idx = desc.getColumnType().lastIndexOf('.');
- String uri = desc.getColumnType().substring(0, idx);
- String typeName = desc.getColumnType().substring(idx + 1);
-
- types[i] = helper.getType(uri, typeName);
- if (types[i] == null) {
- throw new RuntimeException("Could not find type " + desc.getColumnType()
- + " for column " + desc.getColumnName());
- }
- }
-
- }
-
- public int getColumnCount() {
- return columns.length;
- }
-
- public String getTableName(int i) {
- return tables[i - 1];
- }
-
- public String getColumnName(int i) {
- return columns[i - 1];
- }
-
- public Type getColumnType(int i) {
- return types[i - 1];
- }
-
- public String toString() {
- StringBuffer result = new StringBuffer();
- result.append(" column/table/type: ");
- for (int i = 0; i < columns.length; i++) {
- result.append(columns[i]);
- result.append('\t');
- result.append(tables[i]);
- result.append('\t');
- if (types[i] == null) {
- result.append("null");
- } else {
- result.append(types[i].getName());
- }
- result.append('\n');
- }
-
- return result.toString();
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypeHelper.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypeHelper.java
deleted file mode 100644
index 1038c9a99a..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypeHelper.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.Types;
-
-import commonj.sdo.Type;
-
-public final class SDODataTypeHelper {
-
- private SDODataTypeHelper() {
-
- }
-
- public static int sqlTypeFor(Type sdoType) {
- if (sdoType == null) {
- return Types.OTHER;
- }
-
- if (sdoType == SDODataTypes.BOOLEAN) {
- return Types.BOOLEAN;
- } else if (sdoType == SDODataTypes.STRING) {
- return Types.VARCHAR;
- } else if (sdoType == SDODataTypes.BYTE) {
- return Types.TINYINT;
- } else if (sdoType == SDODataTypes.BYTES) {
- return Types.BINARY;
- } else if (sdoType == SDODataTypes.CHARACTER) {
- return Types.CHAR;
- } else if (sdoType == SDODataTypes.DATE) {
- return Types.DATE;
- } else if (sdoType == SDODataTypes.DATETIME) {
- return Types.DATE;
- } else if (sdoType == SDODataTypes.DAY) {
- return java.sql.Types.BINARY;
- } else if (sdoType == SDODataTypes.DECIMAL) {
- return java.sql.Types.DECIMAL;
- } else if (sdoType == SDODataTypes.DOUBLE) {
- return java.sql.Types.DOUBLE;
- } else if (sdoType == SDODataTypes.DURATION) {
- return java.sql.Types.VARCHAR;
- } else if (sdoType == SDODataTypes.FLOAT) {
- return java.sql.Types.REAL;
- } else if (sdoType == SDODataTypes.INT) {
- return java.sql.Types.INTEGER;
- } else if (sdoType == SDODataTypes.INTEGER) {
- return java.sql.Types.INTEGER;
- } else if (sdoType == SDODataTypes.LONG) {
- return java.sql.Types.BIGINT;
- } else if (sdoType == SDODataTypes.MONTH) {
- return java.sql.Types.VARCHAR;
- } else if (sdoType == SDODataTypes.MONTHDAY) {
- return java.sql.Types.VARCHAR;
- } else if (sdoType == SDODataTypes.OBJECT) {
- return java.sql.Types.JAVA_OBJECT;
- } else if (sdoType == SDODataTypes.SHORT) {
- return java.sql.Types.SMALLINT;
- } else if (sdoType == SDODataTypes.STRING) {
- return java.sql.Types.VARCHAR;
- } else if (sdoType == SDODataTypes.STRINGS) {
- return java.sql.Types.OTHER;
- } else if (sdoType == SDODataTypes.TIME) {
- return java.sql.Types.VARCHAR;
- } else if (sdoType == SDODataTypes.URI) {
- return java.sql.Types.VARCHAR;
- } else if (sdoType == SDODataTypes.YEAR) {
- return java.sql.Types.VARCHAR;
- } else if (sdoType == SDODataTypes.YEARMONTH) {
- return java.sql.Types.VARCHAR;
- } else if (sdoType == SDODataTypes.YEARMONTHDAY) {
- return java.sql.Types.VARCHAR;
- } else if (sdoType == SDODataTypes.BOOLEANOBJECT) {
- return java.sql.Types.BOOLEAN;
- } else if (sdoType == SDODataTypes.BYTEOBJECT) {
- return java.sql.Types.TINYINT;
- } else if (sdoType == SDODataTypes.CHARACTEROBJECT) {
- return java.sql.Types.CHAR;
- } else if (sdoType == SDODataTypes.DOUBLEOBJECT) {
- return java.sql.Types.DOUBLE;
- } else if (sdoType == SDODataTypes.FLOATOBJECT) {
- return java.sql.Types.REAL;
- } else if (sdoType == SDODataTypes.INTEGEROBJECT) {
- return java.sql.Types.INTEGER;
- } else if (sdoType == SDODataTypes.LONGOBJECT) {
- return java.sql.Types.BIGINT;
- } else if (sdoType == SDODataTypes.SHORTOBJECT) {
- return java.sql.Types.SMALLINT;
- } else {
- throw new RuntimeException("Not a valid SDO Type " + sdoType);
- }
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypes.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypes.java
deleted file mode 100644
index 2052950272..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypes.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import commonj.sdo.Type;
-import commonj.sdo.helper.TypeHelper;
-
-/**
- * Defines SDO data types. This is used primalirly to type stored procedure OUT parameters.
- *
- */
-public class SDODataTypes {
-
- public static final TypeHelper TYPE_HELPER = TypeHelper.INSTANCE;
-
- public static final Type BOOLEAN = TYPE_HELPER.getType("commonj.sdo", "Boolean");
-
- public static final Type BYTE = TYPE_HELPER.getType("commonj.sdo", "Byte");
-
- public static final Type BYTES = TYPE_HELPER.getType("commonj.sdo", "Bytes");
-
- public static final Type CHARACTER = TYPE_HELPER.getType("commonj.sdo", "Character");
-
- public static final Type DATE = TYPE_HELPER.getType("commonj.sdo", "Date");
-
- public static final Type DATETIME = TYPE_HELPER.getType("commonj.sdo", "Date");
-
- public static final Type DAY = TYPE_HELPER.getType("commonj.sdo", "Date");
-
- public static final Type DECIMAL = TYPE_HELPER.getType("commonj.sdo", "Float");
-
- public static final Type DOUBLE = TYPE_HELPER.getType("commonj.sdo", "Double");
-
- public static final Type DURATION = TYPE_HELPER.getType("commonj.sdo", "Date");
-
- public static final Type FLOAT = TYPE_HELPER.getType("commonj.sdo", "Float");
-
- public static final Type INT = TYPE_HELPER.getType("commonj.sdo", "Int");
-
- public static final Type INTEGER = TYPE_HELPER.getType("commonj.sdo", "Integer");
-
- public static final Type LONG = TYPE_HELPER.getType("commonj.sdo", "Long");
-
- public static final Type MONTH = TYPE_HELPER.getType("commonj.sdo", "Date");
-
- public static final Type MONTHDAY = TYPE_HELPER.getType("commonj.sdo", "Date");
-
- public static final Type OBJECT = TYPE_HELPER.getType("commonj.sdo", "Object");
-
- public static final Type SHORT = TYPE_HELPER.getType("commonj.sdo", "Short");
-
- public static final Type STRING = TYPE_HELPER.getType("commonj.sdo", "String");
-
- public static final Type STRINGS = TYPE_HELPER.getType("commonj.sdo", "String");
-
- public static final Type TIME = TYPE_HELPER.getType("commonj.sdo", "Date");
-
- public static final Type URI = TYPE_HELPER.getType("commonj.sdo", "String");
-
- public static final Type YEAR = TYPE_HELPER.getType("commonj.sdo", "Date");
-
- public static final Type YEARMONTH = TYPE_HELPER.getType("commonj.sdo", "Date");
-
- public static final Type YEARMONTHDAY = TYPE_HELPER.getType("commonj.sdo", "Date");
-
- public static final Type BOOLEANOBJECT = TYPE_HELPER.getType("commonj.sdo", "BooleanObject");
-
- public static final Type BYTEOBJECT = TYPE_HELPER.getType("commonj.sdo", "ByteObject");
-
- public static final Type CHARACTEROBJECT = TYPE_HELPER.getType("commonj.sdo", "CharacterObject");
-
- public static final Type DOUBLEOBJECT = TYPE_HELPER.getType("commonj.sdo", "DoubleObject");
-
- public static final Type FLOATOBJECT = TYPE_HELPER.getType("commonj.sdo", "FloatObject");
-
- public static final Type INTEGEROBJECT = TYPE_HELPER.getType("commonj.sdo", "IntObject");
-
- public static final Type LONGOBJECT = TYPE_HELPER.getType("commonj.sdo", "LongObject");
-
- public static final Type SHORTOBJECT = TYPE_HELPER.getType("commonj.sdo", "ShortObject");
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SPCommandImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SPCommandImpl.java
deleted file mode 100644
index 676fb215b6..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SPCommandImpl.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.SQLException;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.config.Parameter;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-import commonj.sdo.DataObject;
-import commonj.sdo.Type;
-import commonj.sdo.helper.TypeHelper;
-
-public class SPCommandImpl extends ReadCommandImpl {
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(SPCommandImpl.class);
-
- public SPCommandImpl(String sqlString, MappingWrapper config, List params) {
- super(sqlString, config, null);
- Iterator i = params.iterator();
- for (int idx = 1; i.hasNext(); idx++) {
- Parameter p = (Parameter) i.next();
-
- int index = p.getColumnType().lastIndexOf('.');
- String pkg = p.getColumnType().substring(0, index);
- String typeName = p.getColumnType().substring(index + 1);
-
- Type sdoType = TypeHelper.INSTANCE.getType(pkg, typeName);
-
- int direction = ParameterImpl.IN;
- if ("OUT".equalsIgnoreCase(p.getDirection())) {
- direction = ParameterImpl.OUT;
- } else if ("INOUT".equalsIgnoreCase(p.getDirection())) {
- direction = ParameterImpl.IN_OUT;
- }
- parameters.findOrCreateParameterWithIndex(idx, direction, sdoType);
- }
-
- }
-
- public DataObject executeQuery() {
-
- boolean success = false;
- try {
- List results = statement.executeCall(parameters);
- success = true;
-
- return buildGraph(results);
- } catch (SQLException e) {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug(e);
- }
-
- throw new RuntimeException(e);
- } finally {
- if (success) {
- statement.getConnection().cleanUp();
- } else {
- statement.getConnection().errorCleanUp();
- }
- }
- }
-
- public void execute() {
-
- boolean success = false;
- try {
- statement.executeUpdateCall(parameters);
- success = true;
- } catch (SQLException e) {
- throw new RuntimeException(e);
- } finally {
- if (success) {
- statement.getConnection().cleanUp();
- } else {
- statement.getConnection().errorCleanUp();
- }
- }
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Statement.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Statement.java
deleted file mode 100644
index 4740684fbc..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/Statement.java
+++ /dev/null
@@ -1,234 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.CallableStatement;
-import java.sql.ParameterMetaData;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-// TODO - Can use some refactoring. Much code is duplicated in "execute" methods
-public class Statement {
-
- protected final String queryString;
-
- protected ConnectionImpl jdbcConnection;
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(Statement.class);
-
- private PreparedStatement preparedStatement;
-
- private boolean isPaging;
-
- public Statement(String sqlString) {
- this.queryString = sqlString;
- }
-
- public List executeQuery(Parameters parameters) throws SQLException {
-
- PreparedStatement ps = getPreparedStatement(new String[0]);
- ps = setParameters(ps, parameters);
- ResultSet rs = ps.executeQuery();
-
- return Collections.singletonList(rs);
- }
-
- public List executeCall(Parameters parameters) throws SQLException {
-
- CallableStatement cs = jdbcConnection.prepareCall(queryString);
-
- Iterator inParams = parameters.inParams().iterator();
- while (inParams.hasNext()) {
- ParameterImpl param = (ParameterImpl) inParams.next();
- cs.setObject(param.getIndex(), param.getValue());
- }
-
- // register out parameters
- Iterator outParams = parameters.outParams().iterator();
- while (outParams.hasNext()) {
- ParameterImpl param = (ParameterImpl) outParams.next();
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Registering parameter " + param.getName());
- }
-
- cs.registerOutParameter(param.getIndex(), SDODataTypeHelper.sqlTypeFor(param.getType()));
- }
-
- // Using execute because Derby does not currenlty support
- // executeQuery
- // for SP
- cs.execute();
- List results = new ArrayList();
- results.add(cs.getResultSet());
- while (cs.getMoreResults(java.sql.Statement.KEEP_CURRENT_RESULT)) {
- results.add(cs.getResultSet());
- }
-
- Iterator i = parameters.outParams().iterator();
- while (i.hasNext()) {
- ParameterImpl param = (ParameterImpl) i.next();
- param.setValue(cs.getObject(param.getIndex()));
- }
-
- return results;
-
- }
-
- public void executeUpdateCall(Parameters parameters) throws SQLException {
- CallableStatement cs = jdbcConnection.prepareCall(queryString);
-
- Iterator inParams = parameters.inParams().iterator();
- while (inParams.hasNext()) {
- ParameterImpl param = (ParameterImpl) inParams.next();
- cs.setObject(param.getIndex(), param.getValue());
- }
-
- // register out parameters
- Iterator outParams = parameters.outParams().iterator();
- while (outParams.hasNext()) {
- ParameterImpl param = (ParameterImpl) outParams.next();
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Registering parameter " + param.getName());
- }
-
- cs.registerOutParameter(param.getIndex(), SDODataTypeHelper.sqlTypeFor(param.getType()));
- }
-
- cs.execute();
-
- Iterator out = parameters.outParams().iterator();
- while (out.hasNext()) {
- ParameterImpl param = (ParameterImpl) out.next();
- param.setValue(cs.getObject(param.getIndex()));
- }
-
- }
-
- public int executeUpdate(Parameters parameters, String[] generatedKeys) throws SQLException {
- return executeUpdate(getPreparedStatement(generatedKeys), parameters);
- }
-
- public int executeUpdate(Parameters parameters) throws SQLException {
- return executeUpdate(parameters, new String[0]);
- }
-
- /**
- * TODO - We need to look at using specific ps.setXXX methods when a type
- * has been specified and try setObject otherwise.
- */
- private int executeUpdate(PreparedStatement ps, Parameters parameters) throws SQLException {
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Executing statement " + queryString);
- }
-
- Iterator i = parameters.inParams().iterator();
- while (i.hasNext()) {
- ParameterImpl param = (ParameterImpl) i.next();
-
- Object value = param.getValue();
- if (this.logger.isDebugEnabled()) {
- this.logger.debug("Setting parameter " + param.getIndex() + " to " + value);
- }
-
- if (value == null) {
- if (param.getType() == null) {
- try {
- ParameterMetaData pmd = ps.getParameterMetaData();
- ps.setNull(param.getIndex(), pmd.getParameterType(param.getIndex()));
- } catch (SQLException ex) {
- ps.setNull(param.getIndex(), SDODataTypeHelper.sqlTypeFor(null));
- }
- } else {
- ps.setNull(param.getIndex(), SDODataTypeHelper.sqlTypeFor(param.getType()));
- }
- } else {
- ps.setObject(param.getIndex(), value);
- }
- }
- return ps.executeUpdate();
- }
-
- protected PreparedStatement setParameters(PreparedStatement ps, Parameters parameters) throws SQLException {
- Iterator i = parameters.inParams().iterator();
- while (i.hasNext()) {
- ParameterImpl param = (ParameterImpl) i.next();
- ps.setObject(param.getIndex(), param.getValue());
- }
- return ps;
- }
-
- public void setConnection(ConnectionImpl jdbcConnection) {
- this.jdbcConnection = jdbcConnection;
- }
-
- public ConnectionImpl getConnection() {
- return this.jdbcConnection;
- }
-
- private PreparedStatement getPreparedStatement(String[] returnKeys) throws SQLException {
-
- if (preparedStatement == null) {
- if (isPaging) {
- preparedStatement = jdbcConnection.preparePagedStatement(queryString);
- } else {
- preparedStatement = jdbcConnection.prepareStatement(queryString, returnKeys);
- }
- }
-
- return preparedStatement;
- }
-
- public Integer getGeneratedKey() throws SQLException {
-
- if (getConnection().useGetGeneratedKeys()) {
- ResultSet rs = preparedStatement.getGeneratedKeys();
- if (rs.next()) {
- return Integer.valueOf(rs.getInt(1));
- }
- }
-
- return null;
- }
-
- protected void enablePaging() {
- isPaging = true;
- }
-
- public void close() {
-
- if (this.preparedStatement != null) {
- try {
- preparedStatement.close();
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateCommandImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateCommandImpl.java
deleted file mode 100644
index 11a78bb5d1..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateCommandImpl.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import org.apache.tuscany.das.rdb.config.Update;
-
-public class UpdateCommandImpl extends WriteCommandImpl {
-
- public UpdateCommandImpl(String sqlString) {
- super(sqlString);
- }
-
- public UpdateCommandImpl(Update update) {
- super(update.getSql());
- addParameters(update.getParameters());
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateList.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateList.java
deleted file mode 100644
index e7bb58698c..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateList.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-/**
- * Updates don't have to be sorted, so this class is a simple wrapper of ArrayList.
- *
- */
-public class UpdateList {
-
- private List updates = new ArrayList();
-
- public UpdateList() {
- super();
- }
-
- public void add(ChangeOperation c) {
- updates.add(c);
- }
-
- public Collection getSortedList() {
- return updates;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateOperation.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateOperation.java
deleted file mode 100644
index 1bcf3441b6..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/UpdateOperation.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-
-import commonj.sdo.DataObject;
-
-
-public class UpdateOperation extends ChangeOperation {
-
- public UpdateOperation(UpdateCommandImpl command, DataObject changedObject, String id) {
- super(command, changedObject);
- this.propagatedID = id;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/WriteCommandImpl.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/WriteCommandImpl.java
deleted file mode 100644
index a1efe3afee..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/WriteCommandImpl.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.impl;
-
-import java.sql.SQLException;
-import java.util.StringTokenizer;
-
-import org.apache.tuscany.das.rdb.config.Config;
-
-import commonj.sdo.DataObject;
-
-public abstract class WriteCommandImpl extends CommandImpl {
-
-
- public WriteCommandImpl(String sqlString) {
- super(sqlString);
- }
-
- public void execute() {
-
- boolean success = false;
- try {
- statement.executeUpdate(parameters);
- success = true;
- } catch (SQLException e) {
- throw new RuntimeException(e);
- } finally {
- if (success) {
- statement.getConnection().cleanUp();
- } else {
- statement.getConnection().errorCleanUp();
- }
- }
-
- }
-
- public DataObject executeQuery() {
- throw new UnsupportedOperationException();
- }
-
- public Config getMappingModel() {
- return configWrapper.getConfig();
- }
-
- public String toString() {
-
- StringBuffer buffer = new StringBuffer();
- buffer.append("\nSQL: " + statement.queryString);
-
- return buffer.toString();
- }
-
- public int getGeneratedKey() {
- throw new RuntimeException("No generated key is available");
- }
-
- public void addParameters(String parameters) {
- StringTokenizer tokenizer = new StringTokenizer(parameters);
- for (int idx = 1; tokenizer.hasMoreTokens(); idx++) {
- ParameterImpl p = new ParameterImpl();
- p.setName(tokenizer.nextToken());
- p.setIndex(idx);
- addParameter(p);
- }
- }
-
-
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/merge/impl/GraphMerger.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/merge/impl/GraphMerger.java
deleted file mode 100644
index a3389b9721..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/merge/impl/GraphMerger.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.merge.impl;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.logging.Logger;
-
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.wrapper.QualifiedColumn;
-import org.apache.tuscany.das.rdb.graphbuilder.impl.MultiTableRegistry;
-import org.apache.tuscany.das.rdb.graphbuilder.impl.TableRegistry;
-import org.apache.tuscany.sdo.impl.ChangeSummaryImpl;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
-import commonj.sdo.ChangeSummary;
-import commonj.sdo.DataGraph;
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-import commonj.sdo.Type;
-import commonj.sdo.helper.TypeHelper;
-
-public class GraphMerger {
-
- private static Logger logger = Logger.getLogger("GraphMerger");
-
- private Map keys = new HashMap();
-
- private TableRegistry registry = new MultiTableRegistry();
-
- // TODO lots of cleanup/design
- public GraphMerger() {
- // Empty Constructor
- }
-
- // TODO Replace EMF reference with SDOUtil function when available
- // (Tuscany-583)
- public DataObject emptyGraph(Config config) {
-
- if (config.getDataObjectModel() == null) {
- throw new RuntimeException("DataObjectModel must be specified in the Config");
- }
-
- String uri = "http:///org.apache.tuscany.das.rdb/das";
- TypeHelper typeHelper = SDOUtil.createTypeHelper();
- Type rootType = SDOUtil.createType(typeHelper, uri + "/DataGraphRoot", "DataGraphRoot", false);
-
- List types = SDOUtil.getTypes(typeHelper, config.getDataObjectModel());
- if (types == null) {
- throw new RuntimeException("SDO Types have not been registered for URI " + config.getDataObjectModel());
- }
-
- Iterator i = types.iterator();
- while (i.hasNext()) {
- Type type = (Type) i.next();
- Property property = SDOUtil.createProperty(rootType, type.getName(), type);
- SDOUtil.setContainment(property, true);
- SDOUtil.setMany(property, true);
- }
-
- // Create the DataGraph
- DataGraph g = SDOUtil.createDataGraph();
-
- // Create the root object
- g.createRootObject(rootType);
-
- ChangeSummary summary = g.getChangeSummary();
- summary.beginLogging();
-
- return g.getRootObject();
- }
-
- public DataObject merge(List graphs) {
- DataObject primaryGraph = (DataObject) graphs.get(0);
-
- Iterator i = graphs.iterator();
- if (i.hasNext()) {
- i.next();
- }
- while (i.hasNext()) {
- primaryGraph = merge(primaryGraph, (DataObject) i.next());
- }
-
- return primaryGraph;
- }
-
- public DataObject merge(DataObject primary, DataObject secondary) {
- addGraphToRegistry(primary);
-
- ChangeSummary summary = primary.getDataGraph().getChangeSummary();
- summary.endLogging();
- Iterator i = secondary.getType().getProperties().iterator();
-
- while (i.hasNext()) {
- Property p = (Property) i.next();
-
- Iterator objects = secondary.getList(p.getName()).iterator();
- while (objects.hasNext()) {
- DataObject object = (DataObject) objects.next();
- createObjectWithSubtree(primary, p, object);
- }
- }
- ((ChangeSummaryImpl) summary).resumeLogging();
- return primary;
- }
-
- private void createObjectWithSubtree(DataObject root, Property p, DataObject object) {
- Object pk = getPrimaryKey(object);
-
- if (!registry.contains(object.getType().getName(), Collections.singletonList(pk))) {
- DataObject newObject = root.createDataObject(p.getName());
- Iterator attrs = object.getType().getProperties().iterator();
- while (attrs.hasNext()) {
- Property attr = (Property) attrs.next();
- if (attr.getType().isDataType()) {
- newObject.set(attr.getName(), object.get(attr));
- }
- }
- registry.put(object.getType().getName(), Collections.singletonList(pk), newObject);
- Iterator refs = object.getType().getProperties().iterator();
- while (refs.hasNext()) {
- Property ref = (Property) refs.next();
- if (!ref.getType().isDataType()) {
- List refObjects;
- if (!ref.isMany()) {
- refObjects = Collections.singletonList(object.get(ref));
- } else {
- refObjects = (List) object.get(ref);
- }
- Iterator iter = refObjects.iterator();
- while (iter.hasNext()) {
- DataObject refObject = (DataObject) iter.next();
- createObjectWithSubtree(root, refObject.getContainmentProperty(), refObject);
- refObject = registry.get(refObject.getType().getName(),
- Collections.singletonList(getPrimaryKey(refObject)));
- if (ref.isMany()) {
- newObject.getList(newObject.getType().getProperty(ref.getName())).add(refObject);
- } else {
- newObject.set(newObject.getType().getProperty(ref.getName()), refObject);
- }
- }
- }
- }
- }
-
- }
-
- private void addGraphToRegistry(DataObject graph1) {
- Iterator i = graph1.getType().getProperties().iterator();
- while (i.hasNext()) {
- Property p = (Property) i.next();
- Iterator objects = graph1.getList(p).iterator();
- while (objects.hasNext()) {
- DataObject object = (DataObject) objects.next();
- Object pk = object.get(getPrimaryKeyName(object));
- logger.finest("Adding object with pk " + pk + " to registry");
- registry.put(object.getType().getName(), Collections.singletonList(pk), object);
- }
- }
- }
-
- private Object getPrimaryKey(DataObject object) {
- String pkName = getPrimaryKeyName(object);
- return object.get(pkName);
- }
-
- private String getPrimaryKeyName(DataObject object) {
- return (String) keys.get(object.getType().getName());
- }
-
- public void addPrimaryKey(String key) {
- QualifiedColumn column = new QualifiedColumn(key);
- logger.finest("Adding " + column.getTableName() + " " + column.getColumnName() + " to keys");
- keys.put(column.getTableName(), column.getColumnName());
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/ConfigUtil.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/ConfigUtil.java
deleted file mode 100644
index e3ae306485..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/ConfigUtil.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.util;
-
-import java.io.IOException;
-import java.io.InputStream;
-
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
-import commonj.sdo.helper.XMLHelper;
-
-/**
- * Config util provides config-related utilities such as loading a Config
- * instance from an InputStream
- *
- */
-public final class ConfigUtil {
-
- private ConfigUtil() {
-
- }
-
- public static Config loadConfig(InputStream configStream) {
-
- if (configStream == null) {
- throw new RuntimeException("Cannot load configuration from a null InputStream. "
- + "Possibly caused by an incorrect config xml file name");
- }
-
- SDOUtil.registerStaticTypes(ConfigFactory.class);
- XMLHelper helper = XMLHelper.INSTANCE;
-
- try {
- return (Config) helper.load(configStream).getRootObject();
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/DataObjectUtil.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/DataObjectUtil.java
deleted file mode 100644
index b9649669e5..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/DataObjectUtil.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.util;
-
-import java.util.Iterator;
-import java.util.List;
-
-import commonj.sdo.ChangeSummary;
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-import commonj.sdo.ChangeSummary.Setting;
-import commonj.sdo.helper.DataFactory;
-
-/**
- */
-public final class DataObjectUtil {
-
- private DataObjectUtil() {
-
- }
-
- // Utilities
- public static DataObject getRestoredCopy(DataObject changedDO) {
- DataObject changedCopy = getCopy(changedDO);
- restoreAttributeValues(changedCopy, changedDO);
- return changedCopy;
- }
-
- public static DataObject getCopy(DataObject original) {
-
- DataObject copy = DataFactory.INSTANCE.create(original.getType());
-
- // Fill in values
- Iterator i = original.getType().getProperties().iterator();
- while (i.hasNext()) {
- Property feature = (Property) i.next();
- copy.set(feature, original.get(feature));
- }
- return copy;
- }
-
- /**
- * @param changedCopy
- * @return
- */
- private static void restoreAttributeValues(DataObject changedCopy, DataObject changedDO) {
-
- ChangeSummary changeSummary = changedDO.getDataGraph().getChangeSummary();
- List changes = changeSummary.getOldValues(changedDO);
- if (changes == null) {
- return;
- }
-
- Iterator i = changes.iterator();
- while (i.hasNext()) {
- Setting s = (Setting) i.next();
- if (s.getProperty().getType().isDataType()) {
- changedCopy.set(s.getProperty(), s.getValue());
- }
- }
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/LoggerFactory.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/LoggerFactory.java
deleted file mode 100644
index bcd4386415..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/LoggerFactory.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.util;
-
-/* Import necessary log4j API classes */
-import org.apache.log4j.Appender;
-import org.apache.log4j.ConsoleAppender;
-import org.apache.log4j.Layout;
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
-import org.apache.log4j.PatternLayout;
-
-/**
- * Helper class for logging using external log utility : log4j
- * This will use log4j and to configure it, please add/update log4j.properties
- *
- * @author lresende
- */
-
-public final class LoggerFactory {
- public static final LoggerFactory INSTANCE = new LoggerFactory();
-
- private static Layout defaultLayout;
-
- private static Appender defaultAppender;
-
- static {
- synchronized (LoggerFactory.class) {
- defaultLayout = new PatternLayout(LoggerLayout.layout());
- defaultAppender = new ConsoleAppender(defaultLayout);
- }
- }
-
- private LoggerFactory() {
-
- }
-
- public Logger getLogger(Class loggingClass) {
- Logger logger = Logger.getLogger(loggingClass);
- logger.setLevel(Level.OFF);
- logger.addAppender(defaultAppender);
-
- return logger;
- }
-
- public Logger getLogger(Class loggingClass, Level logLevel) {
- Logger logger = Logger.getLogger(loggingClass);
- logger.setLevel(logLevel);
- logger.addAppender(defaultAppender);
-
- return logger;
- }
-
- public static void main(String[] args) {
-
- Logger log = LoggerFactory.INSTANCE.getLogger(LoggerFactory.class);
- if (log.isDebugEnabled()) {
- log.debug("something");
- }
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/LoggerLayout.java b/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/LoggerLayout.java
deleted file mode 100644
index f34330be48..0000000000
--- a/branches/das-java-M2/rdb/src/main/java/org/apache/tuscany/das/rdb/util/LoggerLayout.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.util;
-
-/**
- * Log4J layout helper for Tuscany DAS
- * @author lresende
- */
-public final class LoggerLayout {
-
- private LoggerLayout() {
-
- }
-
- public static String layout() {
-
- /*
- * Substitute symbols
- * %c Logger, %c{2 } last 2 partial names
- * %C Class name (full agony), %C{2 } last 2 partial names
- * %d{dd MMM yyyy HH:MM:ss } Date, format see java.text.SimpleDateFormat
- * %F File name
- * %l Location (caution: compiler-option-dependently)
- * %L Line number
- * %m user-defined message
- * %M Method name
- * %p Level
- * %r Milliseconds since program start
- * %t Threadname
- * %x, %X see Doku
- * %% individual percentage sign
- *
- * Caution: %C, %F, %l, %L, %M slow down program run!
- * Note, %n is newline
- */
-
- return "[DAS RDB] - %c{1}.%M (%L) : %m %n";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/main/resources/META-INF/LICENSE.txt b/branches/das-java-M2/rdb/src/main/resources/META-INF/LICENSE.txt
deleted file mode 100644
index 25d78feeac..0000000000
--- a/branches/das-java-M2/rdb/src/main/resources/META-INF/LICENSE.txt
+++ /dev/null
@@ -1,1277 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- 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.
-
-
-APACHE TUSCANY SUBCOMPONENTS:
-
-The Apache Tuscany distribution includes a number of subcomponents with
-separate copyright notices and license terms. Your use of the source
-code for the these subcomponents is subject to the terms and
-conditions of the following licenses.
-
-===============================================================================
-
-For the Eclipse Modeling Framework component and the Celtix binding:
-
-Eclipse Public License - v 1.0
-
-THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
-PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF
-THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
-
-1. DEFINITIONS
-
-"Contribution" means:
-
-a) in the case of the initial Contributor, the initial code and
-documentation distributed under this Agreement, and
-b) in the case of each subsequent Contributor:
-
-i) changes to the Program, and
-
-ii) additions to the Program;
-
-where such changes and/or additions to the Program originate from and
-are distributed by that particular Contributor. A Contribution
-'originates' from a Contributor if it was added to the Program by such
-Contributor itself or anyone acting on such Contributor's behalf.
-Contributions do not include additions to the Program which: (i) are
-separate modules of software distributed in conjunction with the
-Program under their own license agreement, and (ii) are not derivative
-works of the Program.
-
-"Contributor" means any person or entity that distributes the Program.
-
-"Licensed Patents " mean patent claims licensable by a Contributor
-which are necessarily infringed by the use or sale of its Contribution
-alone or when combined with the Program.
-
-"Program" means the Contributions distributed in accordance with this
-Agreement.
-
-"Recipient" means anyone who receives the Program under this
-Agreement, including all Contributors.
-
-2. GRANT OF RIGHTS
-
-a) Subject to the terms of this Agreement, each Contributor hereby
-grants Recipient a non-exclusive, worldwide, royalty-free copyright
-license to reproduce, prepare derivative works of, publicly display,
-publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and
-object code form.
-
-b) Subject to the terms of this Agreement, each Contributor hereby
-grants Recipient a non-exclusive, worldwide, royalty-free patent
-license under Licensed Patents to make, use, sell, offer to sell,
-import and otherwise transfer the Contribution of such Contributor, if
-any, in source code and object code form. This patent license shall
-apply to the combination of the Contribution and the Program if, at
-the time the Contribution is added by the Contributor, such addition
-of the Contribution causes such combination to be covered by the
-Licensed Patents. The patent license shall not apply to any other
-combinations which include the Contribution. No hardware per se is
-licensed hereunder.
-
-c) Recipient understands that although each Contributor grants the
-licenses to its Contributions set forth herein, no assurances are
-provided by any Contributor that the Program does not infringe the
-patent or other intellectual property rights of any other entity. Each
-Contributor disclaims any liability to Recipient for claims brought by
-any other entity based on infringement of intellectual property rights
-or otherwise. As a condition to exercising the rights and licenses
-granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For
-example, if a third party patent license is required to allow
-Recipient to distribute the Program, it is Recipient's responsibility
-to acquire that license before distributing the Program.
-
-d) Each Contributor represents that to its knowledge it has sufficient
-copyright rights in its Contribution, if any, to grant the copyright
-license set forth in this Agreement.
-
-3. REQUIREMENTS
-
-A Contributor may choose to distribute the Program in object code form
-under its own license agreement, provided that:
-
-a) it complies with the terms and conditions of this Agreement; and
-
-b) its license agreement:
-
-i) effectively disclaims on behalf of all Contributors all warranties
-and conditions, express and implied, including warranties or
-conditions of title and non-infringement, and implied warranties or
-conditions of merchantability and fitness for a particular purpose;
-
-ii) effectively excludes on behalf of all Contributors all liability
-for damages, including direct, indirect, special, incidental and
-consequential damages, such as lost profits;
-
-iii) states that any provisions which differ from this Agreement are
-offered by that Contributor alone and not by any other party; and
-
-iv) states that source code for the Program is available from such
-Contributor, and informs licensees how to obtain it in a reasonable
-manner on or through a medium customarily used for software exchange.
-
-When the Program is made available in source code form:
-
-a) it must be made available under this Agreement; and
-
-b) a copy of this Agreement must be included with each copy of the
-Program.
-
-Contributors may not remove or alter any copyright notices contained
-within the Program.
-
-Each Contributor must identify itself as the originator of its
-Contribution, if any, in a manner that reasonably allows subsequent
-Recipients to identify the originator of the Contribution.
-
-4. COMMERCIAL DISTRIBUTION
-
-Commercial distributors of software may accept certain
-responsibilities with respect to end users, business partners and the
-like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a
-commercial product offering should do so in a manner which does not
-create potential liability for other Contributors. Therefore, if a
-Contributor includes the Program in a commercial product offering,
-such Contributor ("Commercial Contributor") hereby agrees to defend
-and indemnify every other Contributor ("Indemnified Contributor")
-against any losses, damages and costs (collectively "Losses") arising
-from claims, lawsuits and other legal actions brought by a third party
-against the Indemnified Contributor to the extent caused by the acts
-or omissions of such Commercial Contributor in connection with its
-distribution of the Program in a commercial product offering. The
-obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement.
-In order to qualify, an Indemnified Contributor must: a) promptly
-notify the Commercial Contributor in writing of such claim, and b)
-allow the Commercial Contributor to control, and cooperate with the
-Commercial Contributor in, the defense and any related settlement
-negotiations. The Indemnified Contributor may participate in any such
-claim at its own expense.
-
-For example, a Contributor might include the Program in a commercial
-product offering, Product X. That Contributor is then a Commercial
-Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance
-claims and warranties are such Commercial Contributor's responsibility
-alone. Under this section, the Commercial Contributor would have to
-defend claims against the other Contributors related to those
-performance claims and warranties, and if a court requires any other
-Contributor to pay any damages as a result, the Commercial Contributor
-must pay those damages.
-
-5. NO WARRANTY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
-PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY
-WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
-OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and
-distributing the Program and assumes all risks associated with its
-exercise of rights under this Agreement , including but not limited to
-the risks and costs of program errors, compliance with applicable
-laws, damage to or loss of data, programs or equipment, and
-unavailability or interruption of operations.
-
-6. DISCLAIMER OF LIABILITY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR
-ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
-WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
-DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
-HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
-7. GENERAL
-
-If any provision of this Agreement is invalid or unenforceable under
-applicable law, it shall not affect the validity or enforceability of
-the remainder of the terms of this Agreement, and without further
-action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.
-
-If Recipient institutes patent litigation against any entity
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-the Program itself (excluding combinations of the Program with other
-software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of
-the date such litigation is filed.
-
-All Recipient's rights under this Agreement shall terminate if it
-fails to comply with any of the material terms or conditions of this
-Agreement and does not cure such failure in a reasonable period of
-time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use
-and distribution of the Program as soon as reasonably practicable.
-However, Recipient's obligations under this Agreement and any licenses
-granted by Recipient relating to the Program shall continue and
-survive.
-
-Everyone is permitted to copy and distribute copies of this Agreement,
-but in order to avoid inconsistency the Agreement is copyrighted and
-may only be modified in the following manner. The Agreement Steward
-reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement
-Steward has the right to modify this Agreement. The Eclipse Foundation
-is the initial Agreement Steward. The Eclipse Foundation may assign
-the responsibility to serve as the Agreement Steward to a suitable
-separate entity. Each new version of the Agreement will be given a
-distinguishing version number. The Program (including Contributions)
-may always be distributed subject to the version of the Agreement
-under which it was received. In addition, after a new version of the
-Agreement is published, Contributor may elect to distribute the
-Program (including its Contributions) under the new version. Except as
-expressly stated in Sections 2(a) and 2(b) above, Recipient receives
-no rights or licenses to the intellectual property of any Contributor
-under this Agreement, whether expressly, by implication, estoppel or
-otherwise. All rights in the Program not expressly granted under this
-Agreement are reserved.
-
-This Agreement is governed by the laws of the State of New York and
-the intellectual property laws of the United States of America. No
-party to this Agreement will bring a legal action under this Agreement
-more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.
-
-===============================================================================
-
-For the Rhino JavaScript container component:
-
-Mozilla Public License 1.1 (MPL 1.1)
-
-1. Definitions.
-
- 1.0.1. "Commercial Use" means distribution or otherwise making the
-Covered Code available to a third party.
-
- 1.1. "Contributor" means each entity that creates or contributes to
-the creation of Modifications.
-
- 1.2. "Contributor Version" means the combination of the Original Code,
-prior Modifications used by a Contributor, and the Modifications made by that
-particular Contributor.
-
- 1.3. "Covered Code" means the Original Code or Modifications or the
-combination of the Original Code and Modifications, in each case including
-portions thereof.
-
- 1.4. "Electronic Distribution Mechanism" means a mechanism generally
-accepted in the software development community for the electronic transfer of
-data.
-
- 1.5. "Executable" means Covered Code in any form other than Source
-Code.
-
- 1.6. "Initial Developer" means the individual or entity identified as
-the Initial Developer in the Source Code notice required by Exhibit A.
-
- 1.7. "Larger Work" means a work which combines Covered Code or
-portions thereof with code not governed by the terms of this License.
-
- 1.8. "License" means this document.
-
- 1.8.1. "Licensable" means having the right to grant, to the maximum
-extent possible, whether at the time of the initial grant or subsequently
-acquired, any and all of the rights conveyed herein.
-
- 1.9. "Modifications" means any addition to or deletion from the
-substance or structure of either the Original Code or any previous
-Modifications. When Covered Code is released as a series of files, a
-Modification is:
- A. Any addition to or deletion from the contents of a file
-containing Original Code or previous Modifications.
-
- B. Any new file that contains any part of the Original Code or
-previous Modifications.
-
- 1.10. "Original Code" means Source Code of computer software code
-which is described in the Source Code notice required by Exhibit A as Original
-Code, and which, at the time of its release under this License is not already
-Covered Code governed by this License.
-
- 1.10.1. "Patent Claims" means any patent claim(s), now owned or
-hereafter acquired, including without limitation, method, process, and
-apparatus claims, in any patent Licensable by grantor.
-
- 1.11. "Source Code" means the preferred form of the Covered Code for
-making modifications to it, including all modules it contains, plus any
-associated interface definition files, scripts used to control compilation and
-installation of an Executable, or source code differential comparisons against
-either the Original Code or another well known, available Covered Code of the
-Contributor's choice. The Source Code can be in a compressed or archival form,
-provided the appropriate decompression or de-archiving software is widely
-available for no charge.
-
- 1.12. "You" (or "Your") means an individual or a legal entity
-exercising rights under, and complying with all of the terms of, this License
-or a future version of this License issued under Section 6.1. For legal
-entities, "You" includes any entity which controls, is controlled by, or is
-under common control with You. For purposes of this definition, "control"
-means (a) the power, direct or indirect, to cause the direction or management
-of such entity, whether by contract or otherwise, or (b) ownership of more
-than fifty percent (50%) of the outstanding shares or beneficial ownership of
-such entity.
-
-2. Source Code License.
-
- 2.1. The Initial Developer Grant.
- The Initial Developer hereby grants You a world-wide, royalty-free,
-non-exclusive license, subject to third party intellectual property claims:
- (a) under intellectual property rights (other than patent or
-trademark) Licensable by Initial Developer to use, reproduce, modify, display,
-perform, sublicense and distribute the Original Code (or portions thereof)
-with or without Modifications, and/or as part of a Larger Work; and
-
- (b) under Patents Claims infringed by the making, using or selling
-of Original Code, to make, have made, use, practice, sell, and offer for sale,
-and/or otherwise dispose of the Original Code (or portions thereof).
- (c) the licenses granted in this Section 2.1(a) and
-(b) are effective on the date Initial Developer first distributes Original
-Code under the terms of this License.
-
- (d) Notwithstanding Section 2.1(b) above, no patent license is
-granted: 1) for code that You delete from the Original Code; 2) separate from
-the Original Code; or 3) for infringements caused by: i) the modification of
-the Original Code or ii) the combination of the Original Code with other
-software or devices.
-
- 2.2. Contributor Grant.
- Subject to third party intellectual property claims, each Contributor
-hereby grants You a world-wide, royalty-free, non-exclusive license
-
- (a) under intellectual property rights (other than patent or
-trademark) Licensable by Contributor, to use, reproduce, modify, display,
-perform, sublicense and distribute the Modifications created by such
-Contributor (or portions thereof) either on an unmodified basis, with other
-Modifications, as Covered Code and/or as part of a Larger Work; and
-
- (b) under Patent Claims infringed by the making, using, or selling
-of Modifications made by that Contributor either alone and/or in combination
-with its Contributor Version (or portions of such combination), to make, use,
-sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications
-made by that Contributor (or portions thereof); and 2) the combination of
-Modifications made by that Contributor with its Contributor Version (or
-portions of such combination).
-
- (c) the licenses granted in Sections 2.2(a) and 2.2(b) are
-effective on the date Contributor first makes Commercial Use of the Covered
-Code.
-
- (d) Notwithstanding Section 2.2(b) above, no patent license is
-granted: 1) for any code that Contributor has deleted from the Contributor
-Version; 2) separate from the Contributor Version; 3) for infringements
-caused by: i) third party modifications of Contributor Version or ii) the
-combination of Modifications made by that Contributor with other software
-(except as part of the Contributor Version) or other devices; or 4) under
-Patent Claims infringed by Covered Code in the absence of Modifications made
-by that Contributor.
-
-
-3. Distribution Obligations.
-
- 3.1. Application of License.
- The Modifications which You create or to which You contribute are
-governed by the terms of this License, including without limitation Section
-2.2. The Source Code version of Covered Code may be distributed only under the
-terms of this License or a future version of this License released under
-Section 6.1, and You must include a copy of this License with every copy of
-the Source Code You distribute. You may not offer or impose any terms on any
-Source Code version that alters or restricts the applicable version of this
-License or the recipients' rights hereunder. However, You may include an
-additional document offering the additional rights described in Section 3.5.
-
- 3.2. Availability of Source Code.
- Any Modification which You create or to which You contribute must be
-made available in Source Code form under the terms of this License either on
-the same media as an Executable version or via an accepted Electronic
-Distribution Mechanism to anyone to whom you made an Executable version
-available; and if made available via Electronic Distribution Mechanism, must
-remain available for at least twelve (12) months after the date it initially
-became available, or at least six (6) months after a subsequent version of
-that particular Modification has been made available to such recipients. You
-are responsible for ensuring that the Source Code version remains available
-even if the Electronic Distribution Mechanism is maintained by a third party.
-
- 3.3. Description of Modifications.
- You must cause all Covered Code to which You contribute to contain a
-file documenting the changes You made to create that Covered Code and the date
-of any change. You must include a prominent statement that the Modification is
-derived, directly or indirectly, from Original Code provided by the Initial
-Developer and including the name of the Initial Developer in (a) the Source
-Code, and (b) in any notice in an Executable version or related documentation
-in which You describe the origin or ownership of the Covered Code.
-
- 3.4. Intellectual Property Matters
- (a) Third Party Claims.
- If Contributor has knowledge that a license under a third party's
-intellectual property rights is required to exercise the rights granted by
-such Contributor under Sections 2.1 or 2.2, Contributor must include a text
-file with the Source Code distribution titled "LEGAL" which describes the
-claim and the party making the claim in sufficient detail that a recipient
-will know whom to contact. If Contributor obtains such knowledge after the
-Modification is made available as described in Section 3.2, Contributor shall
-promptly modify the LEGAL file in all copies Contributor makes available
-thereafter and shall take other steps (such as notifying appropriate mailing
-lists or newsgroups) reasonably calculated to inform those who received the
-Covered Code that new knowledge has been obtained.
-
- (b) Contributor APIs.
- If Contributor's Modifications include an application programming
-interface and Contributor has knowledge of patent licenses which are
-reasonably necessary to implement that API, Contributor must also include this
-information in the LEGAL file.
-
- (c) Representations.
- Contributor represents that, except as disclosed pursuant to
-Section 3.4(a) above, Contributor believes that Contributor's Modifications
-are Contributor's original creation(s) and/or Contributor has sufficient
-rights to grant the rights conveyed by this License.
-
-
- 3.5. Required Notices.
- You must duplicate the notice in Exhibit A in each file of the Source
-Code. If it is not possible to put such notice in a particular Source Code
-file due to its structure, then You must include such notice in a location
-(such as a relevant directory) where a user would be likely to look for such a
-notice. If You created one or more Modification(s) You may add your name as a
-Contributor to the notice described in Exhibit A. You must also duplicate
-this License in any documentation for the Source Code where You describe
-recipients' rights or ownership rights relating to Covered Code. You may
-choose to offer, and to charge a fee for, warranty, support, indemnity or
-liability obligations to one or more recipients of Covered Code. However, You
-may do so only on Your own behalf, and not on behalf of the Initial Developer
-or any Contributor. You must make it absolutely clear than any such warranty,
-support, indemnity or liability obligation is offered by You alone, and You
-hereby agree to indemnify the Initial Developer and every Contributor for any
-liability incurred by the Initial Developer or such Contributor as a result of
-warranty, support, indemnity or liability terms You offer.
-
- 3.6. Distribution of Executable Versions.
- You may distribute Covered Code in Executable form only if the
-requirements of Section 3.1-3.5 have been met for that Covered Code, and if
-You include a notice stating that the Source Code version of the Covered Code
-is available under the terms of this License, including a description of how
-and where You have fulfilled the obligations of Section 3.2. The notice must
-be conspicuously included in any notice in an Executable version, related
-documentation or collateral in which You describe recipients' rights relating
-to the Covered Code. You may distribute the Executable version of Covered Code
-or ownership rights under a license of Your choice, which may contain terms
-different from this License, provided that You are in compliance with the
-terms of this License and that the license for the Executable version does not
-attempt to limit or alter the recipient's rights in the Source Code version
-from the rights set forth in this License. If You distribute the Executable
-version under a different license You must make it absolutely clear that any
-terms which differ from this License are offered by You alone, not by the
-Initial Developer or any Contributor. You hereby agree to indemnify the
-Initial Developer and every Contributor for any liability incurred by the
-Initial Developer or such Contributor as a result of any such terms You offer.
-
- 3.7. Larger Works.
- You may create a Larger Work by combining Covered Code with other code
-not governed by the terms of this License and distribute the Larger Work as a
-single product. In such a case, You must make sure the requirements of this
-License are fulfilled for the Covered Code.
-
-4. Inability to Comply Due to Statute or Regulation.
-
- If it is impossible for You to comply with any of the terms of this
-License with respect to some or all of the Covered Code due to statute,
-judicial order, or regulation then You must: (a) comply with the terms of this
-License to the maximum extent possible; and (b) describe the limitations and
-the code they affect. Such description must be included in the LEGAL file
-described in Section 3.4 and must be included with all distributions of the
-Source Code. Except to the extent prohibited by statute or regulation, such
-description must be sufficiently detailed for a recipient of ordinary skill to
-be able to understand it.
-
-5. Application of this License.
-
- This License applies to code to which the Initial Developer has attached
-the notice in Exhibit A and to related Covered Code.
-
-6. Versions of the License.
-
- 6.1. New Versions.
- Netscape Communications Corporation ("Netscape") may publish revised
-and/or new versions of the License from time to time. Each version will be
-given a distinguishing version number.
-
- 6.2. Effect of New Versions.
- Once Covered Code has been published under a particular version of the
-License, You may always continue to use it under the terms of that version.
-You may also choose to use such Covered Code under the terms of any subsequent
-version of the License published by Netscape. No one other than Netscape has
-the right to modify the terms applicable to Covered Code created under this
-License.
-
- 6.3. Derivative Works.
- If You create or use a modified version of this License (which you may
-only do in order to apply it to code which is not already Covered Code
-governed by this License), You must (a) rename Your license so that the
-phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", "MPL", "NPL" or
-any confusingly similar phrase do not appear in your license (except to note
-that your license differs from this License) and (b) otherwise make it clear
-that Your version of the license contains terms which differ from the Mozilla
-Public License and Netscape Public License. (Filling in the name of the
-Initial Developer, Original Code or Contributor in the notice described in
-Exhibit A shall not of themselves be deemed to be modifications of this
-License.)
-
-7. DISCLAIMER OF WARRANTY.
-
- COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT
-LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE,
-FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE
-QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED
-CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY
-OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR
-CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS
-LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS
-DISCLAIMER.
-
-8. TERMINATION.
-
- 8.1. This License and the rights granted hereunder will terminate
-automatically if You fail to comply with terms herein and fail to cure such
-breach within 30 days of becoming aware of the breach. All sublicenses to the
-Covered Code which are properly granted shall survive any termination of this
-License. Provisions which, by their nature, must remain in effect beyond the
-termination of this License shall survive.
-
- 8.2. If You initiate litigation by asserting a patent infringement
-claim (excluding declatory judgment actions) against Initial Developer or a
-Contributor (the Initial Developer or Contributor against whom You file such
-action is referred to as "Participant") alleging that:
-
- (a) such Participant's Contributor Version directly or indirectly
-infringes any patent, then any and all rights granted by such Participant to
-You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice
-from Participant terminate prospectively, unless if within 60 days after
-receipt of notice You either: (i) agree in writing to pay Participant a
-mutually agreeable reasonable royalty for Your past and future use of
-Modifications made by such Participant, or (ii) withdraw Your litigation claim
-with respect to the Contributor Version against such Participant. If within
-60 days of notice, a reasonable royalty and payment arrangement are not
-mutually agreed upon in writing by the parties or the litigation claim is not
-withdrawn, the rights granted by Participant to You under Sections 2.1 and/or
-2.2 automatically terminate at the expiration of the 60 day notice period
-specified above.
-
- (b) any software, hardware, or device, other than such Participant's
-Contributor Version, directly or indirectly infringes any patent, then any
-rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are
-revoked effective as of the date You first made, used, sold, distributed, or
-had made, Modifications made by that Participant.
-
- 8.3. If You assert a patent infringement claim against Participant
-alleging that such Participant's Contributor Version directly or indirectly
-infringes any patent where such claim is resolved (such as by license or
-settlement) prior to the initiation of patent infringement litigation, then
-the reasonable value of the licenses granted by such Participant under
-Sections 2.1 or 2.2 shall be taken into account in determining the amount or
-value of any payment or license.
-
- 8.4. In the event of termination under Sections 8.1 or 8.2 above, all
-end user license agreements (excluding distributors and resellers) which have
-been validly granted by You or any distributor hereunder prior to termination
-shall survive termination.
-
-9. LIMITATION OF LIABILITY.
-
- UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
-(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL
-DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY
-SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT,
-SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING,
-WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER
-FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES,
-EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH
-DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH
-OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT
-APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
-EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS
-EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
-
-10. U.S. GOVERNMENT END USERS.
-
- The Covered Code is a "commercial item," as that term is defined in 48
-C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and
-"commercial computer software documentation," as such terms are used in 48
-C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R.
-227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users
-acquire Covered Code with only those rights set forth herein.
-
-11. MISCELLANEOUS.
-
- This License represents the complete agreement concerning subject matter
-hereof. If any provision of this License is held to be unenforceable, such
-provision shall be reformed only to the extent necessary to make it
-enforceable. This License shall be governed by California law provisions
-(except to the extent applicable law, if any, provides otherwise), excluding
-its conflict-of-law provisions. With respect to disputes in which at least one
-party is a citizen of, or an entity chartered or registered to do business in
-the United States of America, any litigation relating to this License shall be
-subject to the jurisdiction of the Federal Courts of the Northern District of
-California, with venue lying in Santa Clara County, California, with the
-losing party responsible for costs, including without limitation, court costs
-and reasonable attorneys' fees and expenses. The application of the United
-Nations Convention on Contracts for the International Sale of Goods is
-expressly excluded. Any law or regulation which provides that the language of
-a contract shall be construed against the drafter shall not apply to this
-License.
-
-12. RESPONSIBILITY FOR CLAIMS.
-
- As between Initial Developer and the Contributors, each party is
-responsible for claims and damages arising, directly or indirectly, out of its
-utilization of rights under this License and You agree to work with Initial
-Developer and Contributors to distribute such responsibility on an equitable
-basis. Nothing herein is intended or shall be deemed to constitute any
-admission of liability.
-
-13. MULTIPLE-LICENSED CODE.
-
- Initial Developer may designate portions of the Covered Code as
-Multiple-Licensed. Multiple-Licensed means that the Initial Developer permits
-you to utilize portions of the Covered Code under Your choice of the MPL or
-the alternative licenses, if any, specified by the Initial Developer in the
-file described in Exhibit A.
-
-
-EXHIBIT A -Mozilla Public License.
-
- ``The contents of this file are subject to the Mozilla Public License
-Version 1.1 (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.mozilla.org/MPL/
-
- Software distributed under the License is distributed on an "AS IS"
-basis, WITHOUT WARRANTY OF
- ANY KIND, either express or implied. See the License for the specific
-language governing rights and
- limitations under the License.
-
- The Original Code is ______________________________________.
-
- The Initial Developer of the Original Code is ________________________.
-Portions created by
- ______________________ are Copyright (C) ______
-_______________________. All Rights
- Reserved.
-
- Contributor(s): ______________________________________.
-
- Alternatively, the contents of this file may be used under the terms of
-the _____ license (the [___] License), in which case the provisions of
-[______] License are applicable instead of those above. If you wish to allow
-use of your version of this file only under the terms of the [____] License
-and not to allow others to use your version of this file under the MPL,
-indicate your decision by deleting the provisions above and replace them
-with the notice and other provisions required by the [___] License. If you do
-not delete the provisions above, a recipient may use your version of this file
-under either the MPL or the [___] License."
-
- [NOTE: The text of this Exhibit A may differ slightly from the text of
-the notices in the Source Code files of the Original Code. You should use the
-text of this Exhibit A rather than the text found in the Original Code Source
-Code for Your Modifications.]
-
-
-===============================================================================
-
-For the JAX-WS Reference Implementation component:
-
-COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
-
-
- 1. Definitions.
-
- 1.1. "Contributor" means each individual or entity that
- creates or contributes to the creation of Modifications.
-
- 1.2. "Contributor Version" means the combination of the
- Original Software, prior Modifications used by a
- Contributor (if any), and the Modifications made by that
- particular Contributor.
-
- 1.3. "Covered Software" means (a) the Original Software, or
- (b) Modifications, or (c) the combination of files
- containing Original Software with files containing
- Modifications, in each case including portions thereof.
-
- 1.4. "Executable" means the Covered Software in any form
- other than Source Code.
-
- 1.5. "Initial Developer" means the individual or entity
- that first makes Original Software available under this
- License.
-
- 1.6. "Larger Work" means a work which combines Covered
- Software or portions thereof with code not governed by the
- terms of this License.
-
- 1.7. "License" means this document.
-
- 1.8. "Licensable" means having the right to grant, to the
- maximum extent possible, whether at the time of the initial
- grant or subsequently acquired, any and all of the rights
- conveyed herein.
-
- 1.9. "Modifications" means the Source Code and Executable
- form of any of the following:
-
- A. Any file that results from an addition to,
- deletion from or modification of the contents of a
- file containing Original Software or previous
- Modifications;
-
- B. Any new file that contains any part of the
- Original Software or previous Modification; or
-
- C. Any new file that is contributed or otherwise made
- available under the terms of this License.
-
- 1.10. "Original Software" means the Source Code and
- Executable form of computer software code that is
- originally released under this License.
-
- 1.11. "Patent Claims" means any patent claim(s), now owned
- or hereafter acquired, including without limitation,
- method, process, and apparatus claims, in any patent
- Licensable by grantor.
-
- 1.12. "Source Code" means (a) the common form of computer
- software code in which modifications are made and (b)
- associated documentation included in or with such code.
-
- 1.13. "You" (or "Your") means an individual or a legal
- entity exercising rights under, and complying with all of
- the terms of, this License. For legal entities, "You"
- includes any entity which controls, is controlled by, or is
- under common control with You. For purposes of this
- definition, "control" means (a) the power, direct or
- indirect, to cause the direction or management of such
- entity, whether by contract or otherwise, or (b) ownership
- of more than fifty percent (50%) of the outstanding shares
- or beneficial ownership of such entity.
-
- 2. License Grants.
-
- 2.1. The Initial Developer Grant.
-
- Conditioned upon Your compliance with Section 3.1 below and
- subject to third party intellectual property claims, the
- Initial Developer hereby grants You a world-wide,
- royalty-free, non-exclusive license:
-
- (a) under intellectual property rights (other than
- patent or trademark) Licensable by Initial Developer,
- to use, reproduce, modify, display, perform,
- sublicense and distribute the Original Software (or
- portions thereof), with or without Modifications,
- and/or as part of a Larger Work; and
-
- (b) under Patent Claims infringed by the making,
- using or selling of Original Software, to make, have
- made, use, practice, sell, and offer for sale, and/or
- otherwise dispose of the Original Software (or
- portions thereof).
-
- (c) The licenses granted in Sections 2.1(a) and (b)
- are effective on the date Initial Developer first
- distributes or otherwise makes the Original Software
- available to a third party under the terms of this
- License.
-
- (d) Notwithstanding Section 2.1(b) above, no patent
- license is granted: (1) for code that You delete from
- the Original Software, or (2) for infringements
- caused by: (i) the modification of the Original
- Software, or (ii) the combination of the Original
- Software with other software or devices.
-
- 2.2. Contributor Grant.
-
- Conditioned upon Your compliance with Section 3.1 below and
- subject to third party intellectual property claims, each
- Contributor hereby grants You a world-wide, royalty-free,
- non-exclusive license:
-
- (a) under intellectual property rights (other than
- patent or trademark) Licensable by Contributor to
- use, reproduce, modify, display, perform, sublicense
- and distribute the Modifications created by such
- Contributor (or portions thereof), either on an
- unmodified basis, with other Modifications, as
- Covered Software and/or as part of a Larger Work; and
-
-
- (b) under Patent Claims infringed by the making,
- using, or selling of Modifications made by that
- Contributor either alone and/or in combination with
- its Contributor Version (or portions of such
- combination), to make, use, sell, offer for sale,
- have made, and/or otherwise dispose of: (1)
- Modifications made by that Contributor (or portions
- thereof); and (2) the combination of Modifications
- made by that Contributor with its Contributor Version
- (or portions of such combination).
-
- (c) The licenses granted in Sections 2.2(a) and
- 2.2(b) are effective on the date Contributor first
- distributes or otherwise makes the Modifications
- available to a third party.
-
- (d) Notwithstanding Section 2.2(b) above, no patent
- license is granted: (1) for any code that Contributor
- has deleted from the Contributor Version; (2) for
- infringements caused by: (i) third party
- modifications of Contributor Version, or (ii) the
- combination of Modifications made by that Contributor
- with other software (except as part of the
- Contributor Version) or other devices; or (3) under
- Patent Claims infringed by Covered Software in the
- absence of Modifications made by that Contributor.
-
- 3. Distribution Obligations.
-
- 3.1. Availability of Source Code.
-
- Any Covered Software that You distribute or otherwise make
- available in Executable form must also be made available in
- Source Code form and that Source Code form must be
- distributed only under the terms of this License. You must
- include a copy of this License with every copy of the
- Source Code form of the Covered Software You distribute or
- otherwise make available. You must inform recipients of any
- such Covered Software in Executable form as to how they can
- obtain such Covered Software in Source Code form in a
- reasonable manner on or through a medium customarily used
- for software exchange.
-
- 3.2. Modifications.
-
- The Modifications that You create or to which You
- contribute are governed by the terms of this License. You
- represent that You believe Your Modifications are Your
- original creation(s) and/or You have sufficient rights to
- grant the rights conveyed by this License.
-
- 3.3. Required Notices.
-
- You must include a notice in each of Your Modifications
- that identifies You as the Contributor of the Modification.
- You may not remove or alter any copyright, patent or
- trademark notices contained within the Covered Software, or
- any notices of licensing or any descriptive text giving
- attribution to any Contributor or the Initial Developer.
-
- 3.4. Application of Additional Terms.
-
- You may not offer or impose any terms on any Covered
- Software in Source Code form that alters or restricts the
- applicable version of this License or the recipients'
- rights hereunder. You may choose to offer, and to charge a
- fee for, warranty, support, indemnity or liability
- obligations to one or more recipients of Covered Software.
- However, you may do so only on Your own behalf, and not on
- behalf of the Initial Developer or any Contributor. You
- must make it absolutely clear that any such warranty,
- support, indemnity or liability obligation is offered by
- You alone, and You hereby agree to indemnify the Initial
- Developer and every Contributor for any liability incurred
- by the Initial Developer or such Contributor as a result of
- warranty, support, indemnity or liability terms You offer.
-
-
- 3.5. Distribution of Executable Versions.
-
- You may distribute the Executable form of the Covered
- Software under the terms of this License or under the terms
- of a license of Your choice, which may contain terms
- different from this License, provided that You are in
- compliance with the terms of this License and that the
- license for the Executable form does not attempt to limit
- or alter the recipient's rights in the Source Code form
- from the rights set forth in this License. If You
- distribute the Covered Software in Executable form under a
- different license, You must make it absolutely clear that
- any terms which differ from this License are offered by You
- alone, not by the Initial Developer or Contributor. You
- hereby agree to indemnify the Initial Developer and every
- Contributor for any liability incurred by the Initial
- Developer or such Contributor as a result of any such terms
- You offer.
-
- 3.6. Larger Works.
-
- You may create a Larger Work by combining Covered Software
- with other code not governed by the terms of this License
- and distribute the Larger Work as a single product. In such
- a case, You must make sure the requirements of this License
- are fulfilled for the Covered Software.
-
- 4. Versions of the License.
-
- 4.1. New Versions.
-
- Sun Microsystems, Inc. is the initial license steward and
- may publish revised and/or new versions of this License
- from time to time. Each version will be given a
- distinguishing version number. Except as provided in
- Section 4.3, no one other than the license steward has the
- right to modify this License.
-
- 4.2. Effect of New Versions.
-
- You may always continue to use, distribute or otherwise
- make the Covered Software available under the terms of the
- version of the License under which You originally received
- the Covered Software. If the Initial Developer includes a
- notice in the Original Software prohibiting it from being
- distributed or otherwise made available under any
- subsequent version of the License, You must distribute and
- make the Covered Software available under the terms of the
- version of the License under which You originally received
- the Covered Software. Otherwise, You may also choose to
- use, distribute or otherwise make the Covered Software
- available under the terms of any subsequent version of the
- License published by the license steward.
-
- 4.3. Modified Versions.
-
- When You are an Initial Developer and You want to create a
- new license for Your Original Software, You may create and
- use a modified version of this License if You: (a) rename
- the license and remove any references to the name of the
- license steward (except to note that the license differs
- from this License); and (b) otherwise make it clear that
- the license contains terms which differ from this License.
-
-
- 5. DISCLAIMER OF WARRANTY.
-
- COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS"
- BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
- INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED
- SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR
- PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND
- PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY
- COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE
- INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF
- ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF
- WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
- ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS
- DISCLAIMER.
-
- 6. TERMINATION.
-
- 6.1. This License and the rights granted hereunder will
- terminate automatically if You fail to comply with terms
- herein and fail to cure such breach within 30 days of
- becoming aware of the breach. Provisions which, by their
- nature, must remain in effect beyond the termination of
- this License shall survive.
-
- 6.2. If You assert a patent infringement claim (excluding
- declaratory judgment actions) against Initial Developer or
- a Contributor (the Initial Developer or Contributor against
- whom You assert such claim is referred to as "Participant")
- alleging that the Participant Software (meaning the
- Contributor Version where the Participant is a Contributor
- or the Original Software where the Participant is the
- Initial Developer) directly or indirectly infringes any
- patent, then any and all rights granted directly or
- indirectly to You by such Participant, the Initial
- Developer (if the Initial Developer is not the Participant)
- and all Contributors under Sections 2.1 and/or 2.2 of this
- License shall, upon 60 days notice from Participant
- terminate prospectively and automatically at the expiration
- of such 60 day notice period, unless if within such 60 day
- period You withdraw Your claim with respect to the
- Participant Software against such Participant either
- unilaterally or pursuant to a written agreement with
- Participant.
-
- 6.3. In the event of termination under Sections 6.1 or 6.2
- above, all end user licenses that have been validly granted
- by You or any distributor hereunder prior to termination
- (excluding licenses granted to You by any distributor)
- shall survive termination.
-
- 7. LIMITATION OF LIABILITY.
-
- UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
- (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE
- INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF
- COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE
- LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR
- CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT
- LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK
- STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
- COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
- INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
- LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL
- INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT
- APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO
- NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR
- CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT
- APPLY TO YOU.
-
- 8. U.S. GOVERNMENT END USERS.
-
- The Covered Software is a "commercial item," as that term is
- defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial
- computer software" (as that term is defined at 48 C.F.R.
- 252.227-7014(a)(1)) and "commercial computer software
- documentation" as such terms are used in 48 C.F.R. 12.212 (Sept.
- 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1
- through 227.7202-4 (June 1995), all U.S. Government End Users
- acquire Covered Software with only those rights set forth herein.
- This U.S. Government Rights clause is in lieu of, and supersedes,
- any other FAR, DFAR, or other clause or provision that addresses
- Government rights in computer software under this License.
-
- 9. MISCELLANEOUS.
-
- This License represents the complete agreement concerning subject
- matter hereof. If any provision of this License is held to be
- unenforceable, such provision shall be reformed only to the
- extent necessary to make it enforceable. This License shall be
- governed by the law of the jurisdiction specified in a notice
- contained within the Original Software (except to the extent
- applicable law, if any, provides otherwise), excluding such
- jurisdiction's conflict-of-law provisions. Any litigation
- relating to this License shall be subject to the jurisdiction of
- the courts located in the jurisdiction and venue specified in a
- notice contained within the Original Software, with the losing
- party responsible for costs, including, without limitation, court
- costs and reasonable attorneys' fees and expenses. The
- application of the United Nations Convention on Contracts for the
- International Sale of Goods is expressly excluded. Any law or
- regulation which provides that the language of a contract shall
- be construed against the drafter shall not apply to this License.
- You agree that You alone are responsible for compliance with the
- United States export administration regulations (and the export
- control laws and regulation of any other countries) when You use,
- distribute or otherwise make available any Covered Software.
-
- 10. RESPONSIBILITY FOR CLAIMS.
-
- As between Initial Developer and the Contributors, each party is
- responsible for claims and damages arising, directly or
- indirectly, out of its utilization of rights under this License
- and You agree to work with Initial Developer and Contributors to
- distribute such responsibility on an equitable basis. Nothing
- herein is intended or shall be deemed to constitute any admission
- of liability.
-
diff --git a/branches/das-java-M2/rdb/src/main/resources/META-INF/MANIFEST.MF b/branches/das-java-M2/rdb/src/main/resources/META-INF/MANIFEST.MF
deleted file mode 100644
index cfdce9ed00..0000000000
--- a/branches/das-java-M2/rdb/src/main/resources/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,13 +0,0 @@
-Manifest-Version: 1.0
-Extension-Name: tuscany-das-rdb
-Specification-Title: Tuscany DAS for Relational Databases
-Specification-Vendor: Apache Software Foundation
-Implementation-Vendor: Apache Software Foundation
-Implementation-Vendor-Id: org.apache
-Implementation-Title: tuscany-das-rdb
-Implementation-Version: incubating-M1
-Bundle-ManifestVersion: 2
-Bundle-Name: Tuscany DAS for Relational Databases
-Bundle-SymbolicName: org.apache.tuscany.das.rdb
-Bundle-Version: 1.0.0
-Bundle-Vendor: Apache Software Foundation
diff --git a/branches/das-java-M2/rdb/src/main/resources/META-INF/NOTICE b/branches/das-java-M2/rdb/src/main/resources/META-INF/NOTICE
deleted file mode 100644
index d48810c0ec..0000000000
--- a/branches/das-java-M2/rdb/src/main/resources/META-INF/NOTICE
+++ /dev/null
@@ -1,18 +0,0 @@
-=========================================================================
-== NOTICE file corresponding to the section 4 d of ==
-== the Apache License, Version 2.0, ==
-== in this case for the Apache Tuscany distribution. ==
-=========================================================================
-
-This product includes software developed by the Apache Software Foundation
-(http://www.apache.org/).
-
-This product also includes software developed by:
-- the Eclipse Modeling Framework project (http://www.eclipse.org/emf/)
-- the Celtix project (http://celtix.objectweb.org/)
-- the Mozilla Rhino project (http://www.mozilla.org/rhino/)
-- the GlassFish JAX-WS project (https://jax-ws.dev.java.net/)
-
-Please read the LICENSE.txt file present in the root directory of this
-distribution.
-
diff --git a/branches/das-java-M2/rdb/src/main/resources/META-INF/README.txt b/branches/das-java-M2/rdb/src/main/resources/META-INF/README.txt
deleted file mode 100644
index 9b26d1690a..0000000000
--- a/branches/das-java-M2/rdb/src/main/resources/META-INF/README.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-Apache Tuscany M1 build (May, 2006)
-===================================
-
-http://incubator.apache.org/tuscany/
-
-Tuscany is an effort undergoing incubation at the Apache Software Foundation
-(ASF), sponsored by the Web Services PMC.
-
-Incubation is required of all newly accepted projects until a further review
-indicates that the infrastructure, communications, and decision making process
-have stabilized in a manner consistent with other successful ASF projects.
-
-While incubation status is not necessarily a reflection of the completeness or
-stability of the code, it does indicate that the project has yet to be fully
-endorsed by the ASF.
-
-
-Support
--------
-
-Any problem with this release can be reported to the Tuscany mailing list
-or in the JIRA issue tracker.
-
-Mailing list subscription:
- tuscany-dev-subscribe@ws.apache.org
-
-Jira:
- http://issues.apache.org/jira/browse/Tuscany
-
-
-Thank you for using Tuscany!
-
-
-The Tuscany Team.
-
diff --git a/branches/das-java-M2/rdb/src/main/resources/config.xsd b/branches/das-java-M2/rdb/src/main/resources/config.xsd
deleted file mode 100644
index 41d440dadd..0000000000
--- a/branches/das-java-M2/rdb/src/main/resources/config.xsd
+++ /dev/null
@@ -1,112 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<xsd:schema
- xmlns:config="http:///org.apache.tuscany.das.rdb/config.xsd"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- targetNamespace="http:///org.apache.tuscany.das.rdb/config.xsd">
-
- <xsd:complexType name="Config">
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" minOccurs="0" name="Command"
- type="config:Command"/>
- <xsd:element maxOccurs="unbounded" minOccurs="0" name="Table" type="config:Table"/>
- <xsd:element maxOccurs="unbounded" minOccurs="0" name="Relationship"
- type="config:Relationship"/>
- <xsd:element maxOccurs="1" minOccurs="0" name="ConnectionInfo"
- type="config:ConnectionInfo"/>
- </xsd:sequence>
- <xsd:attribute name="uri" type="xsd:string"/>
- <xsd:attribute name="dataObjectModel" type="xsd:string"/>
- </xsd:complexType>
-
- <xsd:complexType name="ConnectionInfo">
- <xsd:attribute name="dataSource" type="xsd:string"/>
- <xsd:attribute name="managedtx" type="xsd:boolean" default="true"/>
- </xsd:complexType>
-
- <xsd:complexType name="Command">
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" minOccurs="0" name="Parameter"
- type="config:Parameter"/>
- <xsd:element maxOccurs="unbounded" minOccurs="0" name="ResultDescriptor"
- type="config:ResultDescriptor"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="SQL" type="xsd:string"/>
- <xsd:attribute name="kind" type="xsd:string"/>
- </xsd:complexType>
- <xsd:complexType name="Parameter">
- <xsd:attribute name="columnType" type="xsd:string"/>
- <xsd:attribute name="direction" type="xsd:string"/>
- </xsd:complexType>
- <xsd:complexType name="Relationship">
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" minOccurs="0" name="KeyPair"
- type="config:KeyPair"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="primaryKeyTable" type="xsd:string"/>
- <xsd:attribute name="foreignKeyTable" type="xsd:string"/>
- <xsd:attribute name="many" type="xsd:boolean"/>
- <xsd:attribute name="keyRestricted" type="xsd:boolean"/>
- </xsd:complexType>
- <xsd:complexType name="Table">
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" minOccurs="0" name="Column"
- type="config:Column"/>
- <xsd:element maxOccurs="1" minOccurs="0" name="create" type="config:Create"/>
- <xsd:element maxOccurs="1" minOccurs="0" name="update" type="config:Update"/>
- <xsd:element maxOccurs="1" minOccurs="0" name="delete" type="config:Delete"/>
- </xsd:sequence>
- <xsd:attribute name="tableName" type="xsd:string"/>
- <xsd:attribute name="typeName" type="xsd:string"/>
- </xsd:complexType>
- <xsd:complexType name="Create">
- <xsd:attribute name="sql" type="xsd:string"/>
- <xsd:attribute name="parameters" type="xsd:string"/>
- </xsd:complexType>
- <xsd:complexType name="Update">
- <xsd:attribute name="sql" type="xsd:string"/>
- <xsd:attribute name="parameters" type="xsd:string"/>
- </xsd:complexType>
- <xsd:complexType name="Delete">
- <xsd:attribute name="sql" type="xsd:string"/>
- <xsd:attribute name="parameters" type="xsd:string"/>
- </xsd:complexType>
- <xsd:complexType name="KeyPair">
- <xsd:attribute name="primaryKeyColumn" type="xsd:string"/>
- <xsd:attribute name="foreignKeyColumn" type="xsd:string"/>
- </xsd:complexType>
- <xsd:complexType name="Column">
- <xsd:attribute name="columnName" type="xsd:string"/>
- <xsd:attribute name="propertyName" type="xsd:string"/>
- <xsd:attribute name="converterClassName" type="xsd:string"/>
- <xsd:attribute name="primaryKey" type="xsd:boolean"/>
- <xsd:attribute name="generated" type="xsd:boolean"/>
- <xsd:attribute name="collision" type="xsd:boolean"/>
- <xsd:attribute name="managed" type="xsd:boolean"/>
- </xsd:complexType>
- <xsd:complexType name="ResultDescriptor">
- <xsd:attribute name="columnName" type="xsd:string"/>
- <xsd:attribute name="tableName" type="xsd:string"/>
- <xsd:attribute name="columnType" type="xsd:string"/>
- </xsd:complexType>
-
-</xsd:schema>
diff --git a/branches/das-java-M2/rdb/src/main/resources/dasmodel4.mdl b/branches/das-java-M2/rdb/src/main/resources/dasmodel4.mdl
deleted file mode 100644
index 476974975b..0000000000
--- a/branches/das-java-M2/rdb/src/main/resources/dasmodel4.mdl
+++ /dev/null
@@ -1,4622 +0,0 @@
-
-(object Petal
- version 42
- _written "Rose 4.5.8163.3"
- charSet 0)
-
-(object Design "Logical View"
- is_unit TRUE
- is_loaded TRUE
- defaults (object defaults
- rightMargin 0.250000
- leftMargin 0.250000
- topMargin 0.250000
- bottomMargin 0.500000
- pageOverlap 0.250000
- clipIconLabels TRUE
- autoResize TRUE
- snapToGrid TRUE
- gridX 31
- gridY 31
- defaultFont (object Font
- size 10
- face "Arial"
- bold FALSE
- italics FALSE
- underline FALSE
- strike FALSE
- color 0
- default_color TRUE)
- showMessageNum 3
- showClassOfObject TRUE
- notation "Unified")
- root_usecase_package (object Class_Category "Use Case View"
- quid "4362A29901BA"
- exportControl "Public"
- global TRUE
- logical_models (list unit_reference_list)
- logical_presentations (list unit_reference_list
- (object UseCaseDiagram "Main"
- quid "4362A2990259"
- title "Main"
- zoom 100
- max_height 28350
- max_width 21600
- origin_x 0
- origin_y 0
- items (list diagram_item_list))))
- root_category (object Class_Category "Logical View"
- quid "4362A29901B9"
- exportControl "Public"
- global TRUE
- subsystem "Component View"
- quidu "4362A29901BB"
- logical_models (list unit_reference_list
- (object Class_Category "config"
- attributes (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "nsURI"
- value "http:///org.apache.tuscany.das.rdb/config.xsd")
- (object Attribute
- tool "Ecore"
- name "basePackage"
- value "org.apache.tuscany.das.rdb"))
- quid "4362A2A10169"
- exportControl "Public"
- logical_models (list unit_reference_list
- (object Class "Config"
- quid "4362A2DE0045"
- class_attributes (list class_attribute_list
- (object ClassAttribute "uri"
- quid "4362A337006B"
- type "String")
- (object ClassAttribute "dataSource"
- quid "4485DF600233"
- type "String")
- (object ClassAttribute "dataObjectModel"
- quid "449AB6CD0132"
- type "String")))
- (object Class "Command"
- quid "4362A2EC01FE"
- class_attributes (list class_attribute_list
- (object ClassAttribute "name"
- quid "4362A3EC02EC"
- type "String")
- (object ClassAttribute "SQL"
- quid "4362A3EF0246"
- type "String")
- (object ClassAttribute "kind"
- quid "437903E60321"
- type "String")))
- (object Class "Parameter"
- quid "4362A3C902BA"
- class_attributes (list class_attribute_list
- (object ClassAttribute "name"
- quid "4362A40600D7"
- type "String")
- (object ClassAttribute "columnType"
- quid "4362A4090280"
- type "String")))
- (object Class "Relationship"
- quid "4362A42E03A5"
- class_attributes (list class_attribute_list
- (object ClassAttribute "name"
- quid "4362A73A0216"
- type "String")
- (object ClassAttribute "primaryKeyTable"
- quid "4362A73D0329"
- type "String")
- (object ClassAttribute "foreignKeyTable"
- quid "4362A74002FB"
- type "String")
- (object ClassAttribute "many"
- quid "4362A7430241"
- type "boolean")))
- (object Class "Table"
- quid "4362A43C0002"
- class_attributes (list class_attribute_list
- (object ClassAttribute "tableName"
- quid "4362A7B2031D"
- type "String")
- (object ClassAttribute "typeName"
- quid "4362A7C203A2"
- type "String")
- (object ClassAttribute "create"
- quid "4362A7D0024E"
- type "String")
- (object ClassAttribute "update"
- quid "4362A7D30220"
- type "String")
- (object ClassAttribute "delete"
- quid "4362A7E1031B"
- type "String")))
- (object Class "KeyPair"
- quid "4362A72E0010"
- class_attributes (list class_attribute_list
- (object ClassAttribute "primaryKeyColumn"
- quid "4362A8E702A9"
- type "String")
- (object ClassAttribute "foreignKeyColumn"
- quid "4362A8ED01AE"
- type "String")))
- (object Class "Column"
- quid "4362A75C016B"
- class_attributes (list class_attribute_list
- (object ClassAttribute "columnName"
- quid "4362A8BD02E5"
- type "String")
- (object ClassAttribute "propertyName"
- quid "4362A8C001C7"
- type "String")
- (object ClassAttribute "converterClassName"
- quid "4362A8C303A2"
- type "String")
- (object ClassAttribute "columnType"
- quid "4362A8C903A0"
- type "String")
- (object ClassAttribute "primaryKey"
- quid "437907F200F9"
- type "boolean")
- (object ClassAttribute "generated"
- quid "4379083900BF"
- type "boolean")
- (object ClassAttribute "collision"
- quid "437908E5012B"
- type "boolean")))
- (object Class "ResultDescriptor"
- quid "437B57EF0008"
- class_attributes (list class_attribute_list
- (object ClassAttribute "columnName"
- quid "437B5A6503BB"
- type "String")
- (object ClassAttribute "tableName"
- quid "437B5A6B016B"
- type "String")
- (object ClassAttribute "columnType"
- quid "437B5A6D033A"
- type "String")
- (object ClassAttribute "name"
- quid "449AB74D03DF"
- type "type"
- initv "initval"))
- language "Java")
- (object Association "$UNNAMED$0"
- quid "4362A3030323"
- roles (list role_list
- (object Role "$UNNAMED$1"
- quid "4362A3040108"
- supplier "Logical View::config::Config"
- quidu "4362A2DE0045"
- is_navigable TRUE
- is_aggregate TRUE)
- (object Role "$UNNAMED$2"
- quid "4362A3040109"
- supplier "Logical View::config::Command"
- quidu "4362A2EC01FE"
- client_cardinality (value cardinality "0..n")
- Containment "By Value"
- is_navigable TRUE)))
- (object Association "$UNNAMED$3"
- quid "4362A3D302FA"
- roles (list role_list
- (object Role "$UNNAMED$4"
- quid "4362A3D40143"
- supplier "Logical View::config::Command"
- quidu "4362A2EC01FE"
- is_navigable TRUE
- is_aggregate TRUE)
- (object Role "$UNNAMED$5"
- quid "4362A3D40144"
- supplier "Logical View::config::Parameter"
- quidu "4362A3C902BA"
- client_cardinality (value cardinality "0..n")
- Containment "By Value"
- is_navigable TRUE)))
- (object Association "$UNNAMED$6"
- quid "4362A448026C"
- roles (list role_list
- (object Role "$UNNAMED$7"
- quid "4362A4490105"
- supplier "Logical View::config::Config"
- quidu "4362A2DE0045"
- is_navigable TRUE
- is_aggregate TRUE)
- (object Role "$UNNAMED$8"
- quid "4362A4490106"
- supplier "Logical View::config::Table"
- quidu "4362A43C0002"
- client_cardinality (value cardinality "0..n")
- Containment "By Value"
- is_navigable TRUE)))
- (object Association "$UNNAMED$9"
- quid "4362A44B0298"
- roles (list role_list
- (object Role "$UNNAMED$10"
- quid "4362A44C01AA"
- supplier "Logical View::config::Config"
- quidu "4362A2DE0045"
- is_navigable TRUE
- is_aggregate TRUE)
- (object Role "$UNNAMED$11"
- quid "4362A44C01AB"
- supplier "Logical View::config::Relationship"
- quidu "4362A42E03A5"
- client_cardinality (value cardinality "0..n")
- Containment "By Value"
- is_navigable TRUE)))
- (object Association "$UNNAMED$12"
- quid "4362A76302A1"
- roles (list role_list
- (object Role "$UNNAMED$13"
- quid "4362A7640090"
- supplier "Logical View::config::Table"
- quidu "4362A43C0002"
- is_navigable TRUE
- is_aggregate TRUE)
- (object Role "$UNNAMED$14"
- quid "4362A7640091"
- supplier "Logical View::config::Column"
- quidu "4362A75C016B"
- client_cardinality (value cardinality "0..n")
- Containment "By Value"
- is_navigable TRUE)))
- (object Association "$UNNAMED$15"
- quid "4362A771032E"
- roles (list role_list
- (object Role "$UNNAMED$16"
- quid "4362A7720108"
- supplier "Logical View::config::Relationship"
- quidu "4362A42E03A5"
- is_navigable TRUE
- is_aggregate TRUE)
- (object Role "$UNNAMED$17"
- quid "4362A7720109"
- supplier "Logical View::config::KeyPair"
- quidu "4362A72E0010"
- client_cardinality (value cardinality "0..n")
- Containment "By Value"
- is_navigable TRUE)))
- (object Association "$UNNAMED$18"
- quid "437B59A10066"
- roles (list role_list
- (object Role "$UNNAMED$19"
- quid "437B59A30145"
- supplier "Logical View::config::Command"
- quidu "4362A2EC01FE"
- Containment "By Value"
- is_navigable TRUE
- is_aggregate TRUE)
- (object Role "$UNNAMED$20"
- quid "437B59A30146"
- supplier "Logical View::config::ResultDescriptor"
- quidu "437B57EF0008"
- client_cardinality (value cardinality "0..n")
- Containment "By Value"
- is_navigable TRUE))))
- logical_presentations (list unit_reference_list
- (object ClassDiagram "Main"
- quid "4362A2A900AD"
- title "Main"
- zoom 100
- max_height 28350
- max_width 21600
- origin_x 0
- origin_y 0
- items (list diagram_item_list
- (object ClassView "Class" "Logical View::config::KeyPair" @1
- ShowCompartmentStereotypes TRUE
- IncludeAttribute TRUE
- IncludeOperation TRUE
- location (1054, 1333)
- label (object ItemLabel
- Parent_View @1
- location (809, 1227)
- fill_color 13434879
- nlines 1
- max_width 490
- justify 0
- label "KeyPair")
- icon_style "Icon"
- line_color 3342489
- fill_color 13434879
- quidu "4362A72E0010"
- compartment (object Compartment
- Parent_View @1
- location (809, 1287)
- icon_style "Icon"
- fill_color 16777215
- anchor 2
- nlines 3
- max_width 496)
- width 508
- height 236
- autoResize TRUE)
- (object ClassView "Class" "Logical View::config::Column" @2
- ShowCompartmentStereotypes TRUE
- IncludeAttribute TRUE
- IncludeOperation TRUE
- location (2015, 1519)
- label (object ItemLabel
- Parent_View @2
- location (1756, 1288)
- fill_color 13434879
- nlines 1
- max_width 518
- justify 0
- label "Column")
- icon_style "Icon"
- line_color 3342489
- fill_color 13434879
- quidu "4362A75C016B"
- compartment (object Compartment
- Parent_View @2
- location (1756, 1348)
- icon_style "Icon"
- fill_color 16777215
- anchor 2
- nlines 8
- max_width 525)
- width 536
- height 486
- autoResize TRUE)
- (object ClassView "Class" "Logical View::config::Relationship" @3
- ShowCompartmentStereotypes TRUE
- IncludeAttribute TRUE
- IncludeOperation TRUE
- location (1054, 744)
- label (object ItemLabel
- Parent_View @3
- location (829, 588)
- fill_color 13434879
- nlines 1
- max_width 450
- justify 0
- label "Relationship")
- icon_style "Icon"
- line_color 3342489
- fill_color 13434879
- quidu "4362A42E03A5"
- compartment (object Compartment
- Parent_View @3
- location (829, 648)
- icon_style "Icon"
- fill_color 16777215
- anchor 2
- nlines 5
- max_width 456)
- width 468
- height 336
- autoResize TRUE)
- (object AssociationViewNew "$UNNAMED$15" @4
- location (1081, 1063)
- stereotype TRUE
- line_color 3342489
- quidu "4362A771032E"
- roleview_list (list RoleViews
- (object RoleView "$UNNAMED$16" @5
- Parent_View @4
- location (-97, -84)
- stereotype TRUE
- line_color 3342489
- quidu "4362A7720108"
- client @4
- supplier @3
- line_style 3
- origin_attachment (1080, 1063)
- terminal_attachment (1080, 912))
- (object RoleView "$UNNAMED$17" @6
- Parent_View @4
- location (-97, -84)
- stereotype TRUE
- line_color 3342489
- quidu "4362A7720109"
- client @4
- supplier @1
- line_style 3
- origin_attachment (1080, 1063)
- terminal_attachment (1080, 1215)
- label (object SegLabel @7
- Parent_View @6
- location (1135, 1112)
- anchor 2
- anchor_loc 1
- nlines 1
- max_width 15
- justify 0
- label "0..*"
- pctDist 0.327273
- height 55
- orientation 0))))
- (object ClassView "Class" "Logical View::config::Table" @8
- ShowCompartmentStereotypes TRUE
- IncludeAttribute TRUE
- IncludeOperation TRUE
- location (1984, 837)
- label (object ItemLabel
- Parent_View @8
- location (1814, 656)
- fill_color 13434879
- nlines 1
- max_width 340
- justify 0
- label "Table")
- icon_style "Icon"
- line_color 3342489
- fill_color 13434879
- quidu "4362A43C0002"
- compartment (object Compartment
- Parent_View @8
- location (1814, 716)
- icon_style "Icon"
- fill_color 16777215
- anchor 2
- nlines 6
- max_width 346)
- width 358
- height 386
- autoResize TRUE)
- (object AssociationViewNew "$UNNAMED$12" @9
- location (1807, 1153)
- stereotype TRUE
- line_color 3342489
- quidu "4362A76302A1"
- roleview_list (list RoleViews
- (object RoleView "$UNNAMED$13" @10
- Parent_View @9
- location (1032, 6)
- stereotype TRUE
- line_color 3342489
- quidu "4362A7640090"
- client @9
- supplier @8
- line_style 3
- origin_attachment (1807, 1153)
- terminal_attachment (1807, 1030))
- (object RoleView "$UNNAMED$14" @11
- Parent_View @9
- location (1032, 6)
- stereotype TRUE
- line_color 3342489
- quidu "4362A7640091"
- client @9
- supplier @2
- line_style 3
- origin_attachment (1807, 1153)
- terminal_attachment (1807, 1276)
- label (object SegLabel @12
- Parent_View @11
- location (1861, 1166)
- anchor 2
- anchor_loc 1
- nlines 1
- max_width 15
- justify 0
- label "0..*"
- pctDist 0.109091
- height 54
- orientation 0))))
- (object ClassView "Class" "Logical View::config::Parameter" @13
- ShowCompartmentStereotypes TRUE
- IncludeAttribute TRUE
- IncludeOperation TRUE
- location (186, 806)
- label (object ItemLabel
- Parent_View @13
- location (4, 700)
- fill_color 13434879
- nlines 1
- max_width 364
- justify 0
- label "Parameter")
- icon_style "Icon"
- line_color 3342489
- fill_color 13434879
- quidu "4362A3C902BA"
- compartment (object Compartment
- Parent_View @13
- location (4, 760)
- icon_style "Icon"
- fill_color 16777215
- anchor 2
- nlines 3
- max_width 371)
- width 382
- height 236
- autoResize TRUE)
- (object ClassView "Class" "Logical View::config::Config" @14
- ShowCompartmentStereotypes TRUE
- IncludeAttribute TRUE
- IncludeOperation TRUE
- location (1054, 186)
- label (object ItemLabel
- Parent_View @14
- location (828, 55)
- fill_color 13434879
- nlines 1
- max_width 452
- justify 0
- label "Config")
- icon_style "Icon"
- line_color 3342489
- fill_color 13434879
- quidu "4362A2DE0045"
- compartment (object Compartment
- Parent_View @14
- location (828, 115)
- icon_style "Icon"
- fill_color 16777215
- anchor 2
- nlines 4
- max_width 450)
- width 470
- height 286
- autoResize TRUE)
- (object AssociationViewNew "$UNNAMED$9" @15
- location (1054, 452)
- label (object SegLabel @16
- Parent_View @15
- location (1054, 393)
- font (object Font
- italics TRUE)
- hidden TRUE
- anchor 1
- anchor_loc 1
- nlines 1
- max_width 600
- justify 0
- label ""
- pctDist 0.500000
- height 60
- orientation 0)
- stereotype TRUE
- line_color 3342489
- quidu "4362A44B0298"
- roleview_list (list RoleViews
- (object RoleView "$UNNAMED$10" @17
- Parent_View @15
- location (-93, -354)
- label (object SegLabel @18
- Parent_View @17
- location (1013, 354)
- hidden TRUE
- anchor 1
- anchor_loc 1
- nlines 1
- max_width 252
- justify 0
- label ""
- pctDist 0.800000
- height 42
- orientation 0)
- stereotype TRUE
- line_color 3342489
- quidu "4362A44C01AA"
- client @15
- supplier @14
- line_style 0)
- (object RoleView "$UNNAMED$11" @19
- Parent_View @15
- location (-93, -354)
- label (object SegLabel @20
- Parent_View @19
- location (1013, 526)
- hidden TRUE
- anchor 1
- anchor_loc 1
- nlines 1
- max_width 252
- justify 0
- label ""
- pctDist 0.597561
- height 42
- orientation 1)
- stereotype TRUE
- line_color 3342489
- quidu "4362A44C01AB"
- client @15
- supplier @3
- line_style 0
- label (object SegLabel @21
- Parent_View @19
- location (1011, 562)
- anchor 2
- anchor_loc 1
- nlines 1
- max_width 15
- justify 0
- label "0..*"
- pctDist 0.899471
- height 44
- orientation 1))))
- (object AssociationViewNew "$UNNAMED$6" @22
- location (1829, 247)
- stereotype TRUE
- line_color 3342489
- quidu "4362A448026C"
- roleview_list (list RoleViews
- (object RoleView "$UNNAMED$7" @23
- Parent_View @22
- location (1023, -559)
- stereotype TRUE
- line_color 3342489
- quidu "4362A4490105"
- client @22
- supplier @14
- line_style 3
- origin_attachment (1829, 247)
- terminal_attachment (1289, 247))
- (object RoleView "$UNNAMED$8" @24
- Parent_View @22
- location (1023, -559)
- stereotype TRUE
- line_color 3342489
- quidu "4362A4490106"
- client @22
- supplier @8
- vertices (list Points
- (1829, 247)
- (1972, 247)
- (1972, 644))
- line_style 3
- origin_attachment (1829, 247)
- terminal_attachment (1972, 644)
- label (object SegLabel @25
- Parent_View @24
- location (2031, 441)
- anchor 2
- anchor_loc 1
- nlines 1
- max_width 15
- justify 0
- label "0..*"
- pctDist 0.625538
- height 59
- orientation 0))))
- (object ClassView "Class" "Logical View::config::Command" @26
- ShowCompartmentStereotypes TRUE
- IncludeAttribute TRUE
- IncludeOperation TRUE
- location (186, 217)
- label (object ItemLabel
- Parent_View @26
- location (63, 86)
- fill_color 13434879
- nlines 1
- max_width 246
- justify 0
- label "Command")
- icon_style "Icon"
- line_color 3342489
- fill_color 13434879
- quidu "4362A2EC01FE"
- compartment (object Compartment
- Parent_View @26
- location (63, 146)
- icon_style "Icon"
- fill_color 16777215
- anchor 2
- nlines 4
- max_width 253)
- width 264
- height 286
- autoResize TRUE)
- (object AssociationViewNew "$UNNAMED$3" @27
- location (186, 523)
- stereotype TRUE
- line_color 3342489
- quidu "4362A3D302FA"
- roleview_list (list RoleViews
- (object RoleView "$UNNAMED$4" @28
- Parent_View @27
- location (-279, -500)
- stereotype TRUE
- line_color 3342489
- quidu "4362A3D40143"
- client @27
- supplier @26
- line_style 0)
- (object RoleView "$UNNAMED$5" @29
- Parent_View @27
- location (-279, -500)
- stereotype TRUE
- line_color 3342489
- quidu "4362A3D40144"
- client @27
- supplier @13
- line_style 0
- label (object SegLabel @30
- Parent_View @29
- location (241, 600)
- anchor 2
- anchor_loc 1
- nlines 1
- max_width 15
- justify 0
- label "0..*"
- pctDist 0.473684
- height 55
- orientation 0))))
- (object AssociationViewNew "$UNNAMED$0" @31
- location (568, 213)
- stereotype TRUE
- line_color 3342489
- quidu "4362A3030323"
- roleview_list (list RoleViews
- (object RoleView "$UNNAMED$1" @32
- Parent_View @31
- location (134, -469)
- stereotype TRUE
- line_color 3342489
- quidu "4362A3040108"
- client @31
- supplier @14
- line_style 3
- origin_attachment (568, 213)
- terminal_attachment (819, 213))
- (object RoleView "$UNNAMED$2" @33
- Parent_View @31
- location (134, -469)
- stereotype TRUE
- line_color 3342489
- quidu "4362A3040109"
- client @31
- supplier @26
- line_style 3
- origin_attachment (568, 213)
- terminal_attachment (318, 213)
- label (object SegLabel @34
- Parent_View @33
- location (360, 261)
- anchor 2
- anchor_loc 1
- nlines 1
- max_width 15
- justify 0
- label "0..*"
- pctDist 0.831858
- height 48
- orientation 0))))
- (object ClassView "Class" "Logical View::config::ResultDescriptor" @35
- ShowCompartmentStereotypes TRUE
- IncludeAttribute TRUE
- IncludeOperation TRUE
- location (465, 1240)
- label (object ItemLabel
- Parent_View @35
- location (248, 1084)
- fill_color 13434879
- nlines 1
- max_width 434
- justify 0
- label "ResultDescriptor")
- icon_style "Icon"
- line_color 3342489
- fill_color 13434879
- quidu "437B57EF0008"
- compartment (object Compartment
- Parent_View @35
- location (248, 1144)
- icon_style "Icon"
- fill_color 16777215
- anchor 2
- nlines 5
- max_width 431)
- width 452
- height 336
- annotation 8
- autoResize TRUE)
- (object AssociationViewNew "$UNNAMED$18" @36
- location (484, 626)
- stereotype TRUE
- line_color 3342489
- quidu "437B59A10066"
- roleview_list (list RoleViews
- (object RoleView "$UNNAMED$19" @37
- Parent_View @36
- location (50, -614)
- stereotype TRUE
- line_color 3342489
- quidu "437B59A30145"
- client @36
- supplier @26
- vertices (list Points
- (484, 626)
- (484, 347)
- (318, 347))
- line_style 3
- origin_attachment (484, 626)
- terminal_attachment (318, 347))
- (object RoleView "$UNNAMED$20" @38
- Parent_View @36
- location (50, -614)
- stereotype TRUE
- line_color 3342489
- quidu "437B59A30146"
- client @36
- supplier @35
- line_style 3
- origin_attachment (484, 626)
- terminal_attachment (484, 1072)
- label (object SegLabel @39
- Parent_View @38
- location (538, 1027)
- anchor 2
- anchor_loc 1
- nlines 1
- max_width 15
- justify 0
- label "0..*"
- pctDist 0.900000
- height 54
- orientation 0)))))))))
- logical_presentations (list unit_reference_list
- (object ClassDiagram "Main"
- quid "4362A299025A"
- title "Main"
- zoom 100
- max_height 28350
- max_width 21600
- origin_x 0
- origin_y 0
- items (list diagram_item_list
- (object CategoryView "Logical View::config" @40
- location (682, 589)
- label (object ItemLabel
- Parent_View @40
- location (538, 505)
- fill_color 13434879
- nlines 2
- max_width 288
- justify 0
- label "config")
- icon_style "Icon"
- line_color 3342489
- fill_color 13434879
- quidu "4362A2A10169"
- width 300
- height 180)))))
- root_subsystem (object SubSystem "Component View"
- quid "4362A29901BB"
- physical_models (list unit_reference_list)
- physical_presentations (list unit_reference_list
- (object Module_Diagram "Main"
- quid "4362A2990258"
- title "Main"
- zoom 100
- max_height 28350
- max_width 21600
- origin_x 0
- origin_y 0
- items (list diagram_item_list))))
- process_structure (object Processes
- quid "4362A29901BC"
- ProcsNDevs (list
- (object Process_Diagram "Deployment View"
- quid "4362A29901BE"
- title "Deployment View"
- zoom 100
- max_height 28350
- max_width 21600
- origin_x 0
- origin_y 0
- items (list diagram_item_list))))
- properties (object Properties
- attributes (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "propertyId"
- value "809135969")
- (object Attribute
- tool "Ecore"
- name "default__Category"
- value (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "packageName"
- value "")
- (object Attribute
- tool "Ecore"
- name "nsPrefix"
- value "")
- (object Attribute
- tool "Ecore"
- name "nsURI"
- value "")
- (object Attribute
- tool "Ecore"
- name "basePackage"
- value "")
- (object Attribute
- tool "Ecore"
- name "prefix"
- value "")
- (object Attribute
- tool "Ecore"
- name "annotation"
- value "")))
- (object Attribute
- tool "Ecore"
- name "default__Class"
- value (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "classifierName"
- value "")
- (object Attribute
- tool "Ecore"
- name "constraints"
- value "")
- (object Attribute
- tool "Ecore"
- name "xmlName"
- value "")
- (object Attribute
- tool "Ecore"
- name "xmlContentKind"
- value ("ContentKind" 0))
- (object Attribute
- tool "Ecore"
- name "ContentKind"
- value (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "Unspecified"
- value 0)
- (object Attribute
- tool "Ecore"
- name "Empty"
- value 1)
- (object Attribute
- tool "Ecore"
- name "Simple"
- value 2)
- (object Attribute
- tool "Ecore"
- name "Mixed"
- value 3)
- (object Attribute
- tool "Ecore"
- name "ElementOnly"
- value 4)))
- (object Attribute
- tool "Ecore"
- name "annotation"
- value "")))
- (object Attribute
- tool "Ecore"
- name "default__Operation"
- value (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "operationName"
- value "")
- (object Attribute
- tool "Ecore"
- name "isUnique"
- value TRUE)
- (object Attribute
- tool "Ecore"
- name "annotation"
- value "")))
- (object Attribute
- tool "Ecore"
- name "default__Attribute"
- value (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "attributeName"
- value "")
- (object Attribute
- tool "Ecore"
- name "isTransient"
- value FALSE)
- (object Attribute
- tool "Ecore"
- name "isVolatile"
- value FALSE)
- (object Attribute
- tool "Ecore"
- name "isChangeable"
- value TRUE)
- (object Attribute
- tool "Ecore"
- name "isUnsettable"
- value FALSE)
- (object Attribute
- tool "Ecore"
- name "isUnique"
- value TRUE)
- (object Attribute
- tool "Ecore"
- name "isID"
- value FALSE)
- (object Attribute
- tool "Ecore"
- name "visibility"
- value ("VisibilityKind" 0))
- (object Attribute
- tool "Ecore"
- name "VisibilityKind"
- value (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "Unspecified"
- value 0)
- (object Attribute
- tool "Ecore"
- name "None"
- value 1)
- (object Attribute
- tool "Ecore"
- name "Read-only"
- value 2)
- (object Attribute
- tool "Ecore"
- name "Read-write"
- value 3)
- (object Attribute
- tool "Ecore"
- name "Read-only unsettable"
- value 4)
- (object Attribute
- tool "Ecore"
- name "Read-write unsettable"
- value 5)))
- (object Attribute
- tool "Ecore"
- name "xmlName"
- value "")
- (object Attribute
- tool "Ecore"
- name "xmlNamespace"
- value "")
- (object Attribute
- tool "Ecore"
- name "xmlFeatureKind"
- value ("FeatureKind" 0))
- (object Attribute
- tool "Ecore"
- name "FeatureKind"
- value (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "Unspecified"
- value 0)
- (object Attribute
- tool "Ecore"
- name "Simple"
- value 1)
- (object Attribute
- tool "Ecore"
- name "Attribute"
- value 2)
- (object Attribute
- tool "Ecore"
- name "Element"
- value 4)))
- (object Attribute
- tool "Ecore"
- name "annotation"
- value "")))
- (object Attribute
- tool "Ecore"
- name "default__Role"
- value (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "referenceName"
- value "")
- (object Attribute
- tool "Ecore"
- name "isTransient"
- value FALSE)
- (object Attribute
- tool "Ecore"
- name "isVolatile"
- value FALSE)
- (object Attribute
- tool "Ecore"
- name "isChangeable"
- value TRUE)
- (object Attribute
- tool "Ecore"
- name "isUnsettable"
- value FALSE)
- (object Attribute
- tool "Ecore"
- name "isResolveProxies"
- value TRUE)
- (object Attribute
- tool "Ecore"
- name "visibility"
- value ("VisibilityKind" 0))
- (object Attribute
- tool "Ecore"
- name "VisibilityKind"
- value (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "Unspecified"
- value 0)
- (object Attribute
- tool "Ecore"
- name "None"
- value 1)
- (object Attribute
- tool "Ecore"
- name "Read-only"
- value 2)
- (object Attribute
- tool "Ecore"
- name "Read-write"
- value 3)
- (object Attribute
- tool "Ecore"
- name "Read-only unsettable"
- value 4)
- (object Attribute
- tool "Ecore"
- name "Read-write unsettable"
- value 5)))
- (object Attribute
- tool "Ecore"
- name "xmlName"
- value "")
- (object Attribute
- tool "Ecore"
- name "xmlNamespace"
- value "")
- (object Attribute
- tool "Ecore"
- name "xmlFeatureKind"
- value ("FeatureKind" 0))
- (object Attribute
- tool "Ecore"
- name "FeatureKind"
- value (list Attribute_Set
- (object Attribute
- tool "Ecore"
- name "Unspecified"
- value 0)
- (object Attribute
- tool "Ecore"
- name "Simple"
- value 1)
- (object Attribute
- tool "Ecore"
- name "Attribute"
- value 2)
- (object Attribute
- tool "Ecore"
- name "Element"
- value 4)))
- (object Attribute
- tool "Ecore"
- name "annotation"
- value "")))
- (object Attribute
- tool "DDL"
- name "propertyId"
- value "809135966")
- (object Attribute
- tool "DDL"
- name "default__Project"
- value (list Attribute_Set
- (object Attribute
- tool "DDL"
- name "Directory"
- value "AUTO GENERATE")
- (object Attribute
- tool "DDL"
- name "DataBase"
- value ("DataBaseSet" 800))
- (object Attribute
- tool "DDL"
- name "DataBaseSet"
- value (list Attribute_Set
- (object Attribute
- tool "DDL"
- name "ANSI"
- value 800)
- (object Attribute
- tool "DDL"
- name "Oracle"
- value 801)
- (object Attribute
- tool "DDL"
- name "SQLServer"
- value 802)
- (object Attribute
- tool "DDL"
- name "Sybase"
- value 803)
- (object Attribute
- tool "DDL"
- name "Watcom"
- value 804)))
- (object Attribute
- tool "DDL"
- name "PrimaryKeyColumnName"
- value "Id")
- (object Attribute
- tool "DDL"
- name "PrimaryKeyColumnType"
- value "NUMBER(5)")
- (object Attribute
- tool "DDL"
- name "ViewName"
- value "V_")
- (object Attribute
- tool "DDL"
- name "TableName"
- value "T_")
- (object Attribute
- tool "DDL"
- name "InheritSuffix"
- value "_V")
- (object Attribute
- tool "DDL"
- name "DropClause"
- value FALSE)
- (object Attribute
- tool "DDL"
- name "BaseViews"
- value FALSE)
- (object Attribute
- tool "DDL"
- name "DDLScriptFilename"
- value "DDL1.SQL")))
- (object Attribute
- tool "DDL"
- name "default__Attribute"
- value (list Attribute_Set
- (object Attribute
- tool "DDL"
- name "ColumnType"
- value "VARCHAR")
- (object Attribute
- tool "DDL"
- name "Length"
- value "")
- (object Attribute
- tool "DDL"
- name "NullsOK"
- value TRUE)
- (object Attribute
- tool "DDL"
- name "PrimaryKey"
- value FALSE)
- (object Attribute
- tool "DDL"
- name "Unique"
- value FALSE)
- (object Attribute
- tool "DDL"
- name "CompositeUnique"
- value FALSE)
- (object Attribute
- tool "DDL"
- name "CheckConstraint"
- value "")))
- (object Attribute
- tool "DDL"
- name "HiddenTool"
- value FALSE)
- (object Attribute
- tool "framework"
- name "HiddenTool"
- value FALSE)
- (object Attribute
- tool "IDL"
- name "propertyId"
- value "809135966")
- (object Attribute
- tool "IDL"
- name "default__Project"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "CreateMissingDirectories"
- value TRUE)
- (object Attribute
- tool "IDL"
- name "StopOnError"
- value TRUE)
- (object Attribute
- tool "IDL"
- name "Directory"
- value "AUTO GENERATE")
- (object Attribute
- tool "IDL"
- name "GeneratePreserveRegions"
- value TRUE)))
- (object Attribute
- tool "IDL"
- name "default__Class"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "ImplementationType"
- value "")
- (object Attribute
- tool "IDL"
- name "ConstValue"
- value "")
- (object Attribute
- tool "IDL"
- name "GenerateDefaultSpecifier"
- value FALSE)
- (object Attribute
- tool "IDL"
- name "DefaultSpecifier"
- value "")
- (object Attribute
- tool "IDL"
- name "IDLElement"
- value TRUE)
- (object Attribute
- tool "IDL"
- name "IDLSpecificationType"
- value ("IDLSpecSet" 22))
- (object Attribute
- tool "IDL"
- name "IDLSpecSet"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "Interface"
- value 22)
- (object Attribute
- tool "IDL"
- name "Typedef"
- value 54)
- (object Attribute
- tool "IDL"
- name "Enumeration"
- value 8)
- (object Attribute
- tool "IDL"
- name "Const"
- value 71)
- (object Attribute
- tool "IDL"
- name "Exception"
- value 61)
- (object Attribute
- tool "IDL"
- name "Struct"
- value 51)
- (object Attribute
- tool "IDL"
- name "Union"
- value 81)))))
- (object Attribute
- tool "IDL"
- name "default__Module-Spec"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "Generate"
- value TRUE)
- (object Attribute
- tool "IDL"
- name "CmIdentification"
- value (value Text " %X% %Q% %Z% %W%"))
- (object Attribute
- tool "IDL"
- name "CopyrightNotice"
- value (value Text ""))
- (object Attribute
- tool "IDL"
- name "FileName"
- value "AUTO GENERATE")
- (object Attribute
- tool "IDL"
- name "GenerateIDLModule"
- value FALSE)
- (object Attribute
- tool "IDL"
- name "InclusionProtectionSymbol"
- value "AUTO GENERATE")
- (object Attribute
- tool "IDL"
- name "AdditionalIncludes"
- value (value Text ""))
- (object Attribute
- tool "IDL"
- name "IncludeBySimpleName"
- value FALSE)))
- (object Attribute
- tool "IDL"
- name "default__Module-Body"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "CmIdentification"
- value (value Text " %X% %Q% %Z% %W%"))
- (object Attribute
- tool "IDL"
- name "CopyrightNotice"
- value (value Text ""))
- (object Attribute
- tool "IDL"
- name "FileName"
- value "AUTO GENERATE")
- (object Attribute
- tool "IDL"
- name "AdditionalIncludes"
- value (value Text ""))
- (object Attribute
- tool "IDL"
- name "IncludeBySimpleName"
- value FALSE)))
- (object Attribute
- tool "IDL"
- name "default__Operation"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "OperationIsOneWay"
- value FALSE)
- (object Attribute
- tool "IDL"
- name "Context"
- value "")
- (object Attribute
- tool "IDL"
- name "Raises"
- value "")))
- (object Attribute
- tool "IDL"
- name "default__Attribute"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "CaseSpecifier"
- value "")
- (object Attribute
- tool "IDL"
- name "GenerateDataMember"
- value TRUE)
- (object Attribute
- tool "IDL"
- name "DataMemberName"
- value "$relationship")
- (object Attribute
- tool "IDL"
- name "IsReadOnly"
- value FALSE)
- (object Attribute
- tool "IDL"
- name "IsConst"
- value FALSE)
- (object Attribute
- tool "IDL"
- name "ConstValue"
- value "")))
- (object Attribute
- tool "IDL"
- name "default__Has"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "NameIfUnlabeled"
- value "the_$supplier")
- (object Attribute
- tool "IDL"
- name "GenerateDataMember"
- value TRUE)
- (object Attribute
- tool "IDL"
- name "DataMemberName"
- value "$relationship")
- (object Attribute
- tool "IDL"
- name "GenerateForwardReference"
- value FALSE)
- (object Attribute
- tool "IDL"
- name "IsReadOnly"
- value FALSE)
- (object Attribute
- tool "IDL"
- name "BoundedHasRelType"
- value ("HasRelTypeSet" 47))
- (object Attribute
- tool "IDL"
- name "HasRelTypeSet"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "Array"
- value 24)
- (object Attribute
- tool "IDL"
- name "Sequence"
- value 47)))))
- (object Attribute
- tool "IDL"
- name "default__Role"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "NameIfUnlabeled"
- value "the_$supplier")
- (object Attribute
- tool "IDL"
- name "GenerateDataMember"
- value TRUE)
- (object Attribute
- tool "IDL"
- name "DataMemberName"
- value "$relationship")
- (object Attribute
- tool "IDL"
- name "GenerateForwardReference"
- value FALSE)
- (object Attribute
- tool "IDL"
- name "IsReadOnly"
- value FALSE)
- (object Attribute
- tool "IDL"
- name "BoundedRoleType"
- value ("AssocTypeSet" 47))
- (object Attribute
- tool "IDL"
- name "AssocTypeSet"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "Array"
- value 24)
- (object Attribute
- tool "IDL"
- name "Sequence"
- value 47)))))
- (object Attribute
- tool "IDL"
- name "default__Uses"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "GenerateForwardReference"
- value FALSE)))
- (object Attribute
- tool "IDL"
- name "default__Subsystem"
- value (list Attribute_Set
- (object Attribute
- tool "IDL"
- name "Directory"
- value "AUTO GENERATE")))
- (object Attribute
- tool "IDL"
- name "HiddenTool"
- value FALSE)
- (object Attribute
- tool "Java"
- name "propertyId"
- value "809135966")
- (object Attribute
- tool "Java"
- name "default__Project"
- value (list Attribute_Set
- (object Attribute
- tool "Java"
- name "CreateMissingDirectories"
- value TRUE)
- (object Attribute
- tool "Java"
- name "StopOnError"
- value FALSE)
- (object Attribute
- tool "Java"
- name "Directory"
- value "AUTO GENERATE")
- (object Attribute
- tool "Java"
- name "UsePrefixes"
- value FALSE)
- (object Attribute
- tool "Java"
- name "InstanceVariablePrefix"
- value "m_")
- (object Attribute
- tool "Java"
- name "ClassVariablePrefix"
- value "s_")
- (object Attribute
- tool "Java"
- name "DefaultAttributeDataType"
- value "int")
- (object Attribute
- tool "Java"
- name "DefaultOperationReturnType"
- value "void")))
- (object Attribute
- tool "Java"
- name "default__Class"
- value (list Attribute_Set
- (object Attribute
- tool "Java"
- name "Final"
- value FALSE)
- (object Attribute
- tool "Java"
- name "GenerateDefaultConstructor"
- value TRUE)
- (object Attribute
- tool "Java"
- name "ConstructorIs"
- value ("Ctor_Set" 62))
- (object Attribute
- tool "Java"
- name "Ctor_Set"
- value (list Attribute_Set
- (object Attribute
- tool "Java"
- name "Public"
- value 62)
- (object Attribute
- tool "Java"
- name "Protected"
- value 63)
- (object Attribute
- tool "Java"
- name "Private"
- value 64)))
- (object Attribute
- tool "Java"
- name "GenerateFinalizer"
- value FALSE)
- (object Attribute
- tool "Java"
- name "GenerateStaticInitializer"
- value FALSE)
- (object Attribute
- tool "Java"
- name "GenerateInstanceInitializer"
- value FALSE)))
- (object Attribute
- tool "Java"
- name "default__Module-Spec"
- value (list Attribute_Set
- (object Attribute
- tool "Java"
- name "Generate"
- value TRUE)
- (object Attribute
- tool "Java"
- name "CmIdentification"
- value (value Text ""))
- (object Attribute
- tool "Java"
- name "CopyrightNotice"
- value (value Text ""))
- (object Attribute
- tool "Java"
- name "AdditionalImports"
- value (value Text ""))))
- (object Attribute
- tool "Java"
- name "default__Module-Body"
- value (list Attribute_Set
- (object Attribute
- tool "Java"
- name "Generate"
- value TRUE)
- (object Attribute
- tool "Java"
- name "CmIdentification"
- value (value Text ""))
- (object Attribute
- tool "Java"
- name "CopyrightNotice"
- value (value Text ""))
- (object Attribute
- tool "Java"
- name "AdditionalImports"
- value (value Text ""))))
- (object Attribute
- tool "Java"
- name "default__Operation"
- value (list Attribute_Set
- (object Attribute
- tool "Java"
- name "Abstract"
- value FALSE)
- (object Attribute
- tool "Java"
- name "Static"
- value FALSE)
- (object Attribute
- tool "Java"
- name "Final"
- value FALSE)
- (object Attribute
- tool "Java"
- name "Native"
- value FALSE)
- (object Attribute
- tool "Java"
- name "Synchronized"
- value FALSE)))
- (object Attribute
- tool "Java"
- name "default__Attribute"
- value (list Attribute_Set
- (object Attribute
- tool "Java"
- name "GenerateDataMember"
- value TRUE)
- (object Attribute
- tool "Java"
- name "Final"
- value FALSE)
- (object Attribute
- tool "Java"
- name "Transient"
- value FALSE)
- (object Attribute
- tool "Java"
- name "Volatile"
- value FALSE)))
- (object Attribute
- tool "Java"
- name "default__Role"
- value (list Attribute_Set
- (object Attribute
- tool "Java"
- name "GenerateDataMember"
- value TRUE)
- (object Attribute
- tool "Java"
- name "ContainerClass"
- value "")
- (object Attribute
- tool "Java"
- name "InitialValue"
- value "")
- (object Attribute
- tool "Java"
- name "Final"
- value FALSE)
- (object Attribute
- tool "Java"
- name "Transient"
- value FALSE)
- (object Attribute
- tool "Java"
- name "Volatile"
- value FALSE)))
- (object Attribute
- tool "Java"
- name "HiddenTool"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "propertyId"
- value "360000002")
- (object Attribute
- tool "Oracle8"
- name "default__Project"
- value (list Attribute_Set
- (object Attribute
- tool "Oracle8"
- name "DDLScriptFilename"
- value "DDL1.SQL")
- (object Attribute
- tool "Oracle8"
- name "DropClause"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "PrimaryKeyColumnName"
- value "_ID")
- (object Attribute
- tool "Oracle8"
- name "PrimaryKeyColumnType"
- value "NUMBER(5,0)")
- (object Attribute
- tool "Oracle8"
- name "SchemaNamePrefix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "SchemaNameSuffix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "TableNamePrefix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "TableNameSuffix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "TypeNamePrefix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "TypeNameSuffix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "ViewNamePrefix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "ViewNameSuffix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "VarrayNamePrefix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "VarrayNameSuffix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "NestedTableNamePrefix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "NestedTableNameSuffix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "ObjectTableNamePrefix"
- value "")
- (object Attribute
- tool "Oracle8"
- name "ObjectTableNameSuffix"
- value "")))
- (object Attribute
- tool "Oracle8"
- name "default__Module-Spec"
- value (list Attribute_Set
- (object Attribute
- tool "Oracle8"
- name "IsSchema"
- value FALSE)))
- (object Attribute
- tool "Oracle8"
- name "default__Class"
- value (list Attribute_Set
- (object Attribute
- tool "Oracle8"
- name "OID"
- value "")
- (object Attribute
- tool "Oracle8"
- name "WhereClause"
- value "")
- (object Attribute
- tool "Oracle8"
- name "CheckConstraint"
- value "")
- (object Attribute
- tool "Oracle8"
- name "CollectionTypeLength"
- value "")
- (object Attribute
- tool "Oracle8"
- name "CollectionTypePrecision"
- value "")
- (object Attribute
- tool "Oracle8"
- name "CollectionTypeScale"
- value "")
- (object Attribute
- tool "Oracle8"
- name "CollectionOfREFS"
- value FALSE)))
- (object Attribute
- tool "Oracle8"
- name "default__Operation"
- value (list Attribute_Set
- (object Attribute
- tool "Oracle8"
- name "MethodKind"
- value ("MethodKindSet" 1903))
- (object Attribute
- tool "Oracle8"
- name "OverloadID"
- value "")
- (object Attribute
- tool "Oracle8"
- name "OrderNumber"
- value "")
- (object Attribute
- tool "Oracle8"
- name "IsReadNoDataState"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "IsReadNoProcessState"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "IsWriteNoDataState"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "IsWriteNoProcessState"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "IsSelfish"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "TriggerType"
- value ("TriggerTypeSet" 1801))
- (object Attribute
- tool "Oracle8"
- name "TriggerEvent"
- value ("TriggerEventSet" 1601))
- (object Attribute
- tool "Oracle8"
- name "TriggerText"
- value "")
- (object Attribute
- tool "Oracle8"
- name "TriggerReferencingNames"
- value "")
- (object Attribute
- tool "Oracle8"
- name "TriggerForEach"
- value ("TriggerForEachSet" 1701))
- (object Attribute
- tool "Oracle8"
- name "TriggerWhenClause"
- value "")
- (object Attribute
- tool "Oracle8"
- name "MethodKindSet"
- value (list Attribute_Set
- (object Attribute
- tool "Oracle8"
- name "MapMethod"
- value 1901)
- (object Attribute
- tool "Oracle8"
- name "OrderMethod"
- value 1902)
- (object Attribute
- tool "Oracle8"
- name "Function"
- value 1903)
- (object Attribute
- tool "Oracle8"
- name "Procedure"
- value 1904)
- (object Attribute
- tool "Oracle8"
- name "Operator"
- value 1905)
- (object Attribute
- tool "Oracle8"
- name "Constructor"
- value 1906)
- (object Attribute
- tool "Oracle8"
- name "Destructor"
- value 1907)
- (object Attribute
- tool "Oracle8"
- name "Trigger"
- value 1908)
- (object Attribute
- tool "Oracle8"
- name "Calculated"
- value 1909)))
- (object Attribute
- tool "Oracle8"
- name "TriggerTypeSet"
- value (list Attribute_Set
- (object Attribute
- tool "Oracle8"
- name "AFTER"
- value 1801)
- (object Attribute
- tool "Oracle8"
- name "BEFORE"
- value 1802)
- (object Attribute
- tool "Oracle8"
- name "INSTEAD OF"
- value 1803)))
- (object Attribute
- tool "Oracle8"
- name "TriggerForEachSet"
- value (list Attribute_Set
- (object Attribute
- tool "Oracle8"
- name "ROW"
- value 1701)
- (object Attribute
- tool "Oracle8"
- name "STATEMENT"
- value 1702)))
- (object Attribute
- tool "Oracle8"
- name "TriggerEventSet"
- value (list Attribute_Set
- (object Attribute
- tool "Oracle8"
- name "INSERT"
- value 1601)
- (object Attribute
- tool "Oracle8"
- name "UPDATE"
- value 1602)
- (object Attribute
- tool "Oracle8"
- name "DELETE"
- value 1603)
- (object Attribute
- tool "Oracle8"
- name "INSERT OR UPDATE"
- value 1604)
- (object Attribute
- tool "Oracle8"
- name "INSERT OR DELETE"
- value 1605)
- (object Attribute
- tool "Oracle8"
- name "UPDATE OR DELETE"
- value 1606)
- (object Attribute
- tool "Oracle8"
- name "INSERT OR UPDATE OR DELETE"
- value 1607)))))
- (object Attribute
- tool "Oracle8"
- name "default__Role"
- value (list Attribute_Set
- (object Attribute
- tool "Oracle8"
- name "OrderNumber"
- value "")))
- (object Attribute
- tool "Oracle8"
- name "default__Attribute"
- value (list Attribute_Set
- (object Attribute
- tool "Oracle8"
- name "OrderNumber"
- value "")
- (object Attribute
- tool "Oracle8"
- name "IsUnique"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "NullsAllowed"
- value TRUE)
- (object Attribute
- tool "Oracle8"
- name "Length"
- value "")
- (object Attribute
- tool "Oracle8"
- name "Precision"
- value "2")
- (object Attribute
- tool "Oracle8"
- name "Scale"
- value "6")
- (object Attribute
- tool "Oracle8"
- name "IsIndex"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "IsPrimaryKey"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "CompositeUnique"
- value FALSE)
- (object Attribute
- tool "Oracle8"
- name "CheckConstraint"
- value "")))
- (object Attribute
- tool "Oracle8"
- name "HiddenTool"
- value FALSE)
- (object Attribute
- tool "Repository"
- name "HiddenTool"
- value FALSE)
- (object Attribute
- tool "cg"
- name "propertyId"
- value "809135966")
- (object Attribute
- tool "cg"
- name "default__Project"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "UseMSVC"
- value FALSE)
- (object Attribute
- tool "cg"
- name "HeaderFileExtension"
- value "h")
- (object Attribute
- tool "cg"
- name "HeaderFileBackupExtension"
- value "h~")
- (object Attribute
- tool "cg"
- name "HeaderFileTemporaryExtension"
- value "h#")
- (object Attribute
- tool "cg"
- name "CodeFileExtension"
- value "cpp")
- (object Attribute
- tool "cg"
- name "CodeFileBackupExtension"
- value "cp~")
- (object Attribute
- tool "cg"
- name "CodeFileTemporaryExtension"
- value "cp#")
- (object Attribute
- tool "cg"
- name "CreateMissingDirectories"
- value TRUE)
- (object Attribute
- tool "cg"
- name "StopOnError"
- value FALSE)
- (object Attribute
- tool "cg"
- name "ErrorLimit"
- value 30)
- (object Attribute
- tool "cg"
- name "Directory"
- value "$ROSECPP_SOURCE")
- (object Attribute
- tool "cg"
- name "PathSeparator"
- value "")
- (object Attribute
- tool "cg"
- name "FileNameFormat"
- value "128vx_b")
- (object Attribute
- tool "cg"
- name "BooleanType"
- value "int")
- (object Attribute
- tool "cg"
- name "AllowTemplates"
- value TRUE)
- (object Attribute
- tool "cg"
- name "AllowExplicitInstantiations"
- value TRUE)
- (object Attribute
- tool "cg"
- name "AllowProtectedInheritance"
- value TRUE)
- (object Attribute
- tool "cg"
- name "CommentWidth"
- value 60)
- (object Attribute
- tool "cg"
- name "OneByValueContainer"
- value "$targetClass")
- (object Attribute
- tool "cg"
- name "OneByReferenceContainer"
- value "$targetClass *")
- (object Attribute
- tool "cg"
- name "OptionalByValueContainer"
- value "OptionalByValue<$targetClass>")
- (object Attribute
- tool "cg"
- name "OptionalByReferenceContainer"
- value "$targetClass *")
- (object Attribute
- tool "cg"
- name "FixedByValueContainer"
- value "$targetClass[$limit]")
- (object Attribute
- tool "cg"
- name "UnorderedFixedByValueContainer"
- value "$targetClass[$limit]")
- (object Attribute
- tool "cg"
- name "FixedByReferenceContainer"
- value "$targetClass *[$limit]")
- (object Attribute
- tool "cg"
- name "UnorderedFixedByReferenceContainer"
- value "$targetClass *[$limit]")
- (object Attribute
- tool "cg"
- name "BoundedByValueContainer"
- value "BoundedListByValue<$targetClass,$limit>")
- (object Attribute
- tool "cg"
- name "UnorderedBoundedByValueContainer"
- value "BoundedSetByValue<$targetClass,$limit>")
- (object Attribute
- tool "cg"
- name "BoundedByReferenceContainer"
- value "BoundedListByReference<$targetClass,$limit>")
- (object Attribute
- tool "cg"
- name "UnorderedBoundedByReferenceContainer"
- value "BoundedSetByReference<$targetClass,$limit>")
- (object Attribute
- tool "cg"
- name "UnboundedByValueContainer"
- value "UnboundedListByValue<$targetClass>")
- (object Attribute
- tool "cg"
- name "UnorderedUnboundedByValueContainer"
- value "UnboundedSetByValue<$targetClass>")
- (object Attribute
- tool "cg"
- name "UnboundedByReferenceContainer"
- value "UnboundedListByReference<$targetClass>")
- (object Attribute
- tool "cg"
- name "UnorderedUnboundedByReferenceContainer"
- value "UnboundedSetByReference<$targetClass>")
- (object Attribute
- tool "cg"
- name "QualifiedByValueContainer"
- value "AssociationByValue<$qualtype, $qualcont>")
- (object Attribute
- tool "cg"
- name "UnorderedQualifiedByValueContainer"
- value "DictionaryByValue<$qualtype, $qualcont>")
- (object Attribute
- tool "cg"
- name "QualifiedByReferenceContainer"
- value "AssociationByReference<$qualtype, $qualcont>")
- (object Attribute
- tool "cg"
- name "UnorderedQualifiedByReferenceContainer"
- value "DictionaryByReference<$qualtype, $qualcont>")
- (object Attribute
- tool "cg"
- name "GeneratePreserveRegions"
- value TRUE)))
- (object Attribute
- tool "cg"
- name "default__Class"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "CodeName"
- value "")
- (object Attribute
- tool "cg"
- name "ImplementationType"
- value "")
- (object Attribute
- tool "cg"
- name "ClassKey"
- value "class")
- (object Attribute
- tool "cg"
- name "GenerateEmptyRegions"
- value ("GenerateEmptyRegionSet" 3))
- (object Attribute
- tool "cg"
- name "GenerateEmptyRegionSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "None"
- value 0)
- (object Attribute
- tool "cg"
- name "Preserved"
- value 1)
- (object Attribute
- tool "cg"
- name "Unpreserved"
- value 2)
- (object Attribute
- tool "cg"
- name "All"
- value 3)))
- (object Attribute
- tool "cg"
- name "PutBodiesInSpec"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateDefaultConstructor"
- value ("GenerateSet" 199))
- (object Attribute
- tool "cg"
- name "DefaultConstructorVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "InlineDefaultConstructor"
- value FALSE)
- (object Attribute
- tool "cg"
- name "ExplicitDefaultConstructor"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateCopyConstructor"
- value ("GenerateSet" 199))
- (object Attribute
- tool "cg"
- name "CopyConstructorVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "InlineCopyConstructor"
- value FALSE)
- (object Attribute
- tool "cg"
- name "ExplicitCopyConstructor"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateDestructor"
- value TRUE)
- (object Attribute
- tool "cg"
- name "DestructorVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "DestructorKind"
- value ("ThreeKindSet" 200))
- (object Attribute
- tool "cg"
- name "InlineDestructor"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateAssignmentOperation"
- value ("GenerateSet" 199))
- (object Attribute
- tool "cg"
- name "AssignmentVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "AssignmentKind"
- value ("ThreeKindSet" 200))
- (object Attribute
- tool "cg"
- name "InlineAssignmentOperation"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateEqualityOperations"
- value ("GenerateSet" 199))
- (object Attribute
- tool "cg"
- name "EqualityVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "EqualityKind"
- value ("FriendKindSet" 200))
- (object Attribute
- tool "cg"
- name "InlineEqualityOperations"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateRelationalOperations"
- value FALSE)
- (object Attribute
- tool "cg"
- name "RelationalVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "RelationalKind"
- value ("FriendKindSet" 200))
- (object Attribute
- tool "cg"
- name "InlineRelationalOperations"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateStorageMgmtOperations"
- value FALSE)
- (object Attribute
- tool "cg"
- name "StorageMgmtVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "InlineStorageMgmtOperations"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateSubscriptOperation"
- value FALSE)
- (object Attribute
- tool "cg"
- name "SubscriptVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "SubscriptKind"
- value ("ThreeKindSet" 200))
- (object Attribute
- tool "cg"
- name "SubscriptResultType"
- value "")
- (object Attribute
- tool "cg"
- name "InlineSubscriptOperation"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateDereferenceOperation"
- value FALSE)
- (object Attribute
- tool "cg"
- name "DereferenceVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "DereferenceKind"
- value ("ThreeKindSet" 200))
- (object Attribute
- tool "cg"
- name "DereferenceResultType"
- value "")
- (object Attribute
- tool "cg"
- name "InlineDereferenceOperation"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateIndirectionOperation"
- value FALSE)
- (object Attribute
- tool "cg"
- name "IndirectionVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "IndirectionKind"
- value ("ThreeKindSet" 200))
- (object Attribute
- tool "cg"
- name "IndirectionResultType"
- value "")
- (object Attribute
- tool "cg"
- name "InlineIndirectionOperation"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateStreamOperations"
- value FALSE)
- (object Attribute
- tool "cg"
- name "StreamVisibility"
- value ("VisibilitySet" 45))
- (object Attribute
- tool "cg"
- name "InlineStreamOperations"
- value FALSE)
- (object Attribute
- tool "cg"
- name "ThreeKindSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Common"
- value 200)
- (object Attribute
- tool "cg"
- name "Virtual"
- value 201)
- (object Attribute
- tool "cg"
- name "Abstract"
- value 202)))
- (object Attribute
- tool "cg"
- name "KindSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Common"
- value 200)
- (object Attribute
- tool "cg"
- name "Virtual"
- value 201)
- (object Attribute
- tool "cg"
- name "Abstract"
- value 202)
- (object Attribute
- tool "cg"
- name "Static"
- value 203)))
- (object Attribute
- tool "cg"
- name "FriendKindSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Common"
- value 200)
- (object Attribute
- tool "cg"
- name "Virtual"
- value 201)
- (object Attribute
- tool "cg"
- name "Abstract"
- value 202)
- (object Attribute
- tool "cg"
- name "Friend"
- value 204)))
- (object Attribute
- tool "cg"
- name "GenerateSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "DeclareAndDefine"
- value 199)
- (object Attribute
- tool "cg"
- name "DeclareOnly"
- value 205)
- (object Attribute
- tool "cg"
- name "DoNotDeclare"
- value 206)))
- (object Attribute
- tool "cg"
- name "VisibilitySet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Public"
- value 45)
- (object Attribute
- tool "cg"
- name "Protected"
- value 44)
- (object Attribute
- tool "cg"
- name "Private"
- value 43)
- (object Attribute
- tool "cg"
- name "Implementation"
- value 14)))
- (object Attribute
- tool "cg"
- name "ConstValue"
- value "")
- (object Attribute
- tool "cg"
- name "GenerateDefaultSpecifier"
- value FALSE)
- (object Attribute
- tool "cg"
- name "DefaultSpecifier"
- value "")))
- (object Attribute
- tool "cg"
- name "default__Module-Spec"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Generate"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GenerateEmptyRegions"
- value ("GenerateEmptyRegionSet" 3))
- (object Attribute
- tool "cg"
- name "GenerateEmptyRegionSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "None"
- value 0)
- (object Attribute
- tool "cg"
- name "Preserved"
- value 1)
- (object Attribute
- tool "cg"
- name "Unpreserved"
- value 2)
- (object Attribute
- tool "cg"
- name "All"
- value 3)))
- (object Attribute
- tool "cg"
- name "CmIdentification"
- value (value Text " %X% %Q% %Z% %W%"))
- (object Attribute
- tool "cg"
- name "CopyrightNotice"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "FileName"
- value "AUTO GENERATE")
- (object Attribute
- tool "cg"
- name "AllowExtensionlessFileName"
- value FALSE)
- (object Attribute
- tool "cg"
- name "InclusionProtectionSymbol"
- value "AUTO GENERATE")
- (object Attribute
- tool "cg"
- name "IncludeFormat"
- value (value Text
-|// $package
-|#include "$file"
-|
- ))
- (object Attribute
- tool "cg"
- name "IncludeBySimpleName"
- value FALSE)
- (object Attribute
- tool "cg"
- name "IncludePrecompiledHeader"
- value FALSE)
- (object Attribute
- tool "cg"
- name "IncludeOrder"
- value "AMIR")
- (object Attribute
- tool "cg"
- name "AdditionalIncludes"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "InliningStyle"
- value ("InliningStyleSet" 207))
- (object Attribute
- tool "cg"
- name "InliningStyleSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "InClassDeclaration"
- value 208)
- (object Attribute
- tool "cg"
- name "FollowingClassDeclaration"
- value 207)))
- (object Attribute
- tool "cg"
- name "TypesDefined"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "IncludeClosure"
- value (value Text ""))))
- (object Attribute
- tool "cg"
- name "default__Module-Body"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Generate"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GenerateEmptyRegions"
- value ("GenerateEmptyRegionSet" 3))
- (object Attribute
- tool "cg"
- name "GenerateEmptyRegionSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "None"
- value 0)
- (object Attribute
- tool "cg"
- name "Preserved"
- value 1)
- (object Attribute
- tool "cg"
- name "Unpreserved"
- value 2)
- (object Attribute
- tool "cg"
- name "All"
- value 3)))
- (object Attribute
- tool "cg"
- name "CmIdentification"
- value (value Text " %X% %Q% %Z% %W%"))
- (object Attribute
- tool "cg"
- name "CopyrightNotice"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "FileName"
- value "AUTO GENERATE")
- (object Attribute
- tool "cg"
- name "AllowExtensionlessFileName"
- value FALSE)
- (object Attribute
- tool "cg"
- name "IncludeFormat"
- value (value Text
-|// $package
-|#include "$file"
-|
- ))
- (object Attribute
- tool "cg"
- name "IncludeBySimpleName"
- value FALSE)
- (object Attribute
- tool "cg"
- name "IncludePrecompiledHeader"
- value TRUE)
- (object Attribute
- tool "cg"
- name "IncludeOrder"
- value "AMIR")
- (object Attribute
- tool "cg"
- name "AdditionalIncludes"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "InliningStyle"
- value ("InliningStyleSet" 207))
- (object Attribute
- tool "cg"
- name "InliningStyleSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "InClassDeclaration"
- value 208)
- (object Attribute
- tool "cg"
- name "FollowingClassDeclaration"
- value 207)))
- (object Attribute
- tool "cg"
- name "TypesDefined"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "IncludeClosure"
- value (value Text ""))))
- (object Attribute
- tool "cg"
- name "default__Operation"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "CodeName"
- value "")
- (object Attribute
- tool "cg"
- name "OperationKind"
- value ("OperationKindSet" 200))
- (object Attribute
- tool "cg"
- name "OperationKindSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Common"
- value 200)
- (object Attribute
- tool "cg"
- name "Virtual"
- value 201)
- (object Attribute
- tool "cg"
- name "Abstract"
- value 202)
- (object Attribute
- tool "cg"
- name "Static"
- value 203)
- (object Attribute
- tool "cg"
- name "Friend"
- value 204)))
- (object Attribute
- tool "cg"
- name "OperationIsConst"
- value FALSE)
- (object Attribute
- tool "cg"
- name "OperationIsExplicit"
- value FALSE)
- (object Attribute
- tool "cg"
- name "Inline"
- value FALSE)
- (object Attribute
- tool "cg"
- name "EntryCode"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "ExitCode"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "GenerateEmptyRegions"
- value ("GenerateEmptyRegionSet" 3))
- (object Attribute
- tool "cg"
- name "GenerateEmptyRegionSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "None"
- value 0)
- (object Attribute
- tool "cg"
- name "Preserved"
- value 1)
- (object Attribute
- tool "cg"
- name "Unpreserved"
- value 2)
- (object Attribute
- tool "cg"
- name "All"
- value 3)))
- (object Attribute
- tool "cg"
- name "BodyAnnotations"
- value "")
- (object Attribute
- tool "cg"
- name "OperationIsOneWay"
- value FALSE)
- (object Attribute
- tool "cg"
- name "Context"
- value "")
- (object Attribute
- tool "cg"
- name "Raises"
- value "")))
- (object Attribute
- tool "cg"
- name "default__Has"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "CodeName"
- value "")
- (object Attribute
- tool "cg"
- name "Ordered"
- value TRUE)
- (object Attribute
- tool "cg"
- name "NameIfUnlabeled"
- value "the_$supplier")
- (object Attribute
- tool "cg"
- name "GenerateDataMember"
- value TRUE)
- (object Attribute
- tool "cg"
- name "DataMemberName"
- value "$relationship")
- (object Attribute
- tool "cg"
- name "DataMemberVisibility"
- value ("DataMemberVisibilitySet" 14))
- (object Attribute
- tool "cg"
- name "DataMemberVisibilitySet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Public"
- value 45)
- (object Attribute
- tool "cg"
- name "Protected"
- value 44)
- (object Attribute
- tool "cg"
- name "Private"
- value 43)
- (object Attribute
- tool "cg"
- name "Implementation"
- value 14)
- (object Attribute
- tool "cg"
- name "AtRelationshipVisibility"
- value 210)))
- (object Attribute
- tool "cg"
- name "DataMemberMutability"
- value ("DataMemberMutabilitySet" 0))
- (object Attribute
- tool "cg"
- name "DataMemberMutabilitySet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Unrestricted"
- value 0)
- (object Attribute
- tool "cg"
- name "Mutable"
- value 1)
- (object Attribute
- tool "cg"
- name "Const"
- value 2)))
- (object Attribute
- tool "cg"
- name "DataMemberIsVolatile"
- value FALSE)
- (object Attribute
- tool "cg"
- name "DataMemberFieldSize"
- value "")
- (object Attribute
- tool "cg"
- name "InitialValue"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "GenerateGetOperation"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GenerateSetOperation"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GetName"
- value "get_$relationship")
- (object Attribute
- tool "cg"
- name "SetName"
- value "set_$relationship")
- (object Attribute
- tool "cg"
- name "GetSetKinds"
- value ("GetSetKindsSet" 200))
- (object Attribute
- tool "cg"
- name "GetSetKindsSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Common"
- value 200)
- (object Attribute
- tool "cg"
- name "Virtual"
- value 201)
- (object Attribute
- tool "cg"
- name "Abstract"
- value 202)
- (object Attribute
- tool "cg"
- name "Static"
- value 203)
- (object Attribute
- tool "cg"
- name "Friend"
- value 204)))
- (object Attribute
- tool "cg"
- name "ContainerClass"
- value "")
- (object Attribute
- tool "cg"
- name "SelectorName"
- value "")
- (object Attribute
- tool "cg"
- name "SelectorType"
- value "")
- (object Attribute
- tool "cg"
- name "GetIsConst"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GetResultIsConst"
- value ("GetResultIsConstSet" 2))
- (object Attribute
- tool "cg"
- name "GetResultIsConstSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "False"
- value 0)
- (object Attribute
- tool "cg"
- name "True"
- value 1)
- (object Attribute
- tool "cg"
- name "Same_As_Function"
- value 2)))
- (object Attribute
- tool "cg"
- name "GetSetByReference"
- value FALSE)
- (object Attribute
- tool "cg"
- name "InlineGet"
- value TRUE)
- (object Attribute
- tool "cg"
- name "SetReturnsValue"
- value FALSE)
- (object Attribute
- tool "cg"
- name "InlineSet"
- value TRUE)
- (object Attribute
- tool "cg"
- name "ForwardReferenceOnly"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateForwardReference"
- value FALSE)
- (object Attribute
- tool "cg"
- name "IsReadOnly"
- value FALSE)
- (object Attribute
- tool "cg"
- name "BoundedHasRelType"
- value ("HasRelTypeSet" 47))
- (object Attribute
- tool "cg"
- name "HasRelTypeSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Array"
- value 24)
- (object Attribute
- tool "cg"
- name "Sequence"
- value 47)))))
- (object Attribute
- tool "cg"
- name "default__Association"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "NameIfUnlabeled"
- value "the_$targetClass")))
- (object Attribute
- tool "cg"
- name "default__Inherit"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "InstanceArguments"
- value "")))
- (object Attribute
- tool "cg"
- name "default__Role"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "CodeName"
- value "")
- (object Attribute
- tool "cg"
- name "ForwardReferenceOnly"
- value FALSE)
- (object Attribute
- tool "cg"
- name "NameIfUnlabeled"
- value "the_$targetClass")
- (object Attribute
- tool "cg"
- name "GenerateDataMember"
- value TRUE)
- (object Attribute
- tool "cg"
- name "DataMemberName"
- value "$target")
- (object Attribute
- tool "cg"
- name "DataMemberVisibility"
- value ("DataMemberVisibilitySet" 14))
- (object Attribute
- tool "cg"
- name "DataMemberVisibilitySet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Public"
- value 45)
- (object Attribute
- tool "cg"
- name "Protected"
- value 44)
- (object Attribute
- tool "cg"
- name "Private"
- value 43)
- (object Attribute
- tool "cg"
- name "Implementation"
- value 14)
- (object Attribute
- tool "cg"
- name "AtRelationshipVisibility"
- value 210)))
- (object Attribute
- tool "cg"
- name "DataMemberMutability"
- value ("DataMemberMutabilitySet" 0))
- (object Attribute
- tool "cg"
- name "DataMemberMutabilitySet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Unrestricted"
- value 0)
- (object Attribute
- tool "cg"
- name "Mutable"
- value 1)
- (object Attribute
- tool "cg"
- name "Const"
- value 2)))
- (object Attribute
- tool "cg"
- name "DataMemberIsVolatile"
- value FALSE)
- (object Attribute
- tool "cg"
- name "DataMemberFieldSize"
- value "")
- (object Attribute
- tool "cg"
- name "InitialValue"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "ContainerClass"
- value "")
- (object Attribute
- tool "cg"
- name "ContainerGet"
- value "$data.get($keys)")
- (object Attribute
- tool "cg"
- name "ContainerSet"
- value "$data.set($keys,$value)")
- (object Attribute
- tool "cg"
- name "QualifiedContainer"
- value "")
- (object Attribute
- tool "cg"
- name "AssocClassContainer"
- value "$supplier *")
- (object Attribute
- tool "cg"
- name "AssocClassInitialValue"
- value (value Text ""))
- (object Attribute
- tool "cg"
- name "GetSetKinds"
- value ("GetSetKindsSet" 200))
- (object Attribute
- tool "cg"
- name "GetSetKindsSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Common"
- value 200)
- (object Attribute
- tool "cg"
- name "Virtual"
- value 201)
- (object Attribute
- tool "cg"
- name "Abstract"
- value 202)
- (object Attribute
- tool "cg"
- name "Static"
- value 203)
- (object Attribute
- tool "cg"
- name "Friend"
- value 204)))
- (object Attribute
- tool "cg"
- name "GetSetByReference"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateGetOperation"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GetName"
- value "get_$target")
- (object Attribute
- tool "cg"
- name "GetIsConst"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GetResultIsConst"
- value ("GetResultIsConstSet" 2))
- (object Attribute
- tool "cg"
- name "GetResultIsConstSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "False"
- value 0)
- (object Attribute
- tool "cg"
- name "True"
- value 1)
- (object Attribute
- tool "cg"
- name "Same_As_Function"
- value 2)))
- (object Attribute
- tool "cg"
- name "InlineGet"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GenerateSetOperation"
- value TRUE)
- (object Attribute
- tool "cg"
- name "SetName"
- value "set_$target")
- (object Attribute
- tool "cg"
- name "SetReturnsValue"
- value FALSE)
- (object Attribute
- tool "cg"
- name "InlineSet"
- value TRUE)
- (object Attribute
- tool "cg"
- name "QualifiedGetSetByReference"
- value ("QualifiedGetSetByReferenceSet" 2))
- (object Attribute
- tool "cg"
- name "QualifiedGetSetByReferenceSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "False"
- value 0)
- (object Attribute
- tool "cg"
- name "True"
- value 1)
- (object Attribute
- tool "cg"
- name "Same_As_GetSetByReference"
- value 2)))
- (object Attribute
- tool "cg"
- name "GenerateQualifiedGetOperation"
- value TRUE)
- (object Attribute
- tool "cg"
- name "QualifiedGetName"
- value "get_$target")
- (object Attribute
- tool "cg"
- name "QualifiedGetIsConst"
- value TRUE)
- (object Attribute
- tool "cg"
- name "QualifiedGetResultIsConst"
- value ("GetResultIsConstSet" 2))
- (object Attribute
- tool "cg"
- name "InlineQualifiedGet"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GenerateQualifiedSetOperation"
- value TRUE)
- (object Attribute
- tool "cg"
- name "QualifiedSetName"
- value "set_$target")
- (object Attribute
- tool "cg"
- name "QualifiedSetReturnsValue"
- value FALSE)
- (object Attribute
- tool "cg"
- name "InlineQualifiedSet"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GenerateAssocClassDataMember"
- value TRUE)
- (object Attribute
- tool "cg"
- name "AssocClassDataMemberName"
- value "$target")
- (object Attribute
- tool "cg"
- name "AssocClassDataMemberVisibility"
- value ("DataMemberVisibilitySet" 14))
- (object Attribute
- tool "cg"
- name "DataMemberVisibilitySet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Public"
- value 45)
- (object Attribute
- tool "cg"
- name "Protected"
- value 44)
- (object Attribute
- tool "cg"
- name "Private"
- value 43)
- (object Attribute
- tool "cg"
- name "Implementation"
- value 14)
- (object Attribute
- tool "cg"
- name "AtRelationshipVisibility"
- value 210)))
- (object Attribute
- tool "cg"
- name "AssocClassDataMemberMutability"
- value ("DataMemberMutabilitySet" 0))
- (object Attribute
- tool "cg"
- name "DataMemberMutabilitySet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Unrestricted"
- value 0)
- (object Attribute
- tool "cg"
- name "Mutable"
- value 1)
- (object Attribute
- tool "cg"
- name "Const"
- value 2)))
- (object Attribute
- tool "cg"
- name "AssocClassDataMemberIsVolatile"
- value FALSE)
- (object Attribute
- tool "cg"
- name "AssocClassGetSetKinds"
- value ("GetSetKindsSet" 200))
- (object Attribute
- tool "cg"
- name "GenerateAssocClassGetOperation"
- value TRUE)
- (object Attribute
- tool "cg"
- name "AssocClassGetName"
- value "get_$target")
- (object Attribute
- tool "cg"
- name "AssocClassGetIsConst"
- value TRUE)
- (object Attribute
- tool "cg"
- name "AssocClassGetResultIsConst"
- value ("GetResultIsConstSet" 2))
- (object Attribute
- tool "cg"
- name "InlineAssocClassGet"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GenerateAssocClassSetOperation"
- value TRUE)
- (object Attribute
- tool "cg"
- name "AssocClassSetName"
- value "set_$target")
- (object Attribute
- tool "cg"
- name "AssocClassSetReturnsValue"
- value FALSE)
- (object Attribute
- tool "cg"
- name "InlineAssocClassSet"
- value TRUE)
- (object Attribute
- tool "cg"
- name "AssocClassForwardReferenceOnly"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GenerateForwardReference"
- value FALSE)
- (object Attribute
- tool "cg"
- name "IsReadOnly"
- value FALSE)
- (object Attribute
- tool "cg"
- name "BoundedRoleType"
- value ("AssocTypeSet" 47))
- (object Attribute
- tool "cg"
- name "AssocTypeSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Array"
- value 24)
- (object Attribute
- tool "cg"
- name "Sequence"
- value 47)))))
- (object Attribute
- tool "cg"
- name "default__Attribute"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "CodeName"
- value "")
- (object Attribute
- tool "cg"
- name "GenerateDataMember"
- value TRUE)
- (object Attribute
- tool "cg"
- name "DataMemberName"
- value "$attribute")
- (object Attribute
- tool "cg"
- name "DataMemberVisibility"
- value ("DataMemberVisibilitySet" 14))
- (object Attribute
- tool "cg"
- name "DataMemberVisibilitySet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Public"
- value 45)
- (object Attribute
- tool "cg"
- name "Protected"
- value 44)
- (object Attribute
- tool "cg"
- name "Private"
- value 43)
- (object Attribute
- tool "cg"
- name "Implementation"
- value 14)
- (object Attribute
- tool "cg"
- name "AtAttributeVisibility"
- value 211)))
- (object Attribute
- tool "cg"
- name "DataMemberMutability"
- value ("DataMemberMutabilitySet" 0))
- (object Attribute
- tool "cg"
- name "DataMemberMutabilitySet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Unrestricted"
- value 0)
- (object Attribute
- tool "cg"
- name "Mutable"
- value 1)
- (object Attribute
- tool "cg"
- name "Const"
- value 2)))
- (object Attribute
- tool "cg"
- name "DataMemberIsVolatile"
- value FALSE)
- (object Attribute
- tool "cg"
- name "DataMemberFieldSize"
- value "")
- (object Attribute
- tool "cg"
- name "GenerateGetOperation"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GenerateSetOperation"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GetName"
- value "get_$attribute")
- (object Attribute
- tool "cg"
- name "SetName"
- value "set_$attribute")
- (object Attribute
- tool "cg"
- name "GetSetKinds"
- value ("GetSetKindsSet" 200))
- (object Attribute
- tool "cg"
- name "GetSetKindsSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Common"
- value 200)
- (object Attribute
- tool "cg"
- name "Virtual"
- value 201)
- (object Attribute
- tool "cg"
- name "Abstract"
- value 202)
- (object Attribute
- tool "cg"
- name "Static"
- value 203)
- (object Attribute
- tool "cg"
- name "Friend"
- value 204)))
- (object Attribute
- tool "cg"
- name "GetIsConst"
- value TRUE)
- (object Attribute
- tool "cg"
- name "GetResultIsConst"
- value ("GetResultIsConstSet" 2))
- (object Attribute
- tool "cg"
- name "GetResultIsConstSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "False"
- value 0)
- (object Attribute
- tool "cg"
- name "True"
- value 1)
- (object Attribute
- tool "cg"
- name "Same_As_Function"
- value 2)))
- (object Attribute
- tool "cg"
- name "GetSetByReference"
- value FALSE)
- (object Attribute
- tool "cg"
- name "InlineGet"
- value TRUE)
- (object Attribute
- tool "cg"
- name "SetReturnsValue"
- value FALSE)
- (object Attribute
- tool "cg"
- name "InlineSet"
- value TRUE)
- (object Attribute
- tool "cg"
- name "CaseSpecifier"
- value "")
- (object Attribute
- tool "cg"
- name "IsReadOnly"
- value FALSE)))
- (object Attribute
- tool "cg"
- name "default__Uses"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "ForwardReferenceOnly"
- value FALSE)
- (object Attribute
- tool "cg"
- name "BodyReferenceOnly"
- value FALSE)
- (object Attribute
- tool "cg"
- name "GenerateForwardReference"
- value FALSE)))
- (object Attribute
- tool "cg"
- name "default__Subsystem"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "Directory"
- value "AUTO GENERATE")
- (object Attribute
- tool "cg"
- name "DirectoryIsOnSearchList"
- value FALSE)
- (object Attribute
- tool "cg"
- name "PrecompiledHeader"
- value "")))
- (object Attribute
- tool "cg"
- name "default__Category"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "IsNamespace"
- value FALSE)
- (object Attribute
- tool "cg"
- name "Indent"
- value 2)
- (object Attribute
- tool "cg"
- name "CodeName"
- value "")
- (object Attribute
- tool "cg"
- name "GenerateEmptyRegions"
- value ("GenerateEmptyRegionSet" 3))
- (object Attribute
- tool "cg"
- name "GenerateEmptyRegionSet"
- value (list Attribute_Set
- (object Attribute
- tool "cg"
- name "None"
- value 0)
- (object Attribute
- tool "cg"
- name "Preserved"
- value 1)
- (object Attribute
- tool "cg"
- name "Unpreserved"
- value 2)
- (object Attribute
- tool "cg"
- name "All"
- value 3)))))
- (object Attribute
- tool "MSVC"
- name "propertyId"
- value "809135966")
- (object Attribute
- tool "MSVC"
- name "default__Project"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Version"
- value "5.0")))
- (object Attribute
- tool "MSVC"
- name "default__Class"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Type"
- value ("MSVCClassTypeSet" 0))
- (object Attribute
- tool "MSVC"
- name "MSVCClassTypeSet"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Normal"
- value 0)
- (object Attribute
- tool "MSVC"
- name "Interface_Part"
- value 1)
- (object Attribute
- tool "MSVC"
- name "Connection_Part"
- value 2)
- (object Attribute
- tool "MSVC"
- name "Class_Factory"
- value 3)))
- (object Attribute
- tool "MSVC"
- name "CObjectFunctionality"
- value ("CObjectFunctionalitySet" 0))
- (object Attribute
- tool "MSVC"
- name "CObjectFunctionalitySet"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "None"
- value 0)
- (object Attribute
- tool "MSVC"
- name "Dynamic"
- value 1)
- (object Attribute
- tool "MSVC"
- name "Dyncreate"
- value 2)
- (object Attribute
- tool "MSVC"
- name "Serial"
- value 3)))
- (object Attribute
- tool "MSVC"
- name "GenerateOverrideGroup"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "GenerateDataGroup"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "AFX_DATA_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateFieldGroup"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "AFX_FIELD_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateMessageGroup"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "GenerateMessageMap"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "AFX_MSG_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "MESSAGE_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "OLEFactory"
- value ("OLEFactorySet" 0))
- (object Attribute
- tool "MSVC"
- name "OLEFactorySet"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "None"
- value 0)
- (object Attribute
- tool "MSVC"
- name "Built_in"
- value 1)
- (object Attribute
- tool "MSVC"
- name "Simple"
- value 2)
- (object Attribute
- tool "MSVC"
- name "Licensed"
- value 3)))
- (object Attribute
- tool "MSVC"
- name "OLEName"
- value "")
- (object Attribute
- tool "MSVC"
- name "OLEClassID"
- value "")
- (object Attribute
- tool "MSVC"
- name "GenerateOLECtlType"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "OLECtlType"
- value "")
- (object Attribute
- tool "MSVC"
- name "GenerateOLETypeLib"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "OLETypeLibID"
- value "")
- (object Attribute
- tool "MSVC"
- name "OLETypeLibMajor"
- value "")
- (object Attribute
- tool "MSVC"
- name "OLETypeLibMinor"
- value "")
- (object Attribute
- tool "MSVC"
- name "GeneratePropPageIDs"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "OLEPropPageIDs"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateDispatchMap"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "AFX_DISPATCH_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "AFX_DISPATCH_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "DISPATCH_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "StockProperties"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "StockFunctions"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "DispatchDefValue"
- value "")
- (object Attribute
- tool "MSVC"
- name "GenerateDispIdEnum"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "AFX_DISP_ID_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateInterfaceMap"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "INTERFACE_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "InitInterface"
- value "")
- (object Attribute
- tool "MSVC"
- name "GenerateEventMap"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "AFX_EVENT_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "AFX_EVENT_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "EVENT_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "StockEvents"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateEventSinkMap"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "AFX_EVENTSINK_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "AFX_EVENTSINK_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "EVENTSINK_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "PropNotifySinks"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateConnectionMap"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "CONNECTION_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "ConnectionPointIID"
- value "")
- (object Attribute
- tool "MSVC"
- name "InheritanceType"
- value "")
- (object Attribute
- tool "MSVC"
- name "DeclSpec"
- value "")
- (object Attribute
- tool "MSVC"
- name "OLECommands"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "MFCDeclares"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "MFCImplements"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "ATL_Declares"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateCOMMap"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "COM_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateConnectionPointMap"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "CONNECTION_POINT_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateMsgMap"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "MSG_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GeneratePropertyMap"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "PROPERTY_MAP_Entries"
- value (value Text ""))))
- (object Attribute
- tool "MSVC"
- name "default__Operation"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Type"
- value ("MSVCOperationTypeSet" 0))
- (object Attribute
- tool "MSVC"
- name "MSVCOperationTypeSet"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Normal"
- value 0)
- (object Attribute
- tool "MSVC"
- name "Virtual_Override"
- value 1)
- (object Attribute
- tool "MSVC"
- name "Message_Handler"
- value 2)
- (object Attribute
- tool "MSVC"
- name "Dispatch_Handler"
- value 3)
- (object Attribute
- tool "MSVC"
- name "Event_Firing_Function"
- value 4)
- (object Attribute
- tool "MSVC"
- name "Event_Sink_Handler"
- value 5)
- (object Attribute
- tool "MSVC"
- name "Std_OLE_Method"
- value 6)
- (object Attribute
- tool "MSVC"
- name "Command_Parser"
- value 7)
- (object Attribute
- tool "MSVC"
- name "Property_Get_Function"
- value 8)
- (object Attribute
- tool "MSVC"
- name "Property_Set_Function"
- value 9)
- (object Attribute
- tool "MSVC"
- name "Property_Notify_Function"
- value 10)
- (object Attribute
- tool "MSVC"
- name "Macro_Generated_Function"
- value 11)))
- (object Attribute
- tool "MSVC"
- name "AFX_MSG_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "MESSAGE_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "AFX_DISPATCH_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "DISPATCH_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "AFX_EVENT_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "EVENT_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "AFX_EVENTSINK_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "EVENTSINK_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "CallType"
- value "")
- (object Attribute
- tool "MSVC"
- name "DeclSpec"
- value "")
- (object Attribute
- tool "MSVC"
- name "BodyImage"
- value (value Text ""))))
- (object Attribute
- tool "MSVC"
- name "default__Role"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Type"
- value ("MSVCAttributeTypeSet" 0))
- (object Attribute
- tool "MSVC"
- name "MSVCAttributeTypeSet"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Normal"
- value 0)
- (object Attribute
- tool "MSVC"
- name "Member_Property"
- value 1)
- (object Attribute
- tool "MSVC"
- name "Get_Set_Property"
- value 2)
- (object Attribute
- tool "MSVC"
- name "Dialog_Data"
- value 3)
- (object Attribute
- tool "MSVC"
- name "Field_Data"
- value 4)
- (object Attribute
- tool "MSVC"
- name "Stock_Property"
- value 5)))
- (object Attribute
- tool "MSVC"
- name "AFX_DISPATCH_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "DISPATCH_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "DeclSpec"
- value "")
- (object Attribute
- tool "MSVC"
- name "PointerBase"
- value "")
- (object Attribute
- tool "MSVC"
- name "CallType"
- value "")
- (object Attribute
- tool "MSVC"
- name "StockPropertyImplementation"
- value "")))
- (object Attribute
- tool "MSVC"
- name "default__Has"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Type"
- value ("MSVCAttributeTypeSet" 0))
- (object Attribute
- tool "MSVC"
- name "MSVCAttributeTypeSet"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Normal"
- value 0)
- (object Attribute
- tool "MSVC"
- name "Member_Property"
- value 1)
- (object Attribute
- tool "MSVC"
- name "Get_Set_Property"
- value 2)
- (object Attribute
- tool "MSVC"
- name "Dialog_Data"
- value 3)
- (object Attribute
- tool "MSVC"
- name "Field_Data"
- value 4)
- (object Attribute
- tool "MSVC"
- name "Stock_Property"
- value 5)))
- (object Attribute
- tool "MSVC"
- name "AFX_DISPATCH_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "DISPATCH_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "DeclSpec"
- value "")
- (object Attribute
- tool "MSVC"
- name "PointerBase"
- value "")
- (object Attribute
- tool "MSVC"
- name "CallType"
- value "")
- (object Attribute
- tool "MSVC"
- name "StockPropertyImplementation"
- value "")))
- (object Attribute
- tool "MSVC"
- name "default__Attribute"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Type"
- value ("MSVCAttributeTypeSet" 0))
- (object Attribute
- tool "MSVC"
- name "MSVCAttributeTypeSet"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "Normal"
- value 0)
- (object Attribute
- tool "MSVC"
- name "Member_Property"
- value 1)
- (object Attribute
- tool "MSVC"
- name "Get_Set_Property"
- value 2)
- (object Attribute
- tool "MSVC"
- name "Dialog_Data"
- value 3)
- (object Attribute
- tool "MSVC"
- name "Field_Data"
- value 4)
- (object Attribute
- tool "MSVC"
- name "Stock_Property"
- value 5)))
- (object Attribute
- tool "MSVC"
- name "AFX_DISPATCH_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "DISPATCH_MAP_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "DeclSpec"
- value "")
- (object Attribute
- tool "MSVC"
- name "PointerBase"
- value "")
- (object Attribute
- tool "MSVC"
- name "CallType"
- value "")
- (object Attribute
- tool "MSVC"
- name "StockPropertyImplementation"
- value "")))
- (object Attribute
- tool "MSVC"
- name "default__Module-Spec"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "GenerateIncludesGroup"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "AFX_INCLUDES_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateInsertLocation"
- value FALSE)))
- (object Attribute
- tool "MSVC"
- name "default__Module-Body"
- value (list Attribute_Set
- (object Attribute
- tool "MSVC"
- name "GenerateIncludesGroup"
- value FALSE)
- (object Attribute
- tool "MSVC"
- name "AFX_INCLUDES_Entries"
- value (value Text ""))
- (object Attribute
- tool "MSVC"
- name "GenerateInsertLocation"
- value FALSE)))
- (object Attribute
- tool "cg"
- name "HiddenTool"
- value FALSE)
- (object Attribute
- tool "SCC"
- name "HiddenTool"
- value FALSE)
- (object Attribute
- tool "TypeLibImporter"
- name "HiddenTool"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "propertyId"
- value "783606378")
- (object Attribute
- tool "Visual Basic"
- name "default__Class"
- value (list Attribute_Set
- (object Attribute
- tool "Visual Basic"
- name "CreatableSet"
- value (list Attribute_Set
- (object Attribute
- tool "Visual Basic"
- name "Private"
- value 221)
- (object Attribute
- tool "Visual Basic"
- name "PublicNotCreatable"
- value 213)
- (object Attribute
- tool "Visual Basic"
- name "SingleUse"
- value 214)
- (object Attribute
- tool "Visual Basic"
- name "GlobalSingleUse"
- value 215)
- (object Attribute
- tool "Visual Basic"
- name "MultiUse"
- value 219)
- (object Attribute
- tool "Visual Basic"
- name "GlobalMultiUse"
- value 220)))
- (object Attribute
- tool "Visual Basic"
- name "OptionBase"
- value "0")
- (object Attribute
- tool "Visual Basic"
- name "OptionExplicit"
- value TRUE)
- (object Attribute
- tool "Visual Basic"
- name "OptionCompare"
- value ("CompareSet" 202))
- (object Attribute
- tool "Visual Basic"
- name "Creatable"
- value ("CreatableSet" 221))
- (object Attribute
- tool "Visual Basic"
- name "GenerateInitialization"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "GenerateTermination"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "CollectionClass"
- value "Collection")
- (object Attribute
- tool "Visual Basic"
- name "CompareSet"
- value (list Attribute_Set
- (object Attribute
- tool "Visual Basic"
- name "None"
- value 202)
- (object Attribute
- tool "Visual Basic"
- name "Binary"
- value 203)
- (object Attribute
- tool "Visual Basic"
- name "Text"
- value 204)))))
- (object Attribute
- tool "Visual Basic"
- name "default__Operation"
- value (list Attribute_Set
- (object Attribute
- tool "Visual Basic"
- name "OperationName"
- value "$operation")
- (object Attribute
- tool "Visual Basic"
- name "LibraryName"
- value "")
- (object Attribute
- tool "Visual Basic"
- name "AliasName"
- value "")
- (object Attribute
- tool "Visual Basic"
- name "IsStatic"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "EntryCode"
- value (value Text ""))
- (object Attribute
- tool "Visual Basic"
- name "ExitCode"
- value (value Text ""))))
- (object Attribute
- tool "Visual Basic"
- name "default__Attribute"
- value (list Attribute_Set
- (object Attribute
- tool "Visual Basic"
- name "IsConst"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "New"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "WithEvents"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "Subscript"
- value "")
- (object Attribute
- tool "Visual Basic"
- name "NameIfUnlabeled"
- value "the$supplier")
- (object Attribute
- tool "Visual Basic"
- name "GenerateDataMember"
- value TRUE)
- (object Attribute
- tool "Visual Basic"
- name "DataMemberName"
- value "$relationship")
- (object Attribute
- tool "Visual Basic"
- name "GenerateGetOperation"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "GenerateSetOperation"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "GenerateLetOperation"
- value FALSE)))
- (object Attribute
- tool "Visual Basic"
- name "default__Role"
- value (list Attribute_Set
- (object Attribute
- tool "Visual Basic"
- name "New"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "WithEvents"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "Subscript"
- value "")
- (object Attribute
- tool "Visual Basic"
- name "NameIfUnlabeled"
- value "the$supplier")
- (object Attribute
- tool "Visual Basic"
- name "GenerateDataMember"
- value TRUE)
- (object Attribute
- tool "Visual Basic"
- name "DataMemberName"
- value "$relationship")
- (object Attribute
- tool "Visual Basic"
- name "GenerateGetOperation"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "GenerateSetOperation"
- value FALSE)
- (object Attribute
- tool "Visual Basic"
- name "GenerateLetOperation"
- value FALSE)))
- (object Attribute
- tool "Visual Basic"
- name "default__Inherit"
- value (list Attribute_Set
- (object Attribute
- tool "Visual Basic"
- name "ImplementsDelegation"
- value TRUE)))
- (object Attribute
- tool "Visual Basic"
- name "default__Module-Spec"
- value (list Attribute_Set
- (object Attribute
- tool "Visual Basic"
- name "ProjectFile"
- value "")))
- (object Attribute
- tool "Visual Basic"
- name "HiddenTool"
- value FALSE)
- (object Attribute
- tool "VisualStudio"
- name "HiddenTool"
- value FALSE))
- quid "4362A29901BD"))
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/AliasTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/AliasTests.java
deleted file mode 100644
index b9226e3e01..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/AliasTests.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.util.Iterator;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.BookData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class AliasTests extends DasTest {
-
- protected void setUp() throws Exception {
-
- super.setUp();
- new BookData(getAutoConnection()).refresh();
- }
-
- /**
- * Tests the use of column aliasing. The property name change is found in the
- * BooksConfig.xml file Otherwise similar to testTableAlias
- *
- * @throws Exception
- */
- public void testColumnAlias() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("BooksConfigWithAlias.xml"), getConnection());
-
- Command select = das.getCommand("get all books");
- // select.setConnection( getConnection() );
-
- DataObject root = select.executeQuery();
-
- DataObject book = root.getDataObject("Book[2]");
- book.set("Writer", "Dr. Seuss");
-
- das.applyChanges(root);
-
- select = das.getCommand("get Cat in the Hat");
-
- root = select.executeQuery();
- // Ensure the change actually updated
- assertEquals("Dr. Seuss", root.getString("Book[1]/Writer"));
- }
-
- /**
- * Tests to ensure that columns are being properly read when using an Alias,
- * just a bunch of simple creating, renaming, and deleting of entries
- * while using an alias.
- */
- public void testColumnData() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("BooksConfigWithAlias.xml"), getConnection());
-
- Command select = das.getCommand("get book by ID");
- select.setParameter(1, Integer.valueOf(1));
-
- // *******Verifys a column entry is readable
- DataObject root = select.executeQuery();
- assertEquals("Fyodor Dostoevsky", root.getString("Book[1]/Writer"));
-
- DataObject bookToChange = root.getDataObject("Book[1]");
- bookToChange.set("Writer", "Fyodor Dostoevskii"); // His last name COULD be spelt like that too!
-
- das.applyChanges(root);
-
- // *******Verifys correct information in entry after a column data is changed
- select = das.getCommand("get all books");
- // select.setConnection(getConnection());
-
- root = select.executeQuery();
- bookToChange = null;
- Iterator i = root.getList("Book").iterator();
- while (i.hasNext()) {
- DataObject d = (DataObject) i.next();
- if ("Fyodor Dostoevskii".equals(d.getString("Writer"))) {
- bookToChange = d;
- }
- }
- assertFalse(bookToChange == null);
-
- bookToChange.delete();
-
- das.applyChanges(root);
-
- // *******Verifys correct in table, after entry is deleted
- select = das.getCommand("get all books");
- // select.setConnection(getConnection());
-
- root = select.executeQuery();
- assertEquals(1, root.getList("Book").size());
- assertEquals("Doctor Seuss", root.getString("Book[1]/Writer"));
- }
-
- /**
- * Test to check if updating a table works when using Aliasing Previously this was test_4 in ExceptionTests.
- */
- public void testTableAlias() throws Exception {
-
- // Create Table config programmatically
- // ConfigHelper helper = new ConfigHelper();
- // helper.addTable("BOOK", "Book");
- // helper.addPrimaryKey("BOOK.BOOK_ID");
-
- DAS das = DAS.FACTORY.createDAS(getConfig("BooksConfigWithAlias.xml"), getConnection());
- Command select = das.getCommand("get book by ID");
- select.setParameter(1, Integer.valueOf(1));
-
- DataObject root = select.executeQuery();
-
- DataObject newBook = root.createDataObject("Book");
- newBook.setString("NAME", "Ant Colonies of the Old World");
- newBook.setInt("BOOK_ID", 1001);
- root.getList("Book").add(newBook);
-
- das.applyChanges(root);
-
- root = select.executeQuery();
-
- // Verify
- select.setParameter(1, Integer.valueOf(1001));
- root = select.executeQuery();
-
- assertEquals("Ant Colonies of the Old World", root.getString("Book[1]/NAME"));
- }
-
- /**
- * Test ability to assign DataObject type and propertyaliases with xml file
- */
- public void testRead() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("customerMapping.xml"), getConnection());
- // Read a customer
- Command select = das.createCommand("SELECT * FROM CUSTOMER WHERE CUSTOMER.ID = 1");
-
- DataObject root = select.executeQuery();
- DataObject customer = root.getDataObject("Customer[1]");
- assertEquals(1, customer.getInt("id"));
- assertEquals("1212 foobar lane", customer.getString("address"));
- assertEquals("Williams", customer.getString("lastname"));
-
- }
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/BestPracticeTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/BestPracticeTests.java
deleted file mode 100644
index bb53cb65e5..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/BestPracticeTests.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CompanyData;
-import org.apache.tuscany.das.rdb.test.data.CompanyDeptData;
-import org.apache.tuscany.das.rdb.test.data.DepEmpData;
-import org.apache.tuscany.das.rdb.test.data.DepartmentData;
-import org.apache.tuscany.das.rdb.test.data.EmployeeData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class BestPracticeTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CompanyData(getAutoConnection()).refresh();
- new DepartmentData(getAutoConnection()).refresh();
- new EmployeeData(getAutoConnection()).refresh();
- new CompanyDeptData(getAutoConnection()).refresh();
- new DepEmpData(getAutoConnection()).refresh();
-
- }
-
- //Read list of companies
- public void testReadCompanies() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"), getConnection());
- Command read = das.getCommand("all companies");
- DataObject root = read.executeQuery();
- assertEquals(3, root.getList("COMPANY").size());
-
- }
-
- //Read list of companies
- public void testReadCompaniesWithDepartments() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"), getConnection());
- Command read = das.getCommand("all companies and departments");
- DataObject root = read.executeQuery();
-
- Iterator i = root.getList("COMPANY").iterator();
- while (i.hasNext()) {
- DataObject d = (DataObject) i.next();
- List departments = d.getList("departments");
- if (d.getString("NAME").equals("Do-rite plumbing") || d.getString("NAME").equals("ACME Publishing")) {
- assertEquals(0, departments.size());
- } else {
- assertEquals(1, departments.size());
- }
- }
-
- }
-
- public void testddDepartmentToFirstCompany() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"), getConnection());
- Command read = das.getCommand("all companies and departments");
- DataObject root = read.executeQuery();
- DataObject firstCustomer = root.getDataObject("COMPANY[1]");
- int deptCount = firstCustomer.getList("departments").size();
-
- DataObject newDepartment = root.createDataObject("DEPARTMENT");
- firstCustomer.getList("departments").add(newDepartment);
-
- das.applyChanges(root);
-
- //verify
- root = read.executeQuery();
- firstCustomer = root.getDataObject("COMPANY[1]");
- assertEquals(deptCount + 1, firstCustomer.getList("departments").size());
- }
-
- /**
- * Test ability to correctly flush heirarchy of objects that have generated
- * keys
- */
- public void testFlushCreateHeirarchy() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"), getConnection());
- Command select = das.getCommand("all companies and departments");
- DataObject root = select.executeQuery();
-
- // Create a new Company
- DataObject company = root.createDataObject("COMPANY");
- company.setString("NAME", "Do-rite Pest Control");
-
- // Create a new Department
- //Do not set ID or CompanyID since these are generated
- DataObject department = root.createDataObject("DEPARTMENT");
- department.setString("NAME", "Do-rite Pest Control");
- department.setString("LOCATION", "The boonies");
- department.setString("DEPNUMBER", "101");
-
- // Associate the new department with the new company
- company.getList("departments").add(department);
-
- // Get apply command
- das.applyChanges(root);
-
- // Save the id
- Integer id = (Integer) company.get("ID");
-
- // Verify the change
-
- select = das.getCommand("company by id with departments");
- select.setParameter(1, id);
- root = select.executeQuery();
- assertEquals("Do-rite Pest Control", root.getDataObject("COMPANY[1]").getString("NAME"));
-
- }
-
- /**
- * Test ability to get an empty graph with the Types/Properties intact
- */
- public void testGetEmptyGraph() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"), getConnection());
-
- Command select = das.getCommand("company by id with departments");
- Integer idOfNoExistingCompany = Integer.valueOf(-1);
- select.setParameter(1, idOfNoExistingCompany);
- DataObject root = select.executeQuery();
-
- //Will fail if there is no property named "COMPANY"
- assertEquals(0, root.getList("COMPANY").size());
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CUDGeneration.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CUDGeneration.java
deleted file mode 100644
index ee42438cb1..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CUDGeneration.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class CUDGeneration extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
- }
-
- /**
- * This tests provides invalid SQL and should fail on Apply.execute. If not
- * then the engine is generating CUD and overlooking the provided
- * statements.
- */
- public void testCUDGeneration1() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("basicCustomerMappingWithInvalidCUD.xml"), getConnection());
-
- // Read customer with particular ID
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
-
- DataObject customer = (DataObject) root.get("CUSTOMER[1]");
-
- // Modify customer
- customer.set("LASTNAME", "Pavick");
-
- // Flush changes
- try {
- das.applyChanges(root);
- fail("Should fail with invalid SQL. Provided CUD not used!!");
- } catch (RuntimeException e) {
- // Everything OK
- }
-
- }
-
- public void testInsertCUDGeneration() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
-
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
-
- DataObject customer = root.createDataObject("CUSTOMER");
- customer.setInt("ID", 720);
- customer.set("LASTNAME", "foobar");
- customer.set("ADDRESS", "asdfasdf");
-
- das.applyChanges(root);
-
- select = das.createCommand("select * from CUSTOMER where ID = 720");
- root = select.executeQuery();
-
- assertEquals(1, root.getList("CUSTOMER").size());
- }
-
- public void testReadModifyApply() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("1xM_mapping_no_cud.xml"), getConnection());
-
- // Build the select command to read a specific customer and related
- // orders
- Command select = das.createCommand("SELECT * FROM CUSTOMER LEFT JOIN ANORDER ON "
- + "CUSTOMER.ID = ANORDER.CUSTOMER_ID where CUSTOMER.ID = ?");
-
- // Parameterize the command
- select.setParameter(1, Integer.valueOf(1));
-
- // Get the graph
- DataObject root = select.executeQuery();
-
- // Modify a customer
- DataObject customer = (DataObject) root.get("Customer[1]");
- customer.set("LASTNAME", "Pavick");
-
- // Modify an order
- DataObject order = (DataObject) customer.get("orders[1]");
- order.setString("PRODUCT", "Kitchen Sink 001");
-
- das.applyChanges(root);
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CommandGroupTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CommandGroupTests.java
deleted file mode 100644
index 076f8d9db7..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CommandGroupTests.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- * This test
- *
- */
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-import org.apache.tuscany.das.rdb.util.ConfigUtil;
-
-import commonj.sdo.DataObject;
-
-/**
- *
- * This tests use of the XML Config file. Tests will utilize the
- * customer-orders-orderdetails tables. The plan is for the config file to have a
- * section that applies to all commands and another that applies to specific commands.
- *
- * The config file will be used to initialize a command factory that will then return named commands.
- *
- * There will be two read commands:
- *
- * 1) Return all customers 2) Return a specific customer (by ID) and related orders and order details
- *
- * A test will demonstrate the creation of the factory and then reuse of commands created from the same config data file
- *
- */
-public class CommandGroupTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Read
- */
- public void testRead() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomersOrdersConfig.xml"), getConnection());
-
- Command read = das.getCommand("all customers");
- DataObject root = read.executeQuery();
-
- assertEquals(5, root.getList("CUSTOMER").size());
-
- }
-
- /**
- * Read
- */
- public void testReadUsingConfigInput() throws Exception {
- Config config = ConfigUtil.loadConfig(getConfig("CustomersOrdersConfig.xml"));
- DAS das = DAS.FACTORY.createDAS(config, getConnection());
-
- Command read = das.getCommand("all customers");
- DataObject root = read.executeQuery();
-
- assertEquals(5, root.getList("CUSTOMER").size());
-
- }
-
- /**
- * Read an order using parm marker
- */
- public void testReadWithParmmarker() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomersOrdersConfig.xml"), getConnection());
-
- Command read = das.getCommand("order by id");
- read.setParameter(1, Integer.valueOf(1));
- DataObject root = read.executeQuery();
-
- assertEquals("recombobulator", root.getString("ANORDER[1]/PRODUCT"));
-
- }
-
- /**
- * Specify connection properties in config. Add explicit update command
- */
- public void testUpdate() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomersOrdersConfig.xml"), getConnection());
-
- Command read = das.getCommand("all customers");
- DataObject root = read.executeQuery();
- // Verify precondition
- assertFalse(root.get("CUSTOMER[1]/LASTNAME").equals("Pavick"));
- int id = root.getInt("CUSTOMER[1]/ID");
-
- Command update = das.getCommand("update customer");
- update.setParameter(1, Integer.valueOf(id));
- update.execute();
-
- // Verify update - reuse select command
- root = read.executeQuery();
- assertEquals("Pavick", root.get("CUSTOMER[1]/LASTNAME"));
-
- }
-
- /**
- * Read all customers, select a specific customer. Then read that
- * customer and related orders. Modify an order and flush changes back
- */
- public void testRead2() throws Exception {
-
- // Create the group and set common connection
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomersOrdersConfig.xml"), getConnection());
-
- // Read all customers and remember the first one
- Command read = das.getCommand("all customers");
- DataObject root = read.executeQuery();
- Integer id = (Integer) root.get("CUSTOMER[1]/ID");
-
- // Read the specific Customer from above and its related orders
- Command custOrders = das.getCommand("customer and orders");
- custOrders.setParameter(1, id);
- root = custOrders.executeQuery();
-
- // Modify the first order and flush this change back to the database
- root.setString("CUSTOMER[1]/orders[1]/PRODUCT", "Defibrillator");
- Integer orderId = (Integer) root.get("CUSTOMER[1]/orders[1]/ID");
- das.applyChanges(root);
-
- // Verify
- Command orderByID = das.getCommand("order by id");
- orderByID.setParameter(1, orderId);
- assertEquals("Defibrillator", root.getString("ANORDER[1]/PRODUCT"));
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CompanyTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CompanyTests.java
deleted file mode 100644
index 677b0d9d85..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CompanyTests.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.company.CompanyFactory;
-import org.apache.tuscany.das.rdb.test.company.CompanyType;
-import org.apache.tuscany.das.rdb.test.company.DepartmentType;
-import org.apache.tuscany.das.rdb.test.company.EmployeeType;
-import org.apache.tuscany.das.rdb.test.data.CompanyData;
-import org.apache.tuscany.das.rdb.test.data.CompanyDeptData;
-import org.apache.tuscany.das.rdb.test.data.DepEmpData;
-import org.apache.tuscany.das.rdb.test.data.DepartmentData;
-import org.apache.tuscany.das.rdb.test.data.EmployeeData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
-import commonj.sdo.DataObject;
-
-public class CompanyTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CompanyData(getAutoConnection()).refresh();
- new DepartmentData(getAutoConnection()).refresh();
- new EmployeeData(getAutoConnection()).refresh();
- new CompanyDeptData(getAutoConnection()).refresh();
- new DepEmpData(getAutoConnection()).refresh();
-
- }
-
- public void testSimple() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("companyMapping.xml"), getConnection());
-
- // Build the select command
- Command selectCommand = das.createCommand("select COMPANY.NAME, "
- + "EMPLOYEE.NAME, EMPLOYEE.SN, EMPLOYEE.MANAGER, "
- + "DEPARTMENT.NAME, DEPARTMENT.LOCATION, DEPARTMENT.DEPNUMBER from COMPANY, DEPARTMENT, EMPLOYEE "
- + "where COMPANY.ID=DEPARTMENT.COMPANYID and DEPARTMENT.ID=EMPLOYEE.DEPARTMENTID");
-
- // Get the graph
- DataObject root = selectCommand.executeQuery();
-
- // Get a company
- DataObject company = (DataObject) root.getList("CompanyType").get(0);
- assertEquals("MegaCorp", company.get("NAME"));
-
- // Get a department
- DataObject department = (DataObject) company.getList("departments").get(0);
- assertEquals("Advanced Technologies", department.get("NAME"));
-
- DataObject employee = (DataObject) department.getList("employees").get(0);
- assertEquals("John Jones", employee.get("NAME"));
- }
-
- public void testSimpleStatic() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("companyMappingWithConverters.xml"), getConnection());
- SDOUtil.registerStaticTypes(CompanyFactory.class);
- // Build the select command
- Command selectCommand = das.createCommand("select COMPANY.NAME, "
- + "EMPLOYEE.NAME, EMPLOYEE.SN, EMPLOYEE.MANAGER, "
- + "DEPARTMENT.NAME, DEPARTMENT.LOCATION, DEPARTMENT.DEPNUMBER from COMPANY, DEPARTMENT, EMPLOYEE "
- + "where COMPANY.ID=DEPARTMENT.COMPANYID and DEPARTMENT.ID=EMPLOYEE.DEPARTMENTID");
-
- // Get the graph
- DataObject root = selectCommand.executeQuery();
-
- CompanyType company = (CompanyType) root.getList("CompanyType").get(0);
-
- assertEquals("MegaCorp", company.getName());
-
- // Get a department
- DepartmentType department = (DepartmentType) company.getDepartments().get(0);
- assertEquals("Advanced Technologies", department.getName());
-
- EmployeeType employee = (EmployeeType) department.getEmployees().get(0);
-
- assertEquals("John Jones", employee.getName());
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CompoundKeyTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CompoundKeyTests.java
deleted file mode 100644
index a24ad6319e..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CompoundKeyTests.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.data.OrderDetailsData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-/**
- * Tests for Compound Keys
- */
-public class CompoundKeyTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new OrderDetailsData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- public void testRead() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command getOrderDetails = das.createCommand("Select * from ORDERDETAILS where ORDERID = ? AND PRODUCTID = ?");
-
- getOrderDetails.setParameter(1, Integer.valueOf(1));
- getOrderDetails.setParameter(2, Integer.valueOf(1));
-
- DataObject root = getOrderDetails.executeQuery();
-
- DataObject orderDetail = (DataObject) root.get("ORDERDETAILS[1]");
- assertEquals(1.1f, orderDetail.getFloat("PRICE"), 0.01);
-
- }
-
- public void testReadModifyWrite2() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("OrdersOrderDetailsConfig.xml"), getConnection());
- Command getOrderDetails = das.createCommand("Select * from ORDERDETAILS where ORDERID = 1 AND PRODUCTID = 1");
-
- DataObject root = getOrderDetails.executeQuery();
-
- DataObject orderDetails = (DataObject) root.get("ORDERDETAILS[1]");
- assertEquals(1.1f, orderDetails.getFloat("PRICE"), 0.01);
-
- // Modify
- orderDetails.setFloat("PRICE", 0f);
-
- // Build apply changes command
-
- das.applyChanges(root);
-
- // Verify
- root = getOrderDetails.executeQuery();
- orderDetails = root.getDataObject("ORDERDETAILS[1]");
- assertEquals(0f, orderDetails.getFloat("PRICE"), 0.01);
-
- }
-
- public void testReadOrdersAndDetails2() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("OrdersOrderDetailsConfig.xml"), getConnection());
- Command read = das.createCommand("SELECT * FROM ANORDER LEFT JOIN ORDERDETAILS "
- + "ON ANORDER.ID = ORDERDETAILS.ORDERID ORDER BY ANORDER.ID");
-
- DataObject root = read.executeQuery();
-
- DataObject firstOrder = root.getDataObject("ANORDER[1]");
- assertEquals(1, firstOrder.getInt("ID"));
- assertEquals(2, firstOrder.getList("ORDERDETAILS").size());
-
- }
-
- public void testReadAndDelete() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("OrdersOrderDetailsConfig.xml"), getConnection());
- Command getOrderDetails = das.createCommand("Select * from ORDERDETAILS where ORDERID = ? AND PRODUCTID = ?");
-
- getOrderDetails.setParameter(1, Integer.valueOf(1));
- getOrderDetails.setParameter(2, Integer.valueOf(1));
-
- DataObject root = getOrderDetails.executeQuery();
-
- DataObject orderDetail = (DataObject) root.get("ORDERDETAILS[1]");
- orderDetail.delete();
- das.applyChanges(root);
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ConverterTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ConverterTests.java
deleted file mode 100644
index e8a4593602..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ConverterTests.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.customer.Customer;
-import org.apache.tuscany.das.rdb.test.customer.CustomerFactory;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
-import commonj.sdo.DataObject;
-
-/**
- * Tests the Converter framwork
- */
-public class ConverterTests extends DasTest {
-
- private static DateFormat myformat = new SimpleDateFormat("yyyy.MM.dd");
-
- private static Date kbday;
-
- private static Date tbday;
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- static {
- try {
- kbday = myformat.parse("1957.09.27");
- tbday = myformat.parse("1966.12.20");
- } catch (ParseException e) {
- throw new RuntimeException(e);
- }
- }
-
- /**
- * This tests the use of an arbitrary converter. The column
- * converted is a VARCAHAR. ResultSetShape is used to specify
- * that the property will be a
- * SDODataTypes.DATE.
- *
- * So this example uses a converter that transforms a string column
- * into a date property and conversely, a date property back to a string for the
- * underlying column.
- *
- * The converter returns 1957.09.27 if the column value is "Williams"
- * and 1966.12.20 if the value is "Pavick"
- *
- * On write, the converter returns "Pavick" if the property value is
- * 1966.12.20 and "Williams" if the property value is 1957.09.27
- *
- */
- public void testArbitraryConverter() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomerConfigWithConverter.xml"), getConnection());
-
- // Create and initialize command to read customers
- Command read = das.getCommand("testArbitraryConverter");
-
- // Read
- DataObject root = read.executeQuery();
-
- // Verify
- assertEquals(kbday, root.getDate("CUSTOMER[1]/LASTNAME"));
-
- // Modify
- root.setDate("CUSTOMER[1]/LASTNAME", tbday);
-
- das.applyChanges(root);
-
- // Read
- root = read.executeQuery();
-
- // Verify
- assertEquals(tbday, root.getDate("CUSTOMER[1]/LASTNAME"));
-
- }
-
- public void testInvalidConverter1() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("InvalidConverter.xml"), getConnection());
-
- // Build the select command to read a specific customer and related
- // orders
- Command select = das.createCommand("SELECT * FROM CUSTOMER LEFT JOIN ANORDER "
- + "ON CUSTOMER.ID = ANORDER.CUSTOMER_ID where CUSTOMER.ID = ?");
-
- // Parameterize the command
- select.setParameter(1, Integer.valueOf(1));
-
- // Get the graph
- try {
- select.executeQuery();
- } catch (Exception ex) {
- assertEquals("java.lang.ClassNotFoundException: not.a.valid.class", ex.getMessage());
- }
-
- }
-
- public void testInvalidConverter2() throws Exception {
-
- SDOUtil.registerStaticTypes(CustomerFactory.class);
- DAS das = DAS.FACTORY.createDAS(getConfig("InvalidConverter.xml"), getConnection());
-
- // Build the select command to read a specific customer and related
- // orders
- Command select = das.createCommand("SELECT * FROM ANORDER");
-
- // Get the graph
-
- DataObject root = select.executeQuery();
- DataObject order = root.getDataObject("AnOrder[1]");
-
- Customer customer = (Customer) root.createDataObject("Customer");
- customer.setID(700);
- customer.setLastName("Daniel");
- customer.setAddress("an address");
-
- customer.getOrders().add(order);
-
- try {
- das.applyChanges(root);
- } catch (Exception ex) {
- assertEquals("java.lang.ClassNotFoundException: not.a.valid.class", ex.getMessage());
- }
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CorrectedDefectTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CorrectedDefectTests.java
deleted file mode 100644
index ff2af5256c..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CorrectedDefectTests.java
+++ /dev/null
@@ -1,304 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- * These tests attempt to duplicate customer reported errors and then to verify
- * any necessary fix.
- *
- */
-
-import java.util.Iterator;
-import java.util.Random;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.ConfigHelper;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.test.data.CompanyData;
-import org.apache.tuscany.das.rdb.test.data.CompanyDeptData;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.DepartmentData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class CorrectedDefectTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
-
- new CompanyData(getAutoConnection()).refresh();
- new DepartmentData(getAutoConnection()).refresh();
- new CompanyDeptData(getAutoConnection()).refresh();
-
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Dilton's bug for adding new child data object
- */
- public void testAddNewOrder() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomersOrdersConfig.xml"), getConnection());
- // Read some customers and related orders
- Command select = das.createCommand("SELECT * FROM CUSTOMER LEFT JOIN ANORDER "
- + "ON CUSTOMER.ID = ANORDER.CUSTOMER_ID");
-
- DataObject root = select.executeQuery();
-
- DataObject cust = root.getDataObject("CUSTOMER[1]");
-
- // Save ID and Order Count
- int custID = cust.getInt("ID");
- int custOrderCount = cust.getList("orders").size();
-
- // Create a new Order and add to customer1
- DataObject order = root.createDataObject("ANORDER");
-
- order.set("ID", Integer.valueOf(99));
- order.set("PRODUCT", "The 99th product");
- order.set("QUANTITY", Integer.valueOf(99));
- cust.getList("orders").add(order);
-
- assertEquals(custOrderCount + 1, cust.getList("orders").size());
-
- // Build apply changes command
- das.applyChanges(root);
-
- // verify cust1 relationship updates
- select = das.createCommand("SELECT * FROM CUSTOMER LEFT JOIN ANORDER "
- + "ON CUSTOMER.ID = ANORDER.CUSTOMER_ID where CUSTOMER.ID = ?");
-
- select.setParameter(1, Integer.valueOf(custID));
- root = select.executeQuery();
-
- assertEquals(custOrderCount + 1, root.getList("CUSTOMER[1]/orders").size());
-
- }
-
- public void testDiltonsInsertWorkaround() throws Exception {
-
- // String sql = "insert into conmgt.serverstatus (statusid,
- // managedserverid, timestamp) values (316405209, 316405209, '2005-11-23
- // 19:29:52.636')";
- // String sql = "insert into conmgt.serverstatus (managedserverid,
- // timestamp) values (316405209, '2005-11-23 19:29:52.636')";
- String sql = "insert into conmgt.serverstatus (managedserverid, timestamp) values (?, ?)";
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand(sql);
- insert.setParameter(1, Integer.valueOf(316405209));
- insert.setParameter(2, "2005-11-23 19:29:52.636");
- insert.execute();
-
- // Verify
- Command select = das.createCommand("Select * from conmgt.SERVERSTATUS");
- DataObject root = select.executeQuery();
- assertEquals(1, root.getList("SERVERSTATUS").size());
-
- }
-
- public void testWASDefect330118() throws Exception {
-
- // Create the group and set common connection
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomersOrdersConfig.xml"), getConnection());
-
- // Read all customers and add one
- Command read = das.getCommand("all customers");
- DataObject root = read.executeQuery();
- int numCustomers = root.getList("CUSTOMER").size();
-
- DataObject newCust = root.createDataObject("CUSTOMER");
- newCust.set("ID", Integer.valueOf(100));
- newCust.set("ADDRESS", "5528 Wells Fargo Drive");
- newCust.set("LASTNAME", "Gerkin");
-
- // Now delete this new customer
- newCust.delete();
-
- das.applyChanges(root);
-
- // Verify
- root = read.executeQuery();
- assertEquals(numCustomers, root.getList("CUSTOMER").size());
-
- }
-
- /**
- * Should be able to explicitly set a parameter to null. But, should require
- * that the parameter type is set.
- */
- public void testDiltonsNullParameterBug1() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand("insert into CUSTOMER values (?, ?, ?)");
- insert.setParameter(1, Integer.valueOf(10));
- insert.setParameter(2, null);
- insert.setParameter(3, "5528 Wells Fargo Dr");
- insert.execute();
-
- // Verify
- Command select = das.createCommand("Select * from CUSTOMER where ID = 10");
- DataObject root = select.executeQuery();
- assertEquals(1, root.getList("CUSTOMER").size());
- assertEquals("5528 Wells Fargo Dr", root.get("CUSTOMER[1]/ADDRESS"));
-
- }
-
- /**
- * Error by not setting a parameter
- */
- public void testDiltonsNullParameterBug2() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand("insert into CUSTOMER values (?, ?, ?)");
- insert.setParameter(1, Integer.valueOf(10));
- // insert.setParameterValue("LASTNAME", null);
- insert.setParameter(3, "5528 Wells Fargo Dr");
-
- try {
- insert.execute();
- fail();
- } catch (RuntimeException e) {
- // Expected since "LASTNAME" parameter not set
- }
- }
-
- /**
- * Set parameter to empty string
- */
- public void testDiltonsNullParameterBug3() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand("insert into CUSTOMER values (?, ?, ?)");
- insert.setParameter(1, Integer.valueOf(10));
- insert.setParameter(2, "");
- insert.setParameter(3, "5528 Wells Fargo Dr");
- insert.execute();
-
- // Verify
- Command select = das.createCommand("Select * from CUSTOMER where ID = 10");
- DataObject root = select.executeQuery();
- assertEquals(1, root.getList("CUSTOMER").size());
- assertEquals("5528 Wells Fargo Dr", root.get("CUSTOMER[1]/ADDRESS"));
-
- }
-
- public void testUpdateChildThatHasGeneratedKey() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"), getConnection());
-
- // Read a specific company based on the known ID
- Command readCust = das.getCommand("all companies and departments");
- DataObject root = readCust.executeQuery();
- DataObject lastCustomer = root.getDataObject("COMPANY[3]");
- Iterator i = lastCustomer.getList("departments").iterator();
- Random generator = new Random();
- int random = generator.nextInt(1000) + 1;
- DataObject department;
- while (i.hasNext()) {
- department = (DataObject) i.next();
- // System.out.println("Modifying department: " +
- // department.getString("NAME"));
- department.setString("NAME", "Dept-" + random);
- random = random + 1;
- }
-
- das.applyChanges(root);
- }
-
- /**
- * Yin Chen reports ... "In the class Statement, method: public int
- * executeUpdate(Parameters parameters) - its tossing out RuntimeException
- * when the value of the parameter is null. "
- *
- * His example build a update statement and sets one parameter value to be
- * null. I will try to duplicate with an insert since that is simpler
- *
- */
- public void testYingChen12162005() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand("insert into CUSTOMER values (?, ?, ?)");
- insert.setParameter(1, Integer.valueOf(10));
- insert.setParameter(2, "Williams");
- insert.setParameter(3, null);
- insert.execute();
-
- // Verify
- Command select = das.createCommand("Select * from CUSTOMER where ID = 10");
- DataObject root = select.executeQuery();
- assertEquals(1, root.getList("CUSTOMER").size());
- assertNull(root.get("CUSTOMER[1]/ADDRESS"));
-
- }
-
- /**
- * Formely tests concerning Tuscany-433. The error causing these tests was cleared up when
- * the method for handling parameters was changed.
- */
- public void testReadModifyApply() throws Exception {
-
- // Provide updatecommand programmatically via config
- ConfigHelper helper = new ConfigHelper();
- Table customerTable = helper.addTable("CUSTOMER", "CUSTOMER");
- helper.addUpdateStatement(customerTable, "update CUSTOMER set LASTNAME = ? where ID = ?", "LASTNAME ID");
-
- DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
-
- //Read customer 1
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
-
- DataObject customer = (DataObject) root.get("CUSTOMER[1]");
-
- //Modify customer
- customer.set("LASTNAME", "Pavick");
-
- das.applyChanges(root);
-
- //Verify changes
- root = select.executeQuery();
- assertEquals("Pavick", root.getString("CUSTOMER[1]/LASTNAME"));
-
- }
-
- public void testReadModifyApply1() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("basicCustomerMappingWithCUD2.xml"), getConnection());
- //Read customer 1
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
-
- DataObject customer = (DataObject) root.get("CUSTOMER[1]");
-
- //Modify customer
- customer.set("LASTNAME", "Pavick");
-
- //Build apply changes command
- das.applyChanges(root);
-
- //Verify changes
- root = select.executeQuery();
- assertEquals("Pavick", root.getString("CUSTOMER[1]/LASTNAME"));
-
- }
-
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java
deleted file mode 100644
index a888fbd818..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/CrudWithChangeHistory.java
+++ /dev/null
@@ -1,350 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- * This provdes the simplest examples that make use of the change history. The assumptions are:
- *
- * Single type Change history utilized Dynamic DataObjects
- *
- *
- */
-
-import java.util.Iterator;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.ConfigHelper;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.OrderDetailsData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class CrudWithChangeHistory extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- new OrderDetailsData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- public void testDeleteAndCreate() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("basicCustomerMappingWithCUD2.xml"), getConnection());
- // Read customer 1
- Command select = das.createCommand("Select * from CUSTOMER");
- DataObject root = select.executeQuery();
-
- DataObject customer = (DataObject) root.get("CUSTOMER[1]");
-
- int customerId = customer.getInt("ID");
- // Modify customer
- customer.delete();
-
- DataObject newCustomer = root.createDataObject("CUSTOMER");
- newCustomer.setInt("ID", 9999);
- newCustomer.setString("LASTNAME", "Jones");
-
- // Build apply changes command
- das.applyChanges(root);
-
- // Verify changes
- root = select.executeQuery();
- boolean found = false;
- Iterator i = root.getList("CUSTOMER").iterator();
- while (i.hasNext()) {
- customer = (DataObject) i.next();
- assertFalse(customerId == customer.getInt("ID"));
- if (customer.getInt("ID") == 9999) {
- found = true;
- }
- }
-
- assertTrue(found);
-
- }
-
- /**
- * Read and modify a customer. Provide needed Create/Update/Delete statements programatically
- */
- public void testReadModifyApply() throws Exception {
-
- // Provide updatecommand programmatically via config
- ConfigHelper helper = new ConfigHelper();
- Table customerTable = helper.addTable("CUSTOMER", "CUSTOMER");
- helper.addUpdateStatement(customerTable, "update CUSTOMER set LASTNAME = ?, ADDRESS = ? "
- + "where ID = ?", "LASTNAME ADDRESS ID");
-
- DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
- // Read customer 1
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
-
- DataObject customer = (DataObject) root.get("CUSTOMER[1]");
-
- // Modify customer
- customer.set("LASTNAME", "Pavick");
-
- // Build apply changes command
- das.applyChanges(root);
-
- // Verify changes
- root = select.executeQuery();
- assertEquals("Pavick", root.getString("CUSTOMER[1]/LASTNAME"));
-
- }
-
- /**
- * Read and modify a customer. Provide needed Create/Update/Delete statements via xml file
- */
- public void testReadModifyApply1() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("basicCustomerMappingWithCUD.xml"), getConnection());
- // Read customer 1
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
-
- DataObject customer = (DataObject) root.get("CUSTOMER[1]");
-
- // Modify customer
- customer.set("LASTNAME", "Pavick");
-
- // Build apply changes command
- das.applyChanges(root);
-
- // Verify changes
- root = select.executeQuery();
- assertEquals("Pavick", root.getString("CUSTOMER[1]/LASTNAME"));
-
- }
-
- /**
- * Same as previous but: Utilizes generated CUD statements Key info provided programatically
- */
- public void testReadModifyApply2() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read customer with particular ID
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
-
- DataObject customer = root.getDataObject("CUSTOMER[1]");
-
- // Modify customer
- customer.set("LASTNAME", "Pavick");
-
- // Build apply changes command
- das.applyChanges(root);
-
- // Verify the change
- root = select.executeQuery();
- assertEquals("Pavick", root.getDataObject("CUSTOMER[1]").getString("LASTNAME"));
-
- }
-
- /**
- * Builds on previous but: 1. Key info provided via XML file
- */
- public void testReadModifyApply3() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("basicCustomerMapping.xml"), getConnection());
- // Read customer with particular ID
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
-
- DataObject customer = (DataObject) root.get("CUSTOMER[1]");
-
- // Modify customer
- customer.set("LASTNAME", "Pavick");
-
- // Build apply changes command
- das.applyChanges(root);
-
- // Verify the change
- root = select.executeQuery();
- assertEquals("Pavick", root.getDataObject("CUSTOMER[1]").getString("LASTNAME"));
-
- }
-
- /**
- * Test ability to handle multiple changes to the graph including Creates/Updates/Deletes Employs generated CUD
- */
- public void testReadModifyDeleteInsertApply() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("basicCustomerMapping.xml"), getConnection());
- // Read some customers
- Command select = das.createCommand("Select * from CUSTOMER where LASTNAME = 'Williams'");
- DataObject root = select.executeQuery();
-
- DataObject cust1 = (DataObject) root.getList("CUSTOMER").get(0);
- DataObject cust2 = (DataObject) root.getList("CUSTOMER").get(1);
- DataObject cust3 = (DataObject) root.getList("CUSTOMER").get(2);
-
- // Modify a customer
- cust1.set("LASTNAME", "Pavick");
- int cust1ID = cust1.getInt("ID");
-
- // Save IDs before delete
- int cust2ID = cust2.getInt("ID");
- int cust3ID = cust3.getInt("ID");
- // Delete a couple
- cust2.delete();
- cust3.delete();
-
- // Create a new customer
- DataObject cust4 = root.createDataObject("CUSTOMER");
- cust4.set("ID", Integer.valueOf(100));
- cust4.set("ADDRESS", "5528 Wells Fargo Drive");
- cust4.set("LASTNAME", "Gerkin");
-
- // Build apply changes command
- das.applyChanges(root);
-
- // Verify deletes
- select = das.createCommand("Select * from CUSTOMER where ID = ?");
- select.setParameter(1, Integer.valueOf(cust2ID));
- root = select.executeQuery();
- assertTrue(root.getList("CUSTOMER").isEmpty());
- // reparameterize same command
- select.setParameter(1, Integer.valueOf(cust3ID));
- root = select.executeQuery();
- assertTrue(root.getList("CUSTOMER").isEmpty());
-
- // verify insert
- select.setParameter(1, Integer.valueOf(100));
- root = select.executeQuery();
- assertEquals(1, root.getList("CUSTOMER").size());
- assertEquals("5528 Wells Fargo Drive", root.getString("CUSTOMER[1]/ADDRESS"));
- assertEquals("Gerkin", root.getString("CUSTOMER[1]/LASTNAME"));
-
- // verify update
- select.setParameter(1, Integer.valueOf(cust1ID));
- root = select.executeQuery();
- assertEquals("Pavick", root.getString("CUSTOMER[1]/LASTNAME"));
-
- }
-
- public void testReadModifyApplyWithAssumedID() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read customer with particular ID
- Command select = das.createCommand("Select * from CUSTOMER");
- DataObject root = select.executeQuery();
-
- DataObject customer = root.getDataObject("CUSTOMER[1]");
-
- // Modify customer
- customer.set("LASTNAME", "Pavick");
-
- DataObject customerForDelete = getCustomerByLastName(root, "Daniel");
- customerForDelete.delete();
-
- DataObject newCustomer = root.createDataObject("CUSTOMER");
- newCustomer.set("LASTNAME", "NewCustomer");
- newCustomer.setInt("ID", 9000);
-
- // Build apply changes command
- das.applyChanges(root);
-
- // Verify the change
- root = select.executeQuery();
- assertEquals("Pavick", getCustomerByLastName(root, "Pavick").getString("LASTNAME"));
- assertEquals("NewCustomer", getCustomerByLastName(root, "NewCustomer").getString("LASTNAME"));
- assertNull(getCustomerByLastName(root, "Daniel"));
-
- }
-
- public void testReadModifyApplyWithAssumedIDFailure() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command select = das.createCommand("Select * from ORDERDETAILS");
-
- DataObject root = select.executeQuery();
-
- DataObject od = root.getDataObject("ORDERDETAILS[1]");
-
- // Modify customer
- od.setInt("PRODUCTID", 72);
-
- // Flush changes -- This should fail because Order Details does not have
- // a column that
- // we can assume to be an ID
- try {
- das.applyChanges(root);
- } catch (RuntimeException ex) {
- assertTrue(ex.getMessage().contains("changed in the DataGraph but is not present in the Config"));
- }
-
- }
-
- public void testReadModifyApplyWithAssumedIDFailure2() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command select = das.createCommand("Select * from ORDERDETAILS");
- DataObject root = select.executeQuery();
-
- DataObject od = root.getDataObject("ORDERDETAILS[1]");
- od.delete();
-
- // Flush changes -- This should fail because Order Details does not have
- // a column that
- // we can assume to be an ID
- try {
- das.applyChanges(root);
- } catch (RuntimeException ex) {
- assertTrue(ex.getMessage().contains("changed in the DataGraph but is not present in the Config"));
- }
-
- }
-
- public void testReadModifyApplyWithAssumedIDFailure3() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command select = das.createCommand("Select * from ORDERDETAILS");
- DataObject root = select.executeQuery();
-
- DataObject od = root.createDataObject("ORDERDETAILS");
-
- // Modify customer
- od.setInt("PRODUCTID", 72);
- od.setInt("ORDERID", 500);
-
- // Flush changes -- This should fail because Order Details does not have
- // a column that
- // we can assume to be an ID
- try {
- das.applyChanges(root);
- } catch (RuntimeException ex) {
- assertTrue(ex.getMessage().contains("changed in the DataGraph but is not present in the Config"));
- }
-
- }
-
- private DataObject getCustomerByLastName(DataObject root, String name) {
- Iterator i = root.getList("CUSTOMER").iterator();
- while (i.hasNext()) {
- DataObject obj = (DataObject) i.next();
- if (name.equals(obj.getString("LASTNAME"))) {
- return obj;
- }
- }
- return null;
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java
deleted file mode 100644
index 4c5f128db5..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DefectTests.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- * These tests attempt to duplicate customer reported errors and then to verify
- * any necessary fix.
- *
- */
-
-import java.util.Iterator;
-import java.util.Random;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CompanyData;
-import org.apache.tuscany.das.rdb.test.data.CompanyDeptData;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.DepEmpData;
-import org.apache.tuscany.das.rdb.test.data.DepartmentData;
-import org.apache.tuscany.das.rdb.test.data.EmployeeData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class DefectTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
-
- new CompanyData(getAutoConnection()).refresh();
- new DepartmentData(getAutoConnection()).refresh();
- new EmployeeData(getAutoConnection()).refresh();
- new CompanyDeptData(getAutoConnection()).refresh();
- new DepEmpData(getAutoConnection()).refresh();
-
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Read a specific customer
- */
- public void testDiltonsInsert() throws Exception {
-
- // String sql = "insert into conmgt.serverstatus (statusid,
- // managedserverid, timestamp) values (316405209, 316405209, '2005-11-23
- // 19:29:52.636')";
- String sql = "insert into conmgt.serverstatus (managedserverid, timestamp) "
- + "values (316405209, '2005-11-23 19:29:52.636')";
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand(sql);
- insert.execute();
-
- // Verify
- Command select = das.createCommand("Select * from conmgt.serverstatus where statusid = 316405209");
- DataObject root = select.executeQuery();
- assertEquals(1, root.getList("conmgt.serverstatus").size());
-
- }
-
- public void testUpdateChildThatHasGeneratedKey() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"));
-
- //Read a specific company based on the known ID
- Command readCust = das.getCommand("all companies and departments");
- DataObject root = readCust.executeQuery();
- DataObject lastCustomer = root.getDataObject("COMPANY[3]");
- Iterator i = lastCustomer.getList("departments").iterator();
- Random generator = new Random();
- int random = generator.nextInt(1000) + 1;
- DataObject department;
- while (i.hasNext()) {
- department = (DataObject) i.next();
- System.out.println("Modifying department: " + department.getString("NAME"));
- department.setString("NAME", "Dept-" + random);
- random = random + 1;
- }
-
- das.applyChanges(root);
-
- }
-
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ExceptionTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ExceptionTests.java
deleted file mode 100644
index e66095cdd7..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ExceptionTests.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.sql.Connection;
-import java.sql.SQLException;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.company.CompanyFactory;
-import org.apache.tuscany.das.rdb.test.customer.CustomerFactory;
-import org.apache.tuscany.das.rdb.test.data.BookData;
-import org.apache.tuscany.das.rdb.test.data.CompanyData;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.data.OrderDetailsData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
-public class ExceptionTests extends DasTest {
-
- public ExceptionTests() {
- super();
- }
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
- new BookData(getAutoConnection()).refresh();
- new OrderDetailsData(getAutoConnection()).refresh();
- new CompanyData(getAutoConnection()).refresh();
-
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- public void testMissingConnection() throws Exception {
- DAS das = DAS.FACTORY.createDAS((Connection) null);
-
- try {
- Command readCustomers = das.createCommand("select * from CUSTOMER where ID = 1");
- readCustomers.executeQuery();
- fail("RuntimeException should be thrown");
- } catch (RuntimeException ex) {
- assertEquals("No connection has been provided and no data source has been specified", ex.getMessage());
- }
-
- }
-
- public void testUnregisteredTypes() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("staticInvalid.xml"), getConnection());
- Command readCustomers = das.createCommand("select * from CUSTOMER where ID = 1");
-
- try {
- readCustomers.executeQuery();
-
- fail("Exception should be thrown");
- } catch (RuntimeException ex) {
- assertEquals("SDO Types have not been registered for URI invalidURI", ex.getMessage());
- }
- }
-
- public void testMissingMapping() throws Exception {
- SDOUtil.registerStaticTypes(CustomerFactory.class);
- DAS das = DAS.FACTORY.createDAS(getConfig("staticCustomer.xml"), getConnection());
- Command readCustomers = das.createCommand("select * from CUSTOMER where ID = 1");
-
- try {
- readCustomers.executeQuery();
-
- fail("Exception should be thrown");
- } catch (RuntimeException ex) {
- assertEquals("An SDO Type with name CUSTOMER was not found", ex.getMessage());
- }
-
- }
-
- /**
- * Test ability to describe problem when a user passes an empty stream
- */
- public void testEmptyStream() throws Exception {
- try {
- DAS.FACTORY.createDAS(getConfig("NonExistingFile.xml"));
- fail("Error should be thrown");
- } catch (RuntimeException e) {
- assertEquals("Cannot load configuration from a null InputStream. Possibly caused "
- + "by an incorrect config xml file name", e.getMessage());
- }
- }
-
- /**
- * Test ability to describe problem when a user passes an empty stream
- */
- public void testEmptyStream2() throws Exception {
- try {
- DAS.FACTORY.createDAS(getConfig("NonExistingFile.xml"));
- fail("Error should be thrown");
- } catch (RuntimeException e) {
- assertEquals("Cannot load configuration from a null InputStream. Possibly caused "
- + "by an incorrect config xml file name", e.getMessage());
- }
- }
-
- public void testReadOrdersAndDetails2() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("InvalidConfig1.xml"), getConnection());
- Command read = das.createCommand("SELECT * FROM ANORDER LEFT JOIN ORDERDETAILS "
- + "ON ANORDER.ID = ORDERDETAILS.ORDERID ORDER BY ANORDER.ID");
-
- try {
- read.executeQuery();
- } catch (Exception ex) {
- assertEquals("The parent table (xxx) in relationship ORDERDETAILS was not found.", ex.getMessage());
- }
-
- }
-
- public void testMismatchedDataObjectModel() throws SQLException {
- SDOUtil.registerStaticTypes(CompanyFactory.class);
- DAS das = DAS.FACTORY.createDAS(getConfig("companyMappingWithConverters.xml"), getConnection());
- Command read = das.createCommand("select * from company");
- try {
- read.executeQuery();
- } catch (RuntimeException ex) {
- assertEquals("Type CompanyType does not contain a property named ID", ex.getMessage());
- }
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GeneratedCommandTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GeneratedCommandTests.java
deleted file mode 100644
index 45c83e6167..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GeneratedCommandTests.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.test.commands.ReadCustomersByLastnameCommand;
-import org.apache.tuscany.das.rdb.test.commands.ReadCustomersCommand;
-import org.apache.tuscany.das.rdb.test.commands.ReadCustomersStaticTypesCommand;
-import org.apache.tuscany.das.rdb.test.commands.ReadCustomersWithShapeCommand;
-import org.apache.tuscany.das.rdb.test.commands.SimpleReadCustomersWithShapeCommand;
-import org.apache.tuscany.das.rdb.test.customer.Customer;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class GeneratedCommandTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CustomerData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- public void testReadCustomers() throws Exception {
- ReadCustomersCommand cmd = new ReadCustomersCommand();
- cmd.setConnection(getConnection());
-
- DataObject root = cmd.executeQuery();
- assertEquals(5, root.getList("CUSTOMER").size());
- }
-
- public void testReadSomeCustomers() throws Exception {
- ReadCustomersByLastnameCommand cmd = new ReadCustomersByLastnameCommand();
- cmd.setConnection(getConnection());
- cmd.setParameter(1, "Williams");
-
- DataObject root = cmd.executeQuery();
- assertEquals(4, root.getList("CUSTOMER").size());
-
- }
-
- public void testReadCustomersStaticTypes() throws Exception {
- ReadCustomersStaticTypesCommand cmd = new ReadCustomersStaticTypesCommand();
- cmd.setConnection(getConnection());
- cmd.setParameter(1, "Williams");
-
- DataObject root = cmd.executeQuery();
-
- List customers = root.getList("Customer");
- assertEquals(4, customers.size());
-
- Customer cust1 = (Customer) customers.get(0);
- assertEquals("Williams", cust1.getLastName());
-
- }
-
- public void testSimpleReadCustomersWithShape() throws Exception {
- SimpleReadCustomersWithShapeCommand cmd = new SimpleReadCustomersWithShapeCommand();
- cmd.setConnection(getConnection());
- DataObject root = cmd.executeQuery();
- assertEquals(5, root.getList("CUSTOMER").size());
- }
-
- public void testReadCustomersOrdersWithShape() throws Exception {
- ReadCustomersWithShapeCommand cmd = new ReadCustomersWithShapeCommand();
- cmd.setConnection(getConnection());
-
- DataObject root = cmd.executeQuery();
- assertEquals(5, root.getList("CUSTOMER").size());
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GeneratedId.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GeneratedId.java
deleted file mode 100644
index f339ea2634..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GeneratedId.java
+++ /dev/null
@@ -1,293 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- * Generated IDs
- *
- *
- */
-
-import java.util.Iterator;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CompanyData;
-import org.apache.tuscany.das.rdb.test.data.DepartmentData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class GeneratedId extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CompanyData(getAutoConnection()).refresh();
- new DepartmentData(getAutoConnection()).refresh();
-
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- // Test insert into row with generated ID
- public void testInsert() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand("insert into COMPANY (NAME) values (?)");
- insert.setParameter(1, "AAA Rental");
- insert.execute();
-
- // Verify insert
- // Verify
- Command select = das.createCommand("Select ID, NAME from COMPANY");
- DataObject root = select.executeQuery();
-
- assertEquals(4, root.getList("COMPANY").size());
- assertTrue(root.getInt("COMPANY[1]/ID") > 0);
-
- }
-
- // Test back to back insertions with the same command
- public void testInsert2() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand("insert into COMPANY (NAME) values (?)");
- insert.setParameter(1, "AAA Rental");
- insert.execute();
-
- // insert another using same command
- insert.setParameter(1, "BBB Rental");
- insert.execute();
-
- // Verify insert
- // Verify
- Command select = das.createCommand("Select ID, NAME from COMPANY");
- DataObject root = select.executeQuery();
-
- assertEquals(5, root.getList("COMPANY").size());
-
- }
-
- // Test ability to retrieve and utilize the generated key
- public void testInsert3() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand("insert into COMPANY (NAME) values (?)");
- insert.setParameter(1, "AAA Rental");
- insert.execute();
- // Integer key = (Integer) insert.getParameterValue("generated_key");
- Integer key = (Integer) insert.getGeneratedKey();
-
- // Verify insert
- Command select = das.createCommand("Select ID, NAME from COMPANY where ID = ?");
- select.setParameter(1, key);
- DataObject root = select.executeQuery();
- assertEquals(key, root.get("COMPANY[1]/ID"));
-
- }
-
- // Test insert into row with generated ID and generated insert
- public void testInsert4() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"), getConnection());
- Command select = das.getCommand("all companies");
- DataObject root = select.executeQuery();
-
- DataObject company = root.createDataObject("COMPANY");
- company.setString("NAME", "Phil's Tires");
- // This shouldn't do anything
- company.setInt("ID", 999);
-
- das.applyChanges(root);
-
- // Verify insert
- root = select.executeQuery();
-
- assertEquals(4, root.getList("COMPANY").size());
- Iterator i = root.getList("COMPANY").iterator();
- while (i.hasNext()) {
- DataObject comp = (DataObject) i.next();
- assertFalse(comp.getInt("ID") == 999);
- }
-
- }
-
- // Test ability to propogate generated values back to owning data objects
- public void testPropagateIds() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"), getConnection());
- Command select = das.getCommand("all companies");
- DataObject root = select.executeQuery();
-
- // Create a new Company
- DataObject company = root.createDataObject("COMPANY");
- company.setString("NAME", "Do-rite Pest Control");
-
- // verify pre-condition (id is not there until after flush)
- assertNull(company.get("ID"));
-
- // Flush changes
- das.applyChanges(root);
-
- // Save the id
- Integer id = (Integer) company.get("ID");
-
- // Verify the change
- select = das.createCommand("Select * from COMPANY where ID = ?");
- select.setParameter(1, id);
- root = select.executeQuery();
- assertEquals("Do-rite Pest Control", root.getDataObject("COMPANY[1]").getString("NAME"));
-
- }
-
- /**
- * Same as above but metadata provided by XML config file
- */
- public void testPropagateIdsXML() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("basicCompanyMapping.xml"), getConnection());
- Command select = das.createCommand("Select * from COMPANY");
- DataObject root = select.executeQuery();
-
- // Create a new Company
- DataObject company = root.createDataObject("COMPANY");
- company.setString("NAME", "Do-rite Pest Control");
-
- // verify pre-condition (id is not there until after flush)
- assertNull(company.get("ID"));
-
- // Flush changes
- das.applyChanges(root);
-
- // Save the id
- Integer id = (Integer) company.get("ID");
-
- // Verify the change
- select = das.createCommand("Select * from COMPANY where ID = ?");
- select.setParameter(1, id);
- root = select.executeQuery();
- assertEquals("Do-rite Pest Control", root.getDataObject("COMPANY[1]").getString("NAME"));
-
- }
-
- /**
- * Test ability to correctly flush heirarchy of objects that have generated
- * keys
- */
- public void testFlushCreateHeirarchy() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("basicCompanyDepartmentMapping.xml"), getConnection());
- String selectCompanys = "SELECT * FROM COMPANY LEFT JOIN DEPARTMENT ON COMPANY.ID = DEPARTMENT.COMPANYID";
-
- Command select = das.createCommand(selectCompanys);
- DataObject root = select.executeQuery();
-
- // Create a new Company
- DataObject company = root.createDataObject("COMPANY");
- company.setString("NAME", "Do-rite Pest Control");
-
- // Create a new Department
- // Do not set ID or CompanyID since these are generated
- // ID INT, NAME VARCHAR(30), LOCATION VARCHAR(30), NUMBER VARCHAR(10),
- // COMPANYID INT, EOTM INT
- DataObject department = root.createDataObject("DEPARTMENT");
- department.setString("NAME", "Do-rite Pest Control");
- department.setString("LOCATION", "The boonies");
- department.setString("DEPNUMBER", "101");
-
- // Associate the new department with the new company
- company.getList("departments").add(department);
-
- das.applyChanges(root);
-
- // Save the id
- Integer id = (Integer) company.get("ID");
-
- // Verify the change
- String selectString = "SELECT * FROM COMPANY LEFT JOIN DEPARTMENT "
- + "ON COMPANY.ID = DEPARTMENT.COMPANYID WHERE COMPANY.ID = ?";
-
- select = das.createCommand(selectString);
- select.setParameter(1, id);
- root = select.executeQuery();
- assertEquals("Do-rite Pest Control", root.getDataObject("COMPANY[1]").getString("NAME"));
-
- }
-
- /**
- * Test ability to correctly flush heirarchy of objects that have generated
- * keys even when a created object has legal but NULL property values
- */
- public void testFlushCreateHeirarchy2() throws Exception {
-
- String selectCompanys = "SELECT * FROM COMPANY LEFT JOIN DEPARTMENT ON COMPANY.ID = DEPARTMENT.COMPANYID";
-
- DAS das = DAS.FACTORY.createDAS(getConfig("basicCompanyDepartmentMapping.xml"), getConnection());
- Command select = das.createCommand(selectCompanys);
- DataObject root = select.executeQuery();
-
- // Create a new Company
- DataObject company = root.createDataObject("COMPANY");
- company.setString("NAME", "Do-rite Pest Control");
-
- // Create a new Department
- // Do not set ID or CompanyID since these are generated
- // ID INT, NAME VARCHAR(30), LOCATION VARCHAR(30), NUMBER VARCHAR(10),
- // COMPANYID INT, EOTM INT
- DataObject department = root.createDataObject("DEPARTMENT");
- department.setString("NAME", "Do-rite Pest Control");
- // Do not set this property to force storing NULL to DB
- // department.setString("LOCATION", "The boonies");
- department.setString("DEPNUMBER", "101");
-
- // Associate the new department with the new company
- company.getList("departments").add(department);
-
- das.applyChanges(root);
-
- // Save the id
- Integer id = (Integer) company.get("ID");
-
- // Verify the change
- String selectString = "SELECT * FROM COMPANY LEFT JOIN DEPARTMENT "
- + "ON COMPANY.ID = DEPARTMENT.COMPANYID WHERE COMPANY.ID = ?";
-
- select = das.createCommand(selectString);
- select.setParameter(1, id);
- root = select.executeQuery();
- assertEquals("Do-rite Pest Control", root.getDataObject("COMPANY[1]").getString("NAME"));
-
- }
-
- // Test that error is thrown when no key has been generated (as in a select)
- public void testRead() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command select = das.createCommand("Select * from COMPANY");
- select.executeQuery();
-
- try {
- select.getGeneratedKey();
- fail("Should throw exception");
- } catch (RuntimeException e) {
- assertEquals("This method is only valid for insert commands", e.getMessage());
- }
- }
-
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GraphMergeTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GraphMergeTests.java
deleted file mode 100644
index 23b530dc34..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/GraphMergeTests.java
+++ /dev/null
@@ -1,188 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.ConfigHelper;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.merge.impl.GraphMerger;
-import org.apache.tuscany.das.rdb.test.customer.Customer;
-import org.apache.tuscany.das.rdb.test.customer.CustomerFactory;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
-import commonj.sdo.DataObject;
-
-public class GraphMergeTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
-
- }
-
- public void testCreateEmptyGraph() throws Exception {
- String typeUri = "http:///org.apache.tuscany.das.rdb.test/customer.xsd";
- SDOUtil.registerStaticTypes(CustomerFactory.class);
- ConfigHelper helper = new ConfigHelper();
- helper.setDataObjectModel(typeUri);
- DataObject graph = new GraphMerger().emptyGraph(helper.getConfig());
- assertEquals(0, graph.getList("Customer").size());
- assertEquals(0, graph.getList("AnOrder").size());
-
- }
-
- public void testCreateEmptyGraphAndAddCustomer() throws Exception {
- String typeUri = "http:///org.apache.tuscany.das.rdb.test/customer.xsd";
- SDOUtil.registerStaticTypes(CustomerFactory.class);
- ConfigHelper helper = new ConfigHelper();
- helper.setDataObjectModel(typeUri);
- helper.addTable("CUSTOMER", "Customer");
- helper.addPrimaryKey("CUSTOMER.ID");
-
- DataObject graph = new GraphMerger().emptyGraph(helper.getConfig());
- Customer c = (Customer) graph.createDataObject("Customer");
- c.setID(4000);
- c.setLastName("Smith");
- c.setAddress("400 Fourth Street");
-
- DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
- das.applyChanges(graph);
-
- Command cmd = das.createCommand("select * from CUSTOMER order by ID desc");
- graph = cmd.executeQuery();
- assertEquals(6, graph.getList("Customer").size());
- assertEquals("Smith", graph.getDataObject("Customer[1]").getString("lastName"));
- assertEquals("400 Fourth Street", graph.getDataObject("Customer[1]").getString("address"));
-
- }
-
- public void testSingleTableMerge() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command select = das.createCommand("Select ID, LASTNAME, ADDRESS from CUSTOMER where ID <= ?");
- select.setParameter(1, "3");
- DataObject graph1 = select.executeQuery();
- assertEquals(3, graph1.getList("CUSTOMER").size());
-
- select.setParameter(1, "5");
- DataObject graph2 = select.executeQuery();
- assertEquals(5, graph2.getList("CUSTOMER").size());
-
- GraphMerger merger = new GraphMerger();
- merger.addPrimaryKey("CUSTOMER.ID");
- DataObject mergedGraph = merger.merge(graph1, graph2);
-
- assertEquals(5, mergedGraph.getList("CUSTOMER").size());
- }
-
- public void testSingleTableMergeThreeGraphs() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command select = das.createCommand("Select ID, LASTNAME, ADDRESS from CUSTOMER where ID <= ?");
- select.setParameter(1, "3");
- DataObject graph1 = select.executeQuery();
- assertEquals(3, graph1.getList("CUSTOMER").size());
-
- select.setParameter(1, "4");
- DataObject graph2 = select.executeQuery();
- assertEquals(4, graph2.getList("CUSTOMER").size());
-
- select.setParameter(1, "5");
- DataObject graph3 = select.executeQuery();
- assertEquals(5, graph3.getList("CUSTOMER").size());
-
- GraphMerger merger = new GraphMerger();
- merger.addPrimaryKey("CUSTOMER.ID");
- List graphs = new ArrayList();
- graphs.add(graph1);
- graphs.add(graph2);
- graphs.add(graph3);
- DataObject mergedGraph = merger.merge(graphs);
-
- assertEquals(5, mergedGraph.getList("CUSTOMER").size());
-
- }
-
- public void testMultiTableMerge2() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomersOrdersConfig.xml"), getConnection());
- // Read some customers and related orders
- Command select = das.createCommand("SELECT * FROM CUSTOMER LEFT JOIN ANORDER ON "
- + "CUSTOMER.ID = ANORDER.CUSTOMER_ID where CUSTOMER.ID = ?");
-
- select.setParameter(1, Integer.valueOf(1));
- DataObject graph1 = select.executeQuery();
-
- DataObject customer = (DataObject) graph1.getList("CUSTOMER").get(0);
- assertEquals(2, customer.getList("orders").size());
-
- select.setParameter(1, Integer.valueOf(2));
- DataObject graph2 = select.executeQuery();
- DataObject customer2 = (DataObject) graph2.getList("CUSTOMER").get(0);
- assertEquals(1, graph2.getList("CUSTOMER").size());
- assertEquals(1, customer2.getList("orders").size());
- assertEquals(2, customer2.getInt("ID"));
-
- GraphMerger merger = new GraphMerger();
- merger.addPrimaryKey("CUSTOMER.ID");
- merger.addPrimaryKey("ANORDER.ID");
- DataObject mergedGraph = merger.merge(graph1, graph2);
-
- assertEquals(3, mergedGraph.getList("ANORDER").size());
- assertEquals(2, mergedGraph.getList("CUSTOMER").size());
-
- DataObject mergedCustomer = (DataObject) mergedGraph.getList("CUSTOMER").get(1);
- assertEquals(2, mergedCustomer.getInt("ID"));
- assertEquals(1, mergedCustomer.getList("orders").size());
- DataObject mergedOrder = (DataObject) mergedCustomer.getList("orders").get(0);
- assertEquals(4, mergedOrder.getInt("ID"));
-
- }
-
- public void testMultiTableAppendSingleTable2() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomersOrdersConfig.xml"), getConnection());
- // Read some customers and related orders
- Command select = das.createCommand("SELECT * FROM CUSTOMER LEFT JOIN ANORDER ON "
- + "CUSTOMER.ID = ANORDER.CUSTOMER_ID where CUSTOMER.ID = ?");
-
- select.setParameter(1, Integer.valueOf(1));
- DataObject graph1 = select.executeQuery();
-
- DataObject customer = (DataObject) graph1.getList("CUSTOMER").get(0);
- assertEquals(2, customer.getList("orders").size());
-
- DAS das2 = DAS.FACTORY.createDAS(getConnection());
- Command select2 = das2.createCommand("select * from ANORDER");
- DataObject graph2 = select2.executeQuery();
- assertEquals(4, graph2.getList("ANORDER").size());
-
- GraphMerger merger = new GraphMerger();
- merger.addPrimaryKey("CUSTOMER.ID");
- merger.addPrimaryKey("ANORDER.ID");
- DataObject mergedGraph = merger.merge(graph1, graph2);
- assertEquals(4, mergedGraph.getList("ANORDER").size());
- assertEquals(1, mergedGraph.getList("CUSTOMER").size());
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ImpliedRelationshipTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ImpliedRelationshipTests.java
deleted file mode 100644
index 96a01455f5..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ImpliedRelationshipTests.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.util.Iterator;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.ConfigHelper;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.config.Relationship;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-
-public class ImpliedRelationshipTests extends DasTest {
- protected void setUp() throws Exception {
- super.setUp();
-
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Ensure that an implied relationship is not created when a defined one already exists
- *
- * @throws Exception
- */
- public void testRelationshipAlreadyDefined() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- Relationship r = helper.addRelationship("CUSTOMER.ID", "ANORDER.CUSTOMER_ID");
- r.setName("definedRelationship");
-
- DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
- Command select = das.createCommand("select * from CUSTOMER left join ANORDER "
- + "ON CUSTOMER.ID = ANORDER.CUSTOMER_ID");
-
- DataObject root = select.executeQuery();
- DataObject cust = root.getDataObject("CUSTOMER[1]");
- Iterator i = cust.getType().getProperties().iterator();
- while (i.hasNext()) {
- Property p = (Property) i.next();
- if (!p.getType().isDataType()) {
- assertEquals(p.getName(), "definedRelationship");
- }
- }
- }
-
- /**
- * Add a new Order to a list of Customers without defining any config information
- *
- * @throws Exception
- */
- public void testAddNewOrder() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
-
- Command select = das.createCommand("SELECT * FROM CUSTOMER LEFT JOIN ANORDER "
- + "ON CUSTOMER.ID = ANORDER.CUSTOMER_ID");
-
- DataObject root = select.executeQuery();
-
- DataObject cust = root.getDataObject("CUSTOMER[1]");
-
- // Save ID and Order Count
- int custID = cust.getInt("ID");
- int custOrderCount = cust.getList("ANORDER").size();
-
- // Create a new Order and add to customer1
- DataObject order = root.createDataObject("ANORDER");
-
- order.set("ID", Integer.valueOf(99));
- order.set("PRODUCT", "The 99th product");
- order.set("QUANTITY", Integer.valueOf(99));
- cust.getList("ANORDER").add(order);
-
- assertEquals(custOrderCount + 1, cust.getList("ANORDER").size());
-
- // Build apply changes command
- das.applyChanges(root);
-
- // verify cust1 relationship updates
- select = das.createCommand("SELECT * FROM CUSTOMER LEFT JOIN ANORDER ON CUSTOMER.ID = ANORDER.CUSTOMER_ID "
- + "where CUSTOMER.ID = ?");
-
- select.setParameter(1, Integer.valueOf(custID));
- root = select.executeQuery();
-
- assertEquals(custOrderCount + 1, root.getList("CUSTOMER[1]/ANORDER").size());
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/KennelTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/KennelTests.java
deleted file mode 100644
index b2aa8a8691..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/KennelTests.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.sql.Timestamp;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.DogData;
-import org.apache.tuscany.das.rdb.test.data.KennelData;
-import org.apache.tuscany.das.rdb.test.data.OwnerData;
-import org.apache.tuscany.das.rdb.test.data.OwnerDogData;
-import org.apache.tuscany.das.rdb.test.data.VisitData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-import org.apache.tuscany.das.rdb.test.framework.TestData;
-
-import commonj.sdo.DataObject;
-
-public class KennelTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new DogData(getAutoConnection()).refresh();
- new OwnerData(getAutoConnection()).refresh();
- new OwnerDogData(getAutoConnection()).refresh();
- new KennelData(getAutoConnection()).refresh();
- new VisitData(getAutoConnection()).refresh();
-
-
- }
-
- public void testSimple() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
-
- // Build the select command
- Command selectCommand = das.createCommand("select * from DOG");
-
- // Get the graph
- DataObject root = selectCommand.executeQuery();
-
- assertEquals(3, root.getList("DOG").size());
-
- }
-
- public void testSimple2() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
-
- // Build the select command
- Command selectCommand = das.createCommand("select * from OWNER");
-
- // Get the graph
- DataObject root = selectCommand.executeQuery();
-
- assertEquals(3, root.getList("OWNER").size());
-
- }
-
- public void testSimple3() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
-
- // Build the select command
- Command selectCommand = das.createCommand("select * from OWNER, DOG "
- + "where DOG.OWNER_ID = OWNER.ID and OWNER.NAME = 'Fanny'");
-
- // Get the graph
- DataObject root = selectCommand.executeQuery();
-
- //Get Fanny
- DataObject fanny = root.getDataObject("OWNER[1]");
- assertEquals("Fido", fanny.getString("DOG[1]/NAME"));
-
- }
-
- public void testSimple4() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
-
- // Build the select command
- Command selectCommand = das.createCommand("select * from KENNEL");
-
- // Get the graph
- DataObject root = selectCommand.executeQuery();
-
- assertEquals(3, root.getList("KENNEL").size());
-
- }
-
- public void testSimple5() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
-
- // Build the select command
- Command selectCommand = das.createCommand("select * from VISIT");
-
- // Get the graph
- DataObject root = selectCommand.executeQuery();
-
- assertEquals(3, root.getList("VISIT").size());
- assertEquals(TestData.getTimestamp("2006-10-20 00:00:00.0"), (Timestamp)root.get("VISIT[1]/CHECK_IN"));
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OCCTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OCCTests.java
deleted file mode 100644
index 425995a68b..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OCCTests.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.ConfigHelper;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.test.data.BookData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class OCCTests extends DasTest {
- protected void setUp() throws Exception {
- super.setUp();
-
- new BookData(getAutoConnection()).refresh();
- }
-
- public void testSimpleOCC() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("BooksConfig.xml"), getConnection());
- // Read a book instance
- Command select = das.getCommand("select book 1");
- DataObject root = select.executeQuery();
- DataObject book = root.getDataObject("BOOK[1]");
- // Change a field to mark the instance 'dirty'
- book.setInt("QUANTITY", 2);
-
- // Explicitly change OCC column in database to force collision
- Command update = das.getCommand("update book 1");
- update.setParameter(1, new Integer(100));
- update.execute();
-
- // Try to apply changes and catch the expected An update collision occurred
- try {
- das.applyChanges(root);
- fail("An OCCException should be thrown");
- } catch (RuntimeException ex) {
- if (!ex.getMessage().equals("An update collision occurred")) {
- throw ex;
- }
- }
- }
-
- public void testManagedOCC() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("ManagedBooksConfig.xml"), getConnection());
- Command select = das.getCommand("select book 1");
- DataObject root = select.executeQuery();
- DataObject book = root.getDataObject("BOOK[1]");
- // Change a field to mark the instance 'dirty'
- book.setInt("QUANTITY", 2);
- int occValue = book.getInt("OCC");
- das.applyChanges(root);
-
- root = select.executeQuery();
- book = root.getDataObject("BOOK[1]");
- assertEquals(occValue + 1, book.getInt("OCC"));
- }
-
- public void testManagedOCCFailure() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("ManagedBooksConfig.xml"), getConnection());
- // Read a book instance
- Command select = das.getCommand("select book 1");
- DataObject root = select.executeQuery();
- DataObject book = root.getDataObject("BOOK[1]");
- // Change a field to mark the instance 'dirty'
- book.setInt("QUANTITY", 2);
-
- DAS das2 = DAS.FACTORY.createDAS(getConfig("ManagedBooksConfig.xml"), getConnection());
- // Read a book instance
- Command select2 = das2.getCommand("select book 1");
- DataObject root2 = select2.executeQuery();
- DataObject book2 = root2.getDataObject("BOOK[1]");
- // Change a field to mark the instance 'dirty'
- book2.setInt("QUANTITY", 5);
- das2.applyChanges(root2);
-
- // Try to apply changes and catch the expecetd An update collision occurred
- try {
- das.applyChanges(root);
- fail("An OCCException should be thrown");
- } catch (RuntimeException ex) {
- if (!ex.getMessage().equals("An update collision occurred")) {
- throw ex;
- }
- }
- }
-
- public void testProvidedConfig() throws Exception {
- // Create config programmatically
- Config config = ConfigFactory.INSTANCE.createConfig();
- ConfigHelper helper = new ConfigHelper(config);
- helper.addPrimaryKey("BOOK.BOOK_ID");
- DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
-
- // Read a book instance
- Command select = das.createCommand("SELECT * FROM BOOK WHERE BOOK_ID = 1");
- DataObject root = select.executeQuery();
- DataObject book = root.getDataObject("BOOK[1]");
- // Change a field to mark the instance 'dirty'
- book.setInt("QUANTITY", 2);
-
- // Flush the change
-
- das.applyChanges(root);
-
- // Verify
- root = select.executeQuery();
- book = root.getDataObject("BOOK[1]");
- assertEquals(2, book.getInt("QUANTITY"));
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OneToOneRelationshipTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OneToOneRelationshipTests.java
deleted file mode 100644
index 2a58ca0fba..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OneToOneRelationshipTests.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CompanyData;
-import org.apache.tuscany.das.rdb.test.data.CompanyEmpData;
-import org.apache.tuscany.das.rdb.test.data.EmployeeData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class OneToOneRelationshipTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new CompanyData(getAutoConnection()).refresh();
- new EmployeeData(getAutoConnection()).refresh();
- new CompanyEmpData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Read Company and traverse to EOTM
- */
- public void test1() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyEmployeeConfig.xml"), getConnection());
-
- Command read = das.getCommand("get companies with employee of the month");
- DataObject root = read.executeQuery();
- DataObject employee = root.getDataObject("COMPANY[1]/company->employee_opposite");
-
- assertEquals("Mary Smith", employee.getString("NAME"));
- }
-
- /**
- * Read Employee and traverse to Company
- */
- public void test2() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyEmployeeConfig.xml"), getConnection());
-
- Command read = das.getCommand("get named employee with company");
- read.setParameter(1, "Mary Smith");
- DataObject root = read.executeQuery();
- DataObject company = root.getDataObject("EMPLOYEE[1]/company->employee");
-
- assertEquals("ACME Publishing", company.getString("NAME"));
- }
-
- /**
- * Un-assign employee O' month
- */
- public void test3() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyEmployeeConfig.xml"), getConnection());
-
- Command read = das.getCommand("get companies with employee of the month");
- DataObject root = read.executeQuery();
- DataObject company = root.getDataObject("COMPANY[1]");
- company.setDataObject("company->employee_opposite", null);
- assertNull(company.getDataObject("company->employee_opposite"));
-
- //Flush changes
- das.applyChanges(root);
-
- //Verify
- root = read.executeQuery();
- company = root.getDataObject("COMPANY[1]");
- assertNull(company.getDataObject("company->employee_opposite"));
- }
-
- /**
- * Delete employee O' month
- */
- public void test4() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyEmployeeConfig.xml"), getConnection());
-
- Command read = das.getCommand("get companies with employee of the month");
- DataObject root = read.executeQuery();
- DataObject company = root.getDataObject("COMPANY[1]");
- DataObject employee = company.getDataObject("company->employee_opposite");
- employee.delete();
- assertNull(company.getDataObject("company->employee_opposite"));
-
- //Flush changes
- das.applyChanges(root);
-
- //Verify
- root = read.executeQuery();
- company = root.getDataObject("COMPANY[1]");
- assertNull(company.getDataObject("company->employee_opposite"));
- }
-
- /**
- * Add new employee O' month
- */
- public void test5() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CompanyEmployeeConfig.xml"), getConnection());
-
- Command read = das.getCommand("get companies with employee of the month");
- DataObject root = read.executeQuery();
- DataObject company = root.getDataObject("COMPANY[1]");
-
- //Create a new employee
- DataObject employee = root.createDataObject("EMPLOYEE");
- employee.setString("NAME", "Joe Hotshot");
-
- //Assigne a EOTM
- //Strangely this statement results in "Could not find relationships" error
- //although "company.setDataObject("company->employee_opposite", null);" dos not
- company.setDataObject("company->employee_opposite", employee);
-
- //Flush changes
- das.applyChanges(root);
-
- //Verify
- root = read.executeQuery();
-
- employee = root.getDataObject("COMPANY[1]/company->employee_opposite");
-
- assertEquals("Joe Hotshot", employee.getString("NAME"));
-
- }
-
- public void testRestrictedOneToOneRelationship() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("OneToOneRestrictedConfig.xml"), getConnection());
-
- Command read = das.getCommand("get named employee with company");
- read.setParameter(1, "Mary Smith");
- DataObject root = read.executeQuery();
- DataObject mary = root.getDataObject("EMPLOYEE[1]");
- DataObject company = mary.getDataObject("company");
-
- DataObject bob = root.createDataObject("EMPLOYEE");
- bob.setString("NAME", "bob");
- bob.setString("SN", "E0005");
- bob.setInt("MANAGER", 0);
-
- bob.setDataObject("company", company);
-
- try {
- das.applyChanges(root);
- fail("Relationship modification should not be allowed.");
- } catch (RuntimeException ex) {
- assertEquals("Can not modify a one to one relationship that is key restricted", ex.getMessage());
- }
- assertEquals("ACME Publishing", company.getString("NAME"));
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OperationOrderingTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OperationOrderingTests.java
deleted file mode 100644
index ccfae70bd5..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/OperationOrderingTests.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CityData;
-import org.apache.tuscany.das.rdb.test.data.StateData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class OperationOrderingTests extends DasTest {
-
- public OperationOrderingTests() {
- super();
- }
-
- protected void setUp() throws Exception {
- super.setUp();
-
- CityData city = new CityData(getAutoConnection());
- StateData state = new StateData(getAutoConnection());
-
- city.doDeletes();
- state.doDeletes();
- state.doInserts();
- city.doInserts();
-
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- public void testInsert() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("cityStates.xml"), getConnection());
- Command select = das.createCommand("Select * from STATES inner join CITIES on STATES.ID = CITIES.STATE_ID");
- DataObject root = select.executeQuery();
-
- int numberOfStates = root.getList("STATES").size();
- int numberOfCities = root.getList("CITIES").size();
-
- DataObject atlanta = root.createDataObject("CITIES");
- atlanta.setString("NAME", "Atlanta");
- atlanta.setInt("ID", 6);
-
- // Create a new Company
- DataObject georgia = root.createDataObject("STATES");
- georgia.setInt("ID", 4);
- georgia.setString("NAME", "GA");
-
- georgia.getList("cities").add(atlanta);
-
- das.applyChanges(root);
-
- root = select.executeQuery();
- assertEquals(numberOfCities + 1, root.getList("CITIES").size());
- assertEquals(numberOfStates + 1, root.getList("STATES").size());
- }
-
- public void testDeletes() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("cityStates.xml"), getConnection());
- Command select = das.createCommand("Select * from STATES inner join CITIES on STATES.ID = CITIES.STATE_ID");
- DataObject root = select.executeQuery();
-
- DataObject firstState = root.getDataObject("STATES[1]");
- String stateName = firstState.getString("NAME");
-
- List cityNames = new ArrayList();
- Iterator i = firstState.getList("cities").iterator();
- while (i.hasNext()) {
- DataObject firstCity = (DataObject) i.next();
- cityNames.add(firstCity.getString("NAME"));
- firstCity.delete();
- }
- firstState.delete();
-
- das.applyChanges(root);
-
- root = select.executeQuery();
-
- Iterator iter = root.getList("STATES").iterator();
- while (iter.hasNext()) {
- DataObject state = (DataObject) iter.next();
- assertFalse(state.getString("NAME").equals(stateName));
- }
-
- iter = root.getList("CITIES").iterator();
- while (iter.hasNext()) {
- DataObject city = (DataObject) iter.next();
- assertFalse(cityNames.contains(city.getString("NAME")));
- }
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/Paging.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/Paging.java
deleted file mode 100644
index f84d84c0bc..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/Paging.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.sql.SQLException;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.Pager;
-import org.apache.tuscany.das.rdb.impl.PagerImpl;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class Paging extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- }
-
- public void testPaging() throws SQLException {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Build command to read all customers
- Command custCommand = das.createCommand("select * from CUSTOMER order by ID");
-
- // Create a pager with the command
- Pager pager = new PagerImpl(custCommand, 2);
-
- // Get and work with first page
- DataObject root = pager.next();
- DataObject customer1 = root.getDataObject("CUSTOMER[1]");
- DataObject customer2 = root.getDataObject("CUSTOMER[2]");
- assertEquals(1, customer1.getInt("ID"));
- assertEquals(2, customer2.getInt("ID"));
-
- // Get and work with the second page
- root = pager.next();
- customer1 = root.getDataObject("CUSTOMER[1]");
- customer2 = root.getDataObject("CUSTOMER[2]");
- assertEquals(3, customer1.getInt("ID"));
- assertEquals(4, customer2.getInt("ID"));
-
- // First page again
- root = pager.previous();
- customer1 = root.getDataObject("CUSTOMER[1]");
- customer2 = root.getDataObject("CUSTOMER[2]");
- assertEquals(1, customer1.getInt("ID"));
- assertEquals(2, customer2.getInt("ID"));
-
- }
-
- public void testRandomPage() throws SQLException {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Build the select command
- Command select = das.createCommand("select * from CUSTOMER order by ID");
-
- // Create a pager
- Pager pager = new PagerImpl(select, 2);
-
- // Get the first page
- DataObject root = pager.getPage(1);
- DataObject customer1 = root.getDataObject("CUSTOMER[1]");
- DataObject customer2 = root.getDataObject("CUSTOMER[2]");
- assertEquals(1, customer1.getInt("ID"));
- assertEquals(2, customer2.getInt("ID"));
-
- // Get the second page
- root = pager.getPage(2);
- customer1 = root.getDataObject("CUSTOMER[1]");
- customer2 = root.getDataObject("CUSTOMER[2]");
- assertEquals(3, customer1.getInt("ID"));
- assertEquals(4, customer2.getInt("ID"));
-
- // Get the first page again
- root = pager.getPage(1);
- customer1 = root.getDataObject("CUSTOMER[1]");
- customer2 = root.getDataObject("CUSTOMER[2]");
- assertEquals(1, customer1.getInt("ID"));
- assertEquals(2, customer2.getInt("ID"));
- }
-
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PartialUpdateTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PartialUpdateTests.java
deleted file mode 100644
index e43d773ada..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PartialUpdateTests.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.sql.SQLException;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class PartialUpdateTests extends DasTest {
-
- public PartialUpdateTests() {
- super();
- }
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- public void testPartialUpdate() throws SQLException {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command readCustomers = das.createCommand("select * from CUSTOMER where ID = 1");
-
- // Read
- DataObject root = readCustomers.executeQuery();
-
- DataObject customer = root.getDataObject("CUSTOMER[1]");
- // Verify
- assertEquals(1, customer.getInt("ID"));
-
- Command update = das.createCommand("update CUSTOMER set LASTNAME = 'modified' where ID = 1");
- update.execute();
-
- customer.setString("ADDRESS", "main street");
-
- das.applyChanges(root);
-
- root = readCustomers.executeQuery();
-
- // If partial update was not used, LASTNAME would not be 'modified'
- customer = root.getDataObject("CUSTOMER[1]");
- assertEquals(1, customer.getInt("ID"));
- assertEquals("modified", customer.getString("LASTNAME"));
- assertEquals("main street", customer.getString("ADDRESS"));
- }
-
- public void testPartialInsert() throws SQLException {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command readCustomers = das.createCommand("select * from CUSTOMER where ID = 1");
-
- // Read
- DataObject root = readCustomers.executeQuery();
-
- // Create a new customer
- DataObject newCust = root.createDataObject("CUSTOMER");
- newCust.set("ID", Integer.valueOf(100));
- newCust.set("ADDRESS", "5528 Wells Fargo Drive");
- // Purposely do not set lastname to let it default to 'Garfugengheist'
- // newCust.set("LASTNAME", "Gerkin" );
-
- das.applyChanges(root);
-
- Command readNewCust = das.createCommand("select * from CUSTOMER where ID = 100");
- root = readNewCust.executeQuery();
-
- // If partial insert was not used, LASTNAME would not be
- // 'Garfugengheist'
- newCust = root.getDataObject("CUSTOMER[1]");
- assertEquals(100, newCust.getInt("ID"));
- assertEquals("Garfugengheist", newCust.getString("LASTNAME"));
- assertEquals("5528 Wells Fargo Drive", newCust.getString("ADDRESS"));
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PassiveConnectionTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PassiveConnectionTests.java
deleted file mode 100644
index 270f46ddd8..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/PassiveConnectionTests.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- * Test capability to participate in an extenrlly managed transaction.
- * The client is managing the transaction boundary so the DAS will not issue
- * commit/rollback
- *
- */
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class PassiveConnectionTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Read and modify a customer. Uses a "passive" connection
- */
- public void testReadModifyApply() throws Exception {
-
- // Create and initialize a DAS connection and initialize for externally
- // managed transaction boundaries
- java.sql.Connection c = getConnection();
-
- DAS das = DAS.FACTORY.createDAS(getConfig("passiveConnection.xml"), c);
- // Read customer 1
- Command select = das.getCommand("get a customer");
- DataObject root = select.executeQuery();
-
- DataObject customer = (DataObject) root.get("CUSTOMER[1]");
-
- String lastName = customer.getString("LASTNAME");
-
- // Modify customer
- customer.set("LASTNAME", "Pavick");
-
- try {
- das.applyChanges(root);
-
- throw new Exception("Test Exception");
-
- // Since the DAS is not managing tx boundaries, I must
- } catch (Exception e) {
- // assert here to make sure we didn't run into some hidden error
- assertEquals("Test Exception", e.getMessage());
- // Roll back the transaction
- c.rollback();
- }
-
- // Verify that the changes did not go through
- root = select.executeQuery();
- assertEquals(lastName, root.getString("CUSTOMER[1]/LASTNAME"));
-
- // Try again
- customer = (DataObject) root.get("CUSTOMER[1]");
- customer.set("LASTNAME", "Pavick");
- das.applyChanges(root);
- c.commit();
-
- root = select.executeQuery();
- assertEquals("Pavick", root.getString("CUSTOMER[1]/LASTNAME"));
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ProgrammaticConfigTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ProgrammaticConfigTests.java
deleted file mode 100644
index 7f44399187..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ProgrammaticConfigTests.java
+++ /dev/null
@@ -1,299 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.ConfigHelper;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConnectionInfo;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.test.data.BookData;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-/**
- * Tests the Converter framwork
- */
-public class ProgrammaticConfigTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new BookData(getAutoConnection()).refresh();
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Simple read followed by a write. This should fail since there is no
- * config associaed with the applychanges command
- */
- public void test1() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read a book instance
- Command select = das.createCommand("SELECT * FROM BOOK WHERE BOOK_ID = 1");
- DataObject root = select.executeQuery();
-
- DataObject book = root.getDataObject("BOOK[1]");
- // Change a field to mark the instance 'dirty'
- book.setInt("QUANTITY", 2);
-
- try {
- das.applyChanges(root);
- fail("An exception should be thrown since here is no config to identify the primary key");
- } catch (RuntimeException ex) {
- // Expected
- }
- }
-
- /**
- * Simple read followed by a write. Config instance is generated
- * programmatically using the ConfigHelper.
- */
- public void test2() throws Exception {
- // Create config programmatically
- ConfigHelper helper = new ConfigHelper();
- helper.addPrimaryKey("BOOK.BOOK_ID");
- DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
-
- // Read a book instance
- Command select = das.createCommand("SELECT * FROM BOOK WHERE BOOK_ID = 1");
- DataObject root = select.executeQuery();
- DataObject book = root.getDataObject("BOOK[1]");
- // Change a field to mark the instance 'dirty'
- book.setInt("QUANTITY", 2);
-
- // Flush the change
-
- das.applyChanges(root);
-
- // Verify
- root = select.executeQuery();
- book = root.getDataObject("BOOK[1]");
- assertEquals(2, book.getInt("QUANTITY"));
- }
-
- /**
- * Test ability to read a compound graph
- */
- public void test3() throws Exception {
-
- String statement = "SELECT * FROM CUSTOMER LEFT JOIN ANORDER ON CUSTOMER.ID = ANORDER.CUSTOMER_ID "
- + "WHERE CUSTOMER.ID = 1";
-
- // Read some customers and related orders
- // Create relationship config programmatically
- ConfigHelper helper = new ConfigHelper();
- helper.addRelationship("CUSTOMER.ID", "ANORDER.CUSTOMER_ID");
- DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
- Command select = das.createCommand(statement);
-
- DataObject root = select.executeQuery();
- DataObject customer = root.getDataObject("CUSTOMER[1]");
-
- assertEquals(2, customer.getList("ANORDER").size());
-
- }
-
- /**
- * Programatically create table config with "property" name
- */
- public void test4() throws Exception {
-
- String statement = "SELECT * FROM BOOK WHERE BOOK.BOOK_ID = ?";
-
- // Create Table config programmatically
- ConfigHelper helper = new ConfigHelper();
- helper.addTable("BOOK", "Book");
- helper.addPrimaryKey("Book.BOOK_ID");
-
- DAS das = DAS.FACTORY.createDAS(helper.getConfig(), getConnection());
- Command select = das.createCommand(statement);
- select.setParameter(1, Integer.valueOf(1));
-
- DataObject root = select.executeQuery();
-
- DataObject newBook = root.createDataObject("Book");
- newBook.setString("NAME", "Ant Colonies of the Old World");
- newBook.setInt("BOOK_ID", 1001);
- root.getList("Book").add(newBook);
-
- das.applyChanges(root);
-
- //Verify
- select.setParameter(1, Integer.valueOf(1001));
- root = select.executeQuery();
- assertEquals("Ant Colonies of the Old World", root.getString("Book[1]/NAME"));
-
- }
-
- /**
- * Simple unit test for ConnectionInfo
- * @throws Exception
- */
- public void testConnectionInfo() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- helper.addConnectionInfo("jdbc/adatasource");
-
- Config config = helper.getConfig();
- ConnectionInfo info = config.getConnectionInfo();
- assertEquals(info.getDataSource(), "jdbc/adatasource");
- assertEquals(info.isManagedtx(), true);
- }
-
- /**
- * Simple unit test for ConnectionInfo
- * @throws Exception
- */
- public void testConnectionInfo2() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- helper.addConnectionInfo("jdbc/adatasource", false);
-
- Config config = helper.getConfig();
- ConnectionInfo info = config.getConnectionInfo();
- assertEquals(info.getDataSource(), "jdbc/adatasource");
- assertEquals(info.isManagedtx(), false);
- }
-
- /**
- * Simple unit test for adding a select command
- * @throws Exception
- */
- public void testAddSelectCommand() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- helper.addSelectCommand("get all customers", "select * from customers");
-
- Config config = helper.getConfig();
- List commands = config.getCommand();
- assertEquals(1, commands.size());
- org.apache.tuscany.das.rdb.config.Command cmd = (org.apache.tuscany.das.rdb.config.Command) commands.get(0);
- assertEquals("select", cmd.getKind());
- assertEquals("get all customers", cmd.getName());
- assertEquals("select * from customers", cmd.getSQL());
- }
-
- /**
- * Simple unit test for adding an update command
- * @throws Exception
- */
- public void testAddUpdateCommand() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- helper.addUpdateCommand("update a customer", "update customers set name = ? where id = ?");
-
- Config config = helper.getConfig();
- List commands = config.getCommand();
- assertEquals(1, commands.size());
- org.apache.tuscany.das.rdb.config.Command cmd = (org.apache.tuscany.das.rdb.config.Command) commands.get(0);
- assertEquals("update", cmd.getKind());
- assertEquals("update a customer", cmd.getName());
- assertEquals("update customers set name = ? where id = ?", cmd.getSQL());
- }
-
- /**
- * Simple unit test for adding an insert command
- * @throws Exception
- */
- public void testAddInsertCommand() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- helper.addInsertCommand("insert customer", "insert into customers(ID,NAME) values (?,?)");
-
- Config config = helper.getConfig();
- List commands = config.getCommand();
- assertEquals(1, commands.size());
- org.apache.tuscany.das.rdb.config.Command cmd = (org.apache.tuscany.das.rdb.config.Command) commands.get(0);
- assertEquals("insert", cmd.getKind());
- assertEquals("insert customer", cmd.getName());
- assertEquals("insert into customers(ID,NAME) values (?,?)", cmd.getSQL());
- }
-
- /**
- * Simple unit test for adding a delete command
- * @throws Exception
- */
- public void testAddDeleteCommand() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- helper.addDeleteCommand("delete customer", "delete from customers where id = ?");
-
- Config config = helper.getConfig();
- List commands = config.getCommand();
- assertEquals(1, commands.size());
- org.apache.tuscany.das.rdb.config.Command cmd = (org.apache.tuscany.das.rdb.config.Command) commands.get(0);
- assertEquals("delete", cmd.getKind());
- assertEquals("delete customer", cmd.getName());
- assertEquals("delete from customers where id = ?", cmd.getSQL());
- }
-
- /**
- * Simple unit test for DataObjectModel
- * @throws Exception
- */
- public void testDataObjectModel() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- helper.setDataObjectModel("org.apache.tuscany/mytypes");
-
- Config config = helper.getConfig();
- assertEquals("org.apache.tuscany/mytypes", config.getDataObjectModel());
-
- }
-
- /**
- * Simple unit test for adding a Delete statement to a Table
- * @throws Exception
- */
- public void testAddDeleteStatement() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- Table table = helper.addTable("widgets", "WIDGETS");
- helper.addDeleteStatement(table, "delete from widgets where id = ?", "ID");
-
- Config cfg = helper.getConfig();
- assertEquals(1, cfg.getTable().size());
- Table widgets = (Table) cfg.getTable().get(0);
- assertEquals("delete from widgets where id = ?", widgets.getDelete().getSql());
- assertEquals("WIDGETS", widgets.getTypeName());
- assertEquals("ID", widgets.getDelete().getParameters());
-
- }
-
- /**
- * Simple unit test for adding a Create statement to a Table
- * @throws Exception
- */
- public void testAddCreateStatement() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- Table table = helper.addTable("widgets", "WIDGETS");
- helper.addCreateStatement(table, "insert into widgets values (?,?)", "ID NAME");
-
- Config cfg = helper.getConfig();
- assertEquals(1, cfg.getTable().size());
- Table widgets = (Table) cfg.getTable().get(0);
- assertEquals("insert into widgets values (?,?)", widgets.getCreate().getSql());
- assertEquals("WIDGETS", widgets.getTypeName());
- assertEquals("ID NAME", widgets.getCreate().getParameters());
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ReadDBSchemaTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ReadDBSchemaTests.java
deleted file mode 100644
index 6fb52ad17d..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ReadDBSchemaTests.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- * Test the ability to query Database schema(metadata) information using regular DAS APIs This is speciic to DB2
- *
- */
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class ReadDBSchemaTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- public void testReadTableInfo() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command select = das.createCommand("SELECT * from SYSIBM.SYSTABLES WHERE TYPE = 'T'");
- DataObject root = select.executeQuery();
-
- DataObject table = (DataObject) root.get("SYSTABLES[1]");
-
- assertEquals('T', table.getChar("TYPE"));
-
- }
-
- //Utilities
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/RecursiveTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/RecursiveTests.java
deleted file mode 100644
index 4af085a6a5..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/RecursiveTests.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.util.Iterator;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.PartData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class RecursiveTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new PartData(getAutoConnection()).refresh();
- }
-
- public void testReadEngineParts() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("PartsConfig.xml"), getConnection());
- // Table definition
- // CREATE TABLE PART (ID INT PRIMARY KEY NOT NULL, NAME VARCHAR(50), QUANTITY INT, PARENT_ID INT );
-
- Command select = das.getCommand("readEngineParts");
-
- // Need to set the key explicitly. The aggregate of columns not working
- // because of null values
- DataObject root = select.executeQuery();
-
- assertEquals(5, root.getList("PART").size());
- // printList(root.getList("PART"));
- DataObject engine = root.getDataObject("PART.0");
- assertEquals("Engine", engine.getString("NAME"));
-
- assertEquals(3, engine.getList("subparts").size());
-
- DataObject piston = null;
- Iterator i = engine.getList("subparts").iterator();
- while (i.hasNext()) {
- DataObject obj = (DataObject) i.next();
- if (obj.getString("NAME").equals("Piston")) {
- piston = obj;
- }
- }
-
- assertEquals("Piston", piston.getString("NAME"));
- assertEquals(1, piston.getList("subparts").size());
- assertEquals("Piston Ring", piston.getDataObject("subparts.0").getString("NAME"));
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/RelationshipTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/RelationshipTests.java
deleted file mode 100644
index 426b5fbbf0..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/RelationshipTests.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- *
- *
- */
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class RelationshipTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
-
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Test ability to read a compound graph
- */
- public void testRead() throws Exception {
-
- String statement = "SELECT * FROM CUSTOMER LEFT JOIN ANORDER "
- + "ON CUSTOMER.ID = ANORDER.CUSTOMER_ID WHERE CUSTOMER.ID = 1";
-
- DAS das = DAS.FACTORY.createDAS(getConfig("customerOrderRelationshipMapping.xml"), getConnection());
- // Read some customers and related orders
- Command select = das.createCommand(statement);
-
- DataObject root = select.executeQuery();
- DataObject customer = root.getDataObject("CUSTOMER[1]");
-
- assertEquals(2, customer.getList("orders").size());
-
- }
-
- /**
- * Same as above except uses xml file for relationhip and key information.
- * Employs CUD generation.
- */
- public void testRelationshipModification2() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("basicCustomerOrderMapping.xml"), getConnection());
- // Read some customers and related orders
- Command select = das
- .createCommand("SELECT * FROM CUSTOMER LEFT JOIN ANORDER ON CUSTOMER.ID = ANORDER.CUSTOMER_ID");
-
- DataObject root = select.executeQuery();
-
- DataObject cust1 = root.getDataObject("CUSTOMER[1]");
- DataObject cust2 = root.getDataObject("CUSTOMER[2]");
-
- // Save IDs
- Integer cust1ID = (Integer) cust1.get("ID");
- Integer cust2ID = (Integer) cust2.get("ID");
- // save order count
- Integer cust1OrderCount = Integer.valueOf(cust1.getList("orders").size());
- Integer cust2OrderCount = Integer.valueOf(cust2.getList("orders").size());
-
- // Move an order to cust1 from cust2
- DataObject order = (DataObject) cust2.getList("orders").get(0);
- cust1.getList("orders").add(order);
-
- // Flush changes
- das.applyChanges(root);
-
- // verify cust1 relationship updates
- select = das
- .createCommand("SELECT * FROM CUSTOMER LEFT JOIN ANORDER ON "
- + "CUSTOMER.ID = ANORDER.CUSTOMER_ID where CUSTOMER.ID = ?");
- select.setParameter(1, cust1ID);
-
- root = select.executeQuery();
- assertEquals(cust1OrderCount.intValue() + 1, root.getList("CUSTOMER[1]/orders").size());
-
- // verify cust2 relationship updates
- select.setParameter(1, cust2ID);
- root = select.executeQuery();
- assertEquals(cust2OrderCount.intValue() - 1, root.getList("CUSTOMER[1]/orders").size());
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ResultSetShapeTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ResultSetShapeTests.java
deleted file mode 100644
index b259fc4e2d..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/ResultSetShapeTests.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-/**
- * Test ability to specify format(shape) of the ResultSet. This is necessary
- * when the JDBC driver in use does not provide adequate support for
- * ResultSetMetadata. Also, we expect that specifying the result set shape will
- * increase performance.
- *
- */
-public class ResultSetShapeTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Read a specific customer
- */
- public void testReadSingle() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomerConfigWithIDConverter.xml"), getConnection());
- // Create and initialize command to read customers
- Command readCustomers = das.getCommand("literal");
-
- // Read
- DataObject root = readCustomers.executeQuery();
-
- // Verify
- assertEquals(5, root.getList("CUSTOMER").size());
- assertEquals(99, root.getInt("CUSTOMER[1]/ID"));
- assertEquals("Roosevelt", root.getString("CUSTOMER[1]/LASTNAME"));
- assertEquals("1600 Pennsylvania Avenue", root.getString("CUSTOMER[1]/ADDRESS"));
-
- }
-
- /**
- * Read a specific customer This duplicates the previous tests but does not
- * provide the shape info. Since the select will not return valid metadata,
- * this test is expected to fail
- */
- public void testReadSingleVerifyShapeUse() throws Exception {
-
- // Using literals in the select forces invalid resultset metadata
- String sqlString = "Select 99, 'Roosevelt', '1600 Pennsylvania Avenue' from customer";
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Create and initialize command to read customers
- Command readCustomers = das.createCommand(sqlString);
-
- // Read
- DataObject root = readCustomers.executeQuery();
-
- // Verify
- try {
- assertEquals(5, root.getList("CUSTOMER").size());
- fail("Should fail since there will be no feature named CUSTOMER");
- } catch (IllegalArgumentException e) {
- // OK
- }
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/SerializationTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/SerializationTests.java
deleted file mode 100644
index ca6174956e..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/SerializationTests.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- * This class provides tests for all supported "types". The current plan
- * is to use the Data type definitions provided in the SDO 2 specification. We
- * must test the ability to use all of these types as well as different mapping
- * from thse types to types used in the database. For example, a SDO Data
- * Type "STRING", might be staored as a "TIMESTAMP" in DB2.
- *
- */
-
-import org.apache.tuscany.das.rdb.test.data.TypesData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-public class SerializationTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new TypesData(getAutoConnection()).refresh();
- }
-
- /**
- * Read various types.
- */
-
- public void testReadandSerialize() throws Exception {
- /**
- * Currently failing because of TUSCANY-22
- * Command select = Command.FACTORY .createCommand("Select * from TYPETEST where ID = 1");
- * select.setConnection(getConnection()); DataObject root = select.executeQuery();
- *
- * DataObject obj = root.getDataObject("TYPETEST[1]");
- *
- * assertTrue(obj.isSet("ID")); assertTrue(obj.isSet("ATIMESTAMP"));
- * assertTrue(obj.isSet("ADECIMAL")); assertTrue(obj.isSet("AFLOAT"));
- *
- * //Java serilaization to file FileOutputStream fos = null; ObjectOutputStream out = null; try { fos = new
- * FileOutputStream("serializedGraph.xml"); out = new ObjectOutputStream(fos);
- * out.writeObject(root);
- * out.flush();
- * } finally {
- * out.close();
- * fos.close(); }
- *
- * //Reconstruct the graph FileInputStream fis = null; ObjectInputStream in = null;
- * DataObject root2; try { fis = new
- * FileInputStream("serializedGraph.xml"); in = new ObjectInputStream(fis);
- * root2 = (DataObject) in.readObject(); } finally { in.close();
- * fis.close(); }
- *
- * assertEquals(1, root.getInt("TYPETEST[1]/ID")); assertEquals(TypesData.getTimestamp(),
- * (java.sql.Timestamp)root.get("TYPETEST[1]/ATIMESTAMP"));
- * assertEquals(1234567.89f, root2.getFloat("TYPETEST[1]/ADECIMAL"), .001);
- * assertEquals(1234567.89f, root2.getFloat("TYPETEST[1]/AFLOAT"), .001);
- *
- */
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/SimplestCrud.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/SimplestCrud.java
deleted file mode 100644
index 32c60a2760..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/SimplestCrud.java
+++ /dev/null
@@ -1,228 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- * These are the simplest possible uses of the JDBC DAS. In this mode, the programming model is not much more than JDBC
- *
- * The assumptions for these tests are:
- *
- * Single type Client explicitly Read/Create/Update/Delete commands
- * No O/R mapping metadata SDO change history is not used Dynamic DataObjects No
- * specified graph model
- *
- *
- */
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class SimplestCrud extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Read a specific customer
- */
- public void testReadSingle() throws Exception {
-
- // Create and initialize command to read customers
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command readCustomers = das.createCommand("select * from CUSTOMER where ID = 1");
-
- // Read
- DataObject root = readCustomers.executeQuery();
-
- // Verify
- assertEquals(1, root.getInt("CUSTOMER[1]/ID"));
- }
-
- /**
- * Read a specific customer
- */
- public void testReadSingle2() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Create and initialize command to read customers
- Command readCustomers = das.createCommand("select * from CUSTOMER where ID = 1");
-
- // Read
- DataObject root = readCustomers.executeQuery();
-
- // Verify
- assertEquals(1, root.getInt("CUSTOMER[1]/ID"));
- }
-
- /**
- * Read a specific customer Same as above but tests tolerance of white space in provided SQL
- */
- public void testReadSingleWithWhiteSpace() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Create and initialize command to read customers
- Command readCustomers = das.createCommand(" select * from CUSTOMER where ID = 1");
-
- // Read
- DataObject root = readCustomers.executeQuery();
-
- // Verify
- assertEquals(1, root.getInt("CUSTOMER[1]/ID"));
- }
-
- /**
- * Read all customers with a specific last name
- */
- public void testReadMultiple() throws Exception {
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Create and initialize command to read customers
- Command readCustomers = das.createCommand("select * from CUSTOMER where LASTNAME = 'Williams'");
-
- // Read
- DataObject root = readCustomers.executeQuery();
-
- // Verify
- assertEquals(4, root.getList("CUSTOMER").size());
- }
-
- /**
- * Read all customers with a specific last name LASTNAME value is provided via a parameter
- */
- public void testReadMultipleWithParameters() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Create and initialize command to read customers
- Command readCustomers = das.createCommand("select * from CUSTOMER where LASTNAME = ?");
-
- // Parameterize the command
- readCustomers.setParameter(1, "Williams");
- DataObject root = readCustomers.executeQuery();
-
- // Verify
- assertEquals(4, root.getList("CUSTOMER").size());
- }
-
- public void testInsert() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand("insert into CUSTOMER values (10, 'Williams', '5528 Wells Fargo Dr')");
- insert.execute();
-
- // Verify
- Command select = das.createCommand("Select * from CUSTOMER where ID = 10");
- DataObject root = select.executeQuery();
- assertEquals(1, root.getList("CUSTOMER").size());
- assertEquals("5528 Wells Fargo Dr", root.get("CUSTOMER[1]/ADDRESS"));
-
- }
-
- public void testInsertWithParameters() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insert = das.createCommand("insert into CUSTOMER values (?, ?, ?)");
- insert.setParameter(1, Integer.valueOf(10));
- insert.setParameter(2, "Williams");
- insert.setParameter(3, "5528 Wells Fargo Dr");
- insert.execute();
-
- // Verify
- Command select = das.createCommand("Select * from CUSTOMER where ID = 10");
- DataObject root = select.executeQuery();
- assertEquals(1, root.getList("CUSTOMER").size());
- assertEquals("5528 Wells Fargo Dr", root.get("CUSTOMER[1]/ADDRESS"));
-
- }
-
- public void testDelete() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Verify pre-condition
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
- assertEquals(1, root.getList("CUSTOMER").size());
-
- // Create and execute the delete command
- Command delete = das.createCommand("delete from CUSTOMER where ID = 1");
- delete.execute();
-
- // Verify delete by reusing the original select command
- root = select.executeQuery();
- assertEquals(0, root.getList("CUSTOMER").size());
-
- }
-
- public void testUpdate() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Verify pre-condition
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
- assertFalse(root.get("CUSTOMER[1]/LASTNAME").equals("Pavick"));
-
- Command update = das.createCommand("update CUSTOMER set LASTNAME = 'Pavick' where ID = 1");
- update.execute();
-
- // Verify update - reuse select command
- root = select.executeQuery();
- assertEquals("Pavick", root.get("CUSTOMER[1]/LASTNAME"));
-
- }
-
- public void testUpdateWithParameters() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Verify pre-condition
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
- assertFalse(root.get("CUSTOMER[1]/LASTNAME").equals("Pavick"));
-
- Command update = das.createCommand("update CUSTOMER set LASTNAME = ? where ID = ?");
- update.setParameter(1, "Pavick");
- update.setParameter(2, Integer.valueOf(1));
- update.execute();
-
- // Verify update - reuse select command
- root = select.executeQuery();
- assertEquals("Pavick", root.get("CUSTOMER[1]/LASTNAME"));
-
- }
-
- public void testUpdateWithParmarkers() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Verify pre-condition
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
- assertFalse(root.get("CUSTOMER[1]/LASTNAME").equals("Pavick"));
-
- Command update = das.createCommand("update CUSTOMER set LASTNAME = ? where ID = ?");
- update.setParameter(1, "Pavick");
- update.setParameter(2, Integer.valueOf(1));
- update.execute();
-
- //Verify update - reuse select command
- root = select.executeQuery();
- assertEquals("Pavick", root.get("CUSTOMER[1]/LASTNAME"));
-
- }
-
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/StoredProcs.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/StoredProcs.java
deleted file mode 100644
index b085906bd0..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/StoredProcs.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.CompanyData;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class StoredProcs extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CompanyData(getAutoConnection()).refresh();
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
-
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- public void testMultipleResultSets() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command read = das.createCommand("{call GETALLCUSTOMERSANDORDERS()}");
-
- DataObject root = read.executeQuery();
-
- // Verify
- assertEquals(5, root.getList("CUSTOMER").size());
- assertEquals(4, root.getList("ANORDER").size());
- }
-
- // Call a simple stored proc to read all companies
- public void testGetCompanies() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command read = das.createCommand("{call GETALLCOMPANIES()}");
-
- DataObject root = read.executeQuery();
-
- // Verify
- assertEquals(3, root.getList("COMPANY").size());
- assertTrue(root.getInt("COMPANY[1]/ID") > 0);
-
- }
-
- public void testGetNamedCompany() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command read = das.createCommand("{call GETNAMEDCOMPANY(?)}");
-
- read.setParameter(1, "MegaCorp");
- DataObject root = read.executeQuery();
-
- assertEquals("MegaCorp", root.getString("COMPANY[1]/NAME"));
-
- }
-
- public void testGetNamedCompanyByName() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command read = das.createCommand("{call GETNAMEDCOMPANY(?)}");
-
- read.setParameter(1, "MegaCorp");
- DataObject root = read.executeQuery();
-
- assertEquals("MegaCorp", root.getString("COMPANY[1]/NAME"));
- }
-
- // Retreive heirarchy using a stored proc ... new programming model
- public void testGetCustomersAndOrder() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("CustomersOrdersConfig.xml"), getConnection());
- Command read = das.createCommand("{call getCustomerAndOrders(?)}");
- read.setParameter(1, Integer.valueOf(1));
-
- DataObject root = read.executeQuery();
-
- DataObject customer = (DataObject) root.getList("CUSTOMER").get(0);
- assertEquals(2, customer.getList("orders").size());
-
- }
-
- /**
- * Call a stored proc requiring an in parameter and producing
- * an out parameter and a resultset
- *
- * This stored proc takes a lastname argument and returns a
- * graph of customers with that last name. The number of read
- * customers is returned in
- * the out parameter
- */
- public void testGetNamedCustomers() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("storedProcTest.xml"), getConnection());
- Command read = das.getCommand("getNamedCustomers");
- read.setParameter(1, "Williams");
- DataObject root = read.executeQuery();
-
- Integer customersRead = (Integer) read.getParameter(2);
-
- assertEquals(4, customersRead.intValue());
- assertEquals(customersRead.intValue(), root.getList("CUSTOMER").size());
-
- }
-
- // TODO - Resolve issue with programmatic creation of GETNAMEDCUSTOMERS on DB2 and
- // re-enable this test
-
- // Simplest possible SP write
- public void testDelete() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command delete = das.createCommand("{call DELETECUSTOMER(?)}");
- delete.setParameter(1, Integer.valueOf(1));
- delete.execute();
-
- // Verify DELETE
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
- assertTrue(root.getList("CUSTOMER").isEmpty());
-
- }
-
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TopDown.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TopDown.java
deleted file mode 100644
index d9f880e92d..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TopDown.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-import java.sql.SQLException;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.customer.AnOrder;
-import org.apache.tuscany.das.rdb.test.customer.Customer;
-import org.apache.tuscany.das.rdb.test.customer.CustomerFactory;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.data.OrderData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
-import commonj.sdo.DataObject;
-
-public class TopDown extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
-
- new CustomerData(getAutoConnection()).refresh();
- new OrderData(getAutoConnection()).refresh();
-
- }
-
- // Uses dynamic SDOs but user provides the model
- public void testUserProvidedModelDynamic() throws SQLException {
-
- DAS das = DAS.FACTORY.createDAS(getConfig("staticCustomerOrder.xml"), getConnection());
-
- Command select = das.getCommand("Customer and Orders");
-
- SDOUtil.registerStaticTypes(CustomerFactory.class);
-
- // Parameterize the command
- select.setParameter(1, Integer.valueOf(1));
-
- // Get the graph - DataGraphRoot is from the typed package
- DataObject root = select.executeQuery();
-
- // Modify a customer
- Customer customer = (Customer) root.getDataObject("Customer[1]");
- customer.setLastName("Pavick");
-
- // Modify an order
- AnOrder order = (AnOrder) customer.getOrders().get(0);
- order.setProduct("Kitchen Sink 001");
-
- // Flush changes
- das.applyChanges((DataObject) root);
-
- }
-
-} \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TypeTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TypeTests.java
deleted file mode 100644
index e6972357f6..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TypeTests.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test;
-
-/*
- * This class provides tests for all supported "types". The current plan is to use the Data
- * type definitions provided in the SDO 2 specification. We must test the ability to use
- * all of these types as well as different mapping from thse types to types used in the
- * database. For example, a SDO Data Type "STRING", might be staored as a "TIMESTAMP" in DB2.
- *
- */
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.data.TypesData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class TypeTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new TypesData(getAutoConnection()).refresh();
- }
-
- /**
- * Read various types.
- */
- public void testRead() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read customer 1
- Command select = das.createCommand("Select * from TYPETEST where ID = 1");
- DataObject root = select.executeQuery();
-
- DataObject types = (DataObject) root.get("TYPETEST[1]");
-
- java.sql.Timestamp ts = (java.sql.Timestamp) types.get("ATIMESTAMP");
- assertEquals(ts, TypesData.getTimestamp());
-
- float decimal = types.getFloat("ADECIMAL");
- assertEquals(1234567.89f, decimal, .0001);
-
- }
-
- /**
- * Write various types.
- * TODO - Need to rethink the Timestamp write. My current thinking id that writes of non-SDO2 defined types
- * require a converter
- */
- /* public void testWrite() throws Exception {
-
- //Read customer 1
- Command select = Command.FACTORY.createCommand("Select * from TYPETEST where ID = 1");
- select.setConnection(getConnection());
- DataObject root = select.executeQuery();
-
- DataObject types = (DataObject)root.get("TYPETEST[1]");
- Date now = new Date();
- types.set("ATIMESTAMP", now);
-
- ApplyChangesCommand apply = Command.FACTORY.createApplyChangesCommand();
- apply.setConnection(getConnection());
- apply.addPrimaryKey("TYPETEST.ID");
- apply.execute(root);
-
- //Verify
- root = select.executeQuery();
- java.sql.Timestamp ts = (java.sql.Timestamp)types.get("ATIMESTAMP");
- assertEquals(now, ts);
-
- }*/
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersByLastnameCommand.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersByLastnameCommand.java
deleted file mode 100644
index f98e014ca9..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersByLastnameCommand.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.commands;
-
-import org.apache.tuscany.das.rdb.config.Column;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.impl.ReadCommandImpl;
-
-public class ReadCustomersByLastnameCommand extends ReadCommandImpl {
-
- private static final String SQL_STRING = "select * from CUSTOMER where LASTNAME = ?";
-
- private static final Config CONFIG;
-
- static {
- ConfigFactory factory = ConfigFactory.INSTANCE;
- CONFIG = factory.createConfig();
- Table t = factory.createTable();
- Column id = factory.createColumn();
- id.setColumnName("ID");
- id.setPrimaryKey(true);
- Column lastname = factory.createColumn();
- lastname.setColumnName("LASTNAME");
- Column address = factory.createColumn();
- address.setColumnName("ADDRESS");
-
- t.getColumn().add(id);
- t.getColumn().add(lastname);
- t.getColumn().add(address);
- t.setTableName("CUSTOMER");
- CONFIG.getTable().add(t);
- }
-
- public ReadCustomersByLastnameCommand() {
- super(SQL_STRING, new MappingWrapper(CONFIG), null);
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersCommand.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersCommand.java
deleted file mode 100644
index 7a4b8f49dd..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersCommand.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.commands;
-
-import org.apache.tuscany.das.rdb.config.Column;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.impl.ReadCommandImpl;
-
-public class ReadCustomersCommand extends ReadCommandImpl {
-
- private static final String SQL_STRING = "select * from CUSTOMER";
-
- private static final Config CONFIG;
-
- static {
- ConfigFactory factory = ConfigFactory.INSTANCE;
- CONFIG = factory.createConfig();
- Table t = factory.createTable();
- Column id = factory.createColumn();
- id.setColumnName("ID");
- id.setPrimaryKey(true);
- Column lastname = factory.createColumn();
- lastname.setColumnName("LASTNAME");
- Column address = factory.createColumn();
- address.setColumnName("ADDRESS");
-
- t.getColumn().add(id);
- t.getColumn().add(lastname);
- t.getColumn().add(address);
- t.setTableName("CUSTOMER");
- CONFIG.getTable().add(t);
- }
-
- public ReadCustomersCommand() {
- super(SQL_STRING, new MappingWrapper(CONFIG), null);
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersStaticTypesCommand.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersStaticTypesCommand.java
deleted file mode 100644
index 407a43c21f..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersStaticTypesCommand.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.commands;
-
-import org.apache.tuscany.das.rdb.config.Column;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.impl.ReadCommandImpl;
-
-public class ReadCustomersStaticTypesCommand extends ReadCommandImpl {
-
- private static final String SQL_STRING = "Select ID, LASTNAME, ADDRESS from CUSTOMER where LASTNAME = ?";
-
- private static final Config CONFIG;
-
- static {
- ConfigFactory factory = ConfigFactory.INSTANCE;
- CONFIG = factory.createConfig();
- Table t = factory.createTable();
- Column id = factory.createColumn();
- id.setColumnName("ID");
- id.setPrimaryKey(true);
- Column lastname = factory.createColumn();
- lastname.setColumnName("LASTNAME");
- Column address = factory.createColumn();
- address.setColumnName("ADDRESS");
-
- t.getColumn().add(id);
- t.getColumn().add(lastname);
- t.getColumn().add(address);
- t.setTableName("CUSTOMER");
- t.setTypeName("Customer");
- CONFIG.getTable().add(t);
-
- CONFIG.setDataObjectModel("http:///org.apache.tuscany.das.rdb.test/customer.xsd");
- }
-
- public ReadCustomersStaticTypesCommand() {
- super(SQL_STRING, new MappingWrapper(CONFIG), null);
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersWithShapeCommand.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersWithShapeCommand.java
deleted file mode 100644
index ba771ca3e5..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/ReadCustomersWithShapeCommand.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.commands;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.config.ResultDescriptor;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.impl.ReadCommandImpl;
-
-public class ReadCustomersWithShapeCommand extends ReadCommandImpl {
- // This sql string ensures that we won't have resultset metadata
- static String sqlString = "select * from customer union select * from customer";
-
- static List descriptor = new ArrayList();
-
- static {
- ConfigFactory factory = ConfigFactory.INSTANCE;
-
- ResultDescriptor desc1 = factory.createResultDescriptor();
- desc1.setColumnName("ID");
- desc1.setColumnType("commonj.sdo.Int");
- desc1.setTableName("CUSTOMER");
-
- ResultDescriptor desc2 = factory.createResultDescriptor();
- desc2.setColumnName("LASTNAME");
- desc2.setColumnType("commonj.sdo.String");
- desc2.setTableName("CUSTOMER");
-
- ResultDescriptor desc3 = factory.createResultDescriptor();
- desc3.setColumnName("ADDRESS");
- desc3.setColumnType("commonj.sdo.String");
- desc3.setTableName("CUSTOMER");
-
- descriptor.add(desc1);
- descriptor.add(desc2);
- descriptor.add(desc3);
-
- }
-
- public ReadCustomersWithShapeCommand() {
- super(sqlString, new MappingWrapper(), descriptor);
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/SimpleReadCustomersWithShapeCommand.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/SimpleReadCustomersWithShapeCommand.java
deleted file mode 100644
index 44eea42445..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/commands/SimpleReadCustomersWithShapeCommand.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.commands;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.config.Column;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.config.ResultDescriptor;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.wrapper.MappingWrapper;
-import org.apache.tuscany.das.rdb.impl.ReadCommandImpl;
-
-public class SimpleReadCustomersWithShapeCommand extends ReadCommandImpl {
-
- // This sql string ensures that we won't have resultset metadata
- private static final String SQL_STRING = "Select * from customer union select * from customer";
-
- private static final List DESCRIPTOR = new ArrayList();
-
- private static final Config CONFIG;
-
- static {
- ConfigFactory factory = ConfigFactory.INSTANCE;
- CONFIG = factory.createConfig();
- Table t = factory.createTable();
- Column id = factory.createColumn();
- id.setColumnName("ID");
- id.setPrimaryKey(true);
- Column lastname = factory.createColumn();
- lastname.setColumnName("LASTNAME");
- Column address = factory.createColumn();
- address.setColumnName("ADDRESS");
-
- t.getColumn().add(id);
- t.getColumn().add(lastname);
- t.getColumn().add(address);
- t.setTableName("CUSTOMER");
- CONFIG.getTable().add(t);
-
- ResultDescriptor desc1 = factory.createResultDescriptor();
- desc1.setColumnName("ID");
- desc1.setColumnType("commonj.sdo.Int");
- desc1.setTableName("CUSTOMER");
-
- ResultDescriptor desc2 = factory.createResultDescriptor();
- desc2.setColumnName("LASTNAME");
- desc2.setColumnType("commonj.sdo.String");
- desc2.setTableName("CUSTOMER");
-
- ResultDescriptor desc3 = factory.createResultDescriptor();
- desc3.setColumnName("ADDRESS");
- desc3.setColumnType("commonj.sdo.String");
- desc3.setTableName("CUSTOMER");
-
- DESCRIPTOR.add(desc1);
- DESCRIPTOR.add(desc2);
- DESCRIPTOR.add(desc3);
- }
-
- public SimpleReadCustomersWithShapeCommand() {
- super(SQL_STRING, new MappingWrapper(CONFIG), DESCRIPTOR);
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/BookData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/BookData.java
deleted file mode 100644
index 632a4d057d..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/BookData.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.Types;
-
-import org.apache.tuscany.das.rdb.test.framework.TestDataWithExplicitColumns;
-
-public class BookData extends TestDataWithExplicitColumns {
-
- // CREATE TABLE BOOK (ID INT PRIMARY KEY NOT NULL, NAME VARCHAR(50), AUTHOR VARCHAR(30), QUANTITY INT, OCC INTEGER)
-
- private static int[] bookTypes = {Types.INTEGER, Types.VARCHAR, Types.VARCHAR, Types.INTEGER, Types.INTEGER};
-
- private static Object[][] bookData = {{Integer.valueOf(1), "The Brothers Karamazov", "Fyodor Dostoevsky",
- Integer.valueOf(5), Integer.valueOf(17)},
- {Integer.valueOf(2), "Cat in the Hat", "Doctor Seuss", Integer.valueOf(10), Integer.valueOf(1)}};
-
- private static String[] bookColumns = {"BOOK_ID", "NAME", "AUTHOR", "QUANTITY", "OCC"};
-
- public BookData(Connection connection) {
- super(connection, bookData, bookColumns, bookTypes);
- }
-
- public String getTableName() {
- return "BOOK";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CityData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CityData.java
deleted file mode 100644
index 7ce5cf757d..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CityData.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.SQLException;
-
-import org.apache.tuscany.das.rdb.test.framework.TestData;
-
-public class CityData extends TestData {
-
- private static Object[][] cityData = {{Integer.valueOf(1), "Lizard Lick", "1"},
- {Integer.valueOf(2), "Morrisville", "1"},
- {Integer.valueOf(3), "Breckenridge", "2"},
- {Integer.valueOf(4), "Barstow", "3"},
- {Integer.valueOf(5), "Sacramento", "3"}
-
- };
-
- public CityData(Connection c) {
- super(c, cityData);
- }
-
- public String getTableName() {
- return "CITIES";
- }
-
- public void doDeletes() throws SQLException {
- deleteRowsFromTable();
-
- }
-
- public void doInserts() throws SQLException {
- insertRows();
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyData.java
deleted file mode 100644
index 0c28ed2caa..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyData.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.Types;
-
-import org.apache.tuscany.das.rdb.test.framework.TestDataWithExplicitColumns;
-
-public class CompanyData extends TestDataWithExplicitColumns {
-
- // CREATE TABLE COMPANY (ID INT PRIMARY KEY NOT NULL GENERATED ALWAYS AS IDENTITY ,NAME VARCHAR(30))
-
- private static int[] columnTypes = {Types.VARCHAR};
-
- private static Object[][] companyData = {{"ACME Publishing"}, {"Do-rite plumbing"}, {"MegaCorp"}};
-
- private static String[] companyColumns = {"NAME"};
-
- public CompanyData(Connection connection) {
- super(connection, companyData, companyColumns, columnTypes);
- }
-
- public String getTableName() {
- return "COMPANY";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyDeptData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyDeptData.java
deleted file mode 100644
index 686e3243cb..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyDeptData.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.test.framework.RelationshipData;
-
-public class CompanyDeptData extends RelationshipData {
-
- private static Object[][] data = {{"MegaCorp", "Advanced Technologies"}};
-
- public CompanyDeptData(Connection c) {
- super(c, data);
- }
-
- protected String getParentRetrievalStatement() {
- return "select id from company where name = ?";
- }
-
- protected String getChildUpdateStatement() {
- return "update department set companyid = ? where department.name = ?";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyEmpData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyEmpData.java
deleted file mode 100644
index b1d3fb12b5..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CompanyEmpData.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.test.framework.RelationshipData;
-
-
-public class CompanyEmpData extends RelationshipData {
-
- protected static Object[][] data = {
- {"Mary Smith", "ACME Publishing" },
- {"Jane Doe", "Do-rite plumbing"},
- {"Al Smith", "MegaCorp"}};
-
- public CompanyEmpData(Connection c) {
- super(c, data);
- }
-
- protected String getParentRetrievalStatement() {
- return "select employee.id from employee where employee.name = ?";
- }
-
- protected String getChildUpdateStatement() {
- return "update company set company.eotmid = ? where company.name = ?";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CustomerData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CustomerData.java
deleted file mode 100644
index 9ec6c8003d..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/CustomerData.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.test.framework.TestData;
-
-public class CustomerData extends TestData {
-
- private static Object[][] customerData = {{Integer.valueOf(1), "Williams", "1212 foobar lane"},
- {Integer.valueOf(2), "Daniel", "156 Brentfield Loop"}, {Integer.valueOf(3), "Williams", "456 penny lane"},
- {Integer.valueOf(4), "Williams", "5000 pineville"}, {Integer.valueOf(5), "Williams", "100000 firefly lane"}};
-
- public CustomerData(Connection connection) {
- super(connection, customerData);
- }
-
- public String getTableName() {
- return "CUSTOMER";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DepEmpData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DepEmpData.java
deleted file mode 100644
index ad8ff14e86..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DepEmpData.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.test.framework.RelationshipData;
-
-public class DepEmpData extends RelationshipData {
-
- private static Object[][] data = {{"Advanced Technologies", "John Jones"},
- {"Advanced Technologies", "Jane Doe"},
- {"Advanced Technologies", "Al Smith"}};
-
- public DepEmpData(Connection c) {
- super(c, data);
- }
-
- protected String getParentRetrievalStatement() {
- return "select department.id from department where department.name = ?";
- }
-
- protected String getChildUpdateStatement() {
- return "update employee set employee.departmentid = ? where employee.name = ?";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DepartmentData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DepartmentData.java
deleted file mode 100644
index 906a30cc06..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DepartmentData.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.Types;
-
-import org.apache.tuscany.das.rdb.test.framework.TestDataWithExplicitColumns;
-
-
-public class DepartmentData extends TestDataWithExplicitColumns {
-
- private static int[] columnTypes = {Types.VARCHAR, Types.VARCHAR, Types.VARCHAR};
-
- private static Object[][] deptData = {{"Advanced Technologies", "NY", "123" }};
-
- private static String[] deptColumns = {"NAME", "LOCATION", "DEPNUMBER"};
-
- public DepartmentData(Connection connection) {
- super(connection, deptData, deptColumns, columnTypes);
- }
-
- public String getTableName() {
- return "DEPARTMENT";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DogData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DogData.java
deleted file mode 100644
index 3c686e6fea..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/DogData.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.Types;
-
-import org.apache.tuscany.das.rdb.test.framework.TestDataWithExplicitColumns;
-
-public class DogData extends TestDataWithExplicitColumns {
-
- /* CREATE TABLE DOG (
- ID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
- OWNER_ID INTEGER UNSIGNED NOT NULL,
- NAME VARCHAR(20) NOT NULL,
- BREED VARCHAR(20) NULL,
- OCC_COUNT INTEGER UNSIGNED NULL,
- PRIMARY KEY(ID),
- );*/
-
- //id and owner_id omitted. id is auto-generated. owner_id is filled in by DogOwner data
- private static int[] columnTypes = {Types.VARCHAR, Types.VARCHAR, Types.INTEGER};
-
- private static Object[][] data = {{"Fido", "Mutt", Integer.valueOf(1)},
- {"Max", "German Shepherd", Integer.valueOf(1)},
- {"Saddie", "Collie", Integer.valueOf(1)}};
-
- private static String[] columns = {"NAME", "BREED", "OCC_COUNT"};
-
- public DogData(Connection connection) {
- super(connection, data, columns, columnTypes);
- }
-
- public String getTableName() {
- return "DOG";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/EmployeeData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/EmployeeData.java
deleted file mode 100644
index 8c53dea790..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/EmployeeData.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.Types;
-
-import org.apache.tuscany.das.rdb.test.framework.TestDataWithExplicitColumns;
-
-public class EmployeeData extends TestDataWithExplicitColumns {
-
- private static int[] columnTypes = {Types.VARCHAR, Types.VARCHAR, Types.SMALLINT};
-
- private static Object[][] employeeData = {{"John Jones", "E0001", Boolean.valueOf(false)},
- {"Mary Smith", "E0002", Boolean.valueOf(true)},
- {"Jane Doe", "E0003", Boolean.valueOf(false)}, {"Al Smith", "E0004", Boolean.valueOf(true)}};
-
- private static String[] employeeColumns = {"NAME", "SN", "MANAGER"};
-
- public EmployeeData(Connection connection) {
- super(connection, employeeData, employeeColumns, columnTypes);
- }
-
- public String getTableName() {
- return "EMPLOYEE";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/KennelData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/KennelData.java
deleted file mode 100644
index 01423ee40e..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/KennelData.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.Types;
-
-import org.apache.tuscany.das.rdb.test.framework.TestDataWithExplicitColumns;
-
-public class KennelData extends TestDataWithExplicitColumns {
-
- /* CREATE TABLE KENNEL (
- ID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
- KNUMBER INTEGER UNSIGNED NULL,
- KIND VARCHAR(20) NULL,
- OCC_COUNT INTEGER UNSIGNED NULL,
- PRIMARY KEY(ID)
- );*/
-
- //id omitted. id is auto-generated.
- private static int[] columnTypes = {Types.INTEGER, Types.VARCHAR, Types.INTEGER};
-
- private static Object[][] data = {{Integer.valueOf(100), "Small", Integer.valueOf(1)},
- {Integer.valueOf(101), "Small", Integer.valueOf(1)},
- {Integer.valueOf(102), "Large", Integer.valueOf(1)}};
-
- private static String[] columns = {"KNUMBER", "KIND", "OCC_COUNT"};
-
- public KennelData(Connection connection) {
- super(connection, data, columns, columnTypes);
- }
-
- public String getTableName() {
- return "KENNEL";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OrderData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OrderData.java
deleted file mode 100644
index 2568dd1a9f..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OrderData.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.test.framework.TestData;
-
-public class OrderData extends TestData {
-
- protected static Object[][] orderData = {
- {Integer.valueOf(1), "recombobulator", Integer.valueOf(47), Integer.valueOf(1)},
- {Integer.valueOf(2), "wrench", Integer.valueOf(17), Integer.valueOf(3)},
- {Integer.valueOf(3), "pliers", Integer.valueOf(500), Integer.valueOf(1)},
- {Integer.valueOf(4), "Tooth Paste", Integer.valueOf(12), Integer.valueOf(2)}};
-
- public OrderData(Connection c) {
- super(c, orderData);
- }
-
- public String getTableName() {
- return "ANORDER";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OrderDetailsData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OrderDetailsData.java
deleted file mode 100644
index 9f5897b373..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OrderDetailsData.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.test.framework.TestData;
-
-public class OrderDetailsData extends TestData {
-
- // CREATE TABLE ORDERDETAILS (ORDERID INT NOT NULL, PRODUCTID INT NOT NULL, PRICE FLOAT,
- // PRIMARY KEY (ORDERID, PRODUCTID))
-
- protected static Object[][] orderDetailsData = {{Integer.valueOf(1), Integer.valueOf(1), new Float(1.1)},
- {Integer.valueOf(1), Integer.valueOf(2), new Float(1.2)},
- {Integer.valueOf(2), Integer.valueOf(1), new Float(2.1)},
- {Integer.valueOf(2), Integer.valueOf(2), new Float(2.2)}};
-
- public OrderDetailsData(Connection c) {
- super(c, orderDetailsData);
- }
-
- public String getTableName() {
- return "ORDERDETAILS";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OwnerData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OwnerData.java
deleted file mode 100644
index b5198bce36..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OwnerData.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.Types;
-
-import org.apache.tuscany.das.rdb.test.framework.TestDataWithExplicitColumns;
-
-public class OwnerData extends TestDataWithExplicitColumns {
-
- /* CREATE TABLE OWNER (
- ID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
- NAME VARCHAR(20) NULL,
- CONTACT_PHONE VARCHAR(20) NULL,
- OCC_COUNT INTEGER UNSIGNED NULL,
- PRIMARY KEY(ID)
- );*/
-
- //id omitted. id is auto-generated.
- private static int[] columnTypes = {Types.VARCHAR, Types.VARCHAR, Types.INTEGER};
-
- private static Object[][] data = {{"Fanny", "222-2222", Integer.valueOf(1)},
- {"Manny", "333-3333", Integer.valueOf(1)},
- {"Sammy", "444-4444", Integer.valueOf(1)}};
-
- private static String[] columns = {"NAME", "CONTACT_PHONE", "OCC_COUNT"};
-
- public OwnerData(Connection connection) {
- super(connection, data, columns, columnTypes);
- }
-
- public String getTableName() {
- return "OWNER";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OwnerDogData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OwnerDogData.java
deleted file mode 100644
index a06a2124f3..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/OwnerDogData.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.test.framework.RelationshipData;
-
-public class OwnerDogData extends RelationshipData {
-
- private static final Object[][] DATA = {{"Fanny", "Fido"}, {"Manny", "Max"}, {"Sammy", "Saddie"}};
-
- public OwnerDogData(Connection c) {
- super(c, DATA);
- }
-
- protected String getParentRetrievalStatement() {
- return "select ID from OWNER where NAME = ?";
- }
-
- protected String getChildUpdateStatement() {
- return "update DOG set OWNER_ID = ? where NAME = ?";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/PartData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/PartData.java
deleted file mode 100644
index ff59b03aef..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/PartData.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.Types;
-
-import org.apache.tuscany.das.rdb.test.framework.TestDataWithExplicitColumns;
-
-public class PartData extends TestDataWithExplicitColumns {
-
- // CREATE TABLE PART (ID INT PRIMARY KEY NOT NULL, NAME VARCHAR(50), QUANTITY INT, PARENT_ID INT )
-
- private static String[] partColumns = {"ID", "NAME", "QUANTITY", "PARENT_ID"};
-
- private static int[] columnTypes = {Types.INTEGER, Types.VARCHAR, Types.INTEGER, Types.INTEGER};
-
- private static Object[][] partData = {{Integer.valueOf(1), "Engine", Integer.valueOf(1), null},
- {Integer.valueOf(2), "Block", Integer.valueOf(1), Integer.valueOf(1)},
- {Integer.valueOf(3), "Cam Shaft", Integer.valueOf(2), Integer.valueOf(1)},
- {Integer.valueOf(4), "Piston", Integer.valueOf(8), Integer.valueOf(1)},
- {Integer.valueOf(5), "Piston Ring", Integer.valueOf(2), Integer.valueOf(4)}};
-
- public PartData(Connection connection) {
- super(connection, partData, partColumns, columnTypes);
- }
-
- public String getTableName() {
- return "PART";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/StateData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/StateData.java
deleted file mode 100644
index 713aecb9a3..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/StateData.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.SQLException;
-
-import org.apache.tuscany.das.rdb.test.framework.TestData;
-
-public class StateData extends TestData {
- private static Object[][] stateData = {{Integer.valueOf(1), "NC"}, {Integer.valueOf(2), "CO"},
- {Integer.valueOf(3), "CA"}};
-
- public StateData(Connection c) {
- super(c, stateData);
- }
-
- public String getTableName() {
- return "STATES";
- }
-
-
- public void doDeletes() throws SQLException {
- deleteRowsFromTable();
- }
-
- public void doInserts() throws SQLException {
- insertRows();
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/TypesData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/TypesData.java
deleted file mode 100644
index 0aac15fb7d..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/TypesData.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-
-import org.apache.tuscany.das.rdb.test.framework.TestData;
-
-public class TypesData extends TestData {
-
- private static Object[][] customerData = {{Integer.valueOf(1), TIMESTAMP,
- new Float(1234567.89), new Float(1234567.89)}};
-
- public TypesData(Connection connection) {
- super(connection, customerData);
- }
-
- public String getTableName() {
- return "TYPETEST";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/VisitData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/VisitData.java
deleted file mode 100644
index c9cebc7688..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/data/VisitData.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.data;
-
-import java.sql.Connection;
-import java.sql.Types;
-
-import org.apache.tuscany.das.rdb.test.framework.TestDataWithExplicitColumns;
-
-public class VisitData extends TestDataWithExplicitColumns {
-
- /*
- * CREATE TABLE VISIT ( ID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
- * CHECK_IN TIMESTAMP NULL, CHECK_OUT TIMESTAMP NULL, OCC_COUNT INTEGER UNSIGNED
- * NULL, PRIMARY KEY(ID) );
- */
-
- // id omitted. id is auto-generated.
- private static int[] columnTypes = {Types.TIMESTAMP, Types.TIMESTAMP, Types.INTEGER};
-
- private static Object[][] data = {
- {getTimestamp("2006-10-20 00:00:00.0"), getTimestamp("2006-10-22 00:00:00.0"), Integer.valueOf(1)},
- {getTimestamp("2006-10-20 00:00:00.0"), getTimestamp("2006-10-22 00:00:00.0"), Integer.valueOf(1)},
- {getTimestamp("2006-10-20 00:00:00.0"), getTimestamp("2006-10-22 00:00:00.0"), Integer.valueOf(1)}};
-
- private static String[] columns = {"CHECK_IN", "CHECK_OUT", "OCC_COUNT"};
-
- public VisitData(Connection connection) {
- super(connection, data, columns, columnTypes);
- }
-
- public String getTableName() {
- return "VISIT";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DB2Setup.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DB2Setup.java
deleted file mode 100644
index 370c1d42d7..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DB2Setup.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.framework;
-
-import junit.framework.Test;
-
-public class DB2Setup extends DatabaseSetup {
-
- public DB2Setup(Test test) {
- super(test);
- }
-
- protected void initConnectionProtocol() {
-
- platformName = "DB2";
- driverName = "com.ibm.db2.jcc.DB2Driver";
- databaseURL = "jdbc:db2:DASTEST";
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DasTest.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DasTest.java
deleted file mode 100644
index 78b1cf19e1..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DasTest.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.framework;
-
-import java.io.InputStream;
-import java.sql.Connection;
-import java.sql.ResultSet;
-import java.sql.ResultSetMetaData;
-import java.sql.SQLException;
-import java.util.Iterator;
-import java.util.List;
-
-import junit.framework.TestCase;
-
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-
-/**
- *
- */
-public class DasTest extends TestCase {
-
- protected static Connection connection;
-
- /**
- * Tears down the fixture, for example, close a network connection. This method is called after a test is executed.
- */
- protected void tearDown() throws Exception {
- // if (usingDefaultSetup)
- // connection = null;
- }
-
- protected Connection getAutoConnection() throws SQLException {
-
- Connection c = primGetConnection();
- c.setAutoCommit(true);
- return connection;
-
- }
-
- protected Connection getConnection() throws SQLException {
-
- Connection c = primGetConnection();
- c.setAutoCommit(false);
- return connection;
- }
-
- /**
- * This provides the default connection for runing single test cases on a chosen platform.
- */
- private Connection primGetConnection() {
- if (connection == null) {
- defaultSetup();
- }
- return connection;
- }
-
- /**
- * This is a bit of a hack since it counts on constructor initialization
- * of the DatabaseSet up class and also calls its setUp method directly.
- * This is a misuse of this JUnit TestSetup subclass .
- *
- * TODO - refactor to avoid this hackiness ... could move this logic to its
- * own class that is then invoked by DatabaseSetUp
- */
- private void defaultSetup() {
-
- // DatabaseSetup setUp = new DB2Setup(this);
- DatabaseSetup setUp = new DerbySetup(this);
- try {
- setUp.setUp();
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
-
- }
-
- // Utilities
- protected InputStream getConfig(String fileName) {
- return Thread.currentThread().getContextClassLoader().getResourceAsStream(fileName);
- }
-
- protected void write(String label, ResultSet rs) throws SQLException {
-
- ResultSetMetaData md = rs.getMetaData();
- int count = md.getColumnCount();
- System.out.println("Contents of ResultSet from " + label);
- for (int i = 1; i <= count; i++) {
- System.out.print("\t");
- System.out.println(md.getColumnLabel(i));
- }
- System.out.println("");
- while (rs.next()) {
- for (int i = 1; i <= count; i++) {
- System.out.print("\t");
- System.out.print(rs.getString(i));
- }
- System.out.println("\t");
- }
- System.out.println("done");
- }
-
- protected void printList(List data) {
- Iterator i = data.iterator();
- while (i.hasNext()) {
- System.out.println();
- DataObject obj = (DataObject) i.next();
- Iterator props = obj.getType().getProperties().iterator();
- while (props.hasNext()) {
- Property p = (Property) props.next();
- if (p.isMany()) {
- System.out.print("[ " + p.getName() + " ] ");
- Iterator children = obj.getList(p).iterator();
- while (children.hasNext()) {
- DataObject child = (DataObject) children.next();
- System.out.print("[ " + child.get("ID") + " ]");
- }
- System.out.println();
- } else if (!p.getType().isDataType()) {
- DataObject child = obj.getDataObject(p);
- if (child != null) {
- System.out.println("[ " + p.getName() + " ] " + "[ " + child.get("ID") + " ]");
- }
- } else {
- System.out.println("[ " + p.getName() + " ] " + obj.get(p));
- }
- }
- }
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DatabaseSetup.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DatabaseSetup.java
deleted file mode 100644
index 9cc012e830..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DatabaseSetup.java
+++ /dev/null
@@ -1,410 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.framework;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import junit.extensions.TestSetup;
-import junit.framework.Test;
-
-public class DatabaseSetup extends TestSetup {
-
- protected Statement s;
-
- protected String platformName = "Not initialized";
-
- protected String driverName = "Not initialized";
-
- protected String databaseURL = "Not initialized";
-
- protected String userName;
-
- protected String password;
-
- // Data Types
- protected String stringType = "VARCHAR";
-
- protected String integerType = "INT";
-
- protected String timestampType = "TIMESTAMP";
-
- protected String floatType = "FLOAT";
-
- protected String decimalType = "DECIMAL";
-
- private Connection connection;
-
- public DatabaseSetup(Test test) {
- super(test);
- initConnectionProtocol();
- initConnection();
- DasTest.connection = connection;
- }
-
- protected void initConnectionProtocol() {
- // Subclasses provide implementation
- }
-
- private void initConnection() {
-
- try {
-
- Class.forName(driverName).newInstance();
- if (userName != null) {
- connection = DriverManager.getConnection(databaseURL, userName, password);
- } else {
- connection = DriverManager.getConnection(databaseURL);
- }
- connection.setAutoCommit(false);
-
- } catch (SQLException e) {
-
- if (e.getNextException() != null) {
- e.getNextException().printStackTrace();
- } else {
- e.printStackTrace();
- }
-
- throw new RuntimeException(e);
- } catch (IllegalAccessException e) {
- throw new RuntimeException(e);
- } catch (InstantiationException e) {
- throw new RuntimeException(e);
- } catch (ClassNotFoundException e) {
- throw new RuntimeException(e);
- }
-
- }
-
- protected void setUp() throws Exception {
-
- System.out.println("Setting up for " + platformName + " run");
-
- s = connection.createStatement();
-
- try {
- dropTriggers();
- dropSequences();
- dropTables();
- dropProcedures();
-
- createSequences();
- createTables();
- createTriggers();
- createProcedures();
- connection.commit();
- } catch (SQLException e) {
- connection.rollback();
- }
-
- }
-
- protected void tearDown() throws Exception {
-
- System.out.println("Ending " + platformName + " run");
- connection.close();
-
- }
-
- private void dropTables() {
-
- // System.out.println("Dropping tables");
-
- String[] statements = {
- "DROP TABLE CUSTOMER", "DROP TABLE ANORDER", "DROP TABLE ORDERDETAILS",
- "DROP TABLE ITEM", "DROP TABLE COMPANY", "DROP TABLE EMPLOYEE",
- "DROP TABLE DEPARTMENT", "DROP TABLE BOOK", "DROP TABLE PART",
- "DROP TABLE TYPETEST", "DROP TABLE CITIES", "DROP TABLE STATES",
- "DROP TABLE conmgt.SERVERSTATUS", "DROP TABLE DOG", "DROP TABLE OWNER",
- "DROP TABLE KENNEL", "DROP TABLE VISIT"
- };
-
- for (int i = 0; i < statements.length; i++) {
- try {
- s.execute(statements[i]);
- } catch (SQLException e) {
- // If the table does not exist then ignore the exception on drop
- if ((!e.getMessage().contains("does not exist")) && (!e.getMessage().contains("Unknown table"))
- && (!e.getMessage().contains("42704"))) {
- throw new RuntimeException(e);
- }
- }
- }
- }
-
- protected void dropTriggers() {
-
- }
-
- protected void createTriggers() {
-
- }
-
- protected void dropSequences() {
-
- }
-
- protected void createSequences() {
-
- }
-
- protected void dropProcedures() {
-
- // System.out.println("Dropping procedures");
-
- String[] statements = {
-
- "DROP PROCEDURE GETALLCOMPANIES", "DROP PROCEDURE DELETECUSTOMER",
- "DROP PROCEDURE GETNAMEDCOMPANY", "DROP PROCEDURE GETCUSTOMERANDORDERS",
- "DROP PROCEDURE GETNAMEDCUSTOMERS", "DROP PROCEDURE GETALLCUSTOMERSANDORDERS"
-
- };
-
- for (int i = 0; i < statements.length; i++) {
- try {
- s.execute(statements[i]);
- } catch (SQLException e) {
- // If the proc does not exist then ignore the exception on drop
- if (!e.getMessage().contains("does not exist") && !e.getMessage().contains("42704")) {
- throw new RuntimeException(e);
- }
- }
- }
- }
-
- private void createTables() {
-
- // System.out.println("Creating tables");
-
- try {
-
- s.execute(getCreateCustomer());
- s.execute(getCreateAnOrder());
- s.execute(getCreateOrderDetails());
- s.execute(getCreateItem());
- s.execute(getCreateCompany());
- s.execute(getCreateEmployee());
- s.execute(getCreateDepartment());
- s.execute(getCreateBook());
- s.execute(getCreatePart());
- s.execute(getCreateTypeTest());
- s.execute(getCreateStates());
- s.execute(getCreateCities());
- s.execute(getCreateServerStatus());
-
- s.execute(getCreateDog());
- s.execute(getCreateOwner());
- s.execute(getCreateKennel());
- s.execute(getCreateVisit());
-
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
-
- protected void createProcedures() {
-
- // System.out.println("Creating procedures");
- try {
-
- s.execute("CREATE PROCEDURE GETALLCOMPANIES() PARAMETER STYLE JAVA LANGUAGE JAVA "
- + "READS SQL DATA DYNAMIC RESULT SETS 1 "
- + "EXTERNAL NAME "
- + "'org.apache.tuscany.das.rdb.test.framework.JavaStoredProcs.getAllCompanies'");
- s.execute("CREATE PROCEDURE DELETECUSTOMER(theId int) PARAMETER STYLE JAVA LANGUAGE JAVA "
- + "MODIFIES SQL DATA EXTERNAL NAME "
- + "'org.apache.tuscany.das.rdb.test.framework.JavaStoredProcs.deleteCustomer'");
- s.execute("CREATE PROCEDURE GETNAMEDCOMPANY(theName VARCHAR(100)) PARAMETER STYLE JAVA LANGUAGE JAVA "
- + "READS SQL DATA DYNAMIC RESULT SETS 1 EXTERNAL NAME "
- + "'org.apache.tuscany.das.rdb.test.framework.JavaStoredProcs.getNamedCompany'");
- s.execute("CREATE PROCEDURE GETCUSTOMERANDORDERS(theID INTEGER) PARAMETER STYLE JAVA LANGUAGE JAVA "
- + "READS SQL DATA DYNAMIC RESULT SETS 1 EXTERNAL NAME "
- + "'org.apache.tuscany.das.rdb.test.framework.JavaStoredProcs.getCustomerAndOrders'");
- s.execute("CREATE PROCEDURE GETNAMEDCUSTOMERS(theName VARCHAR(100), OUT theCount INTEGER) "
- + "PARAMETER STYLE JAVA LANGUAGE JAVA READS SQL DATA DYNAMIC RESULT SETS 1 EXTERNAL NAME "
- + "'org.apache.tuscany.das.rdb.test.framework.JavaStoredProcs.getNamedCustomers'");
- s.execute("CREATE PROCEDURE GETALLCUSTOMERSANDORDERS() PARAMETER STYLE JAVA LANGUAGE JAVA "
- + "READS SQL DATA DYNAMIC RESULT SETS 2 EXTERNAL NAME "
- + "'org.apache.tuscany.das.rdb.test.framework.JavaStoredProcs.getAllCustomersAndAllOrders'");
- // TODO - "GETNAMEDCUSTOMERS" is failing on DB2 with SQLCODE: 42723. Need to investigate
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
-
- //
- // This section povides methods that return strings for table creation.
- // Platform-specific sublcasses
- // can override these as necessary
- //
-
- protected String getCreateCustomer() {
- return "CREATE TABLE CUSTOMER (" + getIntegerColumn("ID") + " PRIMARY KEY NOT NULL, "
- + getStringColumn("LASTNAME", 30)
- + " DEFAULT 'Garfugengheist', " + getStringColumn("ADDRESS", 30) + ")";
- }
-
- protected String getCreateAnOrder() {
- return "CREATE TABLE ANORDER (" + getIntegerColumn("ID") + " PRIMARY KEY NOT NULL, "
- + getStringColumn("PRODUCT", 30) + ", "
- + getIntegerColumn("QUANTITY") + "," + getIntegerColumn("CUSTOMER_ID") + ")";
- }
-
- protected String getCreateOrderDetails() {
- return "CREATE TABLE ORDERDETAILS (" + getIntegerColumn("ORDERID") + " NOT NULL, "
- + getIntegerColumn("PRODUCTID")
- + " NOT NULL, PRICE FLOAT, PRIMARY KEY (ORDERID, PRODUCTID))";
- }
-
- protected String getCreateItem() {
- return "CREATE TABLE ITEM (" + getIntegerColumn("ID") + " PRIMARY KEY NOT NULL, "
- + getStringColumn("NAME", 30) + ")";
- }
-
- protected String getCreateCompany() {
- return "CREATE TABLE COMPANY (" + getIntegerColumn("ID") + " PRIMARY KEY NOT NULL "
- + getGeneratedKeyClause() + " , "
- + getStringColumn("NAME", 30) + ", " + getIntegerColumn("EOTMID") + ")";
- }
-
- protected String getCreateEmployee() {
- return "CREATE TABLE EMPLOYEE (" + getIntegerColumn("ID") + " PRIMARY KEY NOT NULL "
- + getGeneratedKeyClause() + ","
- + getStringColumn("NAME", 30) + "," + getStringColumn("SN", 10) + ", MANAGER SMALLINT, "
- + getIntegerColumn("DEPARTMENTID") + ")";
- }
-
- protected String getCreateDepartment() {
- return "CREATE TABLE DEPARTMENT (" + getIntegerColumn("ID") + " PRIMARY KEY NOT NULL "
- + getGeneratedKeyClause() + ", "
- + getStringColumn("NAME", 30) + "," + getStringColumn("LOCATION", 30) + ", "
- + getStringColumn("DEPNUMBER", 10) + ","
- + getIntegerColumn("COMPANYID") + ")";
- }
-
- protected String getCreateBook() {
- return "CREATE TABLE BOOK (" + getIntegerColumn("BOOK_ID") + " PRIMARY KEY NOT NULL, "
- + getStringColumn("NAME", 50) + ","
- + getStringColumn("AUTHOR", 30) + ", " + getIntegerColumn("QUANTITY") + ","
- + getIntegerColumn("OCC") + ")";
- }
-
- protected String getCreatePart() {
- return "CREATE TABLE PART (" + getIntegerColumn("ID") + " PRIMARY KEY NOT NULL, NAME VARCHAR(50), "
- + getIntegerColumn("QUANTITY") + ","
- + getIntegerColumn("PARENT_ID") + " )";
- }
-
- protected String getCreateTypeTest() {
- return "CREATE TABLE TYPETEST (" + getIntegerColumn("ID") + " PRIMARY KEY NOT NULL, "
- + getTimestampColumn("ATIMESTAMP") + ","
- + getDecimalColumn("ADECIMAL", 9, 2) + "," + getFloatColumn("AFLOAT") + ")";
- }
-
- protected String getCreateStates() {
- return "CREATE TABLE STATES (" + getIntegerColumn("ID") + " PRIMARY KEY NOT NULL, "
- + getStringColumn("NAME", 2) + ")";
- }
-
- protected String getCreateCities() {
- return "CREATE TABLE CITIES (" + getIntegerColumn("ID") + " PRIMARY KEY NOT NULL,"
- + getStringColumn("NAME", 50) + ","
- + getIntegerColumn("STATE_ID") + "," + getForeignKeyConstraint("STATES", "ID", "STATE_ID") + ")";
- }
-
- protected String getCreateServerStatus() {
-
- return "CREATE TABLE CONMGT.SERVERSTATUS (STATUSID INTEGER PRIMARY KEY NOT NULL " + getGeneratedKeyClause()
- + " (START WITH 1 ,INCREMENT BY 1), MANAGEDSERVERID INTEGER NOT NULL, TIMESTAMP TIMESTAMP NOT NULL)";
-
- }
-
- // Dog Kennel Schema
-
- protected String getCreateDog() {
- return "CREATE TABLE DOG (" + getIntegerColumn("ID") + " NOT NULL " + getGeneratedKeyClause() + " , "
- + getIntegerColumn("OWNER_ID") + " , "
- + getStringColumn("NAME", 20) + ", " + getStringColumn("BREED", 20) + ", "
- + getIntegerColumn("OCC_COUNT") + ", "
- + "PRIMARY KEY(ID))";
- }
-
- protected String getCreateOwner() {
- return "CREATE TABLE OWNER (" + getIntegerColumn("ID") + " NOT NULL " + getGeneratedKeyClause() + " , "
- + getStringColumn("NAME", 20) + ", "
- + getStringColumn("CONTACT_PHONE", 20) + ", " + getIntegerColumn("OCC_COUNT") + ", "
- + "PRIMARY KEY(ID))";
- }
-
- protected String getCreateKennel() {
- return "CREATE TABLE KENNEL (" + getIntegerColumn("ID") + " NOT NULL " + getGeneratedKeyClause()
- + " , " + getIntegerColumn("KNUMBER") + ", "
- + getStringColumn("KIND", 20) + ", " + getIntegerColumn("OCC_COUNT") + ", " + "PRIMARY KEY(ID))";
- }
-
- protected String getCreateVisit() {
- return "CREATE TABLE VISIT (" + getIntegerColumn("ID") + " NOT NULL " + getGeneratedKeyClause() + " , "
- + getTimestampColumn("CHECK_IN")
- + ", " + getTimestampColumn("CHECK_OUT") + ", " + getIntegerColumn("OCC_COUNT") + ", "
- + "PRIMARY KEY(ID))";
- }
-
- // /////////////////
-
- protected String getForeignKeyConstraint(String pkTable, String pkColumn, String foreignKey) {
- StringBuffer buffer = new StringBuffer();
- buffer.append("CONSTRAINT FK1 FOREIGN KEY (");
- buffer.append(foreignKey);
- buffer.append(") REFERENCES ");
- buffer.append(pkTable);
- buffer.append("(");
- buffer.append(pkColumn);
- buffer.append(") ON DELETE NO ACTION ON UPDATE NO ACTION");
- return buffer.toString();
- }
-
- protected String getStringColumn(String name, int length) {
- return name + ' ' + stringType + "(" + Integer.valueOf(length).toString() + ")";
- }
-
- protected String getIntegerColumn(String name) {
- return name + ' ' + integerType;
- }
-
- protected String getGeneratedKeyClause() {
- return "GENERATED ALWAYS AS IDENTITY";
- }
-
- protected String getDecimalColumn(String name, int size1, int size2) {
- return name + ' ' + decimalType + "(" + Integer.valueOf(size1).toString() + ','
- + Integer.valueOf(size2).toString() + ")";
- }
-
- protected String getFloatColumn(String name) {
- return name + ' ' + floatType;
- }
-
- protected String getTimestampColumn(String name) {
- return name + ' ' + timestampType;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DerbySetup.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DerbySetup.java
deleted file mode 100644
index 300f315465..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/DerbySetup.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.framework;
-
-import java.util.Properties;
-
-import junit.framework.Test;
-
-public class DerbySetup extends DatabaseSetup {
-
- public DerbySetup(Test test) {
- super(test);
- }
-
- protected void initConnectionProtocol() {
-
- // Set the derby property to explicitly specify the database location relative
- // from current directory to "target"
- Properties p = System.getProperties();
- p.put("derby.system.home", "target");
-
- platformName = "Derby";
- driverName = "org.apache.derby.jdbc.EmbeddedDriver";
- databaseURL = "jdbc:derby:dastest; create = true";
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/JavaStoredProcs.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/JavaStoredProcs.java
deleted file mode 100644
index 71a7d1c4e4..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/JavaStoredProcs.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.framework;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-
-/**
- * Stored Procedures for DB2 and Derby SP tests
- *
- */
-public final class JavaStoredProcs {
-
- private JavaStoredProcs() {
-
- }
-
- public static void getAllCustomersAndAllOrders(ResultSet[] result1, ResultSet[] result2) throws SQLException {
- Connection conn = DriverManager.getConnection("jdbc:default:connection");
- PreparedStatement ps = conn.prepareStatement("SELECT * FROM CUSTOMER");
-
- result1[0] = ps.executeQuery();
-
- PreparedStatement ps2 = conn.prepareStatement("select * from anorder");
- result2[0] = ps2.executeQuery();
-
- }
-
- public static void getAllCompanies(ResultSet[] results) throws SQLException {
-
- Connection conn = DriverManager.getConnection("jdbc:default:connection");
- PreparedStatement ps = conn.prepareStatement("SELECT * FROM COMPANY");
- results[0] = ps.executeQuery();
- }
-
- public static void deleteCustomer(int theId) throws SQLException {
-
- Connection conn = DriverManager.getConnection("jdbc:default:connection");
- PreparedStatement ps = conn.prepareStatement("DELETE FROM CUSTOMER WHERE ID = ?");
- ps.setInt(1, theId);
- ps.execute();
-
- }
-
- public static void getNamedCompany(String theName, ResultSet[] results) throws SQLException {
-
- Connection conn = DriverManager.getConnection("jdbc:default:connection");
- PreparedStatement ps = conn.prepareStatement("SELECT * FROM COMPANY WHERE NAME = ?");
- ps.setString(1, theName);
- results[0] = ps.executeQuery();
- }
-
- public static void getCustomerAndOrders(int theId, ResultSet[] results) throws SQLException {
-
- Connection conn = DriverManager.getConnection("jdbc:default:connection");
- PreparedStatement ps = conn
- .prepareStatement("SELECT * FROM CUSTOMER LEFT JOIN ANORDER ON CUSTOMER.ID = ANORDER.CUSTOMER_ID "
- + "WHERE CUSTOMER.ID = ?");
- ps.setInt(1, theId);
- results[0] = ps.executeQuery();
- }
-
- public static void getNamedCustomers(String theName, int[] outCount, ResultSet[] results) throws SQLException {
-
- Connection conn = DriverManager.getConnection("jdbc:default:connection");
- PreparedStatement ps = conn.prepareStatement("SELECT * FROM CUSTOMER WHERE LASTNAME = ?");
- ps.setString(1, theName);
- results[0] = ps.executeQuery();
-
- ps = conn.prepareStatement("SELECT COUNT(*) FROM CUSTOMER WHERE LASTNAME = ?");
- ps.setString(1, theName);
-
- ResultSet rs = ps.executeQuery();
- rs.next();
- outCount[0] = rs.getInt(1);
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/MySQLSetup.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/MySQLSetup.java
deleted file mode 100644
index 5b1a205523..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/MySQLSetup.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.framework;
-
-import java.sql.SQLException;
-
-import junit.framework.Test;
-
-public class MySQLSetup extends DatabaseSetup {
-
- public MySQLSetup(Test test) {
- super(test);
- }
-
- protected void initConnectionProtocol() {
-
- platformName = "MySQL";
- driverName = "com.mysql.jdbc.Driver";
- databaseURL = "jdbc:mysql:///dastest?user=dastester&password=dastester";
-
- }
-
- protected void createProcedures() {
-
- String createGetAllCompanies = "CREATE PROCEDURE `dastest`.`GETALLCOMPANIES` () "
- + " SELECT * FROM COMPANY ";
-
- String createDeleteCustomer = "CREATE PROCEDURE `dastest`.`DELETECUSTOMER` (theId INT) "
- + " DELETE FROM CUSTOMER WHERE ID = theId ";
-
- String createGetNamedCustomers = "CREATE PROCEDURE `dastest`.`GETNAMEDCUSTOMERS`(IN thename VARCHAR(30), "
- + "OUT theCount INTEGER ) " + " BEGIN "
- + " SELECT * FROM CUSTOMER AS CUSTOMER WHERE LASTNAME = theName; "
- + " SET theCount = (SELECT COUNT(*) FROM CUSTOMER WHERE LASTNAME = theName); " + " END ";
-
- String createGetCustomerAndOrders = " CREATE PROCEDURE `dastest`.`GETCUSTOMERANDORDERS` (theId INT) "
- + " SELECT * FROM CUSTOMER LEFT JOIN ANORDER ON CUSTOMER.ID = ANORDER.CUSTOMER_ID "
- + "WHERE CUSTOMER.ID = theId ";
-
- String createGetNamedCompany = " CREATE PROCEDURE `dastest`.`GETNAMEDCOMPANY` (theName VARCHAR(100)) "
- + " SELECT * FROM COMPANY WHERE NAME = theName";
-
- System.out.println("Creating procedures");
- try {
-
- s.execute(createGetAllCompanies);
- s.execute(createDeleteCustomer);
- s.execute(createGetNamedCompany);
- s.execute(createGetCustomerAndOrders);
- s.execute(createGetNamedCustomers);
-
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
-
- // Overrides for table creation
- protected String getCreateCompany() {
- return "CREATE TABLE COMPANY (ID INT PRIMARY KEY NOT NULL AUTO_INCREMENT, NAME VARCHAR(30), EOTMID INT)";
- }
-
- protected String getCreateEmployee() {
- return "CREATE TABLE EMPLOYEE (ID INT PRIMARY KEY NOT NULL AUTO_INCREMENT, NAME VARCHAR(30), "
- + "SN VARCHAR(10), MANAGER SMALLINT, DEPARTMENTID INT)";
- }
-
- protected String getCreateDepartment() {
- return "CREATE TABLE DEPARTMENT (ID INT PRIMARY KEY NOT NULL AUTO_INCREMENT, NAME VARCHAR(30), "
- + "LOCATION VARCHAR(30), NUMBER VARCHAR(10), COMPANYID INT, EOTM INT)";
- }
-
- protected String getCreateTypeTest() {
- return "CREATE TABLE TYPETEST (ID INT PRIMARY KEY NOT NULL, ATIMESTAMP DATETIME, ADECIMAL DECIMAL(9,2), "
- + "AFLOAT FLOAT)";
- }
-
- protected String getCreateServerStatus() {
- return "CREATE TABLE CONMGT.SERVERSTATUS (STATUSID INT PRIMARY KEY NOT NULL AUTO_INCREMENT, "
- + "MANAGEDSERVERID INTEGER NOT NULL, TIMESTAMP TIMESTAMP NOT NULL)";
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/RelationshipData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/RelationshipData.java
deleted file mode 100644
index 094fe13456..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/RelationshipData.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.framework;
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-
-public abstract class RelationshipData {
- protected Object[][] data;
-
- protected Connection connection;
-
- private int currentRow = -1;
-
- public RelationshipData(Connection c, Object[][] inputData) {
- this.connection = c;
- this.data = inputData;
- }
-
- public int size() {
- return data[0].length;
- }
-
- public int numberOfRows() {
- return data.length;
- }
-
- public boolean next() {
- ++currentRow;
- return currentRow < numberOfRows();
- }
-
- public void refresh() throws SQLException {
- updateRelationships();
- }
-
- protected abstract String getParentRetrievalStatement();
-
- protected abstract String getChildUpdateStatement();
-
- protected void updateRelationships() throws SQLException {
- // { MegaCorp, Advanced Technologies }
- // select company.id from company where company.name = ?
- PreparedStatement retrieveParent = connection.prepareStatement(getParentRetrievalStatement());
- // update department set department.companyid = ? where department.name = ?
- PreparedStatement updateChild = connection.prepareStatement(getChildUpdateStatement());
-
- while (next()) {
- retrieveParent.setObject(1, data[currentRow][0]);
- retrieveParent.execute();
- ResultSet rs = retrieveParent.getResultSet();
- rs.next();
- Object parentID = rs.getObject(1);
- retrieveParent.clearParameters();
-
- updateChild.setObject(1, parentID);
- updateChild.setObject(2, data[currentRow][1]);
- updateChild.execute();
- updateChild.clearParameters();
- }
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/TestData.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/TestData.java
deleted file mode 100644
index ca1eaf7f37..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/TestData.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.framework;
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.SQLException;
-import java.sql.Timestamp;
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-public abstract class TestData {
-
- protected static final DateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd hh:ss:mm.SSS");
-
- protected static final Timestamp TIMESTAMP = getTimestamp();
-
- protected Object[][] data;
-
- protected Connection connection;
-
- private int currentRow = -1;
-
-
- public TestData(Connection c, Object[][] customerData) {
- this.connection = c;
- this.data = customerData;
- }
-
- public int size() {
- return data[0].length;
- }
-
- public int numberOfRows() {
- return data.length;
- }
-
- public boolean next() {
- ++currentRow;
- return currentRow < numberOfRows();
- }
-
- public abstract String getTableName();
-
- public Object getObject(int i) {
- return data[currentRow][i - 1];
- }
-
- public void refresh() throws SQLException {
- deleteRowsFromTable();
- insertRows();
- }
-
- protected void deleteRowsFromTable() throws SQLException {
- PreparedStatement ps = connection.prepareStatement("delete from " + getTableName());
- ps.execute();
- ps.close();
- }
-
- protected void insertRows() throws SQLException {
- StringBuffer sql = new StringBuffer();
- sql.append("insert into ");
- sql.append(getTableName());
- sql.append(" values (");
- for (int i = 1; i < size(); i++) {
- sql.append("?,");
- }
- sql.append("?)");
- PreparedStatement ps = connection.prepareStatement(sql.toString());
-
- while (next()) {
- for (int i = 1; i <= size(); i++) {
- ps.setObject(i, getObject(i));
- }
- ps.execute();
- ps.clearParameters();
- }
- ps.close();
- }
-
- // Utilities
- protected static Date getDate() {
-
- try {
- return DATE_FORMAT.parse("1966-12-20 00:00:00.0");
- } catch (ParseException e) {
- throw new RuntimeException(e);
- }
- }
-
- protected static Date getDate(String timeStamp) {
-
- try {
- return DATE_FORMAT.parse("1966-12-20 00:00:00.0");
- } catch (ParseException e) {
- throw new RuntimeException(e);
- }
- }
-
- public static Timestamp getTimestamp() {
- return new Timestamp(getDate().getTime());
- }
-
- public static Timestamp getTimestamp(String timeStamp) {
- return new Timestamp(getDate(timeStamp).getTime());
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/TestDataWithExplicitColumns.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/TestDataWithExplicitColumns.java
deleted file mode 100644
index c2ddb27ffd..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/framework/TestDataWithExplicitColumns.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.framework;
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.SQLException;
-
-import org.apache.log4j.Logger;
-import org.apache.tuscany.das.rdb.util.LoggerFactory;
-
-public abstract class TestDataWithExplicitColumns extends TestData {
-
- private String[] columns;
-
- private int[] sqlTypes;
-
- private final Logger logger = LoggerFactory.INSTANCE.getLogger(TestDataWithExplicitColumns.class);
-
- public TestDataWithExplicitColumns(Connection c, Object[][] data, String[] columns, int[] sqlTypes) {
- super(c, data);
- this.columns = columns;
- this.sqlTypes = sqlTypes;
- }
-
- private String getColumn(int i) {
- return columns[i - 1];
- }
-
- private int getSqlType(int i) {
- return sqlTypes[i - 1];
- }
-
- // Create an insert statement of the following form ...
- // "INSERT INTO table_name (column1, column2,...) VALUES (value1, value2,....)"
- // This is necessary for tables with a generated column since the PK value is not provided
- protected void insertRows() throws SQLException {
- StringBuffer sql = new StringBuffer();
- sql.append("insert into ");
- sql.append(getTableName());
-
- sql.append(" (");
- for (int i = 1; i <= size(); i++) {
- sql.append(getColumn(i));
- if (i < size()) {
- sql.append(',');
- }
- }
- sql.append(" )");
-
- sql.append(" values (");
- for (int i = 1; i < size(); i++) {
- sql.append("?,");
- }
- sql.append("?)");
-
- if (this.logger.isDebugEnabled()) {
- this.logger.debug(sql.toString());
- }
-
- PreparedStatement ps = connection.prepareStatement(sql.toString());
-
- while (next()) {
- for (int i = 1; i <= size(); i++) {
- ps.setObject(i, getObject(i), getSqlType(i));
- }
- ps.execute();
- ps.clearParameters();
- }
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/IntegerToBooleanConverter.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/IntegerToBooleanConverter.java
deleted file mode 100644
index 835a2f5e77..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/IntegerToBooleanConverter.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.mappings;
-
-import org.apache.tuscany.das.rdb.Converter;
-
-public class IntegerToBooleanConverter implements Converter {
-
- public IntegerToBooleanConverter() {
- super();
- }
-
- public Object getPropertyValue(Object columnData) {
- Integer value = (Integer) columnData;
- return value.intValue() == 0 ? Boolean.FALSE : Boolean.TRUE;
- }
-
- public Object getColumnValue(Object propertyData) {
- Boolean value = (Boolean) propertyData;
- if (value.booleanValue()) {
- return Integer.valueOf(1);
- }
- return Integer.valueOf(0);
- }
-
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/SillyDateStringConverter.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/SillyDateStringConverter.java
deleted file mode 100644
index df9d2978eb..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/SillyDateStringConverter.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.mappings;
-
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-import org.apache.tuscany.das.rdb.Converter;
-
-public class SillyDateStringConverter implements Converter {
-
- private static DateFormat myformat = new SimpleDateFormat("yyyy.MM.dd");
-
- private static Date kbday;
-
- private static Date tbday;
-
- public SillyDateStringConverter() {
- super();
- }
-
- static {
- try {
- kbday = myformat.parse("1957.09.27");
- tbday = myformat.parse("1966.12.20");
- } catch (ParseException e) {
- throw new RuntimeException(e);
- }
- }
-
- public Object getPropertyValue(Object columnData) {
-
- if (columnData.equals("Williams")) {
- return kbday;
- }
-
- if (columnData.equals("Pavick")) {
- return tbday;
- }
-
- throw new IllegalArgumentException();
-
- }
-
- public Object getColumnValue(Object propertyData) {
-
- if (propertyData.equals(kbday)) {
- return "Williams";
- }
-
- if (propertyData.equals(tbday)) {
- return "Pavick";
- }
-
- throw new IllegalArgumentException();
-
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToIntegerConverter.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToIntegerConverter.java
deleted file mode 100644
index 2be6522fcc..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToIntegerConverter.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.mappings;
-
-import org.apache.tuscany.das.rdb.Converter;
-
-public class StringToIntegerConverter implements Converter {
-
- public StringToIntegerConverter() {
- super();
- }
-
- public Object getPropertyValue(Object columnData) {
- // System.out.println("Converting object.. " + columnData);
-
- return new Integer(columnData.toString());
- }
-
- public Object getColumnValue(Object columnData) {
- return columnData.toString();
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToLongConverter.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToLongConverter.java
deleted file mode 100644
index a15cef37e6..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/mappings/StringToLongConverter.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.mappings;
-
-import org.apache.tuscany.das.rdb.Converter;
-
-public class StringToLongConverter implements Converter {
-
- public StringToLongConverter() {
- super();
- }
-
- public Object getPropertyValue(Object columnData) {
- return new Long(columnData.toString());
- }
-
- public Object getColumnValue(Object columnData) {
- return columnData.toString();
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllCommonTests.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllCommonTests.java
deleted file mode 100644
index 806e152c24..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllCommonTests.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.suites;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.apache.tuscany.das.rdb.test.AliasTests;
-import org.apache.tuscany.das.rdb.test.BestPracticeTests;
-import org.apache.tuscany.das.rdb.test.CUDGeneration;
-import org.apache.tuscany.das.rdb.test.CommandGroupTests;
-import org.apache.tuscany.das.rdb.test.CompanyTests;
-import org.apache.tuscany.das.rdb.test.CompoundKeyTests;
-import org.apache.tuscany.das.rdb.test.ConverterTests;
-import org.apache.tuscany.das.rdb.test.CorrectedDefectTests;
-import org.apache.tuscany.das.rdb.test.CrudWithChangeHistory;
-import org.apache.tuscany.das.rdb.test.ExceptionTests;
-import org.apache.tuscany.das.rdb.test.GeneratedCommandTests;
-import org.apache.tuscany.das.rdb.test.GeneratedId;
-import org.apache.tuscany.das.rdb.test.GraphMergeTests;
-import org.apache.tuscany.das.rdb.test.ImpliedRelationshipTests;
-import org.apache.tuscany.das.rdb.test.KennelTests;
-import org.apache.tuscany.das.rdb.test.OCCTests;
-import org.apache.tuscany.das.rdb.test.OneToOneRelationshipTests;
-import org.apache.tuscany.das.rdb.test.OperationOrderingTests;
-import org.apache.tuscany.das.rdb.test.Paging;
-import org.apache.tuscany.das.rdb.test.PartialUpdateTests;
-import org.apache.tuscany.das.rdb.test.PassiveConnectionTests;
-import org.apache.tuscany.das.rdb.test.ProgrammaticConfigTests;
-import org.apache.tuscany.das.rdb.test.RecursiveTests;
-import org.apache.tuscany.das.rdb.test.RelationshipTests;
-import org.apache.tuscany.das.rdb.test.ResultSetShapeTests;
-import org.apache.tuscany.das.rdb.test.SerializationTests;
-import org.apache.tuscany.das.rdb.test.SimplestCrud;
-import org.apache.tuscany.das.rdb.test.StoredProcs;
-import org.apache.tuscany.das.rdb.test.TopDown;
-import org.apache.tuscany.das.rdb.test.TypeTests;
-import org.apache.tuscany.das.rdb.test.typed.SimplestStaticCrud;
-
-public final class AllCommonTests {
-
- private AllCommonTests() {
- }
-
- public static Test suite() {
- TestSuite suite = new TestSuite("All platform-common DAS tests");
- // $JUnit-BEGIN$
-
- suite.addTest(new TestSuite(SimplestCrud.class));
- suite.addTest(new TestSuite(CrudWithChangeHistory.class));
- suite.addTest(new TestSuite(SimplestStaticCrud.class));
- suite.addTest(new TestSuite(Paging.class));
- suite.addTest(new TestSuite(GeneratedId.class));
-
- suite.addTest(new TestSuite(StoredProcs.class));
- suite.addTest(new TestSuite(CUDGeneration.class));
- suite.addTest(new TestSuite(TopDown.class));
- suite.addTest(new TestSuite(OCCTests.class));
- suite.addTest(new TestSuite(RecursiveTests.class));
-
- suite.addTest(new TestSuite(GraphMergeTests.class));
- suite.addTest(new TestSuite(CompoundKeyTests.class));
- suite.addTest(new TestSuite(RelationshipTests.class));
- suite.addTest(new TestSuite(GeneratedCommandTests.class));
-
- suite.addTest(new TestSuite(CompanyTests.class));
- suite.addTest(new TestSuite(ResultSetShapeTests.class));
- suite.addTest(new TestSuite(TypeTests.class));
- suite.addTest(new TestSuite(OperationOrderingTests.class));
- suite.addTest(new TestSuite(ConverterTests.class));
-
- suite.addTest(new TestSuite(PartialUpdateTests.class));
- suite.addTest(new TestSuite(ExceptionTests.class));
- suite.addTest(new TestSuite(PassiveConnectionTests.class));
- suite.addTest(new TestSuite(SerializationTests.class));
-
- suite.addTest(new TestSuite(CommandGroupTests.class));
- suite.addTest(new TestSuite(BestPracticeTests.class));
- suite.addTest(new TestSuite(CorrectedDefectTests.class));
- suite.addTest(new TestSuite(OneToOneRelationshipTests.class));
-
- suite.addTest(new TestSuite(ProgrammaticConfigTests.class));
- suite.addTest(new TestSuite(AliasTests.class));
-
- suite.addTest(new TestSuite(ImpliedRelationshipTests.class));
-
- suite.addTest(new TestSuite(KennelTests.class));
-
- //$JUnit-END$
- return suite;
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsDB2.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsDB2.java
deleted file mode 100644
index ea8a2ddbaf..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsDB2.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.suites;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.apache.tuscany.das.rdb.test.ReadDBSchemaTests;
-import org.apache.tuscany.das.rdb.test.framework.DB2Setup;
-
-public final class AllTestsDB2 {
-
- private AllTestsDB2() {
-
- }
-
- public static Test suite() {
-
- TestSuite suite = new TestSuite();
- suite.addTest(AllCommonTests.suite());
- suite.addTest(new TestSuite(ReadDBSchemaTests.class));
-
- TestSuite suite2 = new TestSuite("All DAS tests on DB2");
- suite2.addTest(new DB2Setup(suite));
- return suite2;
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsDerby.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsDerby.java
deleted file mode 100644
index 0649fa815c..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsDerby.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.suites;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.apache.tuscany.das.rdb.test.framework.DerbySetup;
-
-public class AllTestsDerby extends TestSuite {
-
- public static Test suite() {
-
- TestSuite suite = new TestSuite("All DAS tests on Derby");
- suite.addTest(new DerbySetup(AllCommonTests.suite()));
- return suite;
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsMySQL.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsMySQL.java
deleted file mode 100644
index e68aaad8aa..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/suites/AllTestsMySQL.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.suites;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.apache.tuscany.das.rdb.test.framework.MySQLSetup;
-
-public final class AllTestsMySQL {
-
- private AllTestsMySQL() {
-
- }
-
- public static Test suite() {
-
- TestSuite suite = new TestSuite("All DAS tests on MySQL");
- suite.addTest(new MySQLSetup(AllCommonTests.suite()));
- return suite;
-
- }
-}
diff --git a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/typed/SimplestStaticCrud.java b/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/typed/SimplestStaticCrud.java
deleted file mode 100644
index 96d851b5dc..0000000000
--- a/branches/das-java-M2/rdb/src/test/java/org/apache/tuscany/das/rdb/test/typed/SimplestStaticCrud.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.das.rdb.test.typed;
-
-import java.io.InputStream;
-import java.util.Collection;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.test.customer.CustomerFactory;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-import org.apache.tuscany.sdo.util.SDOUtil;
-
-import commonj.sdo.DataObject;
-
-/**
- */
-public class SimplestStaticCrud extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- }
-
- public void testRead() throws Exception {
- InputStream mapping = getClass().getClassLoader().getResourceAsStream("basicStaticCustomer.xml");
- DAS das = DAS.FACTORY.createDAS(mapping, getConnection());
- SDOUtil.registerStaticTypes(CustomerFactory.class);
-
- Command select = das.createCommand("Select ID, LASTNAME, ADDRESS from CUSTOMER where LASTNAME = ?");
- select.setParameter(1, "Williams");
-
- DataObject root = select.executeQuery();
-
- Collection customers = root.getList("Customer");
- assertEquals(4, customers.size());
- }
-
-}
diff --git a/branches/das-java-M2/rdb/src/test/resources/1xM_mapping_no_cud.xml b/branches/das-java-M2/rdb/src/test/resources/1xM_mapping_no_cud.xml
deleted file mode 100644
index 2d80da8b1a..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/1xM_mapping_no_cud.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd"
-xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="CUSTOMER" typeName="Customer">
- <Column columnName="ID" propertyName="ID" primaryKey="true"/>
- </Table>
-
- <Table tableName="ANORDER" typeName="AnOrder">
- <Column columnName="CUSTOMER_ID" propertyName="Customer_ID"/>
- <Column columnName="ID" propertyName="ID" primaryKey="true"/>
- </Table>
-
- <Relationship name="orders" primaryKeyTable="CUSTOMER" foreignKeyTable="ANORDER" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="CUSTOMER_ID"/>
- </Relationship>
-
-</Config>
-
diff --git a/branches/das-java-M2/rdb/src/test/resources/BooksConfig.xml b/branches/das-java-M2/rdb/src/test/resources/BooksConfig.xml
deleted file mode 100644
index 7771d18c11..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/BooksConfig.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Command name="select book 1" SQL="select * from BOOK where BOOK_ID = 1" kind="Select"/>
- <Command name="update book 1" SQL="update BOOK set OCC = ? where BOOK_ID = 1" kind="Update"/>
-
- <Table tableName="BOOK">
- <Column columnName="BOOK_ID" primaryKey="true"/>
- <Column columnName="OCC" collision="true" propertyName="anOccColumn"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/BooksConfigWithAlias.xml b/branches/das-java-M2/rdb/src/test/resources/BooksConfigWithAlias.xml
deleted file mode 100644
index a8ff03297b..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/BooksConfigWithAlias.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Command name="get all books" SQL="SELECT * FROM BOOK" kind="Select"/>
-
- <Command name="get Cat in the Hat" SQL="SELECT * FROM BOOK WHERE NAME = 'Cat in the Hat'" kind="Select"/>
-
- <Command name="get book by ID" SQL="SELECT * FROM BOOK WHERE BOOK.BOOK_ID = ?" kind="Select"/>
-
-
-
- <Table tableName="BOOK" typeName="Book">
- <Column columnName="BOOK_ID" primaryKey="true"/>
- <Column columnName="AUTHOR" propertyName="Writer"/>
- <Column columnName="OCC" collision="true"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/CompanyConfig.xml b/branches/das-java-M2/rdb/src/test/resources/CompanyConfig.xml
deleted file mode 100644
index f0a11c554d..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/CompanyConfig.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Command name="all companies" SQL="select * from COMPANY" kind="Select"/>
-
- <Command name="all companies and departments" SQL="select * from COMPANY left outer join DEPARTMENT on COMPANY.ID = DEPARTMENT.COMPANYID" kind="Select"/>
-
- <Command name="all departments for company" SQL="select * from COMPANY inner join DEPARTMENT on COMPANY.ID = DEPARTMENT.COMPANYID where COMPANY.ID = ?" kind="Select"/>
-
- <Command name="company by id with departments" SQL="select * from COMPANY left outer join DEPARTMENT on COMPANY.ID = DEPARTMENT.COMPANYID where COMPANY.ID = ?" kind="Select"/>
-
- <Table tableName="COMPANY">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- </Table>
-
- <Table tableName="DEPARTMENT">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- </Table>
-
- <Relationship name="departments" primaryKeyTable="COMPANY" foreignKeyTable="DEPARTMENT" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="COMPANYID"/>
- </Relationship>
-
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/CompanyEmployeeConfig.xml b/branches/das-java-M2/rdb/src/test/resources/CompanyEmployeeConfig.xml
deleted file mode 100644
index 7de98dffbd..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/CompanyEmployeeConfig.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Command name="get all companies" SQL="select * from COMPANY" kind = "Select"/>
-
- <Command name="get named employee" SQL="select * from EMPLOYEE where NAME= ?" kind = "Select"/>
-
- <Command name="get named employee with company"
- SQL="select * from EMPLOYEE left outer join COMPANY on EMPLOYEE.ID = COMPANY.EOTMID where EMPLOYEE.NAME= ?" kind = "Select"/>
-
- <Command name="get employee by ID" SQL="select * from EMPLOYEE where ID= ?" kind = "Select"/>
-
- <Command name="get all employees" SQL="select * from EMPLOYEE" kind = "Select"/>
-
- <Command name="get companies with employee of the month"
- SQL="select * from COMPANY left outer join EMPLOYEE on COMPANY.EOTMID = EMPLOYEE.ID" kind="Select"/>
-
-
- <Table tableName="COMPANY">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- </Table>
-
- <Table tableName="DEPARTMENT">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- </Table>
-
- <Table tableName="EMPLOYEE">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- </Table>
-
- <Relationship name="company->employee" primaryKeyTable="EMPLOYEE" foreignKeyTable="COMPANY" many="false" >
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="EOTMID" />
- </Relationship>
-
-</Config>
-
diff --git a/branches/das-java-M2/rdb/src/test/resources/CustomerConfigWithConverter.xml b/branches/das-java-M2/rdb/src/test/resources/CustomerConfigWithConverter.xml
deleted file mode 100644
index 8ba6ab3e92..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/CustomerConfigWithConverter.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
-
- <Command name="testArbitraryConverter" SQL="Select * from CUSTOMER where ID = 1" kind="Select">
- <ResultDescriptor columnName="ID" tableName="CUSTOMER" columnType="commonj.sdo.IntObject"/>
- <ResultDescriptor columnName="LASTNAME" tableName="CUSTOMER" columnType="commonj.sdo.Date"/>
- <ResultDescriptor columnName="ADDRESS" tableName="CUSTOMER" columnType="commonj.sdo.String"/>
- </Command>
-
- <Table tableName="CUSTOMER">
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="LASTNAME" converterClassName="org.apache.tuscany.das.rdb.test.mappings.SillyDateStringConverter"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/CustomerConfigWithIDConverter.xml b/branches/das-java-M2/rdb/src/test/resources/CustomerConfigWithIDConverter.xml
deleted file mode 100644
index 638e70101f..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/CustomerConfigWithIDConverter.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Command name="literal" SQL="Select 99, 'Roosevelt', '1600 Pennsylvania Avenue' from customer" kind="Select">
- <ResultDescriptor columnName="ID" tableName="CUSTOMER" columnType="commonj.sdo.Long"/>
- <ResultDescriptor columnName="LASTNAME" tableName="CUSTOMER" columnType="commonj.sdo.String"/>
- <ResultDescriptor columnName="ADDRESS" tableName="CUSTOMER" columnType="commonj.sdo.String"/>
- </Command>
-
- <Table tableName="CUSTOMER">
- <Column columnName="ID" converterClassName="org.apache.tuscany.das.rdb.test.mappings.StringToLongConverter"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/CustomersOrdersConfig.xml b/branches/das-java-M2/rdb/src/test/resources/CustomersOrdersConfig.xml
deleted file mode 100644
index 4d3a0c87d9..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/CustomersOrdersConfig.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Command name="all customers" SQL="select * from CUSTOMER" kind="Select"/>
-
- <Command name="customer and orders"
- SQL="select * from CUSTOMER left join ANORDER on CUSTOMER.ID = ANORDER.CUSTOMER_ID where CUSTOMER.ID = ?"
- kind="Select">
- </Command>
-
- <Command name="order by id" SQL="select * from ANORDER where ANORDER.ID = ?"
- kind="Select">
- </Command>
-
- <Command name="update customer"
- SQL="update CUSTOMER set LASTNAME = 'Pavick' where ID = ?"
- kind="Update">
- </Command>
-
- <Table tableName="CUSTOMER">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
-
- <Table tableName="ANORDER">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
-
- <Relationship name="orders" primaryKeyTable="CUSTOMER"
- foreignKeyTable="ANORDER" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="CUSTOMER_ID"/>
- </Relationship>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/InvalidConfig1.xml b/branches/das-java-M2/rdb/src/test/resources/InvalidConfig1.xml
deleted file mode 100644
index 187609c0a0..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/InvalidConfig1.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="ORDERDETAILS">
- <Column columnName="ORDERID" primaryKey="true"/>
- <Column columnName="PRODUCTID" primaryKey="true"/>
- </Table>
-
-
- <Relationship name="ORDERDETAILS" primaryKeyTable="xxx"
- foreignKeyTable="ORDERDETAILS" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="ORDERID"/>
- </Relationship>
-
-</Config> \ No newline at end of file
diff --git a/branches/das-java-M2/rdb/src/test/resources/InvalidConverter.xml b/branches/das-java-M2/rdb/src/test/resources/InvalidConverter.xml
deleted file mode 100644
index ef17c8d489..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/InvalidConverter.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd"
-xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-dataObjectModel="http:///org.apache.tuscany.das.rdb.test/customer.xsd">
-
- <Table tableName="CUSTOMER" typeName="Customer">
- <Column columnName="ID" primaryKey="true" converterClassName="not.a.valid.class"/>
- </Table>
-
- <Table tableName="ANORDER" typeName="AnOrder">
- <Column columnName="CUSTOMER_ID"/>
- <Column columnName="ID" primaryKey="true"/>
- </Table>
-
- <Relationship name="orders" primaryKeyTable="CUSTOMER" foreignKeyTable="ANORDER" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="CUSTOMER_ID"/>
- </Relationship>
-
-</Config>
-
diff --git a/branches/das-java-M2/rdb/src/test/resources/ManagedBooksConfig.xml b/branches/das-java-M2/rdb/src/test/resources/ManagedBooksConfig.xml
deleted file mode 100644
index 78eb967689..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/ManagedBooksConfig.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Command name="select book 1" SQL="select * from BOOK where BOOK_ID = 1" kind="Select"/>
- <Command name="update book 1" SQL="update BOOK set OCC = ? where BOOK_ID = 1" kind="Update"/>
-
- <Table tableName="BOOK">
- <Column columnName="BOOK_ID" primaryKey="true"/>
- <Column columnName="OCC" collision="true" managed="true"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/OneToOneRestrictedConfig.xml b/branches/das-java-M2/rdb/src/test/resources/OneToOneRestrictedConfig.xml
deleted file mode 100644
index 040b28b71b..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/OneToOneRestrictedConfig.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Command name="get all companies" SQL="select * from COMPANY" kind = "Select"/>
-
- <Command name="get named employee" SQL="select * from EMPLOYEE where NAME= ?" kind = "Select"/>
-
- <Command name="get named employee with company"
- SQL="select * from EMPLOYEE left outer join COMPANY on EMPLOYEE.ID = COMPANY.EOTMID where EMPLOYEE.NAME= ?" kind = "Select"/>
-
- <Command name="get employee by ID" SQL="select * from EMPLOYEE where ID= ?" kind = "Select"/>
-
- <Command name="get all employees" SQL="select * from EMPLOYEE" kind = "Select"/>
-
- <Command name="get companies with employee of the month"
- SQL="select * from COMPANY left outer join EMPLOYEE on COMPANY.EOTMID = EMPLOYEE.ID" kind="Select"/>
-
-
- <Table tableName="COMPANY">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- </Table>
-
- <Table tableName="DEPARTMENT">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- </Table>
-
- <Table tableName="EMPLOYEE">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- </Table>
-
- <Relationship name="company" primaryKeyTable="EMPLOYEE" foreignKeyTable="COMPANY" many="false" keyRestricted="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="EOTMID" />
- </Relationship>
-
-</Config>
-
diff --git a/branches/das-java-M2/rdb/src/test/resources/OrdersOrderDetailsConfig.xml b/branches/das-java-M2/rdb/src/test/resources/OrdersOrderDetailsConfig.xml
deleted file mode 100644
index 971788329e..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/OrdersOrderDetailsConfig.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="ORDERDETAILS">
- <Column columnName="ORDERID" primaryKey="true"/>
- <Column columnName="PRODUCTID" primaryKey="true"/>
- </Table>
-
- <Table tableName="ANORDER">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
-
- <Relationship name="ORDERDETAILS" primaryKeyTable="ANORDER"
- foreignKeyTable="ORDERDETAILS" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="ORDERID"/>
- </Relationship>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/PartsConfig.xml b/branches/das-java-M2/rdb/src/test/resources/PartsConfig.xml
deleted file mode 100644
index a3477c9bf4..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/PartsConfig.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Command name="readEngineParts" kind="Select" SQL="SELECT P1.*, P2.*, P3.* FROM PART AS P1
- LEFT JOIN PART AS P2 ON P1.ID = P2.PARENT_ID
- LEFT JOIN PART AS P3 on P2.ID = P3.PARENT_ID WHERE P1.ID = 1">
- <ResultDescriptor columnName="ID" columnType="commonj.sdo.IntObject" tableName="PART"/>
- <ResultDescriptor columnName="NAME" columnType="commonj.sdo.String" tableName="PART"/>
- <ResultDescriptor columnName="QUANTITY" columnType="commonj.sdo.IntObject" tableName="PART"/>
- <ResultDescriptor columnName="PARENT_ID" columnType="commonj.sdo.IntObject" tableName="PART"/>
-
- <ResultDescriptor columnName="ID" columnType="commonj.sdo.IntObject" tableName="PART"/>
- <ResultDescriptor columnName="NAME" columnType="commonj.sdo.String" tableName="PART"/>
- <ResultDescriptor columnName="QUANTITY" columnType="commonj.sdo.IntObject" tableName="PART"/>
- <ResultDescriptor columnName="PARENT_ID" columnType="commonj.sdo.IntObject" tableName="PART"/>
-
- <ResultDescriptor columnName="ID" columnType="commonj.sdo.IntObject" tableName="PART"/>
- <ResultDescriptor columnName="NAME" columnType="commonj.sdo.String" tableName="PART"/>
- <ResultDescriptor columnName="QUANTITY" columnType="commonj.sdo.IntObject" tableName="PART"/>
- <ResultDescriptor columnName="PARENT_ID" columnType="commonj.sdo.IntObject" tableName="PART"/>
-
- </Command>
-
- <Table tableName="PART">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
-
- <Relationship name="subparts" primaryKeyTable="PART" foreignKeyTable="PART" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="PARENT_ID"/>
- </Relationship>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/basicCompanyDepartmentMapping.xml b/branches/das-java-M2/rdb/src/test/resources/basicCompanyDepartmentMapping.xml
deleted file mode 100644
index ae0d691902..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/basicCompanyDepartmentMapping.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="COMPANY">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- <Column columnName="NAME"/>
- </Table>
-
- <Table tableName="DEPARTMENT">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- <Column columnName="NAME"/>
- <Column columnName="NUMBER"/>
- <Column columnName="COMPANYID"/>
- <Column columnName="EOTM"/>
- </Table>
-
- <Relationship name="departments" primaryKeyTable="COMPANY" foreignKeyTable="DEPARTMENT" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="COMPANYID"/>
- </Relationship>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/basicCompanyMapping.xml b/branches/das-java-M2/rdb/src/test/resources/basicCompanyMapping.xml
deleted file mode 100644
index 7d81e363d7..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/basicCompanyMapping.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <Table tableName="COMPANY">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- <Column columnName="NAME"/>
- </Table>
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/basicCustomerMapping.xml b/branches/das-java-M2/rdb/src/test/resources/basicCustomerMapping.xml
deleted file mode 100644
index 191f238515..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/basicCustomerMapping.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd"
-xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="CUSTOMER">
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="LASTNAME"/>
- <Column columnName="ADDRESS"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithCUD.xml b/branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithCUD.xml
deleted file mode 100644
index ae29ff8d93..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithCUD.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="CUSTOMER">
- <create sql="insert into customer values (?, ?, ?)" parameters="ID LASTNAME ADDRESS"/>
- <update sql="update customer set lastname = ?, address = ? where ID = ?" parameters="LASTNAME ADDRESS ID"/>
- <delete sql="delete from customer where ID = ?" parameters="ID"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithCUD2.xml b/branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithCUD2.xml
deleted file mode 100644
index 36d2ece17b..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithCUD2.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="CUSTOMER">
- <create sql="insert into customer values (?, ?, ?)" parameters="ID LASTNAME ADDRESS"/>
- <update sql="update customer set lastname = ? where ID = ?" parameters="LASTNAME ID"/>
- <delete sql="delete from customer where ID = ?" parameters="ID"/>
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="LASTNAME"/>
- <Column columnName="ADDRESS"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithInvalidCUD.xml b/branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithInvalidCUD.xml
deleted file mode 100644
index e610549909..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/basicCustomerMappingWithInvalidCUD.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="CUSTOMER">
- <create sql="isnert into customer blah values (?, ?, ?)" parameters="ID LASTNAME ADDRESS"/>
- <update sql="udpate customer blah set lastname = ?, address = ? where ID = ?" parameters="LASTNAME ADDRESS ID"/>
- <delete sql="dleete from customer blah where ID = ?" parameters="ID"/>
-
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="LASTNAME"/>
- <Column columnName="ADDRESS"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/basicCustomerOrderMapping.xml b/branches/das-java-M2/rdb/src/test/resources/basicCustomerOrderMapping.xml
deleted file mode 100644
index 68d842e630..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/basicCustomerOrderMapping.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="CUSTOMER">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
- <Table tableName="ANORDER">
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="CUSTOMER_ID"/>
- </Table>
-
- <Relationship name="orders" primaryKeyTable="CUSTOMER" foreignKeyTable="ANORDER" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="CUSTOMER_ID"/>
- </Relationship>
-
-</Config>
-
diff --git a/branches/das-java-M2/rdb/src/test/resources/basicStaticCustomer.xml b/branches/das-java-M2/rdb/src/test/resources/basicStaticCustomer.xml
deleted file mode 100644
index 2706687161..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/basicStaticCustomer.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd"
-xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-dataObjectModel="http:///org.apache.tuscany.das.rdb.test/customer.xsd">
-
- <Table tableName="CUSTOMER" typeName="Customer">
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="LASTNAME"/>
- <Column columnName="ADDRESS"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/cityStates.xml b/branches/das-java-M2/rdb/src/test/resources/cityStates.xml
deleted file mode 100644
index 801828f960..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/cityStates.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="STATES">
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="NAME"/>
- </Table>
-
- <Table tableName="CITIES">
-
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="NAME"/>
- <Column columnName="STATE_ID"/>
-
- </Table>
-
- <Relationship name="cities" primaryKeyTable="STATES" foreignKeyTable="CITIES" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="STATE_ID"/>
- </Relationship>
-
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/company.xsd b/branches/das-java-M2/rdb/src/test/resources/company.xsd
deleted file mode 100644
index a7118ec808..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/company.xsd
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<xsd:schema targetNamespace="org.apache.tuscany.das.rdb.test/company.xsd"
- xmlns:company="org.apache.tuscany.das.rdb.test/company.xsd"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore">
-
- <xsd:element name="company" type="company:CompanyType"/>
-
- <xsd:complexType name="CompanyType">
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="departments" type="company:DepartmentType"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="employeeOfTheMonth" type="xsd:IDREF" ecore:reference="EmployeeType"/>
- </xsd:complexType>
-
- <xsd:complexType name="DepartmentType">
- <xsd:sequence>
- <xsd:element maxOccurs="unbounded" name="employees" type="company:EmployeeType"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="location" type="xsd:string"/>
- <xsd:attribute name="number" type="xsd:int"/>
- </xsd:complexType>
- <xsd:complexType name="EmployeeType">
- <xsd:attribute name="name" type="xsd:string"/>
- <xsd:attribute name="SN" type="xsd:ID"/>
- <xsd:attribute name="manager" type="xsd:boolean"/>
- </xsd:complexType>
- </xsd:schema>
diff --git a/branches/das-java-M2/rdb/src/test/resources/companyMapping.xml b/branches/das-java-M2/rdb/src/test/resources/companyMapping.xml
deleted file mode 100644
index 795c36a783..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/companyMapping.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="COMPANY" typeName="CompanyType">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
-
- <Table tableName="DEPARTMENT" typeName="DepartmentType">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
-
- <Table tableName="EMPLOYEE" typeName="EmployeeType">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
-
- <Relationship name="departments" primaryKeyTable="COMPANY" foreignKeyTable="DEPARTMENT" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="COMPANYID"/>
- </Relationship>
-
- <Relationship name="employees" primaryKeyTable="DEPARTMENT" foreignKeyTable="EMPLOYEE" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="DEPARTMENTID"/>
- </Relationship>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/companyMappingWithConverters.xml b/branches/das-java-M2/rdb/src/test/resources/companyMappingWithConverters.xml
deleted file mode 100644
index 93bbea5130..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/companyMappingWithConverters.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd"
-xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-dataObjectModel="org.apache.tuscany.das.rdb.test/company.xsd">
-
- <Table tableName="COMPANY" typeName="CompanyType">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
-
- <Table tableName="DEPARTMENT" typeName="DepartmentType">
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="DEPNUMBER" propertyName="NUMBER" converterClassName="org.apache.tuscany.das.rdb.test.mappings.StringToIntegerConverter"/>
- </Table>
-
- <Table tableName="EMPLOYEE" typeName="EmployeeType">
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="MANAGER" converterClassName="org.apache.tuscany.das.rdb.test.mappings.IntegerToBooleanConverter"/>
- </Table>
-
- <Relationship name="departments" primaryKeyTable="COMPANY" foreignKeyTable="DEPARTMENT" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="COMPANYID"/>
- </Relationship>
-
- <Relationship name="employees" primaryKeyTable="DEPARTMENT" foreignKeyTable="EMPLOYEE" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="DEPARTMENTID"/>
- </Relationship>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/customer.xsd b/branches/das-java-M2/rdb/src/test/resources/customer.xsd
deleted file mode 100644
index e5482ae3a0..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/customer.xsd
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:this="http:///org.apache.tuscany.das.rdb.test/customer.xsd" targetNamespace="http:///org.apache.tuscany.das.rdb.test/customer.xsd">
-
- <xsd:complexType name="Customer">
- <xsd:sequence>
- <xsd:element name="ID" nillable="false" type="xsd:int"/>
- <xsd:element name="lastName" type="xsd:string"/>
- <xsd:element name="address" type="xsd:string"/>
- <xsd:element maxOccurs="unbounded" name="orders" type="this:AnOrder"/>
- </xsd:sequence>
- </xsd:complexType>
-
-
- <!-- An Order -->
- <xsd:complexType name="AnOrder">
- <xsd:sequence>
- <xsd:element name="ID" nillable="false" type="xsd:int"/>
- <xsd:element name="Product" type="xsd:string"/>
- <xsd:element name="Quantity" type="xsd:int"/>
- <xsd:element name="Customer_ID" type="xsd:int"/>
- </xsd:sequence>
- </xsd:complexType>
-
-
-</xsd:schema>
diff --git a/branches/das-java-M2/rdb/src/test/resources/customerMapping.xml b/branches/das-java-M2/rdb/src/test/resources/customerMapping.xml
deleted file mode 100644
index 56f7c9d5b1..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/customerMapping.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="CUSTOMER" typeName="Customer">
- <Column columnName="ID" propertyName="id" primaryKey="true"/>
- <Column columnName="LASTNAME" propertyName="lastname"/>
- <Column columnName="ADDRESS" propertyName="address"/>
- </Table>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/customerOrderRelationshipMapping.xml b/branches/das-java-M2/rdb/src/test/resources/customerOrderRelationshipMapping.xml
deleted file mode 100644
index fb816c5628..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/customerOrderRelationshipMapping.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <Table tableName="CUSTOMER">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
- <Table tableName="ANORDER">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
-
- <Relationship name="orders" primaryKeyTable="CUSTOMER" foreignKeyTable="ANORDER" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="CUSTOMER_ID"/>
- </Relationship>
-
-</Config>
-
diff --git a/branches/das-java-M2/rdb/src/test/resources/passiveConnection.xml b/branches/das-java-M2/rdb/src/test/resources/passiveConnection.xml
deleted file mode 100644
index b343d52b02..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/passiveConnection.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <ConnectionInfo managedtx="false"/>
-
- <Command name="get a customer" SQL="Select * from CUSTOMER where ID = 1" kind="select"/>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/staticCustomer.xml b/branches/das-java-M2/rdb/src/test/resources/staticCustomer.xml
deleted file mode 100644
index 169e9e2f8e..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/staticCustomer.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd"
-xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-dataObjectModel="http:///org.apache.tuscany.das.rdb.test/customer.xsd">
-
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/staticCustomerOrder.xml b/branches/das-java-M2/rdb/src/test/resources/staticCustomerOrder.xml
deleted file mode 100644
index 81c9628da1..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/staticCustomerOrder.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd"
-xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-dataObjectModel="http:///org.apache.tuscany.das.rdb.test/customer.xsd">
-
- <Command name="Customer and Orders" SQL="SELECT * FROM CUSTOMER LEFT JOIN ANORDER ON CUSTOMER.ID = ANORDER.CUSTOMER_ID where CUSTOMER.ID = ?" kind="Select"/>
-
- <Table tableName="CUSTOMER" typeName="Customer">
- <Column columnName="ID" primaryKey="true"/>
- </Table>
- <Table tableName="ANORDER" typeName="AnOrder">
- <Column columnName="ID" primaryKey="true"/>
- <Column columnName="CUSTOMER_ID"/>
- </Table>
-
- <Relationship name="orders" primaryKeyTable="CUSTOMER" foreignKeyTable="ANORDER" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="CUSTOMER_ID"/>
- </Relationship>
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/staticInvalid.xml b/branches/das-java-M2/rdb/src/test/resources/staticInvalid.xml
deleted file mode 100644
index 6b76ae3309..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/staticInvalid.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd"
-xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-dataObjectModel="invalidURI">
-
-
-</Config>
diff --git a/branches/das-java-M2/rdb/src/test/resources/storedProcTest.xml b/branches/das-java-M2/rdb/src/test/resources/storedProcTest.xml
deleted file mode 100644
index 04744dfbb9..0000000000
--- a/branches/das-java-M2/rdb/src/test/resources/storedProcTest.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <Command name="getNamedCustomers" SQL="{call GETNAMEDCUSTOMERS(?,?)}" kind="procedure">
- <Parameter direction="IN" columnType="commonj.sdo.String"/>
- <Parameter direction="OUT" columnType="commonj.sdo.IntObject"/>
- </Command>
-
-</Config>
diff --git a/branches/das-java-M2/samples/build.xml b/branches/das-java-M2/samples/build.xml
deleted file mode 100644
index f78ca9a3c8..0000000000
--- a/branches/das-java-M2/samples/build.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<project name="samples" default="compile">
-
- <target name="compile">
- <ant dir="companyweb"/>
- </target>
-
- <target name="clean">
- <ant dir="companyweb" target="clean"/>
- </target>
-</project>
diff --git a/branches/das-java-M2/samples/companyweb/build.xml b/branches/das-java-M2/samples/companyweb/build.xml
deleted file mode 100644
index dd269b628e..0000000000
--- a/branches/das-java-M2/samples/companyweb/build.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<project name="samples" default="compile">
- <property name="mainDir" value="../../.."/>
- <path id="javac.classpath">
- <fileset dir="${mainDir}/lib">
- <include name="tuscany-runtime-incubating-M1.jar"/>
- </fileset>
- </path>
- <path id="java.classpath">
- <fileset dir="${mainDir}/lib">
- <include name="tuscany-runtime-incubating-M1.jar"/>
- </fileset>
- <pathelement path="target/sample-companyweb.jar"/>
- </path>
-
- <target name="init">
- <mkdir dir="target/classes"/>
- </target>
-
- <target name="compile" depends="init">
- <javac srcdir="src/main/java" destdir="target/classes" debug="on" source="1.5" target="1.5">
- <classpath refid="javac.classpath"/>
- </javac>
- <copy todir="target/classes">
- <fileset dir="src/main/resources"/>
- </copy>
- <war destfile="target/sample-companyweb.war" webxml="src/main/webapp/WEB-INF/web.xml">
- <classes dir="target/classes"/>
- </war>
- </target>
-
- <target name="clean">
- <delete quiet="true" includeemptydirs="true">
- <fileset dir="target" excludes="sample-companyweb-incubating-M1.war"/>
- </delete>
- </target>
-</project>
diff --git a/branches/das-java-M2/samples/companyweb/dastest/db.lck b/branches/das-java-M2/samples/companyweb/dastest/db.lck
deleted file mode 100644
index 9f6b4b3d4b..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/db.lck
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/log/log.ctrl b/branches/das-java-M2/samples/companyweb/dastest/log/log.ctrl
deleted file mode 100644
index edbd775299..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/log/log.ctrl
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/log/log1.dat b/branches/das-java-M2/samples/companyweb/dastest/log/log1.dat
deleted file mode 100644
index 7e85ac8e8f..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/log/log1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/log/logmirror.ctrl b/branches/das-java-M2/samples/companyweb/dastest/log/logmirror.ctrl
deleted file mode 100644
index edbd775299..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/log/logmirror.ctrl
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c10.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c10.dat
deleted file mode 100644
index 5d8ecaa10f..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c10.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c101.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c101.dat
deleted file mode 100644
index 0f79fa7574..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c101.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c111.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c111.dat
deleted file mode 100644
index 39d49e3d19..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c111.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c121.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c121.dat
deleted file mode 100644
index 2a4311779b..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c121.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c130.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c130.dat
deleted file mode 100644
index 64e3c18d62..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c130.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c141.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c141.dat
deleted file mode 100644
index 0632d04164..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c141.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c150.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c150.dat
deleted file mode 100644
index d7541026f6..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c150.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c161.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c161.dat
deleted file mode 100644
index 6673bf1873..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c161.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c171.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c171.dat
deleted file mode 100644
index c2a753cc5d..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c171.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c180.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c180.dat
deleted file mode 100644
index cb9391aed1..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c180.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c191.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c191.dat
deleted file mode 100644
index d3cf1d6364..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c191.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1a1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c1a1.dat
deleted file mode 100644
index a7a2d536e9..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1a1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1b1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c1b1.dat
deleted file mode 100644
index 19097e69e7..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1b1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1c0.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c1c0.dat
deleted file mode 100644
index 359525a31a..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1c0.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1d1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c1d1.dat
deleted file mode 100644
index 9f257df932..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1d1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1e0.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c1e0.dat
deleted file mode 100644
index e43e52fb7f..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1e0.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1f1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c1f1.dat
deleted file mode 100644
index 7e6ee3b1e0..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c1f1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c20.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c20.dat
deleted file mode 100644
index 1be6390f06..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c20.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c200.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c200.dat
deleted file mode 100644
index b15d56855c..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c200.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c211.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c211.dat
deleted file mode 100644
index 84b0022312..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c211.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c221.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c221.dat
deleted file mode 100644
index 63106a9523..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c221.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c230.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c230.dat
deleted file mode 100644
index 9975f27c1f..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c230.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c241.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c241.dat
deleted file mode 100644
index 835c645a16..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c241.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c251.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c251.dat
deleted file mode 100644
index d3d6adf4fb..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c251.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c260.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c260.dat
deleted file mode 100644
index 8d7333df7d..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c260.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c271.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c271.dat
deleted file mode 100644
index af722f7d73..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c271.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c281.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c281.dat
deleted file mode 100644
index 3972983c2e..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c281.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c290.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c290.dat
deleted file mode 100644
index 31577b8124..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c290.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2a1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c2a1.dat
deleted file mode 100644
index 0f700d13a7..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2a1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2b1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c2b1.dat
deleted file mode 100644
index 1d6382fb3d..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2b1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2c1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c2c1.dat
deleted file mode 100644
index 3bc60d886b..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2c1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2d0.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c2d0.dat
deleted file mode 100644
index c542d3c91c..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2d0.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2e1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c2e1.dat
deleted file mode 100644
index 16abd20b5f..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2e1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2f0.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c2f0.dat
deleted file mode 100644
index eb26be5932..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c2f0.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c300.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c300.dat
deleted file mode 100644
index 1214f1df4b..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c300.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c31.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c31.dat
deleted file mode 100644
index 18c16f1123..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c31.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c311.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c311.dat
deleted file mode 100644
index 926cbf25b5..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c311.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c320.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c320.dat
deleted file mode 100644
index 07e7bc023c..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c320.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c331.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c331.dat
deleted file mode 100644
index fd827f9dc2..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c331.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c340.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c340.dat
deleted file mode 100644
index ca70319886..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c340.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c351.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c351.dat
deleted file mode 100644
index 8fbe2a527c..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c351.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c360.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c360.dat
deleted file mode 100644
index dcf9c746e1..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c360.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c371.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c371.dat
deleted file mode 100644
index 6f21a840ea..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c371.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c380.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c380.dat
deleted file mode 100644
index b512e8065f..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c380.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c391.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c391.dat
deleted file mode 100644
index 27006e95a1..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c391.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3a0.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c3a0.dat
deleted file mode 100644
index 565dca97ac..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3a0.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3b1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c3b1.dat
deleted file mode 100644
index 36894c9818..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3b1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3c0.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c3c0.dat
deleted file mode 100644
index d0c538aede..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3c0.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3d1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c3d1.dat
deleted file mode 100644
index 65bcec5527..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3d1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3e0.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c3e0.dat
deleted file mode 100644
index bdab359420..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3e0.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3f1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c3f1.dat
deleted file mode 100644
index dc2d278b57..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c3f1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c400.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c400.dat
deleted file mode 100644
index 3072709cec..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c400.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c41.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c41.dat
deleted file mode 100644
index 61086690f2..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c41.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c411.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c411.dat
deleted file mode 100644
index ca551d8249..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c411.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c420.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c420.dat
deleted file mode 100644
index f04de0840e..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c420.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c431.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c431.dat
deleted file mode 100644
index 398b1672cc..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c431.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c440.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c440.dat
deleted file mode 100644
index af259d0872..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c440.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c451.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c451.dat
deleted file mode 100644
index 772a18c658..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c451.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c460.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c460.dat
deleted file mode 100644
index 505428362d..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c460.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c471.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c471.dat
deleted file mode 100644
index 484d0df42d..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c471.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c481.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c481.dat
deleted file mode 100644
index faac073076..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c481.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c490.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c490.dat
deleted file mode 100644
index 7585319d21..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c490.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c4a1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c4a1.dat
deleted file mode 100644
index 4fe8b786e3..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c4a1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c51.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c51.dat
deleted file mode 100644
index 7fc7937b15..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c51.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c60.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c60.dat
deleted file mode 100644
index d1fb08c946..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c60.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c71.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c71.dat
deleted file mode 100644
index d4c2090a3b..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c71.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c81.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c81.dat
deleted file mode 100644
index 38b6ea6520..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c81.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/c90.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/c90.dat
deleted file mode 100644
index a607a5969c..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/c90.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/ca1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/ca1.dat
deleted file mode 100644
index 19b4c9e340..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/ca1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/cb1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/cb1.dat
deleted file mode 100644
index 73dc986572..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/cb1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/cc0.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/cc0.dat
deleted file mode 100644
index d1eef3bb56..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/cc0.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/cd1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/cd1.dat
deleted file mode 100644
index c7e6db3ef7..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/cd1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/ce1.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/ce1.dat
deleted file mode 100644
index 8fd3bf17a8..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/ce1.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/seg0/cf0.dat b/branches/das-java-M2/samples/companyweb/dastest/seg0/cf0.dat
deleted file mode 100644
index 332b3d9a8a..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/seg0/cf0.dat
+++ /dev/null
Binary files differ
diff --git a/branches/das-java-M2/samples/companyweb/dastest/service.properties b/branches/das-java-M2/samples/companyweb/dastest/service.properties
deleted file mode 100644
index 8cfe3b09a5..0000000000
--- a/branches/das-java-M2/samples/companyweb/dastest/service.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-#C:\apacheSVN\java\target\dastest
-# ********************************************************************
-# *** Please do NOT edit this file. ***
-# *** CHANGING THE CONTENT OF THIS FILE MAY CAUSE DATA CORRUPTION. ***
-# ********************************************************************
-#Fri Feb 17 08:55:29 MST 2006
-SysschemasIndex2Identifier=225
-SyscolumnsIdentifier=144
-SysconglomeratesIndex1Identifier=49
-SysconglomeratesIdentifier=32
-SyscolumnsIndex2Identifier=177
-SysschemasIndex1Identifier=209
-SysconglomeratesIndex3Identifier=81
-SystablesIndex2Identifier=129
-SyscolumnsIndex1Identifier=161
-derby.serviceProtocol=org.apache.derby.database.Database
-SysschemasIdentifier=192
-derby.storage.propertiesId=16
-SysconglomeratesIndex2Identifier=65
-derby.serviceLocale=en_US
-SystablesIdentifier=96
-SystablesIndex1Identifier=113
diff --git a/branches/das-java-M2/samples/companyweb/pom.xml b/branches/das-java-M2/samples/companyweb/pom.xml
deleted file mode 100644
index cfa8171171..0000000000
--- a/branches/das-java-M2/samples/companyweb/pom.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.
--->
-<project>
-
- <parent>
- <groupId>org.apache.tuscany.das.samples</groupId>
- <artifactId>tuscany-samples-das</artifactId>
- <version>1.0-incubator-M2-SNAPSHOT</version>
- </parent>
-
- <modelVersion>4.0.0</modelVersion>
- <artifactId>sample-companyweb</artifactId>
- <packaging>war</packaging>
- <name>Tuscany DAS Company Sample</name>
- <description>Sample use of RDB DAS in a Web application</description>
-
- <dependencies>
-
- <dependency>
- <groupId>org.apache.tuscany.das</groupId>
- <artifactId>tuscany-das-rdb</artifactId>
- <version>${pom.version}</version>
- <scope>compile</scope>
- </dependency>
-
- </dependencies>
-
- <!-- this will place the java source files inside the war -->
- <build>
- <sourceDirectory>src/main/java</sourceDirectory>
- <resources>
- <resource>
- <directory>src/main/java</directory>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- </resource>
- </resources>
- </build>
-</project>
diff --git a/branches/das-java-M2/samples/companyweb/readme.htm b/branches/das-java-M2/samples/companyweb/readme.htm
deleted file mode 100644
index 4af782ff8d..0000000000
--- a/branches/das-java-M2/samples/companyweb/readme.htm
+++ /dev/null
@@ -1,654 +0,0 @@
-<html xmlns:v="urn:schemas-microsoft-com:vml"
-xmlns:o="urn:schemas-microsoft-com:office:office"
-xmlns:w="urn:schemas-microsoft-com:office:word"
-xmlns:st1="urn:schemas-microsoft-com:office:smarttags"
-xmlns="http://www.w3.org/TR/REC-html40">
-
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
-<meta name=ProgId content=Word.Document>
-<meta name=Generator content="Microsoft Word 10">
-<meta name=Originator content="Microsoft Word 10">
-<link rel=File-List href="readme_files/filelist.xml">
-<title>Tuscany RDB DAS Sample</title>
-<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
- name="City"/>
-<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
- name="State"/>
-<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
- name="place"/>
-<!--[if gte mso 9]><xml>
- <o:DocumentProperties>
- <o:Author>IBM_USER</o:Author>
- <o:LastAuthor>IBM_USER</o:LastAuthor>
- <o:Revision>5</o:Revision>
- <o:TotalTime>25</o:TotalTime>
- <o:Created>2006-10-19T16:54:00Z</o:Created>
- <o:LastSaved>2006-10-24T16:41:00Z</o:LastSaved>
- <o:Pages>1</o:Pages>
- <o:Words>739</o:Words>
- <o:Characters>4216</o:Characters>
- <o:Company>IBM</o:Company>
- <o:Lines>35</o:Lines>
- <o:Paragraphs>9</o:Paragraphs>
- <o:CharactersWithSpaces>4946</o:CharactersWithSpaces>
- <o:Version>10.6735</o:Version>
- </o:DocumentProperties>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <w:WordDocument>
- <w:SpellingState>Clean</w:SpellingState>
- <w:GrammarState>Clean</w:GrammarState>
- <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
- </w:WordDocument>
-</xml><![endif]--><!--[if !mso]><object
- classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui></object>
-<style>
-st1\:*{behavior:url(#ieooui) }
-</style>
-<![endif]-->
-<style>
-<!--
- /* Style Definitions */
- p.MsoNormal, li.MsoNormal, div.MsoNormal
- {mso-style-parent:"";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-h1
- {mso-style-next:Normal;
- margin-top:12.0pt;
- margin-right:0in;
- margin-bottom:3.0pt;
- margin-left:0in;
- mso-pagination:widow-orphan;
- page-break-after:avoid;
- mso-outline-level:1;
- font-size:16.0pt;
- font-family:Arial;
- mso-font-kerning:16.0pt;}
-h3
- {mso-style-next:Normal;
- margin-top:12.0pt;
- margin-right:0in;
- margin-bottom:3.0pt;
- margin-left:0in;
- mso-pagination:widow-orphan;
- page-break-after:avoid;
- mso-outline-level:3;
- font-size:13.0pt;
- font-family:Arial;}
-p.MsoFootnoteText, li.MsoFootnoteText, div.MsoFootnoteText
- {mso-style-noshow:yes;
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:10.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
-span.MsoFootnoteReference
- {mso-style-noshow:yes;
- vertical-align:super;}
-a:link, span.MsoHyperlink
- {color:blue;
- text-decoration:underline;
- text-underline:single;}
-a:visited, span.MsoHyperlinkFollowed
- {color:purple;
- text-decoration:underline;
- text-underline:single;}
-code
- {font-family:"Courier New";
- mso-ascii-font-family:"Courier New";
- mso-fareast-font-family:"Times New Roman";
- mso-hansi-font-family:"Courier New";
- mso-bidi-font-family:"Courier New";}
-pre
- {margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:10.0pt;
- font-family:"Courier New";
- mso-fareast-font-family:"Times New Roman";}
-span.codefrag
- {mso-style-name:codefrag;}
-span.SpellE
- {mso-style-name:"";
- mso-spl-e:yes;}
-span.GramE
- {mso-style-name:"";
- mso-gram-e:yes;}
-@page Section1
- {size:8.5in 11.0in;
- margin:1.0in 1.25in 1.0in 1.25in;
- mso-header-margin:.5in;
- mso-footer-margin:.5in;
- mso-paper-source:0;}
-div.Section1
- {page:Section1;}
- /* List Definitions */
- @list l0
- {mso-list-id:486359905;
- mso-list-template-ids:631539286;}
-@list l0:level1
- {mso-level-start-at:7;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l0:level2
- {mso-level-number-format:alpha-lower;
- mso-level-tab-stop:1.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l1
- {mso-list-id:621955822;
- mso-list-template-ids:-1687880648;}
-@list l2
- {mso-list-id:646667692;
- mso-list-type:hybrid;
- mso-list-template-ids:-728441462 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
-@list l2:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;
- font-family:Symbol;}
-@list l2:level2
- {mso-level-tab-stop:1.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l2:level3
- {mso-level-tab-stop:1.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l2:level4
- {mso-level-tab-stop:2.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l2:level5
- {mso-level-tab-stop:2.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l2:level6
- {mso-level-tab-stop:3.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l2:level7
- {mso-level-tab-stop:3.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l2:level8
- {mso-level-tab-stop:4.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l2:level9
- {mso-level-tab-stop:4.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l3
- {mso-list-id:975526902;
- mso-list-type:hybrid;
- mso-list-template-ids:1435802096 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
-@list l3:level1
- {mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l3:level2
- {mso-level-tab-stop:1.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l3:level3
- {mso-level-tab-stop:1.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l3:level4
- {mso-level-tab-stop:2.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l3:level5
- {mso-level-tab-stop:2.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l3:level6
- {mso-level-tab-stop:3.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l3:level7
- {mso-level-tab-stop:3.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l3:level8
- {mso-level-tab-stop:4.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l3:level9
- {mso-level-tab-stop:4.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l4
- {mso-list-id:1305811547;
- mso-list-type:hybrid;
- mso-list-template-ids:1677090400 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
-@list l4:level1
- {mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l4:level2
- {mso-level-number-format:alpha-lower;
- mso-level-tab-stop:1.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l4:level3
- {mso-level-number-format:roman-lower;
- mso-level-tab-stop:1.5in;
- mso-level-number-position:right;
- text-indent:-9.0pt;}
-@list l4:level4
- {mso-level-tab-stop:2.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l4:level5
- {mso-level-tab-stop:2.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l4:level6
- {mso-level-tab-stop:3.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l4:level7
- {mso-level-tab-stop:3.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l4:level8
- {mso-level-tab-stop:4.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l4:level9
- {mso-level-tab-stop:4.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l5
- {mso-list-id:1502042143;
- mso-list-template-ids:-751028068;}
-@list l6
- {mso-list-id:1605966365;
- mso-list-type:hybrid;
- mso-list-template-ids:14685132 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
-@list l6:level1
- {mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l6:level2
- {mso-level-tab-stop:1.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l6:level3
- {mso-level-tab-stop:1.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l6:level4
- {mso-level-tab-stop:2.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l6:level5
- {mso-level-tab-stop:2.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l6:level6
- {mso-level-tab-stop:3.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l6:level7
- {mso-level-tab-stop:3.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l6:level8
- {mso-level-tab-stop:4.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l6:level9
- {mso-level-tab-stop:4.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l7
- {mso-list-id:1898277882;
- mso-list-template-ids:822871964;}
-@list l7:level2
- {mso-level-number-format:alpha-lower;
- mso-level-tab-stop:1.0in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-@list l8
- {mso-list-id:2031451446;
- mso-list-template-ids:-2051742690;}
-@list l8:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;
- mso-ansi-font-size:10.0pt;
- font-family:Symbol;}
-@list l9
- {mso-list-id:2084135049;
- mso-list-template-ids:2028617002;}
-@list l9:level1
- {mso-level-start-at:8;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;}
-ol
- {margin-bottom:0in;}
-ul
- {margin-bottom:0in;}
--->
-</style>
-<!--[if gte mso 10]>
-<style>
- /* Style Definitions */
- table.MsoNormalTable
- {mso-style-name:"Table Normal";
- mso-tstyle-rowband-size:0;
- mso-tstyle-colband-size:0;
- mso-style-noshow:yes;
- mso-style-parent:"";
- mso-padding-alt:0in 5.4pt 0in 5.4pt;
- mso-para-margin:0in;
- mso-para-margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:10.0pt;
- font-family:"Times New Roman";}
-</style>
-<![endif]--><!--[if gte mso 9]><xml>
- <u1:shapelayout u2:ext="edit">
- <u1:idmap u2:ext="edit" data="1"/>
- </u1:shapelayout>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <o:shapedefaults v:ext="edit" spidmax="3074"/>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <o:shapelayout v:ext="edit">
- <o:idmap v:ext="edit" data="1"/>
- </o:shapelayout></xml><![endif]-->
-</head>
-
-<body lang=EN-US link=blue vlink=purple style='tab-interval:.5in'>
-
-<div class=Section1><!--
-
-
-<p class=MsoNormal><span style="font-size: 9pt">&nbsp;</span></p>
-<pre><a name="header-text">Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-&quot;License&quot;); 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
-&quot;AS IS&quot; 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. </a></pre>
-<p class=MsoNormal><span style="font-size: 9pt"><br>
-&nbsp;</span></p>
-<p class=MsoNormal><span style='font-size:9.0pt'>
-<o:p>&nbsp;</o:p></span></p>
-
--->
-
-<h1><st1:State><st1:place>Tuscany</st1:place></st1:State> RDB DAS Sample (<span
-class=SpellE>companyweb</span>)<o:p></o:p></h1>
-
-<p class=MsoNormal><u3:p>&nbsp;</u3:p></p>
-
-<p class=MsoNormal>This stand-alone sample demonstrates the SDO RDB Data Access
-Service in the context of a simple web application.<o:p></o:p></p>
-
-<p class=MsoNormal><u3:p>&nbsp;</u3:p></p>
-
-<p class=MsoNormal>The application starts with a canned database of Companies
-and their related Departments.<span style='mso-spacerun:yes'>  </span>Through
-the web page interface, a user can:<o:p></o:p></p>
-
-<p class=MsoNormal><u3:p>&nbsp;</u3:p></p>
-
-<ol style='margin-top:0in' start=1 type=1>
- <li class=MsoNormal style='mso-list:l3 level1 lfo3;tab-stops:list .5in'>Display
- all Companies in the database</li>
- <li class=MsoNormal style='mso-list:l3 level1 lfo3;tab-stops:list .5in'>Display
- all Companies and related Departments</li>
- <li class=MsoNormal style='mso-list:l3 level1 lfo3;tab-stops:list .5in'>Add a
- new Department to a Company</li>
- <li class=MsoNormal style='mso-list:l3 level1 lfo3;tab-stops:list .5in'>Delete
- all Departments from a Company</li>
- <li class=MsoNormal style='mso-list:l3 level1 lfo3;tab-stops:list .5in'>Change
- the names of Departments in a Company<o:p></o:p></li>
-</ol>
-
-<p class=MsoNormal><u3:p>&nbsp;</u3:p></p>
-
-<p class=MsoNormal>So, this simple application covers all CRUD operations as
-well as the some relationship manipulation (adding a Department associates that
-Department with the Company).<span style='mso-spacerun:yes'>  </span>The sample
-runs on Tomcat 5.5 and employs a <st1:City><st1:place>Derby</st1:place></st1:City>
-database accessed via a DataSource.</p>
-
-<h1>Running the sample</h1>
-
-<p class=MsoNormal>There are two options for running this sample:<o:p></o:p></p>
-
-<p class=MsoNormal><u3:p>&nbsp;</u3:p></p>
-
-<ol style='margin-top:0in' start=1 type=1>
- <li class=MsoNormal style='mso-list:l6 level1 lfo6;tab-stops:list .5in'>Run
- from Tomcat configured by the build</li>
- <li class=MsoNormal style='mso-list:l6 level1 lfo6;tab-stops:list .5in'>Deploying
- the <span class=SpellE>CompanyWeb</span> WAR into a Tomcat you configure
- yourself</li>
-</ol>
-
-<h3>Running from Tomcat configured by the build<u3:p></u3:p></h3>
-
-<p class=MsoNormal>This sample application is deployed (along with the canned
-test database) to an instance of Tomcat as part of our automated sample
-testing.<span style='mso-spacerun:yes'>  </span>This means you can run the
-java/<span class=SpellE>das</span>/samples/testing/tomcat build (see
-java/das/samples/testing/tomcat/<span class=GramE>readme.htm )</span><span
-style='mso-spacerun:yes'>  </span>and then access the application by pointing
-your browser to <span class=MsoHyperlink>http://localhost:8080/sample-companyweb/</span>.<span
-style='mso-spacerun:yes'>  </span></p>
-
-<h3>Deploying the <span class=SpellE>CompanyWeb</span> WAR into a Tomcat you
-configure yourself</h3>
-
-<p class=MsoNormal>Alternatively, you can deploy the sample to your own
-configured Tomcat installation by following the instructions below.<span
-style='mso-spacerun:yes'>  </span>These instructions assume that you have either
-1) downloaded the Tuscany sample distribution or 2) Downloaded the Tuscany
-source and run our maven build, see the following link to more details steps on
-how to build DAS Sample applications <a
-href="http://incubator.apache.org/tuscany/java_das_overview.html">http://incubator.apache.org/tuscany/java_das_overview.html</a>
-.</p>
-
-<h1><span style='font-size:12.0pt;mso-bidi-font-size:16.0pt;font-family:"Times New Roman";
-mso-bidi-font-family:Arial;mso-font-kerning:0pt'>Set Up<u3:p></u3:p></span></h1>
-
-<ol style='margin-top:0in' start=1 type=1>
- <li class=MsoNormal style='mso-list:l4 level1 lfo9;tab-stops:list .5in'>Download
- and install the most recent stable version of Tomcat 5.5.<span
- style='mso-spacerun:yes'>  </span>You can find it here: <a
- href="http://tomcat.apache.org/download-55.cgi">http://tomcat.apache.org/download-55.cgi</a></li>
- <li class=MsoNormal style='mso-list:l4 level1 lfo9;tab-stops:list .5in'>Download
- the most recent official release of <st1:City><st1:place>Derby</st1:place></st1:City>
- from here: <a href="http://db.apache.org/derby/index.html">http://db.apache.org/derby/index.html</a>.<span
- style='mso-spacerun:yes'>  </span>The only file you’ll need from this
- download is <span class=SpellE>derby.jar</span></li>
- <li class=MsoNormal style='mso-list:l4 level1 lfo9;tab-stops:list .5in'>Stop
- Tomcat</li>
- <li class=MsoNormal style='mso-list:l4 level1 lfo9;tab-stops:list .5in'>Copy <span
- class=SpellE>derby.jar</span> (from the derby distribution) to {<span
- class=SpellE>Tomcat_Home</span>}/common/lib:</li>
- <li class=MsoNormal style='mso-list:l4 level1 lfo9;tab-stops:list .5in'>Add
- the sample war file to {<span class=SpellE>Tomcat_Home</span>}/<span
- class=SpellE>webapps</span></li>
- <ol style='margin-top:0in' start=1 type=a>
- <li class=MsoNormal style='mso-list:l4 level2 lfo9;tab-stops:list 1.0in'>sample-<span
- class=SpellE>companyweb-xxx.war</span> (e.g.
- “sample-companyweb-1.0-incubator-M2.war”)</li>
- </ol>
- <li class=MsoNormal style='mso-list:l4 level1 lfo9;tab-stops:list .5in'>Install
- the canned <st1:City><st1:place>Derby</st1:place></st1:City> database to
- Tomcat: </li>
- <ol style='margin-top:0in' start=1 type=a>
- <li class=MsoNormal style='mso-list:l4 level2 lfo9;tab-stops:list 1.0in'>First,
- create a new directory named “Databases” to hold the sample database.<span
- style='mso-spacerun:yes'>  </span>Create {<span class=SpellE>Tomcat_Home</span>}/Databases</li>
- <li class=MsoNormal style='mso-list:l4 level2 lfo9;tab-stops:list 1.0in'>Copy
- the <span class=SpellE>dastest</span> folder (and all its contents) from
- {build directory root OR where samples where unzipped}/java/<span
- class=SpellE>das/samples/companyweb</span> to {<span class=SpellE>Tomcat_Home</span>}/Databases.<span
- style='mso-spacerun:yes'>   </span><br>
- <br>
- <b style='mso-bidi-font-weight:normal'>NOTE</b>: If you are running this
- from a sample distribution, the canned database is available in the
- distribution, inside the databases directory. </li>
- </ol>
-</ol>
-
-<p class=MsoNormal style='margin-left:.75in'><o:p>&nbsp;</o:p></p>
-
-<ol style='margin-top:0in' start=7 type=1>
- <li class=MsoNormal style='mso-list:l4 level1 lfo9;tab-stops:list .5in'>Define
- a DataSource by adding a <span class=SpellE>datasource</span> definition
- to {<span class=SpellE><span class=codefrag>Tomcat_Home</span></span><span
- class=codefrag>}/conf/<span class=SpellE>server.xml</span></span>.</li>
- <ol style='margin-top:0in' start=1 type=a>
- <li class=MsoNormal style='mso-list:l4 level2 lfo9;tab-stops:list 1.0in'>Find
- the end-of-section marker <span class=codefrag>&lt;/<span class=SpellE>GlobalNamingResources</span>&gt;</span>
- and add the following lines just above it: <o:p></o:p></li>
- </ol>
-</ol>
-
-<p class=MsoNormal style='margin-left:.5in'><u3:p>&nbsp;</u3:p></p>
-
-<pre><span style='mso-spacerun:yes'>        </span><span class=GramE><span
-style='font-size:9.0pt'>&lt;!--</span></span><span style='font-size:9.0pt'> Global <span
-class=SpellE>Datasource</span> for </span><st1:City><st1:place><span
- style='font-size:9.0pt'>Derby</span></st1:place></st1:City><span
-style='font-size:9.0pt'> <span class=SpellE>dastest</span> database --&gt;<u3:p></u3:p></span></pre><pre><span
-style='font-size:9.0pt'><span style='mso-spacerun:yes'>         </span>&lt;Resource name=&quot;<span
-class=SpellE>jdbc/dastest</span>&quot;<u3:p></u3:p></span></pre><pre><span
-style='font-size:9.0pt'><span style='mso-spacerun:yes'>              </span><span
-class=GramE>type</span>=&quot;<span class=SpellE>javax.sql.DataSource</span>&quot;<span style='mso-spacerun:yes'>  </span>auth=&quot;Container&quot;<u3:p></u3:p></span></pre><pre><span
-style='font-size:9.0pt'><span style='mso-spacerun:yes'>              </span><span
-class=GramE>description</span>=&quot;</span><st1:City><st1:place><span
- style='font-size:9.0pt'>Derby</span></st1:place></st1:City><span
-style='font-size:9.0pt'> database for DAS Company sample&quot;<u3:p></u3:p></span></pre><pre><span
-style='font-size:9.0pt'><span style='mso-spacerun:yes'>              </span><span
-class=SpellE><span class=GramE>maxActive</span></span>=&quot;100&quot; <span
-class=SpellE>maxIdle</span>=&quot;30&quot; <span class=SpellE>maxWait</span>=&quot;10000&quot;<u3:p></u3:p></span></pre><pre><span
-style='font-size:9.0pt'><span style='mso-spacerun:yes'>              </span>username=&quot;&quot; password=&quot;&quot; <u3:p></u3:p></span></pre><pre><span
-style='font-size:9.0pt'><span style='mso-spacerun:yes'>              </span><span
-class=SpellE><span class=GramE>driverClassName</span></span>=&quot;<span
-class=SpellE>org.apache.derby.jdbc.EmbeddedDriver</span>&quot;<u3:p></u3:p></span></pre><pre><span
-style='font-size:9.0pt'><span style='mso-spacerun:yes'>              </span><span
-class=SpellE><span class=GramE>url</span></span>=&quot;<span class=SpellE>jdbc:derby</span>:{absolute path}Databases/<span
-class=SpellE>dastest</span>&quot;/&gt;<u3:p></u3:p></span></pre>
-
-<p class=MsoNormal><o:p>&nbsp;</o:p></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span
-style='mso-spacerun:yes'> </span><b style='mso-bidi-font-weight:normal'>Requirement</b>:
-You must include the absolute path to the “Databases” directory in the above <span
-class=SpellE><span class=GramE>url</span></span> attribute.<span
-style='mso-spacerun:yes'>  </span>Fore example:<o:p></o:p></p>
-
-<p class=MsoNormal style='margin-left:.5in'><u3:p>&nbsp;</u3:p></p>
-
-<pre><span style='mso-spacerun:yes'>         </span><span class=SpellE>url</span>=&quot;jdbc:derby:c:\apache-tomcat-5.5.17\Databases/dastest&quot;/&gt;<o:p></o:p></pre><u3:p></u3:p>
-
-<p class=MsoNormal style='margin-left:.5in'><span
-style='mso-spacerun:yes'> </span></p>
-
-<ol style='margin-top:0in' start=1 type=1>
- <li class=MsoNormal style='mso-list:l4 level1 lfo9;tab-stops:list .5in'>Start
- tomcat and point your browser to: <a
- href="http://localhost:8080/sample-companyweb-%7bversion%20tag%7d/"><span
- style='color:windowtext;text-decoration:none;text-underline:none'>http://localhost:8080/sample-companyweb-{version
- tag}/</span></a></li>
-</ol>
-
-<p class=MsoNormal style='margin-left:1.5in'><o:p>&nbsp;</o:p></p>
-
-<p class=MsoNormal style='margin-left:1.5in'><span class=GramE>example</span>: <span
-class=MsoHyperlink>http://localhost:8080/sample-companyweb-1.0-incubator-M2/</span><o:p></o:p></p>
-
-<p class=MsoNormal style='margin-left:1.0in'><u3:p>&nbsp;</u3:p></p>
-
-<h1>Sample Architecture</h1>
-
-<p class=MsoNormal>This is a simple, single-page, web application.<span
-style='mso-spacerun:yes'>  </span>The main components of this application are:</p>
-
-<ul style='margin-top:0in' type=disc>
- <li class=MsoNormal style='mso-list:l2 level1 lfo15;tab-stops:list .5in'>The
- RDB Data Access Service (DAS)</li>
- <li class=MsoNormal style='mso-list:l2 level1 lfo15;tab-stops:list .5in'>SDO</li>
- <li class=MsoNormal style='mso-list:l2 level1 lfo15;tab-stops:list .5in'><span
- class=SpellE>CompanyClient.java</span></li>
- <li class=MsoNormal style='mso-list:l2 level1 lfo15;tab-stops:list .5in'><span
- class=SpellE>Company.jsp</span></li>
- <li class=MsoNormal style='mso-list:l2 level1 lfo15;tab-stops:list .5in'>The
- canned <st1:City><st1:place>Derby</st1:place></st1:City> database<o:p></o:p></li>
-</ul>
-
-<p class=MsoNormal><u3:p>&nbsp;</u3:p><o:p></o:p></p>
-
-<p class=MsoNormal><u3:p>&nbsp;</u3:p></p>
-
-<p class=MsoNormal>The <span class=SpellE><b style='mso-bidi-font-weight:normal'>CompanyClient</b></span>
-uses the <b style='mso-bidi-font-weight:normal'>DAS</b> directly and provides
-high-level services to the <span class=SpellE>jsp</span> such as:</p>
-
-<p class=MsoNormal style='margin-left:.5in'><span class=GramE>public</span>
-final List <span class=SpellE>getCompanies</span>()</p>
-
-<p class=MsoNormal>This is a good place to look for how you might use the DAS
-in your own application.<o:p></o:p></p>
-
-<p class=MsoNormal style='margin-left:.5in'><u3:p>&nbsp;</u3:p></p>
-
-<p class=MsoNormal>The <span class=SpellE><b style='mso-bidi-font-weight:normal'>Company.jsp</b></span>
-responds to client interaction by invoking services of the <span class=SpellE>CompanyClient</span>.<span
-style='mso-spacerun:yes'>  </span>It receives data from the <span class=SpellE>CompanyClient</span>
-as SDO data graphs and manipulates SDOs directly to display data.<o:p></o:p></p>
-
-<p class=MsoNormal><u3:p>&nbsp;</u3:p></p>
-
-<p class=MsoNormal>The canned <st1:City><st1:place><b style='mso-bidi-font-weight:
- normal'>Derby</b></st1:place></st1:City><b style='mso-bidi-font-weight:normal'>
-database</b> comes preloaded with Companies and related Departments. <span
-style='mso-spacerun:yes'> </span>The <st1:City><st1:place>Derby</st1:place></st1:City>
-database instance is a simple file folder.<o:p></o:p></p>
-
-<p class=MsoNormal><u3:p>&nbsp;</u3:p></p>
-
-<p class=MsoNormal>The <b style='mso-bidi-font-weight:normal'>DAS</b> accepts
-directives (commands) from the <span class=SpellE><b style='mso-bidi-font-weight:
-normal'>CompanyClient</b></span><b style='mso-bidi-font-weight:normal'> </b>and
-reads and writes to the derby database instance appropriately.<b
-style='mso-bidi-font-weight:normal'> </b><o:p></o:p></p>
-
-</div>
-
-<u3:p></u3:p>
-</body>
-
-</html>
diff --git a/branches/das-java-M2/samples/companyweb/src/main/java/org/apache/tuscany/samples/das/companyweb/CompanyClient.java b/branches/das-java-M2/samples/companyweb/src/main/java/org/apache/tuscany/samples/das/companyweb/CompanyClient.java
deleted file mode 100644
index d0519ecc08..0000000000
--- a/branches/das-java-M2/samples/companyweb/src/main/java/org/apache/tuscany/samples/das/companyweb/CompanyClient.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.samples.das.companyweb;
-
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Random;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-
-import commonj.sdo.DataObject;
-
-public class CompanyClient {
-
- private Random generator = new Random();
-
- private DAS das = DAS.FACTORY.createDAS(getConfig("CompanyConfig.xml"));
-
- public final List getCompanies() {
-
- Command read = das.getCommand("all companies");
- DataObject root = read.executeQuery();
- return root.getList("COMPANY");
-
- }
-
- public final List getCompaniesWithDepartments() {
-
- Command read = das.getCommand("all companies and departments");
- DataObject root = read.executeQuery();
- return root.getList("COMPANY");
- }
-
- public final List getDepartmentsForCompany(int id) {
- Command read = das.getCommand("all departments for company");
- read.setParameter(1, new Integer(id));
- DataObject root = read.executeQuery();
- return root.getList("COMPANY");
- }
-
- public final void addDepartmentToFirstCompany() {
- Command read = das.getCommand("all companies and departments");
- DataObject root = read.executeQuery();
- DataObject firstCustomer = root.getDataObject("COMPANY[1]");
-
- DataObject newDepartment = root.createDataObject("DEPARTMENT");
- newDepartment.setString("NAME", "Default Name");
- firstCustomer.getList("departments").add(newDepartment);
-
- das.applyChanges(root);
-
- }
-
- public final void deleteDepartmentsFromFirstCompany() {
-
- // This section gets the ID of the first Company just so I can
- // demonstrate a parameterized command next
- Command readAll = das.getCommand("all companies and departments");
- DataObject root = readAll.executeQuery();
- int idOfFirstCustomer = root.getInt("COMPANY[1]/ID");
- System.out.println("ID of first company is: " + idOfFirstCustomer);
-
- // Read a specific company based on the known ID
- Command readCust = das.getCommand("company by id with departments");
- readCust.setParameter(1, new Integer(idOfFirstCustomer));
- root = readCust.executeQuery();
-
- // Delete all the comany's departments from the graph
- DataObject firstCustomer = root.getDataObject("COMPANY[1]");
-
- // Shallow copy of list for deleting. This is required to avoid the
- // dreaded
- // ConcurrentModificationException since #delete operation also removes
- // from the original list
- List allDepartments = new ArrayList(firstCustomer.getList("departments"));
-
- Iterator i = allDepartments.iterator();
- DataObject department;
- while (i.hasNext()) {
- department = (DataObject) i.next();
- System.out.println("Deleting department named: " + department.getString("NAME"));
- department.delete();
- }
-
- das.applyChanges(root);
-
- }
-
- public final void changeFirstCompanysDepartmentNames() {
-
- // This section gets the ID of the first Company just so I can
- // demonstrate a parameterized command next
- Command readAll = das.getCommand("all companies and departments");
- DataObject root = readAll.executeQuery();
- int idOfFirstCustomer = root.getInt("COMPANY[1]/ID");
- System.out.println("ID of first company is: " + idOfFirstCustomer);
-
- // Read a specific company based on the known ID
- Command readCust = das.getCommand("company by id with departments");
- readCust.setParameter(1, new Integer(idOfFirstCustomer));
- root = readCust.executeQuery();
-
- // Modify all the comany's department names
- DataObject firstCustomer = root.getDataObject("COMPANY[1]");
- Iterator i = firstCustomer.getList("departments").iterator();
- DataObject department;
- while (i.hasNext()) {
- department = (DataObject) i.next();
- System.out.println("Modifying department: " + department.getString("NAME"));
- department.setString("NAME", getRandomDepartmentName());
- }
- das.applyChanges(root);
-
- }
-
-
- public void releaseResources() {
- das.releaseResources();
- }
-
- // Utilities
-
- private String getRandomDepartmentName() {
- int number = generator.nextInt(1000) + 1;
- return "Dept-" + number;
- }
-
- private InputStream getConfig(String fileName) {
- return getClass().getClassLoader().getResourceAsStream(fileName);
- }
-
-}
diff --git a/branches/das-java-M2/samples/companyweb/src/main/resources/CompanyConfig.xml b/branches/das-java-M2/samples/companyweb/src/main/resources/CompanyConfig.xml
deleted file mode 100644
index 1992ab02cd..0000000000
--- a/branches/das-java-M2/samples/companyweb/src/main/resources/CompanyConfig.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Config xsi:noNamespaceSchemaLocation="http:///org.apache.tuscany.das.rdb/config.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <ConnectionInfo dataSource="java:comp/env/jdbc/dastest"/>
-
- <Command name="all companies" SQL="select * from COMPANY" kind="Select"/>
-
- <Command name="all companies and departments" SQL="select * from COMPANY left outer join DEPARTMENT on COMPANY.ID = DEPARTMENT.COMPANYID" kind="Select"/>
-
- <Command name="all departments for company" SQL="select * from COMPANY inner join DEPARTMENT on COMPANY.ID = DEPARTMENT.COMPANYID where COMPANY.ID = ?" kind="Select"/>
-
- <Command name="company by id with departments" SQL="select * from COMPANY left outer join DEPARTMENT on COMPANY.ID = DEPARTMENT.COMPANYID where COMPANY.ID = ?" kind="Select"/>
-
-
- <Table tableName="COMPANY">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- </Table>
-
- <Table tableName="DEPARTMENT">
- <Column columnName="ID" primaryKey="true" generated="true"/>
- </Table>
-
- <Relationship name="departments" primaryKeyTable="COMPANY" foreignKeyTable="DEPARTMENT" many="true">
- <KeyPair primaryKeyColumn="ID" foreignKeyColumn="COMPANYID"/>
- </Relationship>
-
-
-</Config>
diff --git a/branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/LICENSE.txt b/branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/LICENSE.txt
deleted file mode 100644
index d645695673..0000000000
--- a/branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/LICENSE.txt
+++ /dev/null
@@ -1,202 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- 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.
diff --git a/branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/NOTICE b/branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/NOTICE
deleted file mode 100644
index f1aa4f1921..0000000000
--- a/branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/NOTICE
+++ /dev/null
@@ -1,32 +0,0 @@
-Apache Tuscany DAS for Java
-Copyright 2006 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-
-Apache Tuscany is an effort undergoing incubation at The Apache Software Foundation (ASF),
-sponsored by the Apache Web Services PMC. Incubation is required of all newly accepted
-projects until a further review indicates that the infrastructure, communications,
-and decision making process have stabilized in a manner consistent with other successful
-ASF projects. While incubation status is not necessarily a reflection of the completeness
-or stability of the code, it does indicate that the project has yet to be fully endorsed
-by the ASF.
-
-Unless otherwise indicated, all distribution made available by the Apache Software Foundation
-is provided to you under the terms and conditions of the Apache License Version 2.0 ("AL").
-A copy of the AL is provided with this distribution as the LICENSE.txt file present in the
-root directory, and is also available at http://www.apache.org/licenses/.
-
-The terms and conditions governing the distribution may refer to the AL or other license
-agreements, notices or terms and conditions. Some of these other license agreements may
-include (but are not limited to):
-
- . Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)
- . Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)
-
-This product also includes software developed by:
-- the Eclipse Modeling Framework project (http://www.eclipse.org/emf/)
-
-It is your obligation to read and accept all such terms and conditions prior to use of the
-distribution. If term or condition is provided, please contact the Apache Software Foundation
-to determine what terms and conditions govern that particular distribution.
diff --git a/branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/README.txt b/branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/README.txt
deleted file mode 100644
index 107de8c3ca..0000000000
--- a/branches/das-java-M2/samples/companyweb/src/main/resources/META-INF/README.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-Apache Tuscany M2 build (October, 2006)
-===================================
-
-http://incubator.apache.org/tuscany/
-
-Tuscany is an effort undergoing incubation at the Apache Software Foundation
-(ASF), sponsored by the Web Services PMC.
-
-Incubation is required of all newly accepted projects until a further review
-indicates that the infrastructure, communications, and decision making process
-have stabilized in a manner consistent with other successful ASF projects.
-
-While incubation status is not necessarily a reflection of the completeness or
-stability of the code, it does indicate that the project has yet to be fully
-endorsed by the ASF.
-
-
-Support
--------
-
-Any problem with this release can be reported to the Tuscany mailing list
-or in the JIRA issue tracker.
-
-Mailing list subscription:
- tuscany-dev-subscribe@ws.apache.org
-
-Jira:
- http://issues.apache.org/jira/browse/Tuscany
-
-
-Thank you for using Tuscany!
-
-
-The Tuscany Team.
-
diff --git a/branches/das-java-M2/samples/companyweb/src/main/resources/log4j.properties b/branches/das-java-M2/samples/companyweb/src/main/resources/log4j.properties
deleted file mode 100644
index 5c49df303c..0000000000
--- a/branches/das-java-M2/samples/companyweb/src/main/resources/log4j.properties
+++ /dev/null
@@ -1,29 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you 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.
-#
-# Set root logger level to DEBUG and its only appender to A1.
-log4j.rootLogger=INFO, A1
-
-# A1 is set to be a ConsoleAppender.
-log4j.appender.A1=org.apache.log4j.ConsoleAppender
-
-# A1 uses PatternLayout.
-log4j.appender.A1.layout=org.apache.log4j.PatternLayout
-log4j.appender.A1.layout.ConversionPattern=[DAS RDB] - %c{1}.%M (%L) : %m %n
-
-# Print only messages of level WARN or above in the package com.foo.
-log4j.logger.org.apache.tuscany=NONE \ No newline at end of file
diff --git a/branches/das-java-M2/samples/companyweb/src/main/webapp/Company.jsp b/branches/das-java-M2/samples/companyweb/src/main/webapp/Company.jsp
deleted file mode 100644
index 58db88c623..0000000000
--- a/branches/das-java-M2/samples/companyweb/src/main/webapp/Company.jsp
+++ /dev/null
@@ -1,158 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<html>
-<head>
-<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
-
- pageEncoding="ISO-8859-1"
-
- import="org.apache.tuscany.samples.das.companyweb.CompanyClient"
- import="commonj.sdo.*"
-%>
-
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Company Test</title>
-</head>
-<body>
-
-<H2>Tuscany DAS Companies WEB Example</H2>
-
-
-<form>
-<input type="submit" id="doFill" name="doFill" value="All Companies">
-<input type="submit" id="doFillAll" name="doFillAll" value="All Companies/Departments">
-<input type="submit" id="doAddDepartment" name="doAddDepartment" value="Add department to first company">
-<input type="submit" id="doChangeDepartmentNames" name="doChangeDepartmentNames" value="Change Company(1) Dept names">
-<input type="submit" id="doDeleteDepartments" name="doDeleteDepartments" value="Delete Company(1) Depts">
-<hr>
-
-<!-- Do Fill -->
-<%if(request.getParameter("doFill") != null){%>
-
-<table border>
- <thead>
- <tr>
- <th>ID</th>
- <th>Name</th>
- </tr>
- </thead>
- <tbody>
-
- <%
- CompanyClient companyClient = new CompanyClient();
- java.util.Iterator i = companyClient.getCompaniesWithDepartments().iterator();
- while (i.hasNext()) {
- DataObject company = (DataObject)i.next();
- %>
- <tr>
- <td><%=company.getInt("ID")%></td>
- <td><%=company.getString("NAME")%></td>
- <tr>
- <%
- }
- companyClient.releaseResources();
- %>
-
- </tbody>
-</table>
-<%}%>
-
-
-<!-- Do Add Department -->
-<%
-if(request.getParameter("doAddDepartment") != null){
- CompanyClient companyClient = new CompanyClient();
- companyClient.addDepartmentToFirstCompany();
- companyClient.releaseResources();
-}
-%>
-
-<!-- Do Delete Departments from first company -->
-<%
-if(request.getParameter("doDeleteDepartments") != null){
- CompanyClient companyClient = new CompanyClient();
- companyClient.deleteDepartmentsFromFirstCompany();
- companyClient.releaseResources();
-}
-%>
-
-<!-- Do Change First Company's Department Names -->
-<%
-if(request.getParameter("doChangeDepartmentNames") != null){
- CompanyClient companyClient = new CompanyClient();
- companyClient.changeFirstCompanysDepartmentNames();
- companyClient.releaseResources();
-}
-%>
-
-
-<!-- Do FillAll -->
-<%if(request.getParameter("doFill") == null) {%>
-
-<table border>
- <thead>
- <tr>
- <th>ID</th>
- <th>Name</th>
- <th>Department_ID</th>
- <th>Department_Name</th>
- </tr>
- </thead>
- <tbody>
-
- <%
- CompanyClient companyClient = new CompanyClient();
- java.util.Iterator i = companyClient.getCompaniesWithDepartments().iterator();
- while (i.hasNext()) {
- DataObject company = (DataObject)i.next();
- %>
- <tr>
- <td><%=company.getInt("ID")%></td>
- <td><%=company.getString("NAME")%></td>
- <tr>
-
-
-
- <%
- java.util.Iterator j = company.getList("departments").iterator();
- while (j.hasNext()) {
- DataObject department = (DataObject)j.next();
- %>
- <tr>
- <td></td><td></td><td><%=department.getInt("ID")%></td>
- <td><%=department.getString("NAME")%></td>
- <tr>
- <%
- }
- %>
- <%
- }
- companyClient.releaseResources();
- %>
-
- </tbody>
-</table>
-<%}%>
-
-
-
-</form>
-</body>
-</html>
diff --git a/branches/das-java-M2/samples/companyweb/src/main/webapp/META-INF/context.xml b/branches/das-java-M2/samples/companyweb/src/main/webapp/META-INF/context.xml
deleted file mode 100644
index 5f0af32dd5..0000000000
--- a/branches/das-java-M2/samples/companyweb/src/main/webapp/META-INF/context.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<Context path="/DAS Stand alone app" debug="5" reloadable="true" crossContext="true">
-
- <Manager pathname=""/>
- <ResourceLink name="jdbc/dastest" global="jdbc/dastest" type="javax.sql.DataSource" />
-
-</Context>
diff --git a/branches/das-java-M2/samples/companyweb/src/main/webapp/WEB-INF/web.xml b/branches/das-java-M2/samples/companyweb/src/main/webapp/WEB-INF/web.xml
deleted file mode 100644
index dc7e488fef..0000000000
--- a/branches/das-java-M2/samples/companyweb/src/main/webapp/WEB-INF/web.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web
-Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
-
-<web-app>
- <display-name>Tuscany DAS sample Company WEB</display-name>
-
- <welcome-file-list id="WelcomeFileList">
- <welcome-file>Company.jsp</welcome-file>
- </welcome-file-list>
-
-</web-app>
diff --git a/branches/das-java-M2/samples/pom.xml b/branches/das-java-M2/samples/pom.xml
deleted file mode 100644
index ff1edb39d6..0000000000
--- a/branches/das-java-M2/samples/pom.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.
--->
-<project>
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.apache.tuscany.das</groupId>
- <artifactId>tuscany-das</artifactId>
- <version>1.0-incubator-M2-SNAPSHOT</version>
- </parent>
-
- <groupId>org.apache.tuscany.das.samples</groupId>
- <artifactId>tuscany-samples-das</artifactId>
- <packaging>pom</packaging>
- <name>Tuscany DAS Samples</name>
-
- <modules>
- <module>companyweb</module>
- </modules>
-</project>
diff --git a/branches/das-java-M2/samples/testing/tomcat/build.xml b/branches/das-java-M2/samples/testing/tomcat/build.xml
deleted file mode 100644
index af159f940a..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/build.xml
+++ /dev/null
@@ -1,291 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<project name="setup tomcat" default="prepareTomcat" basedir='.'>
- <property environment="env" />
- <property file="${user.home}/tuscany/build.properties" />
- <property file="${user.home}/build.properties" />
-
- <property name="tuscany.acceptance.tomcat.version" value='5.5.17' />
- <condition property="tuscany.acceptance.tomcat.zipped" value='apache-tomcat-${tuscany.acceptance.tomcat.version}.zip'>
- <os family="windows"/>
- </condition>
- <condition property="tuscany.acceptance.tomcat.zipped" value='apache-tomcat-${tuscany.acceptance.tomcat.version}.tar.gz'>
- <or>
- <os family="unix"/>
- <os family="mac"/>
- </or>
- </condition>
- <condition property="ant.home" value="${env.ANT_HOME}">
- <os family="unix"/>
- </condition>
-
- <property name="tuscany.acceptance.target.dir" value='target' />
- <property name="tuscany.acceptance.tc.dir" value='${tuscany.acceptance.target.dir}/apache-tomcat-${tuscany.acceptance.tomcat.version}' />
-
-
-<!-- KJW define property for the complete path of apache dir -->
- <property name="fullpath.tuscany.acceptance.tc.dir" value= '${basedir}/${tuscany.acceptance.tc.dir}' />
-
-
- <property name="tuscany.acceptance.groupId" value='org/apache/tuscany' />
- <property name="tuscany.acceptance.version" value='incubating-M1' />
-
- <property name="tuscany.commonj.acceptance.groupId" value='commonj' />
- <property name="tuscany.commonj.acceptance.version" value='incubating-M1' />
-
- <property name="tuscany.sdo.acceptance.groupId" value='org/apache/tuscany' />
- <property name="tuscany.sdo.acceptance.version" value='incubating-M1' />
-
-<!--KJW Define location of canned Derby database -->
- <property name="tuscany.acceptance.das.samples.companyweb.dir" value='../../companyweb' />
-
- <property name="tuscany.maven.repos.dir" value='${user.home}\.m2\repository' />
- <condition property="isWindows">
- <os family="windows"/>
- </condition>
- <condition property="isUnix">
- <os family="unix"/>
- </condition>
- <condition property="isMac">
- <os family="mac"/>
- </condition>
-
- <patternset id="tuscany.acceptance.common.dependencies">
- <include name="**/stax/stax-api/1.0/stax-api-1.0.jar"/>
- <include name="**/woodstox/wstx-asl/2.9.3/wstx-asl-2.9.3.jar" />
- </patternset>
-
- <patternset id="tuscany.acceptance.emf.dependencies">
- <include name="**/org/eclipse/emf/common/2.2.0-RC4/common-2.2.0-RC4.jar" />
- <include name="**/org/eclipse/emf/ecore/2.2.0-RC4/ecore-2.2.0-RC4.jar" />
- <include name="**/org/eclipse/emf/ecore-change/2.2.0-RC4/ecore-change-2.2.0-RC4.jar" />
- <include name="**/org/eclipse/emf/ecore-xmi/2.2.0-RC4/ecore-xmi-2.2.0-RC4.jar" />
- <include name="**/org/eclipse/xsd/xsd/2.2.0-RC4/xsd-2.2.0-RC4.jar" />
- </patternset>
-
- <patternset id="tuscany.acceptance.tc.specsdoimpl"> <!--jars which need to go into tomcat common/lib -->
- <include name="**/${tuscany.sca.acceptance.groupId}/sca-api/${tuscany.sca.acceptance.version}/sca-api-${tuscany.sca.acceptance.version}.jar" />
- <include name="**/${tuscany.commonj.acceptance.groupId}/sdo-api/${tuscany.commonj.acceptance.version}/sdo-api-${tuscany.commonj.acceptance.version}.jar" />
- <include name="**/${tuscany.acceptance.groupId}/tuscany-sdo-impl/${tuscany.acceptance.version}/tuscany-sdo-impl-${tuscany.acceptance.version}.jar" />
- </patternset>
-
- <target name="init">
- <available property='tomcat.is.available' file='${tuscany.acceptance.tc.dir}/server/lib/catalina.jar' type='file' />
- <available property='tuscany.acceptance.tomcat.zipped.available' file='${tuscany.acceptance.tomcat.zipped}' type='file' />
- <available property='tuscany.acceptance.tomcat.serverxmlorg.available' file='${tuscany.acceptance.tc.dir}/conf/server.xml.original' />
- <available property='tuscany.acceptance.tomcat.contextxmlorg.available' file='${tuscany.acceptance.tc.dir}/conf/context.xml.original' />
- </target>
-
- <target name="check.for.zip" depends="init" unless='tuscany.acceptance.tomcat.zipped.available'>
- <property name='tuscany.acceptance.tomcat.zipped.full' location="${tuscany.acceptance.tomcat.zipped}" />
- <echo level="error" message="${tuscany.acceptance.tomcat.zipped} file not found here:'${tuscany.acceptance.tomcat.zipped.full}'" />
- <echo level="error" message="Either place zip file there or change ${user.home}/build.properties in home dir to include 'tuscany.acceptance.tomcat.zipped' property to where zip is located. " />
- <fail />
- </target>
-
-
- <target name="tuscany.tomcat.unzipWindows" if="isWindows" depends='init,check.for.zip' description='Just unzip tomcat' unless='tomcat.is.available'>
- <unzip src="${tuscany.acceptance.tomcat.zipped}" dest="${tuscany.acceptance.target.dir}" />
- </target>
- <target name="tuscany.tomcat.unzipUnix" if="isUnix" depends='init,check.for.zip' description='Just unzip tomcat' unless='tomcat.is.available'>
- <mkdir dir="${tuscany.acceptance.target.dir}" />
- <gunzip src="${tuscany.acceptance.tomcat.zipped}" dest="${tuscany.acceptance.target.dir}/temp.tar"/>
- <!-- Exec tar because ant builtin tar does not preserve execute permissions. -->
- <exec executable="tar" dir="${tuscany.acceptance.target.dir}">
- <arg value="xf"/>
- <arg value="temp.tar"/>
- </exec>
- <delete file="${tuscany.acceptance.target.dir}/temp.tar"/>
- </target>
- <target name="tuscany.tomcat.unzipMac" if="isMac" depends='init,check.for.zip' description='Just unzip tomcat' unless='tomcat.is.available'>
- <antcall target="tuscany.tomcat.unzipUnix" /> <!-- just use unix for now -->
- </target>
-
- <target name="prepareTomcat" depends='tuscany.tomcat.unzipWindows,tuscany.tomcat.unzipUnix,tuscany.tomcat.unzipMac,tuscany.tomcat.fixup,tuscany.deploy.das.standalone' description='Unzip tomcat, fix it up, and deploy samples'>
- <dirname property='tuscany.acceptance.tc.dir.full' file="${tuscany.acceptance.tc.dir}/bin" />
- <echo level="info" message="Tomcat fixed up here: ${tuscany.acceptance.tc.dir.full}" />
-
- </target>
- <target name="startTestServer" depends='prepareTomcat' description='start server prepared to run tests'>
- <waitfor maxwait="1" maxwaitunit="second" checkevery="200" timeoutproperty="tuscany.tomcat.notstarted" >
- <http url="http://localhost:8080"/>
- </waitfor>
- <condition property="tuscany.tomcat.alreadystarted">
- <not>
- <istrue value="${tuscany.tomcat.notstarted}"/>
- </not>
- </condition>
- <antcall target="startTomcat" />
- </target>
-
- <target name="tuscany.tomcat.fixup" depends='tuscany.tomcat.fixserverconfig' description='Fix up tomcat for tuscany.'>
- <mkdir dir="${tuscany.acceptance.target.dir}" />
-
- <copy todir="${tuscany.acceptance.tc.dir}/common/lib" flatten='true'>
- <fileset dir="${tuscany.maven.repos.dir}">
- <patternset refid="tuscany.acceptance.emf.dependencies" />
- </fileset>
- <fileset dir="${tuscany.maven.repos.dir}">
- <patternset refid="tuscany.acceptance.tc.specsdoimpl" />
- </fileset>
- <fileset dir="${tuscany.maven.repos.dir}">
- <patternset> <!-- for Derby and DAS support -->
- <include name="**/${tuscany.acceptance.groupId}/das/tuscany-das-rdb/${tuscany.acceptance.version}/tuscany-das-rdb-${tuscany.acceptance.version}.jar" />
- <include name="**/org/apache/derby/derby/10.1.2.1/derby-10.1.2.1.jar" />
- </patternset>
- </fileset>
- <fileset dir="${tuscany.maven.repos.dir}">
- <patternset refid="tuscany.acceptance.common.dependencies" />
- </fileset>
- </copy>
- </target>
-
- <!-- DAS standalone target -->
- <target name="tuscany.deploy.das.standalone" description='Deploy DAS stand alone sample to tomcat.'>
- <copy todir="${tuscany.acceptance.tc.dir}/webapps" flatten='true'>
- <fileset dir="${tuscany.acceptance.das.samples.companyweb.dir}">
- <include name="**/*.war" />
- </fileset>
- <chainedmapper>
- <flattenmapper/>
- <globmapper from="*-1.0-incubator-M2-SNAPSHOT.war" to="*.war"/>
- </chainedmapper>
- </copy>
-
- <!-- Create directory for the derby database -->
- <property name="tuscany.acceptance.target.databases.dir" value='${tuscany.acceptance.tc.dir}/Databases' />
- <mkdir dir="${tuscany.acceptance.target.databases.dir}" />
-
- <!-- Copy over the Derby database -->
- <copy todir="${tuscany.acceptance.target.databases.dir}">
- <fileset dir="${tuscany.acceptance.das.samples.companyweb.dir}">
- <include name="**/dastest/**" />
- </fileset>
- </copy>
- </target>
-
-
- <!-- provide a convenient -Djava.ext.dirs= to run j2se samples -->
- <target name="j2se" description='create a java extensions directory to run J2SE tuscany applications.'>
- <property name="tuscany.acceptance.j2se.dir" value='${tuscany.acceptance.target.dir}/j2se' />
- <mkdir dir="${tuscany.acceptance.j2se.dir}" />
- <copy todir="${tuscany.acceptance.j2se.dir}" flatten='true'>
- <fileset dir="${tuscany.maven.repos.dir}">
- <patternset refid="tuscany.acceptance.common.dependencies" />
- </fileset>
- <fileset dir="${tuscany.maven.repos.dir}">
- <patternset refid="tuscany.acceptance.emf.dependencies" />
- <patternset refid="tuscany.acceptance.tc.specsdoimpl" />
- </fileset>
- </copy>
- </target>
-
- <target name="backup.server.xml" depends="init" unless='tuscany.acceptance.tomcat.serverxmlorg.available'>
- <copy file='${tuscany.acceptance.tc.dir}/conf/server.xml' tofile='${tuscany.acceptance.tc.dir}/conf/server.xml.original' />
- </target>
- <target name="backup.context.xml" depends="init" unless='tuscany.acceptance.tomcat.contextxmlorg.available'>
- <copy file='${tuscany.acceptance.tc.dir}/conf/context.xml' tofile='${tuscany.acceptance.tc.dir}/conf/context.xml.original' />
- </target>
- <target name="tuscany.tomcat.fixserverconfig" depends='tuscany.tomcat.fixserverxml,tuscany.tomcat.fixcontextxml' description='Add listeners' />
- <target name="tuscany.tomcat.fixserverxml" depends='init,backup.server.xml' unless='tuscany.acceptance.tomcat.serverxmlorg.available'>
- <property name="tuscany.acceptance.tomcat.serverxmlorg.available" value='true' />
-
-<!-- KJW save results to server_temp.xml -->
- <!-- DO NOTHING AT THIS TIME
- <xslt processor="trax"
- in="${tuscany.acceptance.tc.dir}/conf/server.xml.original"
- style="server.xsl"
- out="${tuscany.acceptance.tc.dir}/conf/server_temp.xml">
- </xslt>
- -->
-
-
-<!--KJW modify server.xml to include derby database resource -->
- <echo level="info" message="Running datasource.xsl" />
- <xslt processor="trax"
- in="${tuscany.acceptance.tc.dir}/conf/server.xml.original" style="datasource.xsl"
- out="${tuscany.acceptance.tc.dir}/conf/server.xml">
- <param name="database_location" expression="jdbc:derby:../Databases/dastest"/>
- </xslt>
-
-
- </target>
- <target name="tuscany.tomcat.fixcontextxml" depends='init,backup.context.xml' unless='tuscany.acceptance.tomcat.contextxmlorg.available'>
- <property name="tuscany.acceptance.tomcat.contextxmlorg.available" value='true' />
- <!-- DO NOTHING AT THIS TIME
- <xslt
- in="${tuscany.acceptance.tc.dir}/conf/context.xml.original" style="context.xsl"
- out="${tuscany.acceptance.tc.dir}/conf/context.xml">
-
- </xslt>
- -->
- </target>
-
- <target name="startTomcatWindows" if="isWindows" unless='tuscany.tomcat.alreadystarted' >
- <exec spawn='true' vmlauncher="false" failonerror='false' dir="${tuscany.acceptance.tc.dir}\bin" executable="cmd.exe" >
- <arg line="/C start &quot; Tomcat running ${tuscany.acceptance.tc.dir}&quot; catalina run &amp;&amp; exit" />
- </exec>
- </target>
- <target name="startTomcatUnix" if="isUnix" unless='tuscany.tomcat.alreadystarted'>
- <echo level="info" message="Starting Tomcat"/>
- <exec spawn='true' vmlauncher="false" failonerror='false' dir="${tuscany.acceptance.tc.dir}/bin" executable="xterm" >
- <arg line="-e ./catalina.sh run"/>
- </exec>
- </target>
- <target name="startTomcatMac" if="isMac" unless='tuscany.tomcat.alreadystarted' >
- <antcall target="startTomcatUnix" />
- </target>
-
- <target name="tuscany.tomcat.alreadystartedmsg" if="tuscany.tomcat.alreadystarted">
- <echo level="info" message="Tomcat has been already started! ${tuscany.tomcat.alreadystarted}" />
- </target>
- <target name="startTomcat" description="Start up tomcat." depends="tuscany.tomcat.alreadystartedmsg,startTomcatWindows,startTomcatUnix,startTomcatMac" unless='tuscany.tomcat.alreadystarted'>
- <sleep seconds="10"/> <!-- it's going to at least require this -->
- <waitfor maxwait="15" maxwaitunit="second" checkevery="200">
- <http url="http://localhost:8080"/>
- </waitfor>
-
- </target>
-
- <target name="clean" description='Clean out all built artifacts'>
- <delete dir="${tuscany.acceptance.target.dir}" />
- </target>
-
- <target name='setup.TC.antscripts' depends='tuscany.tomcat.unzipWindows,tuscany.tomcat.unzipUnix,tuscany.tomcat.unzipMac'>
- <!-- Configure the custom Ant tasks for the Manager application -->
- <taskdef resource="org/apache/catalina/ant/catalina.tasks">
- <classpath>
- <fileset dir="${tuscany.acceptance.tc.dir}/server/lib">
- <include name="*.jar" />
- </fileset>
- <fileset dir="${tuscany.acceptance.tc.dir}/common/lib">
- <include name="*.jar" />
- </fileset>
- <fileset dir="${tuscany.acceptance.tc.dir}/bin">
- <include name="*.jar" />
- </fileset>
- </classpath>
- </taskdef>
-
- </target>
-
-</project>
-
-
diff --git a/branches/das-java-M2/samples/testing/tomcat/companyweb/pom.xml b/branches/das-java-M2/samples/testing/tomcat/companyweb/pom.xml
deleted file mode 100644
index 0aa3cf857a..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/companyweb/pom.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.
--->
-<project>
- <parent>
- <groupId>org.apache.tuscany.das.samples</groupId>
- <artifactId>tuscany-samples-das-testing-tomcat</artifactId>
- <version>1.0-incubator-M2-SNAPSHOT</version>
- </parent>
-
- <modelVersion>4.0.0</modelVersion>
- <artifactId>tuscany-samples-das-testing-tomcatcompanyweb</artifactId>
- <packaging>jar</packaging>
- <name>Tuscany Testing DAS Sample - Companyweb</name>
- <description>Testing Tomcat DAS end user test</description>
-
-
- <dependencies>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>3.8.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>htmlunit</groupId>
- <artifactId>htmlunit</artifactId>
- <version>1.9</version>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <dependencies>
- <dependency>
- <groupId>jakarta-regexp</groupId>
- <artifactId>jakarta-regexp</artifactId>
- <version>1.4</version>
- </dependency>
- <dependency>
- <groupId>ant</groupId>
- <artifactId>ant-jakarta-regexp</artifactId>
- <version>1.6.1</version>
- </dependency>
- <dependency>
- <groupId>ant</groupId>
- <artifactId>ant-xslp</artifactId>
- <version>1.6.5</version>
- </dependency>
- <dependency>
- <groupId>ant</groupId>
- <artifactId>ant-trax</artifactId>
- <version>1.6.5</version>
- </dependency>
- </dependencies>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/LICENSE.txt b/branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/LICENSE.txt
deleted file mode 100644
index 25d78feeac..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/LICENSE.txt
+++ /dev/null
@@ -1,1277 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- 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.
-
-
-APACHE TUSCANY SUBCOMPONENTS:
-
-The Apache Tuscany distribution includes a number of subcomponents with
-separate copyright notices and license terms. Your use of the source
-code for the these subcomponents is subject to the terms and
-conditions of the following licenses.
-
-===============================================================================
-
-For the Eclipse Modeling Framework component and the Celtix binding:
-
-Eclipse Public License - v 1.0
-
-THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
-PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF
-THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
-
-1. DEFINITIONS
-
-"Contribution" means:
-
-a) in the case of the initial Contributor, the initial code and
-documentation distributed under this Agreement, and
-b) in the case of each subsequent Contributor:
-
-i) changes to the Program, and
-
-ii) additions to the Program;
-
-where such changes and/or additions to the Program originate from and
-are distributed by that particular Contributor. A Contribution
-'originates' from a Contributor if it was added to the Program by such
-Contributor itself or anyone acting on such Contributor's behalf.
-Contributions do not include additions to the Program which: (i) are
-separate modules of software distributed in conjunction with the
-Program under their own license agreement, and (ii) are not derivative
-works of the Program.
-
-"Contributor" means any person or entity that distributes the Program.
-
-"Licensed Patents " mean patent claims licensable by a Contributor
-which are necessarily infringed by the use or sale of its Contribution
-alone or when combined with the Program.
-
-"Program" means the Contributions distributed in accordance with this
-Agreement.
-
-"Recipient" means anyone who receives the Program under this
-Agreement, including all Contributors.
-
-2. GRANT OF RIGHTS
-
-a) Subject to the terms of this Agreement, each Contributor hereby
-grants Recipient a non-exclusive, worldwide, royalty-free copyright
-license to reproduce, prepare derivative works of, publicly display,
-publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and
-object code form.
-
-b) Subject to the terms of this Agreement, each Contributor hereby
-grants Recipient a non-exclusive, worldwide, royalty-free patent
-license under Licensed Patents to make, use, sell, offer to sell,
-import and otherwise transfer the Contribution of such Contributor, if
-any, in source code and object code form. This patent license shall
-apply to the combination of the Contribution and the Program if, at
-the time the Contribution is added by the Contributor, such addition
-of the Contribution causes such combination to be covered by the
-Licensed Patents. The patent license shall not apply to any other
-combinations which include the Contribution. No hardware per se is
-licensed hereunder.
-
-c) Recipient understands that although each Contributor grants the
-licenses to its Contributions set forth herein, no assurances are
-provided by any Contributor that the Program does not infringe the
-patent or other intellectual property rights of any other entity. Each
-Contributor disclaims any liability to Recipient for claims brought by
-any other entity based on infringement of intellectual property rights
-or otherwise. As a condition to exercising the rights and licenses
-granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For
-example, if a third party patent license is required to allow
-Recipient to distribute the Program, it is Recipient's responsibility
-to acquire that license before distributing the Program.
-
-d) Each Contributor represents that to its knowledge it has sufficient
-copyright rights in its Contribution, if any, to grant the copyright
-license set forth in this Agreement.
-
-3. REQUIREMENTS
-
-A Contributor may choose to distribute the Program in object code form
-under its own license agreement, provided that:
-
-a) it complies with the terms and conditions of this Agreement; and
-
-b) its license agreement:
-
-i) effectively disclaims on behalf of all Contributors all warranties
-and conditions, express and implied, including warranties or
-conditions of title and non-infringement, and implied warranties or
-conditions of merchantability and fitness for a particular purpose;
-
-ii) effectively excludes on behalf of all Contributors all liability
-for damages, including direct, indirect, special, incidental and
-consequential damages, such as lost profits;
-
-iii) states that any provisions which differ from this Agreement are
-offered by that Contributor alone and not by any other party; and
-
-iv) states that source code for the Program is available from such
-Contributor, and informs licensees how to obtain it in a reasonable
-manner on or through a medium customarily used for software exchange.
-
-When the Program is made available in source code form:
-
-a) it must be made available under this Agreement; and
-
-b) a copy of this Agreement must be included with each copy of the
-Program.
-
-Contributors may not remove or alter any copyright notices contained
-within the Program.
-
-Each Contributor must identify itself as the originator of its
-Contribution, if any, in a manner that reasonably allows subsequent
-Recipients to identify the originator of the Contribution.
-
-4. COMMERCIAL DISTRIBUTION
-
-Commercial distributors of software may accept certain
-responsibilities with respect to end users, business partners and the
-like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a
-commercial product offering should do so in a manner which does not
-create potential liability for other Contributors. Therefore, if a
-Contributor includes the Program in a commercial product offering,
-such Contributor ("Commercial Contributor") hereby agrees to defend
-and indemnify every other Contributor ("Indemnified Contributor")
-against any losses, damages and costs (collectively "Losses") arising
-from claims, lawsuits and other legal actions brought by a third party
-against the Indemnified Contributor to the extent caused by the acts
-or omissions of such Commercial Contributor in connection with its
-distribution of the Program in a commercial product offering. The
-obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement.
-In order to qualify, an Indemnified Contributor must: a) promptly
-notify the Commercial Contributor in writing of such claim, and b)
-allow the Commercial Contributor to control, and cooperate with the
-Commercial Contributor in, the defense and any related settlement
-negotiations. The Indemnified Contributor may participate in any such
-claim at its own expense.
-
-For example, a Contributor might include the Program in a commercial
-product offering, Product X. That Contributor is then a Commercial
-Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance
-claims and warranties are such Commercial Contributor's responsibility
-alone. Under this section, the Commercial Contributor would have to
-defend claims against the other Contributors related to those
-performance claims and warranties, and if a court requires any other
-Contributor to pay any damages as a result, the Commercial Contributor
-must pay those damages.
-
-5. NO WARRANTY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
-PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY
-WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
-OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and
-distributing the Program and assumes all risks associated with its
-exercise of rights under this Agreement , including but not limited to
-the risks and costs of program errors, compliance with applicable
-laws, damage to or loss of data, programs or equipment, and
-unavailability or interruption of operations.
-
-6. DISCLAIMER OF LIABILITY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR
-ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
-WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
-DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
-HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
-7. GENERAL
-
-If any provision of this Agreement is invalid or unenforceable under
-applicable law, it shall not affect the validity or enforceability of
-the remainder of the terms of this Agreement, and without further
-action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.
-
-If Recipient institutes patent litigation against any entity
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-the Program itself (excluding combinations of the Program with other
-software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of
-the date such litigation is filed.
-
-All Recipient's rights under this Agreement shall terminate if it
-fails to comply with any of the material terms or conditions of this
-Agreement and does not cure such failure in a reasonable period of
-time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use
-and distribution of the Program as soon as reasonably practicable.
-However, Recipient's obligations under this Agreement and any licenses
-granted by Recipient relating to the Program shall continue and
-survive.
-
-Everyone is permitted to copy and distribute copies of this Agreement,
-but in order to avoid inconsistency the Agreement is copyrighted and
-may only be modified in the following manner. The Agreement Steward
-reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement
-Steward has the right to modify this Agreement. The Eclipse Foundation
-is the initial Agreement Steward. The Eclipse Foundation may assign
-the responsibility to serve as the Agreement Steward to a suitable
-separate entity. Each new version of the Agreement will be given a
-distinguishing version number. The Program (including Contributions)
-may always be distributed subject to the version of the Agreement
-under which it was received. In addition, after a new version of the
-Agreement is published, Contributor may elect to distribute the
-Program (including its Contributions) under the new version. Except as
-expressly stated in Sections 2(a) and 2(b) above, Recipient receives
-no rights or licenses to the intellectual property of any Contributor
-under this Agreement, whether expressly, by implication, estoppel or
-otherwise. All rights in the Program not expressly granted under this
-Agreement are reserved.
-
-This Agreement is governed by the laws of the State of New York and
-the intellectual property laws of the United States of America. No
-party to this Agreement will bring a legal action under this Agreement
-more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.
-
-===============================================================================
-
-For the Rhino JavaScript container component:
-
-Mozilla Public License 1.1 (MPL 1.1)
-
-1. Definitions.
-
- 1.0.1. "Commercial Use" means distribution or otherwise making the
-Covered Code available to a third party.
-
- 1.1. "Contributor" means each entity that creates or contributes to
-the creation of Modifications.
-
- 1.2. "Contributor Version" means the combination of the Original Code,
-prior Modifications used by a Contributor, and the Modifications made by that
-particular Contributor.
-
- 1.3. "Covered Code" means the Original Code or Modifications or the
-combination of the Original Code and Modifications, in each case including
-portions thereof.
-
- 1.4. "Electronic Distribution Mechanism" means a mechanism generally
-accepted in the software development community for the electronic transfer of
-data.
-
- 1.5. "Executable" means Covered Code in any form other than Source
-Code.
-
- 1.6. "Initial Developer" means the individual or entity identified as
-the Initial Developer in the Source Code notice required by Exhibit A.
-
- 1.7. "Larger Work" means a work which combines Covered Code or
-portions thereof with code not governed by the terms of this License.
-
- 1.8. "License" means this document.
-
- 1.8.1. "Licensable" means having the right to grant, to the maximum
-extent possible, whether at the time of the initial grant or subsequently
-acquired, any and all of the rights conveyed herein.
-
- 1.9. "Modifications" means any addition to or deletion from the
-substance or structure of either the Original Code or any previous
-Modifications. When Covered Code is released as a series of files, a
-Modification is:
- A. Any addition to or deletion from the contents of a file
-containing Original Code or previous Modifications.
-
- B. Any new file that contains any part of the Original Code or
-previous Modifications.
-
- 1.10. "Original Code" means Source Code of computer software code
-which is described in the Source Code notice required by Exhibit A as Original
-Code, and which, at the time of its release under this License is not already
-Covered Code governed by this License.
-
- 1.10.1. "Patent Claims" means any patent claim(s), now owned or
-hereafter acquired, including without limitation, method, process, and
-apparatus claims, in any patent Licensable by grantor.
-
- 1.11. "Source Code" means the preferred form of the Covered Code for
-making modifications to it, including all modules it contains, plus any
-associated interface definition files, scripts used to control compilation and
-installation of an Executable, or source code differential comparisons against
-either the Original Code or another well known, available Covered Code of the
-Contributor's choice. The Source Code can be in a compressed or archival form,
-provided the appropriate decompression or de-archiving software is widely
-available for no charge.
-
- 1.12. "You" (or "Your") means an individual or a legal entity
-exercising rights under, and complying with all of the terms of, this License
-or a future version of this License issued under Section 6.1. For legal
-entities, "You" includes any entity which controls, is controlled by, or is
-under common control with You. For purposes of this definition, "control"
-means (a) the power, direct or indirect, to cause the direction or management
-of such entity, whether by contract or otherwise, or (b) ownership of more
-than fifty percent (50%) of the outstanding shares or beneficial ownership of
-such entity.
-
-2. Source Code License.
-
- 2.1. The Initial Developer Grant.
- The Initial Developer hereby grants You a world-wide, royalty-free,
-non-exclusive license, subject to third party intellectual property claims:
- (a) under intellectual property rights (other than patent or
-trademark) Licensable by Initial Developer to use, reproduce, modify, display,
-perform, sublicense and distribute the Original Code (or portions thereof)
-with or without Modifications, and/or as part of a Larger Work; and
-
- (b) under Patents Claims infringed by the making, using or selling
-of Original Code, to make, have made, use, practice, sell, and offer for sale,
-and/or otherwise dispose of the Original Code (or portions thereof).
- (c) the licenses granted in this Section 2.1(a) and
-(b) are effective on the date Initial Developer first distributes Original
-Code under the terms of this License.
-
- (d) Notwithstanding Section 2.1(b) above, no patent license is
-granted: 1) for code that You delete from the Original Code; 2) separate from
-the Original Code; or 3) for infringements caused by: i) the modification of
-the Original Code or ii) the combination of the Original Code with other
-software or devices.
-
- 2.2. Contributor Grant.
- Subject to third party intellectual property claims, each Contributor
-hereby grants You a world-wide, royalty-free, non-exclusive license
-
- (a) under intellectual property rights (other than patent or
-trademark) Licensable by Contributor, to use, reproduce, modify, display,
-perform, sublicense and distribute the Modifications created by such
-Contributor (or portions thereof) either on an unmodified basis, with other
-Modifications, as Covered Code and/or as part of a Larger Work; and
-
- (b) under Patent Claims infringed by the making, using, or selling
-of Modifications made by that Contributor either alone and/or in combination
-with its Contributor Version (or portions of such combination), to make, use,
-sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications
-made by that Contributor (or portions thereof); and 2) the combination of
-Modifications made by that Contributor with its Contributor Version (or
-portions of such combination).
-
- (c) the licenses granted in Sections 2.2(a) and 2.2(b) are
-effective on the date Contributor first makes Commercial Use of the Covered
-Code.
-
- (d) Notwithstanding Section 2.2(b) above, no patent license is
-granted: 1) for any code that Contributor has deleted from the Contributor
-Version; 2) separate from the Contributor Version; 3) for infringements
-caused by: i) third party modifications of Contributor Version or ii) the
-combination of Modifications made by that Contributor with other software
-(except as part of the Contributor Version) or other devices; or 4) under
-Patent Claims infringed by Covered Code in the absence of Modifications made
-by that Contributor.
-
-
-3. Distribution Obligations.
-
- 3.1. Application of License.
- The Modifications which You create or to which You contribute are
-governed by the terms of this License, including without limitation Section
-2.2. The Source Code version of Covered Code may be distributed only under the
-terms of this License or a future version of this License released under
-Section 6.1, and You must include a copy of this License with every copy of
-the Source Code You distribute. You may not offer or impose any terms on any
-Source Code version that alters or restricts the applicable version of this
-License or the recipients' rights hereunder. However, You may include an
-additional document offering the additional rights described in Section 3.5.
-
- 3.2. Availability of Source Code.
- Any Modification which You create or to which You contribute must be
-made available in Source Code form under the terms of this License either on
-the same media as an Executable version or via an accepted Electronic
-Distribution Mechanism to anyone to whom you made an Executable version
-available; and if made available via Electronic Distribution Mechanism, must
-remain available for at least twelve (12) months after the date it initially
-became available, or at least six (6) months after a subsequent version of
-that particular Modification has been made available to such recipients. You
-are responsible for ensuring that the Source Code version remains available
-even if the Electronic Distribution Mechanism is maintained by a third party.
-
- 3.3. Description of Modifications.
- You must cause all Covered Code to which You contribute to contain a
-file documenting the changes You made to create that Covered Code and the date
-of any change. You must include a prominent statement that the Modification is
-derived, directly or indirectly, from Original Code provided by the Initial
-Developer and including the name of the Initial Developer in (a) the Source
-Code, and (b) in any notice in an Executable version or related documentation
-in which You describe the origin or ownership of the Covered Code.
-
- 3.4. Intellectual Property Matters
- (a) Third Party Claims.
- If Contributor has knowledge that a license under a third party's
-intellectual property rights is required to exercise the rights granted by
-such Contributor under Sections 2.1 or 2.2, Contributor must include a text
-file with the Source Code distribution titled "LEGAL" which describes the
-claim and the party making the claim in sufficient detail that a recipient
-will know whom to contact. If Contributor obtains such knowledge after the
-Modification is made available as described in Section 3.2, Contributor shall
-promptly modify the LEGAL file in all copies Contributor makes available
-thereafter and shall take other steps (such as notifying appropriate mailing
-lists or newsgroups) reasonably calculated to inform those who received the
-Covered Code that new knowledge has been obtained.
-
- (b) Contributor APIs.
- If Contributor's Modifications include an application programming
-interface and Contributor has knowledge of patent licenses which are
-reasonably necessary to implement that API, Contributor must also include this
-information in the LEGAL file.
-
- (c) Representations.
- Contributor represents that, except as disclosed pursuant to
-Section 3.4(a) above, Contributor believes that Contributor's Modifications
-are Contributor's original creation(s) and/or Contributor has sufficient
-rights to grant the rights conveyed by this License.
-
-
- 3.5. Required Notices.
- You must duplicate the notice in Exhibit A in each file of the Source
-Code. If it is not possible to put such notice in a particular Source Code
-file due to its structure, then You must include such notice in a location
-(such as a relevant directory) where a user would be likely to look for such a
-notice. If You created one or more Modification(s) You may add your name as a
-Contributor to the notice described in Exhibit A. You must also duplicate
-this License in any documentation for the Source Code where You describe
-recipients' rights or ownership rights relating to Covered Code. You may
-choose to offer, and to charge a fee for, warranty, support, indemnity or
-liability obligations to one or more recipients of Covered Code. However, You
-may do so only on Your own behalf, and not on behalf of the Initial Developer
-or any Contributor. You must make it absolutely clear than any such warranty,
-support, indemnity or liability obligation is offered by You alone, and You
-hereby agree to indemnify the Initial Developer and every Contributor for any
-liability incurred by the Initial Developer or such Contributor as a result of
-warranty, support, indemnity or liability terms You offer.
-
- 3.6. Distribution of Executable Versions.
- You may distribute Covered Code in Executable form only if the
-requirements of Section 3.1-3.5 have been met for that Covered Code, and if
-You include a notice stating that the Source Code version of the Covered Code
-is available under the terms of this License, including a description of how
-and where You have fulfilled the obligations of Section 3.2. The notice must
-be conspicuously included in any notice in an Executable version, related
-documentation or collateral in which You describe recipients' rights relating
-to the Covered Code. You may distribute the Executable version of Covered Code
-or ownership rights under a license of Your choice, which may contain terms
-different from this License, provided that You are in compliance with the
-terms of this License and that the license for the Executable version does not
-attempt to limit or alter the recipient's rights in the Source Code version
-from the rights set forth in this License. If You distribute the Executable
-version under a different license You must make it absolutely clear that any
-terms which differ from this License are offered by You alone, not by the
-Initial Developer or any Contributor. You hereby agree to indemnify the
-Initial Developer and every Contributor for any liability incurred by the
-Initial Developer or such Contributor as a result of any such terms You offer.
-
- 3.7. Larger Works.
- You may create a Larger Work by combining Covered Code with other code
-not governed by the terms of this License and distribute the Larger Work as a
-single product. In such a case, You must make sure the requirements of this
-License are fulfilled for the Covered Code.
-
-4. Inability to Comply Due to Statute or Regulation.
-
- If it is impossible for You to comply with any of the terms of this
-License with respect to some or all of the Covered Code due to statute,
-judicial order, or regulation then You must: (a) comply with the terms of this
-License to the maximum extent possible; and (b) describe the limitations and
-the code they affect. Such description must be included in the LEGAL file
-described in Section 3.4 and must be included with all distributions of the
-Source Code. Except to the extent prohibited by statute or regulation, such
-description must be sufficiently detailed for a recipient of ordinary skill to
-be able to understand it.
-
-5. Application of this License.
-
- This License applies to code to which the Initial Developer has attached
-the notice in Exhibit A and to related Covered Code.
-
-6. Versions of the License.
-
- 6.1. New Versions.
- Netscape Communications Corporation ("Netscape") may publish revised
-and/or new versions of the License from time to time. Each version will be
-given a distinguishing version number.
-
- 6.2. Effect of New Versions.
- Once Covered Code has been published under a particular version of the
-License, You may always continue to use it under the terms of that version.
-You may also choose to use such Covered Code under the terms of any subsequent
-version of the License published by Netscape. No one other than Netscape has
-the right to modify the terms applicable to Covered Code created under this
-License.
-
- 6.3. Derivative Works.
- If You create or use a modified version of this License (which you may
-only do in order to apply it to code which is not already Covered Code
-governed by this License), You must (a) rename Your license so that the
-phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", "MPL", "NPL" or
-any confusingly similar phrase do not appear in your license (except to note
-that your license differs from this License) and (b) otherwise make it clear
-that Your version of the license contains terms which differ from the Mozilla
-Public License and Netscape Public License. (Filling in the name of the
-Initial Developer, Original Code or Contributor in the notice described in
-Exhibit A shall not of themselves be deemed to be modifications of this
-License.)
-
-7. DISCLAIMER OF WARRANTY.
-
- COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT
-LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE,
-FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE
-QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED
-CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY
-OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR
-CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS
-LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS
-DISCLAIMER.
-
-8. TERMINATION.
-
- 8.1. This License and the rights granted hereunder will terminate
-automatically if You fail to comply with terms herein and fail to cure such
-breach within 30 days of becoming aware of the breach. All sublicenses to the
-Covered Code which are properly granted shall survive any termination of this
-License. Provisions which, by their nature, must remain in effect beyond the
-termination of this License shall survive.
-
- 8.2. If You initiate litigation by asserting a patent infringement
-claim (excluding declatory judgment actions) against Initial Developer or a
-Contributor (the Initial Developer or Contributor against whom You file such
-action is referred to as "Participant") alleging that:
-
- (a) such Participant's Contributor Version directly or indirectly
-infringes any patent, then any and all rights granted by such Participant to
-You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice
-from Participant terminate prospectively, unless if within 60 days after
-receipt of notice You either: (i) agree in writing to pay Participant a
-mutually agreeable reasonable royalty for Your past and future use of
-Modifications made by such Participant, or (ii) withdraw Your litigation claim
-with respect to the Contributor Version against such Participant. If within
-60 days of notice, a reasonable royalty and payment arrangement are not
-mutually agreed upon in writing by the parties or the litigation claim is not
-withdrawn, the rights granted by Participant to You under Sections 2.1 and/or
-2.2 automatically terminate at the expiration of the 60 day notice period
-specified above.
-
- (b) any software, hardware, or device, other than such Participant's
-Contributor Version, directly or indirectly infringes any patent, then any
-rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are
-revoked effective as of the date You first made, used, sold, distributed, or
-had made, Modifications made by that Participant.
-
- 8.3. If You assert a patent infringement claim against Participant
-alleging that such Participant's Contributor Version directly or indirectly
-infringes any patent where such claim is resolved (such as by license or
-settlement) prior to the initiation of patent infringement litigation, then
-the reasonable value of the licenses granted by such Participant under
-Sections 2.1 or 2.2 shall be taken into account in determining the amount or
-value of any payment or license.
-
- 8.4. In the event of termination under Sections 8.1 or 8.2 above, all
-end user license agreements (excluding distributors and resellers) which have
-been validly granted by You or any distributor hereunder prior to termination
-shall survive termination.
-
-9. LIMITATION OF LIABILITY.
-
- UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
-(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL
-DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY
-SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT,
-SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING,
-WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER
-FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES,
-EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH
-DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH
-OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT
-APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
-EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS
-EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
-
-10. U.S. GOVERNMENT END USERS.
-
- The Covered Code is a "commercial item," as that term is defined in 48
-C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and
-"commercial computer software documentation," as such terms are used in 48
-C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R.
-227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users
-acquire Covered Code with only those rights set forth herein.
-
-11. MISCELLANEOUS.
-
- This License represents the complete agreement concerning subject matter
-hereof. If any provision of this License is held to be unenforceable, such
-provision shall be reformed only to the extent necessary to make it
-enforceable. This License shall be governed by California law provisions
-(except to the extent applicable law, if any, provides otherwise), excluding
-its conflict-of-law provisions. With respect to disputes in which at least one
-party is a citizen of, or an entity chartered or registered to do business in
-the United States of America, any litigation relating to this License shall be
-subject to the jurisdiction of the Federal Courts of the Northern District of
-California, with venue lying in Santa Clara County, California, with the
-losing party responsible for costs, including without limitation, court costs
-and reasonable attorneys' fees and expenses. The application of the United
-Nations Convention on Contracts for the International Sale of Goods is
-expressly excluded. Any law or regulation which provides that the language of
-a contract shall be construed against the drafter shall not apply to this
-License.
-
-12. RESPONSIBILITY FOR CLAIMS.
-
- As between Initial Developer and the Contributors, each party is
-responsible for claims and damages arising, directly or indirectly, out of its
-utilization of rights under this License and You agree to work with Initial
-Developer and Contributors to distribute such responsibility on an equitable
-basis. Nothing herein is intended or shall be deemed to constitute any
-admission of liability.
-
-13. MULTIPLE-LICENSED CODE.
-
- Initial Developer may designate portions of the Covered Code as
-Multiple-Licensed. Multiple-Licensed means that the Initial Developer permits
-you to utilize portions of the Covered Code under Your choice of the MPL or
-the alternative licenses, if any, specified by the Initial Developer in the
-file described in Exhibit A.
-
-
-EXHIBIT A -Mozilla Public License.
-
- ``The contents of this file are subject to the Mozilla Public License
-Version 1.1 (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.mozilla.org/MPL/
-
- Software distributed under the License is distributed on an "AS IS"
-basis, WITHOUT WARRANTY OF
- ANY KIND, either express or implied. See the License for the specific
-language governing rights and
- limitations under the License.
-
- The Original Code is ______________________________________.
-
- The Initial Developer of the Original Code is ________________________.
-Portions created by
- ______________________ are Copyright (C) ______
-_______________________. All Rights
- Reserved.
-
- Contributor(s): ______________________________________.
-
- Alternatively, the contents of this file may be used under the terms of
-the _____ license (the [___] License), in which case the provisions of
-[______] License are applicable instead of those above. If you wish to allow
-use of your version of this file only under the terms of the [____] License
-and not to allow others to use your version of this file under the MPL,
-indicate your decision by deleting the provisions above and replace them
-with the notice and other provisions required by the [___] License. If you do
-not delete the provisions above, a recipient may use your version of this file
-under either the MPL or the [___] License."
-
- [NOTE: The text of this Exhibit A may differ slightly from the text of
-the notices in the Source Code files of the Original Code. You should use the
-text of this Exhibit A rather than the text found in the Original Code Source
-Code for Your Modifications.]
-
-
-===============================================================================
-
-For the JAX-WS Reference Implementation component:
-
-COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
-
-
- 1. Definitions.
-
- 1.1. "Contributor" means each individual or entity that
- creates or contributes to the creation of Modifications.
-
- 1.2. "Contributor Version" means the combination of the
- Original Software, prior Modifications used by a
- Contributor (if any), and the Modifications made by that
- particular Contributor.
-
- 1.3. "Covered Software" means (a) the Original Software, or
- (b) Modifications, or (c) the combination of files
- containing Original Software with files containing
- Modifications, in each case including portions thereof.
-
- 1.4. "Executable" means the Covered Software in any form
- other than Source Code.
-
- 1.5. "Initial Developer" means the individual or entity
- that first makes Original Software available under this
- License.
-
- 1.6. "Larger Work" means a work which combines Covered
- Software or portions thereof with code not governed by the
- terms of this License.
-
- 1.7. "License" means this document.
-
- 1.8. "Licensable" means having the right to grant, to the
- maximum extent possible, whether at the time of the initial
- grant or subsequently acquired, any and all of the rights
- conveyed herein.
-
- 1.9. "Modifications" means the Source Code and Executable
- form of any of the following:
-
- A. Any file that results from an addition to,
- deletion from or modification of the contents of a
- file containing Original Software or previous
- Modifications;
-
- B. Any new file that contains any part of the
- Original Software or previous Modification; or
-
- C. Any new file that is contributed or otherwise made
- available under the terms of this License.
-
- 1.10. "Original Software" means the Source Code and
- Executable form of computer software code that is
- originally released under this License.
-
- 1.11. "Patent Claims" means any patent claim(s), now owned
- or hereafter acquired, including without limitation,
- method, process, and apparatus claims, in any patent
- Licensable by grantor.
-
- 1.12. "Source Code" means (a) the common form of computer
- software code in which modifications are made and (b)
- associated documentation included in or with such code.
-
- 1.13. "You" (or "Your") means an individual or a legal
- entity exercising rights under, and complying with all of
- the terms of, this License. For legal entities, "You"
- includes any entity which controls, is controlled by, or is
- under common control with You. For purposes of this
- definition, "control" means (a) the power, direct or
- indirect, to cause the direction or management of such
- entity, whether by contract or otherwise, or (b) ownership
- of more than fifty percent (50%) of the outstanding shares
- or beneficial ownership of such entity.
-
- 2. License Grants.
-
- 2.1. The Initial Developer Grant.
-
- Conditioned upon Your compliance with Section 3.1 below and
- subject to third party intellectual property claims, the
- Initial Developer hereby grants You a world-wide,
- royalty-free, non-exclusive license:
-
- (a) under intellectual property rights (other than
- patent or trademark) Licensable by Initial Developer,
- to use, reproduce, modify, display, perform,
- sublicense and distribute the Original Software (or
- portions thereof), with or without Modifications,
- and/or as part of a Larger Work; and
-
- (b) under Patent Claims infringed by the making,
- using or selling of Original Software, to make, have
- made, use, practice, sell, and offer for sale, and/or
- otherwise dispose of the Original Software (or
- portions thereof).
-
- (c) The licenses granted in Sections 2.1(a) and (b)
- are effective on the date Initial Developer first
- distributes or otherwise makes the Original Software
- available to a third party under the terms of this
- License.
-
- (d) Notwithstanding Section 2.1(b) above, no patent
- license is granted: (1) for code that You delete from
- the Original Software, or (2) for infringements
- caused by: (i) the modification of the Original
- Software, or (ii) the combination of the Original
- Software with other software or devices.
-
- 2.2. Contributor Grant.
-
- Conditioned upon Your compliance with Section 3.1 below and
- subject to third party intellectual property claims, each
- Contributor hereby grants You a world-wide, royalty-free,
- non-exclusive license:
-
- (a) under intellectual property rights (other than
- patent or trademark) Licensable by Contributor to
- use, reproduce, modify, display, perform, sublicense
- and distribute the Modifications created by such
- Contributor (or portions thereof), either on an
- unmodified basis, with other Modifications, as
- Covered Software and/or as part of a Larger Work; and
-
-
- (b) under Patent Claims infringed by the making,
- using, or selling of Modifications made by that
- Contributor either alone and/or in combination with
- its Contributor Version (or portions of such
- combination), to make, use, sell, offer for sale,
- have made, and/or otherwise dispose of: (1)
- Modifications made by that Contributor (or portions
- thereof); and (2) the combination of Modifications
- made by that Contributor with its Contributor Version
- (or portions of such combination).
-
- (c) The licenses granted in Sections 2.2(a) and
- 2.2(b) are effective on the date Contributor first
- distributes or otherwise makes the Modifications
- available to a third party.
-
- (d) Notwithstanding Section 2.2(b) above, no patent
- license is granted: (1) for any code that Contributor
- has deleted from the Contributor Version; (2) for
- infringements caused by: (i) third party
- modifications of Contributor Version, or (ii) the
- combination of Modifications made by that Contributor
- with other software (except as part of the
- Contributor Version) or other devices; or (3) under
- Patent Claims infringed by Covered Software in the
- absence of Modifications made by that Contributor.
-
- 3. Distribution Obligations.
-
- 3.1. Availability of Source Code.
-
- Any Covered Software that You distribute or otherwise make
- available in Executable form must also be made available in
- Source Code form and that Source Code form must be
- distributed only under the terms of this License. You must
- include a copy of this License with every copy of the
- Source Code form of the Covered Software You distribute or
- otherwise make available. You must inform recipients of any
- such Covered Software in Executable form as to how they can
- obtain such Covered Software in Source Code form in a
- reasonable manner on or through a medium customarily used
- for software exchange.
-
- 3.2. Modifications.
-
- The Modifications that You create or to which You
- contribute are governed by the terms of this License. You
- represent that You believe Your Modifications are Your
- original creation(s) and/or You have sufficient rights to
- grant the rights conveyed by this License.
-
- 3.3. Required Notices.
-
- You must include a notice in each of Your Modifications
- that identifies You as the Contributor of the Modification.
- You may not remove or alter any copyright, patent or
- trademark notices contained within the Covered Software, or
- any notices of licensing or any descriptive text giving
- attribution to any Contributor or the Initial Developer.
-
- 3.4. Application of Additional Terms.
-
- You may not offer or impose any terms on any Covered
- Software in Source Code form that alters or restricts the
- applicable version of this License or the recipients'
- rights hereunder. You may choose to offer, and to charge a
- fee for, warranty, support, indemnity or liability
- obligations to one or more recipients of Covered Software.
- However, you may do so only on Your own behalf, and not on
- behalf of the Initial Developer or any Contributor. You
- must make it absolutely clear that any such warranty,
- support, indemnity or liability obligation is offered by
- You alone, and You hereby agree to indemnify the Initial
- Developer and every Contributor for any liability incurred
- by the Initial Developer or such Contributor as a result of
- warranty, support, indemnity or liability terms You offer.
-
-
- 3.5. Distribution of Executable Versions.
-
- You may distribute the Executable form of the Covered
- Software under the terms of this License or under the terms
- of a license of Your choice, which may contain terms
- different from this License, provided that You are in
- compliance with the terms of this License and that the
- license for the Executable form does not attempt to limit
- or alter the recipient's rights in the Source Code form
- from the rights set forth in this License. If You
- distribute the Covered Software in Executable form under a
- different license, You must make it absolutely clear that
- any terms which differ from this License are offered by You
- alone, not by the Initial Developer or Contributor. You
- hereby agree to indemnify the Initial Developer and every
- Contributor for any liability incurred by the Initial
- Developer or such Contributor as a result of any such terms
- You offer.
-
- 3.6. Larger Works.
-
- You may create a Larger Work by combining Covered Software
- with other code not governed by the terms of this License
- and distribute the Larger Work as a single product. In such
- a case, You must make sure the requirements of this License
- are fulfilled for the Covered Software.
-
- 4. Versions of the License.
-
- 4.1. New Versions.
-
- Sun Microsystems, Inc. is the initial license steward and
- may publish revised and/or new versions of this License
- from time to time. Each version will be given a
- distinguishing version number. Except as provided in
- Section 4.3, no one other than the license steward has the
- right to modify this License.
-
- 4.2. Effect of New Versions.
-
- You may always continue to use, distribute or otherwise
- make the Covered Software available under the terms of the
- version of the License under which You originally received
- the Covered Software. If the Initial Developer includes a
- notice in the Original Software prohibiting it from being
- distributed or otherwise made available under any
- subsequent version of the License, You must distribute and
- make the Covered Software available under the terms of the
- version of the License under which You originally received
- the Covered Software. Otherwise, You may also choose to
- use, distribute or otherwise make the Covered Software
- available under the terms of any subsequent version of the
- License published by the license steward.
-
- 4.3. Modified Versions.
-
- When You are an Initial Developer and You want to create a
- new license for Your Original Software, You may create and
- use a modified version of this License if You: (a) rename
- the license and remove any references to the name of the
- license steward (except to note that the license differs
- from this License); and (b) otherwise make it clear that
- the license contains terms which differ from this License.
-
-
- 5. DISCLAIMER OF WARRANTY.
-
- COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS"
- BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
- INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED
- SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR
- PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND
- PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY
- COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE
- INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF
- ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF
- WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
- ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS
- DISCLAIMER.
-
- 6. TERMINATION.
-
- 6.1. This License and the rights granted hereunder will
- terminate automatically if You fail to comply with terms
- herein and fail to cure such breach within 30 days of
- becoming aware of the breach. Provisions which, by their
- nature, must remain in effect beyond the termination of
- this License shall survive.
-
- 6.2. If You assert a patent infringement claim (excluding
- declaratory judgment actions) against Initial Developer or
- a Contributor (the Initial Developer or Contributor against
- whom You assert such claim is referred to as "Participant")
- alleging that the Participant Software (meaning the
- Contributor Version where the Participant is a Contributor
- or the Original Software where the Participant is the
- Initial Developer) directly or indirectly infringes any
- patent, then any and all rights granted directly or
- indirectly to You by such Participant, the Initial
- Developer (if the Initial Developer is not the Participant)
- and all Contributors under Sections 2.1 and/or 2.2 of this
- License shall, upon 60 days notice from Participant
- terminate prospectively and automatically at the expiration
- of such 60 day notice period, unless if within such 60 day
- period You withdraw Your claim with respect to the
- Participant Software against such Participant either
- unilaterally or pursuant to a written agreement with
- Participant.
-
- 6.3. In the event of termination under Sections 6.1 or 6.2
- above, all end user licenses that have been validly granted
- by You or any distributor hereunder prior to termination
- (excluding licenses granted to You by any distributor)
- shall survive termination.
-
- 7. LIMITATION OF LIABILITY.
-
- UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
- (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE
- INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF
- COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE
- LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR
- CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT
- LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK
- STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
- COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
- INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
- LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL
- INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT
- APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO
- NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR
- CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT
- APPLY TO YOU.
-
- 8. U.S. GOVERNMENT END USERS.
-
- The Covered Software is a "commercial item," as that term is
- defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial
- computer software" (as that term is defined at 48 C.F.R.
- 252.227-7014(a)(1)) and "commercial computer software
- documentation" as such terms are used in 48 C.F.R. 12.212 (Sept.
- 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1
- through 227.7202-4 (June 1995), all U.S. Government End Users
- acquire Covered Software with only those rights set forth herein.
- This U.S. Government Rights clause is in lieu of, and supersedes,
- any other FAR, DFAR, or other clause or provision that addresses
- Government rights in computer software under this License.
-
- 9. MISCELLANEOUS.
-
- This License represents the complete agreement concerning subject
- matter hereof. If any provision of this License is held to be
- unenforceable, such provision shall be reformed only to the
- extent necessary to make it enforceable. This License shall be
- governed by the law of the jurisdiction specified in a notice
- contained within the Original Software (except to the extent
- applicable law, if any, provides otherwise), excluding such
- jurisdiction's conflict-of-law provisions. Any litigation
- relating to this License shall be subject to the jurisdiction of
- the courts located in the jurisdiction and venue specified in a
- notice contained within the Original Software, with the losing
- party responsible for costs, including, without limitation, court
- costs and reasonable attorneys' fees and expenses. The
- application of the United Nations Convention on Contracts for the
- International Sale of Goods is expressly excluded. Any law or
- regulation which provides that the language of a contract shall
- be construed against the drafter shall not apply to this License.
- You agree that You alone are responsible for compliance with the
- United States export administration regulations (and the export
- control laws and regulation of any other countries) when You use,
- distribute or otherwise make available any Covered Software.
-
- 10. RESPONSIBILITY FOR CLAIMS.
-
- As between Initial Developer and the Contributors, each party is
- responsible for claims and damages arising, directly or
- indirectly, out of its utilization of rights under this License
- and You agree to work with Initial Developer and Contributors to
- distribute such responsibility on an equitable basis. Nothing
- herein is intended or shall be deemed to constitute any admission
- of liability.
-
diff --git a/branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/NOTICE b/branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/NOTICE
deleted file mode 100644
index d48810c0ec..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/NOTICE
+++ /dev/null
@@ -1,18 +0,0 @@
-=========================================================================
-== NOTICE file corresponding to the section 4 d of ==
-== the Apache License, Version 2.0, ==
-== in this case for the Apache Tuscany distribution. ==
-=========================================================================
-
-This product includes software developed by the Apache Software Foundation
-(http://www.apache.org/).
-
-This product also includes software developed by:
-- the Eclipse Modeling Framework project (http://www.eclipse.org/emf/)
-- the Celtix project (http://celtix.objectweb.org/)
-- the Mozilla Rhino project (http://www.mozilla.org/rhino/)
-- the GlassFish JAX-WS project (https://jax-ws.dev.java.net/)
-
-Please read the LICENSE.txt file present in the root directory of this
-distribution.
-
diff --git a/branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/README.txt b/branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/README.txt
deleted file mode 100644
index 9b26d1690a..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/companyweb/src/main/resources/META-INF/README.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-Apache Tuscany M1 build (May, 2006)
-===================================
-
-http://incubator.apache.org/tuscany/
-
-Tuscany is an effort undergoing incubation at the Apache Software Foundation
-(ASF), sponsored by the Web Services PMC.
-
-Incubation is required of all newly accepted projects until a further review
-indicates that the infrastructure, communications, and decision making process
-have stabilized in a manner consistent with other successful ASF projects.
-
-While incubation status is not necessarily a reflection of the completeness or
-stability of the code, it does indicate that the project has yet to be fully
-endorsed by the ASF.
-
-
-Support
--------
-
-Any problem with this release can be reported to the Tuscany mailing list
-or in the JIRA issue tracker.
-
-Mailing list subscription:
- tuscany-dev-subscribe@ws.apache.org
-
-Jira:
- http://issues.apache.org/jira/browse/Tuscany
-
-
-Thank you for using Tuscany!
-
-
-The Tuscany Team.
-
diff --git a/branches/das-java-M2/samples/testing/tomcat/companyweb/src/test/java/org/apache/tuscany/test/das/DasTestCase.java b/branches/das-java-M2/samples/testing/tomcat/companyweb/src/test/java/org/apache/tuscany/test/das/DasTestCase.java
deleted file mode 100644
index d2f3e22b83..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/companyweb/src/test/java/org/apache/tuscany/test/das/DasTestCase.java
+++ /dev/null
@@ -1,249 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.test.das;
-
-import java.net.URL;
-
-import junit.framework.TestCase;
-
-import com.gargoylesoftware.htmlunit.WebClient;
-import com.gargoylesoftware.htmlunit.html.HtmlForm;
-import com.gargoylesoftware.htmlunit.html.HtmlPage;
-import com.gargoylesoftware.htmlunit.html.HtmlSubmitInput;
-
-public class DasTestCase extends TestCase {
- public static final String testUrl = "http://localhost:8080/sample-companyweb/";
-
- protected WebClient _webClient;
- protected URL _url;
-
- protected void setUp() throws Exception {
- //New HTMLunit web client
- _webClient = new WebClient();
- _webClient.setRedirectEnabled(true);
-
- // Going to have the WebClient connect to this URL
- _url = new URL(testUrl);
-
- }
-
- public void testHomepage() throws Exception {
- final String TEST_CASE = "HomePage";
- System.out.print("Running:" + TEST_CASE + "\t\t\t");
-
- final HtmlPage page = (HtmlPage) _webClient.getPage(_url);
- //System.out.println(page.getTitleText());
-
- String responseText = page.asText();
- //System.out.println("html-->\n" + responseText);
- //check page header
- assertTrue(-1 != responseText.indexOf("Tuscany DAS Companies WEB Example"));
- //check table headers
- assertTrue(-1 != responseText.indexOf("ID"));
- assertTrue(-1 != responseText.indexOf("Name"));
- assertTrue(-1 != responseText.indexOf("Department_ID"));
- assertTrue(-1 != responseText.indexOf("Department_Name"));
- //check companies values
- assertTrue(-1 != responseText.indexOf("51"));
- assertTrue(-1 != responseText.indexOf("ACME Publishing"));
- assertTrue(-1 != responseText.indexOf("53"));
- assertTrue(-1 != responseText.indexOf("Do-rite plumbing"));
- assertTrue(-1 != responseText.indexOf("53"));
- assertTrue(-1 != responseText.indexOf("MegaCorp"));
- //check departments
- assertTrue(-1 != responseText.indexOf("73"));
- assertTrue(-1 != responseText.indexOf("74"));
- assertTrue(-1 != responseText.indexOf("75"));
- assertTrue(-1 != responseText.indexOf("76"));
- assertTrue(-1 != responseText.indexOf("77"));
- assertTrue(-1 != responseText.indexOf("78"));
- assertTrue(-1 != responseText.indexOf("12"));
-
- System.out.println("SUCCESS!!!");
- }
-
-
- public void testAllCompanies() throws Exception{
- final String TEST_CASE = "AllCompanies";
- System.out.print("Running:" + TEST_CASE + "\t\t\t");
-
- // Get the first page
- final HtmlPage page = (HtmlPage) _webClient.getPage(_url);
-
- // Get the form that we are dealing with and within that form,
- // find the submit button and the field that we want to change.
- final HtmlForm form = (HtmlForm) page.getForms().get(0);
- final HtmlSubmitInput allCompaniesButton = (HtmlSubmitInput)form.getHtmlElementById("doFill");
- // Now submit the form by clicking the button
- final HtmlPage resultPage = (HtmlPage)allCompaniesButton.click();
-
- //verify the resultPage
- String responseText = resultPage.asText();
- //System.out.println("html-->\n" + responseText);
- // check table headers
- assertTrue(-1 != responseText.indexOf("ID"));
- assertTrue(-1 != responseText.indexOf("Name"));
- //check table values
- assertTrue(-1 != responseText.indexOf("51"));
- assertTrue(-1 != responseText.indexOf("ACME Publishing"));
- assertTrue(-1 != responseText.indexOf("52"));
- assertTrue(-1 != responseText.indexOf("Do-rite plumbing"));
- assertTrue(-1 != responseText.indexOf("53"));
- assertTrue(-1 != responseText.indexOf("MegaCorp"));
-
- System.out.println("SUCCESS!!!");
- }
-
- public void testAllCompaniesDepartments() throws Exception{
- final String TEST_CASE = "AllCompaniesDepartments";
- System.out.print("Running:" + TEST_CASE + "\t\t");
-
- // Get the first page
- final HtmlPage page = (HtmlPage) _webClient.getPage(_url);
-
- // Get the form that we are dealing with and within that form,
- // find the submit button and the field that we want to change.
- final HtmlForm form = (HtmlForm) page.getForms().get(0);
- final HtmlSubmitInput allCompaniesButton = (HtmlSubmitInput)form.getHtmlElementById("doFillAll");
- // Now submit the form by clicking the button
- final HtmlPage resultPage = (HtmlPage)allCompaniesButton.click();
-
- //verify the resultPage
- String responseText = resultPage.asText();
- //System.out.println("html-->\n" + responseText);
- //check table headers
- assertTrue(-1 != responseText.indexOf("ID"));
- assertTrue(-1 != responseText.indexOf("Name"));
- assertTrue(-1 != responseText.indexOf("Department_ID"));
- assertTrue(-1 != responseText.indexOf("Department_Name"));
- //check companies values
- assertTrue(-1 != responseText.indexOf("51"));
- assertTrue(-1 != responseText.indexOf("ACME Publishing"));
- assertTrue(-1 != responseText.indexOf("53"));
- assertTrue(-1 != responseText.indexOf("Do-rite plumbing"));
- assertTrue(-1 != responseText.indexOf("53"));
- assertTrue(-1 != responseText.indexOf("MegaCorp"));
- //check departments
- assertTrue(-1 != responseText.indexOf("73"));
- assertTrue(-1 != responseText.indexOf("74"));
- assertTrue(-1 != responseText.indexOf("75"));
- assertTrue(-1 != responseText.indexOf("76"));
- assertTrue(-1 != responseText.indexOf("77"));
- assertTrue(-1 != responseText.indexOf("78"));
- assertTrue(-1 != responseText.indexOf("12"));
-
- System.out.println("SUCCESS!!!");
- }
-
- public void testAddDepartmentToFirstCompany() throws Exception{
- final String TEST_CASE = "AddDepartmentToFirstCompany";
- System.out.print("Running:" + TEST_CASE + "\t");
-
- // Get the first page
- final HtmlPage page = (HtmlPage) _webClient.getPage(_url);
-
- // Get the form that we are dealing with and within that form,
- // find the submit button and the field that we want to change.
- final HtmlForm form = (HtmlForm) page.getForms().get(0);
- final HtmlSubmitInput allCompaniesButton = (HtmlSubmitInput)form.getHtmlElementById("doAddDepartment");
- // Now submit the form by clicking the button
- final HtmlPage resultPage = (HtmlPage)allCompaniesButton.click();
-
- //verify the resultPage
- String responseText = resultPage.asText();
- //System.out.println("html-->\n" + responseText);
- //check new department
- assertTrue(-1 != responseText.indexOf("79"));
-
- System.out.println("SUCCESS!!!");
- }
-
-
- public void testChangeCompanyDepartmentNames() throws Exception{
- final String TEST_CASE = "ChangeCompanyDepartmentNames";
- System.out.print("Running:" + TEST_CASE + "\t");
-
- // Get the first page
- final HtmlPage page = (HtmlPage) _webClient.getPage(_url);
-
- // Get the form that we are dealing with and within that form,
- // find the submit button and the field that we want to change.
- final HtmlForm form = (HtmlForm) page.getForms().get(0);
- final HtmlSubmitInput allCompaniesButton = (HtmlSubmitInput)form.getHtmlElementById("doChangeDepartmentNames");
- // Now submit the form by clicking the button
- final HtmlPage resultPage = (HtmlPage)allCompaniesButton.click();
-
- //verify the resultPage
- String responseText = resultPage.asText();
- //System.out.println("html-->\n" + responseText);
- //check update departments
- assertTrue(-1 != responseText.indexOf("Dept-"));
- //also, check to not have old departments names (default name)
- assertTrue(-1 == responseText.indexOf("Default Name"));
-
- System.out.println("SUCCESS!!!");
- }
-
- public void testDeleteCompanyOneDepartments() throws Exception{
- final String TEST_CASE = "DeleteCompanyOneDepartments";
- System.out.print("Running:" + TEST_CASE + "\t");
-
- // Get the first page
- final HtmlPage page = (HtmlPage) _webClient.getPage(_url);
-
- // Get the form that we are dealing with and within that form,
- // find the submit button and the field that we want to change.
- final HtmlForm form = (HtmlForm) page.getForms().get(0);
- final HtmlSubmitInput allCompaniesButton = (HtmlSubmitInput)form.getHtmlElementById("doDeleteDepartments");
- // Now submit the form by clicking the button
- final HtmlPage resultPage = (HtmlPage)allCompaniesButton.click();
-
- //verify the resultPage
- String responseText = resultPage.asText();
- //System.out.println("html-->\n" + responseText);
- //check that al the company 1 departments are gone..
- assertTrue(-1 == responseText.indexOf("73"));
- assertTrue(-1 == responseText.indexOf("74"));
- assertTrue(-1 == responseText.indexOf("75"));
- assertTrue(-1 == responseText.indexOf("76"));
- assertTrue(-1 == responseText.indexOf("77"));
- assertTrue(-1 == responseText.indexOf("78"));
-
- System.out.println("SUCCESS!!!");
- }
-
- /**
- * @param args
- */
- public static void main(String[] args) {
- DasTestCase t = new DasTestCase();
- try{
- t.testHomepage();
- t.testAllCompanies();
- t.testAllCompaniesDepartments();
- t.testAddDepartmentToFirstCompany();
- t.testChangeCompanyDepartmentNames();
- t.testDeleteCompanyOneDepartments();
- }catch(Exception e){
- e.printStackTrace();
- }
-
- }
-
-}
diff --git a/branches/das-java-M2/samples/testing/tomcat/context.xsl b/branches/das-java-M2/samples/testing/tomcat/context.xsl
deleted file mode 100644
index 35a78a43a5..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/context.xsl
+++ /dev/null
@@ -1,51 +0,0 @@
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-<xsl:output indent="yes" />
-
- <xsl:param name="classname"/>
- <!-- xsl:template match="node() | @*">
- <xsl:copy>
- <xsl:apply-templates select="node() | @*"/>
- </xsl:copy>
- </xsl:template -->
- <xsl:template
- match="@* | * | comment() | processing-instruction() | text()">
- <xsl:copy>
- <xsl:apply-templates
- select="@* | * | comment() | processing-instruction() | text()" />
- </xsl:copy>
- </xsl:template>
-
-<!--
- <xsl:template match="Context">
- <Context>
- <xsl:apply-templates select="@*" />
- <Listener className="org.apache.tuscany.tomcat.lifecycle.listener.TomcatWebAppLifecycleListener" />
- <xsl:apply-templates
- select="@* | * | comment() | processing-instruction() | text()" />
- </Context>
- </xsl:template>
--->
-
- <!-- xsl:template match="/">
- <xsl:apply-templates select="node() | @*" />
- </xsl:template -->
-</xsl:stylesheet>
diff --git a/branches/das-java-M2/samples/testing/tomcat/datasource.xsl b/branches/das-java-M2/samples/testing/tomcat/datasource.xsl
deleted file mode 100644
index ad473e317c..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/datasource.xsl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0"?>
-
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
-
-<xsl:output method="xml" indent="yes"/>
-
- <xsl:param name="database_location"/>
-
-<!--Add derby database resource-->
-<xsl:template match="GlobalNamingResources">
-
- <xsl:copy>
- <!--Copy existing-->
- <xsl:apply-templates select="@* | node()" />
-
- <xsl:comment> Global Datasource for Derby dastest database </xsl:comment>
- <xsl:text>
- </xsl:text>
- <!--Append this-->
- <Resource name="jdbc/dastest"
- type="javax.sql.DataSource" auth="Container"
- description="Derby database for DAS Company sample"
- maxActive="100" maxIdle="30" maxWait="10000"
- username="" password=""
- driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
- url="{$database_location}"/>
-
- </xsl:copy>
-
-</xsl:template>
-
-<!--Copy everything!-->
-<xsl:template match="node() | @*">
- <xsl:copy>
- <xsl:apply-templates select="@* | node()" />
- </xsl:copy>
-</xsl:template>
-
-</xsl:stylesheet> \ No newline at end of file
diff --git a/branches/das-java-M2/samples/testing/tomcat/pom.xml b/branches/das-java-M2/samples/testing/tomcat/pom.xml
deleted file mode 100644
index 8cc305e935..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/pom.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.
--->
-<project>
- <parent>
- <groupId>org.apache.tuscany.das.samples</groupId>
- <artifactId>tuscany-samples-das</artifactId>
- <version>1.0-incubator-M2-SNAPSHOT</version>
- </parent>
-
-
- <modelVersion>4.0.0</modelVersion>
- <artifactId>tuscany-samples-das-testing-tomcat</artifactId>
- <packaging>pom</packaging>
- <name>Tuscany Testing in Tomcat</name>
-
-
- <modules>
- <module>companyweb</module>
- </modules>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <includes>
- <include>**/*TestCase.java</include>
- </includes>
- </configuration>
- </plugin>
- </plugins>
-
- <testResources>
- <testResource>
- <directory>src/test/java</directory>
- <includes>
- <include>**/*.componentType</include>
- </includes>
- </testResource>
- <testResource>
- <directory>src/test/resources</directory>
- <includes>
- <include>**/*</include>
- </includes>
- </testResource>
- </testResources>
-
- <pluginManagement>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <version>1.1</version>
- <executions>
- <execution>
- <id>prepareTomcat</id>
- <phase>process-test-resources</phase>
- <configuration>
- <tasks>
- <ant inheritRefs='true' antfile="build.xml" dir="${basedir}/.." target="startTestServer">
- <property name="user.home" value="${user.home}" />
- <property name="target.dir" value="${basedir}/../target" />
-
- <!-- property name="tuscany.maven.repos.dir" value="${maven.local.repo}"/ -->
- </ant>
- </tasks>
- </configuration>
- <goals>
- <goal>run</goal>
- </goals>
- </execution>
-
- <execution>
- <id>cleanupTomcat</id>
- <phase>clean</phase>
- <configuration>
- <tasks>
- <ant inheritRefs='true' antfile="build.xml" dir="${basedir}/.." target="clean">
- <property name="target.dir" value="${basedir}/target" />
- </ant>
- </tasks>
- </configuration>
- <goals>
- <goal>run</goal>
- </goals>
- </execution>
-
- </executions>
- </plugin>
- </plugins>
- </pluginManagement>
-
- <defaultGoal>test</defaultGoal>
- </build>
-</project>
diff --git a/branches/das-java-M2/samples/testing/tomcat/readme.htm b/branches/das-java-M2/samples/testing/tomcat/readme.htm
deleted file mode 100644
index b47a9d24c5..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/readme.htm
+++ /dev/null
@@ -1,71 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html><head>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> <meta content="text/css" http-equiv="Content-Style-Type"><title>Tuscany End User Sample Testing</title><!-- LINK rel="stylesheet" href="ait.css" type="text/css" -->
-<style type="text/css" media="all">
-@import url("../../../css/maven-base.css");
-@import url("../../../css/maven-theme.css");
-@import url("../../../css/site.css");
-</style><link rel="stylesheet" href="./css/print.css" type="text/css" media="print"></head>
-<body>
-<h2>Tuscany End User Sample Testing</h2>
-<h3>Initial Setup</h3>&nbsp;
-&nbsp; &nbsp;Most of the following only needs to be done once
-unless noted otherwise.<br>
-<ul>
-<li>Follow the steps to build Tuscany DAS Companyweb sample application from <a target="_blank" href="http://incubator.apache.org/tuscany/java_das_overview.html">Tuscany DAS Java Overview</a>.</li>
-
-<li>Change directory
-to <span style="font-weight: bold;">java/das/samples/testing/tomcat</span>.</li>
-
-<li>Download
-Tomcat Core 5.5.<span style="font-style: italic;"><span style="color: rgb(255, 102, 102);">xx</span>&nbsp;</span>zip
-for Windows or &nbsp;tar.gz for Linux &nbsp;from <a href="http://tomcat.apache.org/download-55.cgi" target="_blank">Apache
-Tomcat</a>.</li>
-
-<li>You can place the tomcat distribution in your java/samples/das/testing/tomcat directory or, alternatively, you can create/edit {user home}/build.properties to
-change the property <b>tuscany.acceptance.tomcat.zipped</b> to tell the build
-environment where the tomcat distribution zip file is located. </li>
-<li>You may have to edit build.xml &nbsp;to change the property <span style="font-weight: bold;">tuscany.acceptance.tomcat.version</span>
-to match the&nbsp;<span style="font-style: italic;"><span style="color: rgb(255, 102, 102);">xx</span></span>
-to the specific version that you downloaded.</li>
-</ul>
-
-<h3>&nbsp;Running</h3>In
-the <span style="font-weight: bold;">java/das/samples/testing/tomcat </span>
-directory<b> </b>run maven:<br><code>mvn</code><br><h3>Explanation</h3>Maven&nbsp;does
-the following:<br><ul><li>Unpacks the
-Tomcat distribution into the target directory to ensure a pristine
-environment.</li><li>It adds the appropriate Tuscany and it
-dependencies jars into Tomcat <a href="../../companyweb/readme.htm#Tomcat_Setup" target="_blank"><small><span style="font-style: italic;">(for more&nbsp; details)</span></small></a></li><li>Does
-the necessary changes
-to Tomcat's configuration as required.&nbsp;<a href="../../companyweb/readme.htm#Tomcat_Setup" target="_blank"><small><span style="font-style: italic;">(for more&nbsp; details)</span></small></a></li><li>Deploys
-Tuscany's DAS sample war files into Tomcat.</li><li>Starts
-Tomcat (You should see another window running Tomcat)&nbsp;</li><li>Begins
-running HTML unit tests that should closely match running the samples
-as a user would.</li></ul>If all goes well at the end you
-should see:<br>
-<pre>[INFO] ----------------------------------------------------------------------------<br>[INFO] Reactor Summary:<br>[INFO] ----------------------------------------------------------------------------<br>[INFO] Tuscany Testing in Tomcat .............................. SUCCESS [0.340s]<br>[INFO] Tuscany Testing Tomcat DAS Sample - Companyweb ......... SUCCESS [48.350s]<br>[INFO] ----------------------------------------------------------------------------<br>[INFO] ----------------------------------------------------------------------------<br>[INFO] BUILD SUCCESSFUL<br>[INFO] ----------------------------------------------------------------------------<br>[INFO] Total time: 49 seconds<br>[INFO] Finished at: Tue Aug 08 15:30:28 EDT 2006<br>[INFO] Final Memory: 7M/15M<br>[INFO] ----------------------------------------------------------------------------<br><br></pre><h3>Cleanup</h3>Close
-the Tomcat window and issue <code>mvn clean</code>.<p><b><font size="4">Note</font></b></p>
-<p>Because the html unit tests execute multiple user actions that change the contents of the database tables, is recommended
-that you always run these tests in a clean environment (after a mvn clean),
-otherwise you may experience failure on some tests as the expected result data might have been affected by previous test runs.</p>
-
-</body></html> \ No newline at end of file
diff --git a/branches/das-java-M2/samples/testing/tomcat/server.xsl b/branches/das-java-M2/samples/testing/tomcat/server.xsl
deleted file mode 100644
index b53d1d50c7..0000000000
--- a/branches/das-java-M2/samples/testing/tomcat/server.xsl
+++ /dev/null
@@ -1,51 +0,0 @@
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you 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.
- -->
-<xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-<xsl:output indent="yes" />
-
- <xsl:param name="classname"/>
- <!-- xsl:template match="node() | @*">
- <xsl:copy>
- <xsl:apply-templates select="node() | @*"/>
- </xsl:copy>
- </xsl:template -->
- <xsl:template
- match="@* | * | comment() | processing-instruction() | text()">
- <xsl:copy>
- <xsl:apply-templates
- select="@* | * | comment() | processing-instruction() | text()" />
- </xsl:copy>
- </xsl:template>
-
- <xsl:template match="Host">
- <Host>
- <xsl:attribute name="className">
- <xsl:text>org.apache.tuscany.tomcat.TuscanyHost</xsl:text>
- </xsl:attribute>
- <xsl:apply-templates select="@*" />
- <xsl:apply-templates
- select="@* | * | comment() | processing-instruction() | text()" />
- </Host>
- </xsl:template>
-
- <!-- xsl:template match="/">
- <xsl:apply-templates select="node() | @*" />
- </xsl:template -->
-</xsl:stylesheet>