summaryrefslogtreecommitdiffstats
path: root/branches/sdo-1.0-incubating/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessingDataObjectsViaPropertyIndex.java
diff options
context:
space:
mode:
authorlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2009-11-10 19:19:15 +0000
committerlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2009-11-10 19:19:15 +0000
commitc993ba575bdd1530b7bbc0c6a19c32e66fce4b89 (patch)
tree94cfba65fe887c9017ea73727966d673e51d1ab7 /branches/sdo-1.0-incubating/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessingDataObjectsViaPropertyIndex.java
parentdc741421e88c3e4210b00f39877159c5117b99d3 (diff)
moving SDO branches
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@834612 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'branches/sdo-1.0-incubating/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessingDataObjectsViaPropertyIndex.java')
-rw-r--r--branches/sdo-1.0-incubating/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessingDataObjectsViaPropertyIndex.java164
1 files changed, 0 insertions, 164 deletions
diff --git a/branches/sdo-1.0-incubating/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessingDataObjectsViaPropertyIndex.java b/branches/sdo-1.0-incubating/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessingDataObjectsViaPropertyIndex.java
deleted file mode 100644
index 2c33f1d512..0000000000
--- a/branches/sdo-1.0-incubating/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessingDataObjectsViaPropertyIndex.java
+++ /dev/null
@@ -1,164 +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.sdo.intermediate;
-
-import java.util.List;
-
-import org.apache.tuscany.samples.sdo.SampleBase;
-import org.apache.tuscany.samples.sdo.advanced.PrintDataGraph;
-import org.apache.tuscany.samples.sdo.internal.SampleInfrastructure;
-
-import commonj.sdo.DataObject;
-import commonj.sdo.helper.HelperContext;
-
-/**
- * Demonstrates accessing the properties of a DataObject using integer property indices.
- * <p>
- * <h3>Running this Sample</h3> See <A HREF="../../../../../../index.html"
- * target="_top">the main overview</A> for instructions on how to run this
- * sample.
- */
-
-public class AccessingDataObjectsViaPropertyIndex extends SampleBase {
-
- HelperContext scope;
- PrintDataGraph printer;
-
- public AccessingDataObjectsViaPropertyIndex(Integer userLevel) {
- /*
- * Classifying this sample as intermediate, not because it is complex
- * but because it's a scenario not to be encouraged for use by
- * people new to SDO.
- */
- super(userLevel, SAMPLE_LEVEL_INTERMEDIATE);
- printer = new PrintDataGraph(SAMPLE_LEVEL_ADVANCED);
- }
-
-
- /**
- * Predefine the property indexes.
- */
-
- private static final int COMPANY_DEPARTMENT = 0;
- private static final int COMPANY_NAME = 1;
- private static final int COMPANY_EMPLOYEE_OF_MONTH = 2;
-
- private static final int DEPARTMENT_EMPLOYEES = 0;
-
- private static final int EMPLOYEE_NAME = 0;
- private static final int EMPLOYEE_SN = 1;
- private static final int EMPLOYEE_MANAGER = 2;
-
-
- /**
- * Execute this method in order to run the sample.
- *
- * @param args
- */
- public static void main(String[] args) {
- AccessingDataObjectsViaPropertyIndex sample =
- new AccessingDataObjectsViaPropertyIndex(COMMENTARY_FOR_NOVICE);
-
- sample.run();
-
- }
-
- /*
- * metadata for the sample documenting the areas of SDO that are explored
- */
- public static int [] CORE_FUNCTION = {
- SDOFacets.GET_SET_PROPERTIES_OF_DATAOBJECT_BY_INDEX
- };
-
-
- public void runSample () throws Exception {
-
-
- commentary(
- "This sample demonstrates the use of integer index to get and set\n" +
- "Property values of a DataObject. This approach is optimized for\n" +
- "performance, but is fragile to changes to the Type system. It will be\n" +
- "broken if someone alters the XML schema that is used to load the type system." +
- "This kind of approach is well suited to a situation where the SDO code is being\n" +
- "generated.");
-
- scope = createScopeForTypes();
-
- loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.COMPANY_XSD);
-
- DataObject company = getDataObjectFromFile(scope, SampleInfrastructure.COMPANY_DATAOBJECT_XML);
-
- commentary("We've loaded a data graph that looks like this ...");
-
- printer.print(company);
- System.out.println(printer.getBuf());
- printer.reset();
-
- commentary("Here's how the data graph looks rendered in XML ...");
- System.out.println(
- scope.getXMLHelper().save(company, SampleInfrastructure.COMPANY_NAMESPACE, "company"));
-
- commentary(
- "This sample class has primitive int static constants defined for the Properties\n" +
- "of the Types that the program is designed to work with, e.g.\n\n" +
- "private static final int COMPANY_NAME = 2;\n\n" +
- "The value of the integers is defined by the sequence the Properties\n" +
- "appear in the List returned by dataObject.getType().getDeclaredProperties()\n" +
- "For a type derived from an XML schema this will be the sequence they appeard in the\n" +
- "schema document.\n" +
- "We can use these integer values to get and set Properties on the company DataObject\n\n" +
- "company.setString(COMPANY_NAME, \"MegaCorp\");\n" +
- "List departments = company.getList(COMPANY_DEPARTMENT);\n" +
- "List employees = department.getList(DEPARTMENT_EMPLOYEES);\n");
-
- company.setString(COMPANY_NAME, "MegaCorp");
-
-
-
- commentary("The sample continues, altering the data graph by using the getter\n" +
- "and setter methods that take int arguments");
-
- List departments = company.getList(COMPANY_DEPARTMENT);
- DataObject department = (DataObject) departments.get(0);
- List employees = department.getList(DEPARTMENT_EMPLOYEES);
- DataObject employeeFromList = (DataObject) employees.get(2);
- employeeFromList.detach();
-
- DataObject newEmployee = department.createDataObject(DEPARTMENT_EMPLOYEES);
-
- newEmployee.set(EMPLOYEE_NAME, "Al Smith");
- newEmployee.set(EMPLOYEE_SN, "E0005");
- newEmployee.setBoolean(EMPLOYEE_MANAGER, true);
-
- company.set(COMPANY_EMPLOYEE_OF_MONTH, newEmployee.get(EMPLOYEE_SN));
-
- commentary("After some more manipulation (take a look at the sample code to see the detail)\n" +
- "we can examine the state of the modified graph");
-
- printer.print(company);
- System.out.println(printer.getBuf());
- printer.reset();
-
- commentary("Or rendered in XML it now looks like this ...");
- System.out.println(scope.getXMLHelper().save(company, SampleInfrastructure.COMPANY_NAMESPACE, "company"));
-
- }
-}