You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by ke...@apache.org on 2007/07/04 15:34:42 UTC

svn commit: r553203 - in /incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo: ./ advanced/ basic/ intermediate/ otherSources/ specExampleSection/ tuscanyapi/

Author: kelvingoodson
Date: Wed Jul  4 06:34:40 2007
New Revision: 553203

URL: http://svn.apache.org/viewvc?view=rev&rev=553203
Log:
fixed up the java serialization sample.  Consolidated infrastructure. Removed 2 redundant samples. More rearrangement.

Added:
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/CreateCompanyTuscanyAPI.java
      - copied, changed from r553191, incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/tuscanyapi/CreateCompanyTuscanyAPI.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/SerializingDeserializingADataObject.java
      - copied, changed from r553191, incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/SerializingDeserializingADataObject.java
Removed:
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/SdoSampleConstants.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessDataObjectsUsingXPath.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/CreatingXmlFromDataObjects.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/SerializingDeserializingADataObject.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/tuscanyapi/CreateCompanyTuscanyAPI.java
Modified:
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/ExecuteSamples.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/ExecuteSamples2.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/SampleInfrastructure.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/advanced/ObtainingDataGraphFromXml.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/advanced/PrintDataGraph.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/AccessDataObjectPropertiesByName.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/CreateCompany.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/CreatePurchaseOrder.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/ReadPurchaseOrder.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessDataObjectUsingValidXPath.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/otherSources/PurchaseOrderCmdLine.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/otherSources/PurchaseOrderControl.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessingDataObjectsViaPropertyIndex.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessingTheContentsOfASequence.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/CreatingDataObjectTreesFromXMLDocuments.java
    incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/UsingTypeAndPropertyWithDataObjects.java

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/ExecuteSamples.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/ExecuteSamples.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/ExecuteSamples.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/ExecuteSamples.java Wed Jul  4 06:34:40 2007
@@ -29,9 +29,12 @@
 import org.apache.tuscany.samples.sdo.basic.ReadPurchaseOrder;
 import org.apache.tuscany.samples.sdo.intermediate.CreateDataObjectFromXmlString;
 import org.apache.tuscany.samples.sdo.intermediate.DynamicCustomerTypeSample;
-import org.apache.tuscany.samples.sdo.otherSources.*;
-import org.apache.tuscany.samples.sdo.specCodeSnippets.*;
-import org.apache.tuscany.samples.sdo.specExampleSection.*;
+import org.apache.tuscany.samples.sdo.intermediate.SerializingDeserializingADataObject;
+import org.apache.tuscany.samples.sdo.otherSources.PurchaseOrderCmdLine;
+import org.apache.tuscany.samples.sdo.specExampleSection.AccessingDataObjectsViaPropertyIndex;
+import org.apache.tuscany.samples.sdo.specExampleSection.AccessingTheContentsOfASequence;
+import org.apache.tuscany.samples.sdo.specExampleSection.CreatingDataObjectTreesFromXMLDocuments;
+import org.apache.tuscany.samples.sdo.specExampleSection.UsingTypeAndPropertyWithDataObjects;
 
 /**
  * Executes all command line samples. <br>
@@ -128,9 +131,7 @@
 
             System.out.println(">>>Press Enter to continue");
             in.readLine();
-            AccessDataObjectsUsingXPath.main(args);
-            System.out.println(">>>Press Enter for next sample");
-            in.readLine();
+
 
             AccessingDataObjectsViaPropertyIndex.main(args);
             System.out.println(">>>Press Enter for next sample");
@@ -141,10 +142,6 @@
             in.readLine();
 
             CreatingDataObjectTreesFromXMLDocuments.main(args);
-            System.out.println(">>>Press Enter for next sample");
-            in.readLine();
-
-            CreatingXmlFromDataObjects.main(args);
             System.out.println(">>>Press Enter for next sample");
             in.readLine();
 

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/ExecuteSamples2.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/ExecuteSamples2.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/ExecuteSamples2.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/ExecuteSamples2.java Wed Jul  4 06:34:40 2007
@@ -53,7 +53,7 @@
       AccessDataObjectUsingValidXPath.class,
       DynamicCustomerTypeSample.class,
       ObtainingDataGraphFromXml.class,
-      org.apache.tuscany.samples.sdo.tuscanyapi.CreateCompanyTuscanyAPI.class,
+      org.apache.tuscany.samples.sdo.intermediate.CreateCompanyTuscanyAPI.class,
       CreateDataObjectFromXmlString.class,
       PrintDataGraph.class,
       MedicalScenario.class

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/SampleInfrastructure.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/SampleInfrastructure.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/SampleInfrastructure.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/SampleInfrastructure.java Wed Jul  4 06:34:40 2007
@@ -26,73 +26,89 @@
 import java.util.Set;
 
 /**
- * One of a pair of base classes for samples.  This one contains all the
- * infrastructure code that a person wanting to learn SDO would not want to look at.
+ * One of a pair of base classes for samples. This one contains all the
+ * infrastructure code that a person wanting to learn SDO would not want to look
+ * at.
  */
 public abstract class SampleInfrastructure {
 
-
   protected int sampleComplexityLevel = SAMPLE_LEVEL_BASIC.intValue();
   protected int commentaryLevel = COMMENTARY_FOR_NOVICE.intValue();
-  
+
+
   /*
-   * keep a record of what's been said,  so that if alternative terse text is
-   * offered,  the verbose text need not be repeated for repeat actions.
+   * keep a record of what's been said, so that if alternative terse text is
+   * offered, the verbose text need not be repeated for repeat actions.
    */
   private static Set commentaryHistory = new HashSet();
-  
-  public SampleInfrastructure (Integer commentaryLevel) {
+
+  public SampleInfrastructure(Integer commentaryLevel) {
     this.commentaryLevel = commentaryLevel.intValue();
   }
-  
+
   public SampleInfrastructure(Integer commentaryLevel, Integer sampLevel) {
     this.commentaryLevel = commentaryLevel.intValue();
     this.sampleComplexityLevel = sampLevel.intValue();
   }
 
   private static String hrule = "********************************************";
-  
+
   /*
-   * Constants which allow the sample program infrastructure to understand
-   * the complexity of a sample program.
+   * Constants which allow the sample program infrastructure to understand the
+   * complexity of a sample program.
    */
   protected static final Integer SAMPLE_LEVEL_BASIC = new Integer(0);
   protected static final Integer SAMPLE_LEVEL_INTERMEDIATE = new Integer(1);
   protected static final Integer SAMPLE_LEVEL_ADVANCED = new Integer(2);
-  
-  
+
   /*
-   * Constants which can be used to reduce the amount of information output
-   * by an executing sample program.
+   * Constants which can be used to reduce the amount of information output by
+   * an executing sample program.
    */
   protected static final Integer COMMENTARY_FOR_NOVICE = new Integer(0);
   protected static final Integer COMMENTARY_FOR_INTERMEDIATE = new Integer(1);
   protected static final Integer COMMENTARY_FOR_ADVANCED = new Integer(2);
   protected static final Integer COMMENTARY_ALWAYS = new Integer(3);
+
+  protected static final String[] userLevels = { "novice", "intermediate",
+      "advanced" };
   
-  protected static final String[] userLevels = {"novice","intermediate","advanced"};
-  
+  /*
+   * Various constants that reference resources etc shared between the samples
+   */
+  public static final String COMPANY_DATAOBJECT_XML = "companyGenerated.xml";
+  public static final String COMPANY_DATAGRAPH_XML = "companyDataGraphGenerated.xml";
+  public static final String COMPANY_XSD = "company.xsd";
+  public static final String COMPANY_NAMESPACE = "company.xsd";
+  public static final String PO_NAMESPACE = "http://www.example.com/PO";
+  public static final String PO_XML_GENERATED = "temporaryPoGenerated.xml";
+  public static final String PO_XML_RESOURCE = "po.xml";
+  public static final String PO_XSD_RESOURCE = "po.xsd";
+
+
   public void banner(char borderChar, String text) {
-    if(text == null || text.length() == 0) {
+    if (text == null || text.length() == 0) {
       System.out.println(hrule);
       return;
     }
-    String [] lines = text.split("\n");
+    String[] lines = text.split("\n");
     int maxlinelen = 0;
-    
-    for(int i=0; i<lines.length; i++) {
-      maxlinelen = lines[i].length() > maxlinelen ? lines[i].length() : maxlinelen;
+
+    for (int i = 0; i < lines.length; i++) {
+      maxlinelen = lines[i].length() > maxlinelen ? lines[i].length()
+          : maxlinelen;
     }
-    
+
     StringBuffer buf = new StringBuffer();
     for (int p = 0; p < maxlinelen + 4; p++) {
       buf.append(borderChar);
     }
     buf.append("\n");
-    for(int l=0; l<lines.length; l++) {
+    for (int l = 0; l < lines.length; l++) {
       buf.append(borderChar).append(" ");
       buf.append(lines[l]);
-      for(int rem=lines[l].length()+2; rem < maxlinelen+3; rem++) buf.append(" ");
+      for (int rem = lines[l].length() + 2; rem < maxlinelen + 3; rem++)
+        buf.append(" ");
       buf.append(borderChar).append("\n");
     }
     for (int p = 0; p < maxlinelen + 4; p++) {
@@ -101,18 +117,19 @@
     buf.append("\n");
     System.out.println(buf.toString());
   }
-  
+
   public void banner(String text) {
     banner('-', text);
   }
-  
+
   protected void commentary(Integer commentLevel, String text, String repeatText) {
 
-    if(commentLevel.intValue() < commentaryLevel) return;
-    
-    if(repeatText != null)  {
+    if (commentLevel.intValue() < commentaryLevel)
+      return;
+
+    if (repeatText != null) {
       boolean alreadySeen = commentaryHistory.contains(text);
-      if(alreadySeen) {
+      if (alreadySeen) {
         commentary(commentLevel, repeatText);
       } else {
         commentary(commentLevel, text);
@@ -121,84 +138,88 @@
     } else {
       commentary(commentLevel, text);
     }
-    
+
   }
-  
+
   protected void commentary(Integer commentLevel, String text) {
-    if(commentLevel.intValue() >= commentaryLevel) {
+    if (commentLevel.intValue() >= commentaryLevel) {
       banner(text);
     }
   }
-  
+
   /*
-   * convenience method to allow commentary level to default to that of
-   * the sample's complexity
+   * convenience method to allow commentary level to default to that of the
+   * sample's complexity
    */
   protected void commentary(String text) {
     commentary(new Integer(getSampleComplexityLevel()), text);
   }
-  
+
   public void somethingUnexpectedHasHappened(Exception e) {
-    banner('!',
-        "Something unexpected has gone wrong with the execution of this sample program\n" +
-        "Please take a look at the exception and see if its something wrong with your environment\n" +
-        "If you can't figure it out please send a note to the tuscany-user@ws.apache.org mailing list\n" +
-        "including the text of the exception and any other useful information, thanks");
-    
+    banner(
+        '!',
+        "Something unexpected has gone wrong with the execution of this sample program\n"
+            + "Please take a look at the exception and see if its something wrong with your environment\n"
+            + "If you can't figure it out please send a note to the tuscany-user@ws.apache.org mailing list\n"
+            + "including the text of the exception and any other useful information, thanks");
+
     e.printStackTrace();
   }
-  
 
   /**
-   * Utility method to obtain information from the user about whether or not they would like to use a DataGraph or simply use a DataObject
+   * Utility method to obtain information from the user about whether or not
+   * they would like to use a DataGraph or simply use a DataObject
    * 
    * @return whether or not a DataGraph should be used
    * @throws Exception
    */
   protected boolean yesOrNoFromUser(String question) throws Exception {
 
-      System.out.print(question + " {y,n} :");
-      BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
-      String answer = in.readLine();
-      while ((! answer.equalsIgnoreCase("n")) && (! answer.equalsIgnoreCase("y"))) {
-          
-          System.out.println();
-          System.out.print("Sorry, please enter 'y' or 'n':");
-          answer = in.readLine();
-      }
+    System.out.print(question + " {y,n} :");
+    BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
+    String answer = in.readLine();
+    while ((!answer.equalsIgnoreCase("n")) && (!answer.equalsIgnoreCase("y"))) {
+
       System.out.println();
+      System.out.print("Sorry, please enter 'y' or 'n':");
+      answer = in.readLine();
+    }
+    System.out.println();
 
-      if (answer.equalsIgnoreCase("y")) {
-          return true;
-      } else {
-          return false;
-      }
+    if (answer.equalsIgnoreCase("y")) {
+      return true;
+    } else {
+      return false;
+    }
   }
-  
+
   public void run() {
- 
-    
-    commentary(COMMENTARY_FOR_INTERMEDIATE, "Running with commentary level for a " + userLevels[commentaryLevel] + " user\n"+
-        "Edit the sample program's constructor argument to one from\n"+
-        "COMMENTARY_FOR_NOVICE\nCOMMENTARY_FOR_INTERMEDIATE or\nCOMMENTARY_FOR_ADVANCED\n"+
-        "in order to alter the level of commentary you are seeing",
-        "");
-    
-    commentary(COMMENTARY_ALWAYS,"    Tuscany SDO Java Sample " + this.getClass().getName() + "    \n"+
-        "    This sample is aimed at a " + userLevels[sampleComplexityLevel] + " user");
 
-    
+    commentary(
+        COMMENTARY_FOR_INTERMEDIATE,
+        "Running with commentary level for a "
+            + userLevels[commentaryLevel]
+            + " user\n"
+            + "Edit the sample program's constructor argument to one from\n"
+            + "COMMENTARY_FOR_NOVICE\nCOMMENTARY_FOR_INTERMEDIATE or\nCOMMENTARY_FOR_ADVANCED\n"
+            + "in order to alter the level of commentary you are seeing", "");
+
+    commentary(COMMENTARY_ALWAYS, "    Tuscany SDO Java Sample "
+        + this.getClass().getName() + "    \n"
+        + "    This sample is aimed at a " + userLevels[sampleComplexityLevel]
+        + " user");
+
     try {
       runSample();
     } catch (Exception e) {
       somethingUnexpectedHasHappened(e);
-    }
-    finally {   
-      commentary(COMMENTARY_ALWAYS, "    End of sample "  + this.getClass().getName() + "    ");
+    } finally {
+      commentary(COMMENTARY_ALWAYS, "    End of sample "
+          + this.getClass().getName() + "    ");
     }
   }
-  
-  public abstract void runSample() throws Exception ;
+
+  public abstract void runSample() throws Exception;
 
   public int getSampleComplexityLevel() {
     return sampleComplexityLevel;
@@ -207,6 +228,5 @@
   public void setSampleComplexityLevel(Integer sampleComplexityLevel) {
     this.sampleComplexityLevel = sampleComplexityLevel.intValue();
   }
-  
-  
+
 }

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/advanced/ObtainingDataGraphFromXml.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/advanced/ObtainingDataGraphFromXml.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/advanced/ObtainingDataGraphFromXml.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/advanced/ObtainingDataGraphFromXml.java Wed Jul  4 06:34:40 2007
@@ -25,7 +25,6 @@
 
 import org.apache.tuscany.samples.sdo.SampleBase;
 import org.apache.tuscany.samples.sdo.SampleInfrastructure;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
 import org.apache.tuscany.sdo.api.SDOUtil;
 
 
@@ -55,9 +54,9 @@
  * <br>
  * To define the correct Types for each DataObject ( CompanyType, DepartmentType etc )
  * this sample relies upon
- * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#COMPANY_XSD} which is
+ * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#COMPANY_XSD} which is
  * provided in the resources directory of these samples. The xml file
- * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#COMPANY_DATAGRAPH_XML} is
+ * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#COMPANY_DATAGRAPH_XML} is
  * used to load the DataGraph and is also located in this resources directory. <br>
  * <P>
  * <b>Usage:</b> <br>
@@ -138,7 +137,7 @@
         );
         
         scope = useDefaultScopeForTypes();
-        loadTypesFromXMLSchemaFile(scope, SdoSampleConstants.COMPANY_XSD);
+        loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.COMPANY_XSD);
         
 
 
@@ -157,7 +156,7 @@
                 "ClassLoader.getSystemResourceAsStream(SdoSampleConstants.COMPANY_DATAGRAPH_XML));"
                 );
             
-            InputStream is = ClassLoader.getSystemResourceAsStream(SdoSampleConstants.COMPANY_DATAGRAPH_XML);
+            InputStream is = ClassLoader.getSystemResourceAsStream(SampleInfrastructure.COMPANY_DATAGRAPH_XML);
             int x= is.available();
             byte b[]= new byte[x];
             is.read(b);
@@ -166,7 +165,7 @@
             System.out.println(instanceDoc);
 
             XMLDocument doc = scope.getXMLHelper().load(
-                    ClassLoader.getSystemResourceAsStream(SdoSampleConstants.COMPANY_DATAGRAPH_XML));
+                    ClassLoader.getSystemResourceAsStream(SampleInfrastructure.COMPANY_DATAGRAPH_XML));
             
             commentary(
                 "Now we can get the wrapper for the data graph, which in this case is the DataObject\n"+
@@ -204,7 +203,7 @@
 
             );
 
-            DataGraph datagraph = SDOUtil.loadDataGraph(ClassLoader.getSystemResourceAsStream(SdoSampleConstants.COMPANY_DATAGRAPH_XML), null);
+            DataGraph datagraph = SDOUtil.loadDataGraph(ClassLoader.getSystemResourceAsStream(SampleInfrastructure.COMPANY_DATAGRAPH_XML), null);
 
             System.out.println(datagraph);
 

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/advanced/PrintDataGraph.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/advanced/PrintDataGraph.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/advanced/PrintDataGraph.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/advanced/PrintDataGraph.java Wed Jul  4 06:34:40 2007
@@ -25,7 +25,7 @@
 import java.util.ListIterator;
 
 import org.apache.tuscany.samples.sdo.SampleBase;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
 
 
 import commonj.sdo.DataObject;
@@ -75,10 +75,10 @@
         "First we look at a data graph of a Purchase Order which has a fairly simple XML schema\n"
             + "and the graph's containment hierarchy has a couple of levels of depth");
 
-    loadTypesFromXMLSchemaFile(scope, SdoSampleConstants.PO_XSD_RESOURCE);
+    loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.PO_XSD_RESOURCE);
 
     XMLDocument purchaseOrder = getXMLDocumentFromFile(scope,
-        SdoSampleConstants.PO_XML_RESOURCE);
+        SampleInfrastructure.PO_XML_RESOURCE);
 
     printXMLDocument(purchaseOrder);
 

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/AccessDataObjectPropertiesByName.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/AccessDataObjectPropertiesByName.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/AccessDataObjectPropertiesByName.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/AccessDataObjectPropertiesByName.java Wed Jul  4 06:34:40 2007
@@ -23,7 +23,7 @@
 import java.util.List;
 
 import org.apache.tuscany.samples.sdo.SampleBase;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
 
 
 import commonj.sdo.DataObject;
@@ -62,9 +62,9 @@
 
         // setting up the type system for the example,  see the utility methods for details of these operations
         HelperContext scope = createScopeForTypes();
-        loadTypesFromXMLSchemaFile(scope, SdoSampleConstants.PO_XSD_RESOURCE);
+        loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.PO_XSD_RESOURCE);
 
-        DataObject purchaseOrder = getDataObjectFromFile(scope, SdoSampleConstants.PO_XML_RESOURCE);
+        DataObject purchaseOrder = getDataObjectFromFile(scope, SampleInfrastructure.PO_XML_RESOURCE);
 
 
         System.out.println("Accessing properties by name");

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/CreateCompany.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/CreateCompany.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/CreateCompany.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/CreateCompany.java Wed Jul  4 06:34:40 2007
@@ -23,7 +23,7 @@
 import java.io.FileOutputStream;
 
 import org.apache.tuscany.samples.sdo.SampleBase;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
 
 
 import commonj.sdo.DataObject;
@@ -74,14 +74,14 @@
                "from an XML Schema contained in a file on the file system");
                 
         HelperContext scope = createScopeForTypes();       
-        loadTypesFromXMLSchemaFile(scope, SdoSampleConstants.COMPANY_XSD);
+        loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.COMPANY_XSD);
         
         commentary(
             "Now that our type system has been loaded and made available through the scope\n"+
             "DataObjects can be created by a DataFactory that has access to the required types.\n\n"+
             "DataObject company = scope.getDataFactory().create(SdoSampleConstants.COMPANY_NAMESPACE, \"CompanyType\");");
         
-        DataObject company = scope.getDataFactory().create(SdoSampleConstants.COMPANY_NAMESPACE, "CompanyType");
+        DataObject company = scope.getDataFactory().create(SampleInfrastructure.COMPANY_NAMESPACE, "CompanyType");
         
         populateGraph(scope, company);
             
@@ -91,13 +91,13 @@
             "The XMLHelper can be used to write an XML serialized version of the data graph\n\n"+
             "scope.getXMLHelper().save(company, SdoSampleConstants.COMPANY_NAMESPACE, \"company\", fos);");
         
-        scope.getXMLHelper().save(company, SdoSampleConstants.COMPANY_NAMESPACE, "company", fos);
+        scope.getXMLHelper().save(company, SampleInfrastructure.COMPANY_NAMESPACE, "company", fos);
         
         commentary(
             "Similarly we can serialize the graph to an XML String using the XMLHelper\n\n"+
             "String xml = scope.getXMLHelper().save(company, SdoSampleConstants.COMPANY_NAMESPACE, \"company\");\n");
         
-        String xml = scope.getXMLHelper().save(company, SdoSampleConstants.COMPANY_NAMESPACE, "company");
+        String xml = scope.getXMLHelper().save(company, SampleInfrastructure.COMPANY_NAMESPACE, "company");
         
         System.out.println(xml);
 

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/CreatePurchaseOrder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/CreatePurchaseOrder.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/CreatePurchaseOrder.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/CreatePurchaseOrder.java Wed Jul  4 06:34:40 2007
@@ -24,7 +24,7 @@
 import java.io.OutputStream;
 
 import org.apache.tuscany.samples.sdo.SampleBase;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
 
 
 import commonj.sdo.DataObject;
@@ -35,9 +35,9 @@
 /**
  * Demonstrates creating a purchaseOrder DataObject from an existing XSD and then
  * persisting to disk. Uses previously defined model
- * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#PO_XSD_RESOURCE} to
+ * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#PO_XSD_RESOURCE} to
  * define types then generates a purchase order DataObject and persists to
- * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#PO_XML_GENERATED}. This
+ * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#PO_XML_GENERATED}. This
  * sample was used to generate valid XML for Fuhwei Lwo's paper <A
  * HREF="http://www-128.ibm.com/developerworks/webservices/library/ws-sdoxmlschema/"
  * title="Me" onClick="checkLinks(this)">Create and read an XML document based on XML
@@ -102,7 +102,7 @@
 
           HelperContext scope = createScopeForTypes();
           
-          loadTypesFromXMLSchemaFile(scope, SdoSampleConstants.PO_XSD_RESOURCE);
+          loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.PO_XSD_RESOURCE);
           
           
           commentary (
@@ -112,7 +112,7 @@
               "DataObject purchaseOrder = factory.create(SdoSampleConstants.PO_NAMESPACE, \"PurchaseOrderType\");");
           
           DataFactory factory = scope.getDataFactory();           
-          DataObject purchaseOrder = factory.create(SdoSampleConstants.PO_NAMESPACE, "PurchaseOrderType");
+          DataObject purchaseOrder = factory.create(SampleInfrastructure.PO_NAMESPACE, "PurchaseOrderType");
 
 
           commentary(
@@ -163,8 +163,8 @@
               );
           
           
-          OutputStream stream = new FileOutputStream(SdoSampleConstants.PO_XML_GENERATED);
-          scope.getXMLHelper().save(purchaseOrder, SdoSampleConstants.PO_NAMESPACE, "purchaseOrder", stream);
+          OutputStream stream = new FileOutputStream(SampleInfrastructure.PO_XML_GENERATED);
+          scope.getXMLHelper().save(purchaseOrder, SampleInfrastructure.PO_NAMESPACE, "purchaseOrder", stream);
           stream.close();
 
           commentary(
@@ -176,7 +176,7 @@
               "scope.getXMLHelper().save(doc, System.out, null);");
           
           
-          XMLDocument doc = scope.getXMLHelper().createDocument(purchaseOrder, SdoSampleConstants.PO_NAMESPACE, "purchaseOrder");
+          XMLDocument doc = scope.getXMLHelper().createDocument(purchaseOrder, SampleInfrastructure.PO_NAMESPACE, "purchaseOrder");
           scope.getXMLHelper().save(doc, System.out, null);
           System.out.println();
       }

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/ReadPurchaseOrder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/ReadPurchaseOrder.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/ReadPurchaseOrder.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/basic/ReadPurchaseOrder.java Wed Jul  4 06:34:40 2007
@@ -24,7 +24,6 @@
 
 import org.apache.tuscany.samples.sdo.SampleBase;
 import org.apache.tuscany.samples.sdo.SampleInfrastructure;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
 
 
 import commonj.sdo.DataObject;
@@ -36,7 +35,7 @@
  * HREF="http://www-128.ibm.com/developerworks/webservices/library/ws-sdoxmlschema/"
  * title="Me" onClick="checkLinks(this)">Create and read an XML document based on XML
  * Schema</A>.  Uses file
- * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#PO_XML_GENERATED}
+ * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#PO_XML_GENERATED}
  * previously generated by {@link CreatePurchaseOrder} to populate purchase order
  * DataObject
  * <p>
@@ -126,7 +125,7 @@
 
         HelperContext scope = createScopeForTypes();
         
-        loadTypesFromXMLSchemaFile(scope, SdoSampleConstants.PO_XSD_RESOURCE);
+        loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.PO_XSD_RESOURCE);
 
         commentary(
             "We load the purchase order document into an instance of XMLDocument\n\n"+

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessDataObjectUsingValidXPath.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessDataObjectUsingValidXPath.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessDataObjectUsingValidXPath.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/AccessDataObjectUsingValidXPath.java Wed Jul  4 06:34:40 2007
@@ -24,7 +24,6 @@
 
 import org.apache.tuscany.samples.sdo.SampleBase;
 import org.apache.tuscany.samples.sdo.SampleInfrastructure;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
 
 import commonj.sdo.DataObject;
 import commonj.sdo.helper.HelperContext;
@@ -80,9 +79,9 @@
     /**
      * Accesses and modifies properties of a purchase order DataObject using xPath(
      * properties are defined in the xsd
-     * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#PO_XSD_RESOURCE} and
+     * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#PO_XSD_RESOURCE} and
      * populated by xml
-     * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#PO_XML_RESOURCE} )
+     * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#PO_XML_RESOURCE} )
      * 
      * @param args.
      *            No parameters required.
@@ -105,8 +104,8 @@
             "First we create the type system using an XML Schema file and then create\n"+
             "A DataObject using an XML document for convenience");
         
-        loadTypesFromXMLSchemaFile(scope, SdoSampleConstants.PO_XSD_RESOURCE);
-        DataObject purchaseOrder = getDataObjectFromFile(scope, SdoSampleConstants.PO_XML_RESOURCE);
+        loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.PO_XSD_RESOURCE);
+        DataObject purchaseOrder = getDataObjectFromFile(scope, SampleInfrastructure.PO_XML_RESOURCE);
 
 
 

Copied: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/CreateCompanyTuscanyAPI.java (from r553191, incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/tuscanyapi/CreateCompanyTuscanyAPI.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/CreateCompanyTuscanyAPI.java?view=diff&rev=553203&p1=incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/tuscanyapi/CreateCompanyTuscanyAPI.java&r1=553191&p2=incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/CreateCompanyTuscanyAPI.java&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/tuscanyapi/CreateCompanyTuscanyAPI.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/CreateCompanyTuscanyAPI.java Wed Jul  4 06:34:40 2007
@@ -18,11 +18,11 @@
  *  under the License.
  */
 
-package org.apache.tuscany.samples.sdo.tuscanyapi;
+package org.apache.tuscany.samples.sdo.intermediate;
 
 import java.io.FileOutputStream;
 
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
 import org.apache.tuscany.sdo.api.SDOUtil;
 
 import commonj.sdo.DataGraph;
@@ -108,7 +108,7 @@
             "other than the default scope. So here is an occasion where we must use"+
             "the default singleton scope");
         HelperContext scope = useDefaultScopeForTypes();
-        loadTypesFromXMLSchemaFile(scope, SdoSampleConstants.COMPANY_XSD);
+        loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.COMPANY_XSD);
        
         commentary (COMMENTARY_FOR_INTERMEDIATE,
             "Here is the use of the Tuscany API for creating a DataGraph instance\n\n"+
@@ -121,7 +121,7 @@
             "This is an example of a DataGraph interface that currently forces us to use the default scope.\n\n"+
             "company = dataGraph.createRootObject(SdoSampleConstants.COMPANY_NAMESPACE, \"CompanyType\");");
         
-        DataObject company = dataGraph.createRootObject(SdoSampleConstants.COMPANY_NAMESPACE, "CompanyType");
+        DataObject company = dataGraph.createRootObject(SampleInfrastructure.COMPANY_NAMESPACE, "CompanyType");
         
         populateGraph(scope, company);
         

Copied: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/SerializingDeserializingADataObject.java (from r553191, incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/SerializingDeserializingADataObject.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/SerializingDeserializingADataObject.java?view=diff&rev=553203&p1=incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/SerializingDeserializingADataObject.java&r1=553191&p2=incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/SerializingDeserializingADataObject.java&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/SerializingDeserializingADataObject.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/intermediate/SerializingDeserializingADataObject.java Wed Jul  4 06:34:40 2007
@@ -18,190 +18,105 @@
  *  under the License.
  */
 
-package org.apache.tuscany.samples.sdo.specExampleSection;
+package org.apache.tuscany.samples.sdo.intermediate;
 
-import commonj.sdo.helper.HelperContext;
-import commonj.sdo.helper.XMLHelper;
-import commonj.sdo.helper.XSDHelper;
-import commonj.sdo.helper.EqualityHelper;
-import commonj.sdo.DataObject;
-
-import java.io.BufferedReader;
 import java.io.FileInputStream;
-import java.io.InputStreamReader;
-import java.io.ObjectInputStream;
 import java.io.FileOutputStream;
-import java.io.ObjectOutputStream;
 import java.io.IOException;
-
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
 
 import org.apache.tuscany.samples.sdo.SampleBase;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
-import org.apache.tuscany.samples.sdo.basic.AccessDataObjectPropertiesByName;
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
+
+import commonj.sdo.DataObject;
+import commonj.sdo.helper.HelperContext;
 
 /**
- * Demonstrates serializing and deserializing a DataObject to disk.
- * 
- * The following sample is from the <a href="http://incubator.apache.org/tuscany"
- * target="_blank"> Apache Tuscany</a> project. It was written to help users
- * understand and experiement with SDO. It is based upon example code contained
- * within, and is meant for use with, and reference to the <a
- * href="http://www.osoa.org/download/attachments/791/SDO_Specification_Java_V2.01.pdf?version=1"
- * target="_bank">SDO Specification</a>. In general this sample attempts to use the
- * code and comments contained within the specification, exceptions to this are noted
- * in comments.<br>
- * <br>
- * The following sample is based upon the 'Serializing/Deserializing a DataGraph or DataObject' example from the Examples section of the SDO
- * specification. <br>
- * <br>
- * The DataObject and DataGraph interfaces extend java.io.Serializable, so any DataObject
- * or DataGraph be serialized.  The following code serializes the company dataObject to a file
- * of the user's choosing.  The file is not deleted after execution.<br> 
- * <br><br>
- * <b>Usage:</b> <br>
- * This sample can easily be run from within Eclipse as a Java Application if tuscany or 
- * the sample-sdo project is imported into Eclipse as an existing project.
- * <br><br>
- * If executing as a standalone application please do the following: 
- * <br>
- * <UL>
- * <LI>Include the following jar files on your classpath :
- * <UL>
- * <LI>SDO API and Tuscany Implementation
- * <UL>
- * <LI>sdo-api-{version}.jar - SDO API
- * <LI>tuscany-sdo-impl-{version}.jar - Tuscany SDO implementation
- * </UL>
- * </LI>
- * <LI>EMF dependencies. 
- * <UL>
- * <LI>emf-common-{version}.jar - some common framework utility and base classes
- * <LI>emf-ecore-{version}.jar - the EMF core runtime implementation classes (the Ecore metamodel)
- * <LI>emf-ecore-change-{version}.jar - the EMF change recorder and framework
- * <LI>emf-ecore-xmi-{version}.jar - EMF's default XML (and XMI) serializer and loader
- * <LI>xsd-{version}.jar - the XML Schema model
- * </UL>
- * </LI>
- * </UL>
- * 
- * These jar files can be obtained by downloading and unpacking a <a href="http://cwiki.apache.org/TUSCANY/sdo-downloads.html" target="_blank">Tuscany binary distribution </a> </LI>
- * <LI>Execute: <br>
- * java org.apache.tuscany.samples.sdo.specExampleSection.SerializingDeserializingADataObject</LI>
- * </UL>
- * 
- * @author Robbie Minshall
+ * Demonstrates serializing and deserializing a DataObject to disk
+ * using java serialization.
  */
-
 public class SerializingDeserializingADataObject  extends SampleBase {
-
-
+// TODO reference central build instructions
     HelperContext scope;
 
     public SerializingDeserializingADataObject(Integer userLevel) {
-      super(userLevel);
+      super(userLevel, SAMPLE_LEVEL_INTERMEDIATE);
     }
 
 
-    /**
-     * Default fileName to serialize DataObject to
-     */
-    public static final String DEFAULT_FILE_NAME = "temporarySerializedDataObject.xml";
-    
-    public static void serializeDO(DataObject DataObject, String fileName) throws IOException {
-        // serialize data object
-        FileOutputStream fos = new FileOutputStream(fileName);
-        ObjectOutputStream out = new ObjectOutputStream(fos);
-        out.writeObject(DataObject);
-        out.close();
-    }
-
-    /**
-     * Execute this method in order to run the sample.
-     * 
-     * @param args
-     */
     public static void main(String[] args) {
-      // TODO make the default level COMMENTARY_FOR_NOVICE, once the rest of the sample has been
-      // converted to using commentary()
-      SerializingDeserializingADataObject sample = new SerializingDeserializingADataObject(COMMENTARY_FOR_INTERMEDIATE);
-
-      try {
-        sample.run();
-      }
-      catch (Exception e) {
-        sample.somethingUnexpectedHasHappened(e);
-      }
+
+      SerializingDeserializingADataObject sample =
+    	  new SerializingDeserializingADataObject(COMMENTARY_FOR_INTERMEDIATE);
+      sample.run();
+
     }
 
     public void runSample () throws Exception {
-        System.out.println("***************************************");
-        System.out.println("SDO Sample AccessingTheContentsOfASequence");
-        System.out.println("***************************************");
-        System.out.println("Demonstrates serializing and deserializing a DataObject to disk.");
-        System.out.println("***************************************");
-        
-
-        try {
-            scope = createScopeForTypes();
-
-            // define Types using XSDHelper and predefined xsd file
-            System.out.println("Defining Types using XSD");
-            scope.getXSDHelper().define(ClassLoader.getSystemResourceAsStream(SdoSampleConstants.COMPANY_XSD), null);
-            System.out.println("Type definition completed");
-
-            // create company DataObject using XMLHelper which is an example of a XML DAS
-            System.out.println("Creating company DataObject");
-            DataObject company = scope.getXMLHelper().load(ClassLoader.getSystemResourceAsStream(SdoSampleConstants.COMPANY_DATAOBJECT_XML))
-                    .getRootObject();
-
-            // prompt user for a fileName
-            BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
-            System.out.print("Please enter file name, enter for default :");
-            String fileName = in.readLine();
-            if ( (fileName == null) || (fileName.equals(""))){
-                fileName = DEFAULT_FILE_NAME;
-            }
-                     
-            // serialize dataObject out
-            System.out.println("Serializing DataObject to " + fileName);
-            FileOutputStream fos = new FileOutputStream(fileName);
-            ObjectOutputStream out = new ObjectOutputStream(fos);
-            out.writeObject(company);
-            out.close();            
-            
-            // read in DataObject
-            System.out.println("Deserialize DataObject from file");
-            FileInputStream fis = new FileInputStream(fileName);
-            ObjectInputStream input = new ObjectInputStream(fis);
-            DataObject newDataObject = (DataObject) input.readObject();
-            input.close();
-            
-            /**
-             * Compare DataObjects
-             */
-            
-            System.out.println("Comparing original and deserialized DataObject");                       
-            //determine if two graphs of DataObjects are equal 
-            System.out.println("DataObjects are equal: " + scope.getEqualityHelper().equal(company, newDataObject));
-            
-            //determine if two DataObjects have the same values for their datatype properties          
-            System.out.println("DataObjects have same values for their datatype properties : " + scope.getEqualityHelper().equalShallow(company, newDataObject));
-                                 
-            //print out xml representation
-            System.out.println();
-            System.out.println("Original company DataObject:");
-            System.out.println(scope.getXMLHelper().save(company, SdoSampleConstants.COMPANY_NAMESPACE, "company"));
-            
-            System.out.println();
-            System.out.println("Deserialized company DataObject:");
-            System.out.println(scope.getXMLHelper().save(newDataObject, SdoSampleConstants.COMPANY_NAMESPACE, "company"));                       
-            
-        } catch (Exception e) {
-            System.out.println("Sorry there was an error encountered " + e.toString());
-            e.printStackTrace();
-        }
+
+        commentary(
+        		"Demonstrates serializing and deserializing a DataObject\n" +
+        		"to disk using Java serialization.");
+
+        scope = useDefaultScopeForTypes();
+        loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.COMPANY_XSD);
+        DataObject company = getDataObjectFromFile(scope, SampleInfrastructure.COMPANY_DATAOBJECT_XML);
+
+
+        commentary("We've loaded a data graph 'company' from a file\n" +
+        		"using XML schema for the model and XML for the graph in the usual manner\n");
+        String fileName = "temporarySerializedDataObject.xml";
+        commentary("We've loaded a data graph 'company' from a file\n" +
+        "using XML schema for the model and XML for the graph in the usual manner\n" +
+        "Now we are going to serialize it to, and read it from a temporary file: "+fileName);
+        
+        commentary(
+        		"The following code,  which doesn't use any SDO APIs, demonstrates the\n" +
+        		"underlying SDO function of performing Java serialization on SDO objects\n\n" +
+        		"FileOutputStream fos = new FileOutputStream(fileName);\n" +
+        		"ObjectOutputStream out = new ObjectOutputStream(fos);\n" +
+        		"out.writeObject(company);\n" +
+        		"out.close();");
+
+        FileOutputStream fos = new FileOutputStream(fileName);
+        ObjectOutputStream out = new ObjectOutputStream(fos);
+        out.writeObject(company);
+        out.close();            
+        
+        // read in DataObject
+        commentary("Having written the data graph to the temporary file we\n" +
+        		"can read it back\n\n" +
+        		"FileInputStream fis = new FileInputStream(fileName);\n" +
+        		"ObjectInputStream input = new ObjectInputStream(fis);\n" +
+        		"DataObject newDataObject = (DataObject) input.readObject();\n" +
+        		"input.close();");
+        
+        FileInputStream fis = new FileInputStream(fileName);
+        ObjectInputStream input = new ObjectInputStream(fis);
+        DataObject newDataObject = (DataObject) input.readObject();
+        input.close();
         
-        System.out.println("GoodBye");
+        /**
+         * Compare data graphs
+         */
+        
+        commentary("We can use the SDO EqualityHelper to check that we have got\n" +
+        		"back an equivalent graph to the one we had originally\n\n" +
+        		"boolean equal = scope.getEqualityHelper().equal(company, newDataObject);");                       
+
+        boolean equal = scope.getEqualityHelper().equal(company, newDataObject);
+        System.out.println("DataObjects are equal: " + equal);
+        
+       //print out xml representation
+        System.out.println();
+        System.out.println("Original company DataObject:");
+        System.out.println(scope.getXMLHelper().save(company, SampleInfrastructure.COMPANY_NAMESPACE, "company"));
+        
+        System.out.println();
+        System.out.println("Deserialized company DataObject:");
+        System.out.println(scope.getXMLHelper().save(newDataObject, SampleInfrastructure.COMPANY_NAMESPACE, "company"));                       
+            
 
     }
 }

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/otherSources/PurchaseOrderCmdLine.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/otherSources/PurchaseOrderCmdLine.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/otherSources/PurchaseOrderCmdLine.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/otherSources/PurchaseOrderCmdLine.java Wed Jul  4 06:34:40 2007
@@ -21,7 +21,8 @@
 package org.apache.tuscany.samples.sdo.otherSources;
 
 import java.io.*;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
+
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
 
 /**
  * Provides interactive menu based command line interface to modify, save, view purchase order DataObject.
@@ -366,8 +367,8 @@
     private static void printUsage() {
         System.out.println("***************************************");
         System.out.println("java org.apache.tuscany.samples.sdo.otherSources.PurchaseOrderCmdLine <xsdFileName> <xmlFileName>");
-        System.out.println("If xsdFileName and xmlFileName are not specified " + SdoSampleConstants.PO_XSD_RESOURCE + " and "
-                + SdoSampleConstants.PO_XML_RESOURCE + " will be used as resources");
+        System.out.println("If xsdFileName and xmlFileName are not specified " + SampleInfrastructure.PO_XSD_RESOURCE + " and "
+                + SampleInfrastructure.PO_XML_RESOURCE + " will be used as resources");
         System.out.println("Specify null if you wish to use the appropiate resource from the jar rather specifying a fileName");
         System.out.println("***************************************");
     }

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/otherSources/PurchaseOrderControl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/otherSources/PurchaseOrderControl.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/otherSources/PurchaseOrderControl.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/otherSources/PurchaseOrderControl.java Wed Jul  4 06:34:40 2007
@@ -34,7 +34,7 @@
 import commonj.sdo.helper.CopyHelper;
 
 import org.apache.tuscany.samples.sdo.SampleBase;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
 
 import org.apache.tuscany.samples.sdo.specCodeSnippets.*;
 
@@ -115,7 +115,7 @@
         if ((xsdFileName == null) || (xsdFileName.equals("")) || (xsdFileName.equalsIgnoreCase("null"))) {
 
             // use simple example to define type from resource
-            loadTypesFromXMLSchemaFile(scope, SdoSampleConstants.PO_XSD_RESOURCE);
+            loadTypesFromXMLSchemaFile(scope, SampleInfrastructure.PO_XSD_RESOURCE);
 
         } else {
             System.out.println("Using file to access xsd in order to define types");
@@ -144,7 +144,7 @@
 
         if ((xmlFileName == null) || (xmlFileName.equals("")) || (xmlFileName.equalsIgnoreCase("null"))) {
 
-            purchaseOrder = getDataObjectFromFile(scope, SdoSampleConstants.PO_XML_RESOURCE);
+            purchaseOrder = getDataObjectFromFile(scope, SampleInfrastructure.PO_XML_RESOURCE);
         } else {
             try {
 
@@ -297,9 +297,9 @@
         if (this.xmlFileName != null) {
             saveAs(xmlFileName);            
         } else {
-            System.out.println("Sorry, can not save to resource within jar, will create file called " + SdoSampleConstants.PO_XML_RESOURCE
+            System.out.println("Sorry, can not save to resource within jar, will create file called " + SampleInfrastructure.PO_XML_RESOURCE
                     + " and save");
-            saveAs(SdoSampleConstants.PO_XML_RESOURCE);
+            saveAs(SampleInfrastructure.PO_XML_RESOURCE);
         }
     }
 
@@ -312,7 +312,7 @@
      */
     public void saveAs(String fileName) throws IOException {
         OutputStream stream = new FileOutputStream(fileName);
-        scope.getXMLHelper().save(purchaseOrder, SdoSampleConstants.PO_NAMESPACE, "purchaseOrder", stream);
+        scope.getXMLHelper().save(purchaseOrder, SampleInfrastructure.PO_NAMESPACE, "purchaseOrder", stream);
         System.out.println("Saved to " + fileName);
     }
 
@@ -468,7 +468,7 @@
      * @return XMLDocument that represents current purchase order DataObject
      */
     public XMLDocument getXMLDocuement() {
-        return scope.getXMLHelper().createDocument(purchaseOrder, SdoSampleConstants.PO_NAMESPACE, "purchaseOrder");
+        return scope.getXMLHelper().createDocument(purchaseOrder, SampleInfrastructure.PO_NAMESPACE, "purchaseOrder");
     }
 
     /**
@@ -479,7 +479,7 @@
         // alternativly could use the following
         // return scope.getXMLHelper().createDocument(purchaseOrder, PO_NAMESPACE,
         // "purchaseOrder").toString();
-        return scope.getXMLHelper().save(purchaseOrder, SdoSampleConstants.PO_NAMESPACE, "purchaseOrder");
+        return scope.getXMLHelper().save(purchaseOrder, SampleInfrastructure.PO_NAMESPACE, "purchaseOrder");
     }
 
     // PRIVATE HELPER METHODS
@@ -520,8 +520,7 @@
     }
 
     public void runSample() throws Exception {
-      // TODO Auto-generated method stub
-      // FIXME make this sample fit the pattern
+      // FIXME make this sample fit the pattern or delete it
       
     }
 }

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessingDataObjectsViaPropertyIndex.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessingDataObjectsViaPropertyIndex.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessingDataObjectsViaPropertyIndex.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessingDataObjectsViaPropertyIndex.java Wed Jul  4 06:34:40 2007
@@ -24,7 +24,7 @@
 import java.util.List;
 
 import org.apache.tuscany.samples.sdo.SampleBase;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
 
 import commonj.sdo.DataObject;
 import commonj.sdo.helper.HelperContext;
@@ -57,10 +57,10 @@
  * <br>
  * To define the correct Types for each DataObject ( CompanyType, DepartmentType etc )
  * this sample relies upon
- * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#COMPANY_XSD} which is
+ * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#COMPANY_XSD} which is
  * provided in the resources directory of these samples <br>
  * The xml file
- * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#COMPANY_DATAOBJECT_XML}
+ * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#COMPANY_DATAOBJECT_XML}
  * used to load the DataObject is also located in this resources directory. To help
  * ensure consistancy with the xsd the xml was generated by
  * {@link org.apache.tuscany.samples.sdo.basic.CreateCompany} which is a good
@@ -171,7 +171,7 @@
         try {
             System.out.println("Defining Types using XSD");
             InputStream is = null;
-            is = ClassLoader.getSystemResourceAsStream(SdoSampleConstants.COMPANY_XSD);
+            is = ClassLoader.getSystemResourceAsStream(SampleInfrastructure.COMPANY_XSD);
             scope.getXSDHelper().define(is, null);
             is.close();
             System.out.println("Type definition completed");
@@ -190,14 +190,14 @@
             // Obtain the RootObject from the XMLDocument obtained from the XMLHelper
             // instance.
             // In this case the root object is a DataObject representing a company
-            DataObject company = scope.getXMLHelper().load(ClassLoader.getSystemResourceAsStream(SdoSampleConstants.COMPANY_DATAOBJECT_XML))
+            DataObject company = scope.getXMLHelper().load(ClassLoader.getSystemResourceAsStream(SampleInfrastructure.COMPANY_DATAOBJECT_XML))
                     .getRootObject();
 
             // print out some information to show the user what the objects look like
             System.out.println("Company DataObject:");
             System.out.println(company);
 
-            String generatedXml = scope.getXMLHelper().save(company, SdoSampleConstants.COMPANY_NAMESPACE, "company");
+            String generatedXml = scope.getXMLHelper().save(company, SampleInfrastructure.COMPANY_NAMESPACE, "company");
             System.out.println("Company data object xml representation: ");
             System.out.println(generatedXml);
 
@@ -238,7 +238,7 @@
             System.out.println("The modified company DataObject :");
             System.out.println(company);
 
-            generatedXml = scope.getXMLHelper().save(company, SdoSampleConstants.COMPANY_NAMESPACE, "company");
+            generatedXml = scope.getXMLHelper().save(company, SampleInfrastructure.COMPANY_NAMESPACE, "company");
             System.out.println("Company data object xml representation: ");
             System.out.println(generatedXml);
 

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessingTheContentsOfASequence.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessingTheContentsOfASequence.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessingTheContentsOfASequence.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/AccessingTheContentsOfASequence.java Wed Jul  4 06:34:40 2007
@@ -126,6 +126,8 @@
         System.out.println("***************************************");
         System.out.println("Demonstrates accessing the sequence from a DataObject containing mixed content.");
         System.out.println("***************************************");
+        
+        // FIXME update sample, and see if it deals with xml attribute sequencing
 
         scope = createScopeForTypes();
         

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/CreatingDataObjectTreesFromXMLDocuments.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/CreatingDataObjectTreesFromXMLDocuments.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/CreatingDataObjectTreesFromXMLDocuments.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/CreatingDataObjectTreesFromXMLDocuments.java Wed Jul  4 06:34:40 2007
@@ -21,7 +21,7 @@
 package org.apache.tuscany.samples.sdo.specExampleSection;
 
 import org.apache.tuscany.samples.sdo.SampleBase;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
 
 import commonj.sdo.DataObject;
 import commonj.sdo.helper.HelperContext;
@@ -45,9 +45,9 @@
  * XMLHelper to convert xml Strings to DataObjects. <br>
  * <br>
  * Uses previously defined model
- * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#PO_XSD_RESOURCE} to
+ * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#PO_XSD_RESOURCE} to
  * define types then generates a purchase order DataObject and persists to
- * {@link org.apache.tuscany.samples.sdo.SdoSampleConstants#PO_XML_GENERATED}
+ * {@link org.apache.tuscany.samples.sdo.SampleInfrastructure#PO_XML_GENERATED}
  * <br><br> 
  * <b>Usage:</b> <br>
  * This sample can easily be run from within Eclipse as a Java Application if tuscany or 
@@ -122,12 +122,12 @@
             scope = createScopeForTypes();
 
             // use xsd to define purchase order types
-            System.out.println("Definging purchase order types using " + SdoSampleConstants.PO_XSD_RESOURCE);
-            scope.getXSDHelper().define(ClassLoader.getSystemResourceAsStream(SdoSampleConstants.PO_XSD_RESOURCE), null);
+            System.out.println("Defining purchase order types using " + SampleInfrastructure.PO_XSD_RESOURCE);
+            scope.getXSDHelper().define(ClassLoader.getSystemResourceAsStream(SampleInfrastructure.PO_XSD_RESOURCE), null);
             System.out.println("Defined Types using xsd");
 
-            System.out.println("Creating purchase order DataObject using previously created " + SdoSampleConstants.PO_XML_RESOURCE);
-            DataObject purchaseOrder = scope.getXMLHelper().load(ClassLoader.getSystemResourceAsStream(SdoSampleConstants.PO_XML_RESOURCE))
+            System.out.println("Creating purchase order DataObject using previously created " + SampleInfrastructure.PO_XML_RESOURCE);
+            DataObject purchaseOrder = scope.getXMLHelper().load(ClassLoader.getSystemResourceAsStream(SampleInfrastructure.PO_XML_RESOURCE))
                     .getRootObject();
 
             // To create the shipTo DataObject from XML:

Modified: incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/UsingTypeAndPropertyWithDataObjects.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/UsingTypeAndPropertyWithDataObjects.java?view=diff&rev=553203&r1=553202&r2=553203
==============================================================================
--- incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/UsingTypeAndPropertyWithDataObjects.java (original)
+++ incubator/tuscany/java/sdo/sample/src/main/java/org/apache/tuscany/samples/sdo/specExampleSection/UsingTypeAndPropertyWithDataObjects.java Wed Jul  4 06:34:40 2007
@@ -23,7 +23,7 @@
 import java.util.List;
 
 import org.apache.tuscany.samples.sdo.SampleBase;
-import org.apache.tuscany.samples.sdo.SdoSampleConstants;
+import org.apache.tuscany.samples.sdo.SampleInfrastructure;
 
 import commonj.sdo.DataObject;
 import commonj.sdo.Property;
@@ -125,23 +125,23 @@
           
             // define Types using XSDHelper and predefined xsd file
             System.out.println("Defining company Types using XSD");
-            scope.getXSDHelper().define(ClassLoader.getSystemResourceAsStream(SdoSampleConstants.COMPANY_XSD), null);
+            scope.getXSDHelper().define(ClassLoader.getSystemResourceAsStream(SampleInfrastructure.COMPANY_XSD), null);
             System.out.println("Type definition completed");
 
             // create company DataObject using XMLHelper which is an example of a XML DAS
             System.out.println("Creating company DataObject");
-            DataObject company = scope.getXMLHelper().load(ClassLoader.getSystemResourceAsStream(SdoSampleConstants.COMPANY_DATAOBJECT_XML))
+            DataObject company = scope.getXMLHelper().load(ClassLoader.getSystemResourceAsStream(SampleInfrastructure.COMPANY_DATAOBJECT_XML))
                     .getRootObject();
 
             printDataObject(company, 0);
             
             System.out.println("Defining purchase order types");
-            scope.getXSDHelper().define(ClassLoader.getSystemResourceAsStream(SdoSampleConstants.PO_XSD_RESOURCE), null);
+            scope.getXSDHelper().define(ClassLoader.getSystemResourceAsStream(SampleInfrastructure.PO_XSD_RESOURCE), null);
             System.out.println("Type definition completed");
 
             // create company DataObject using XMLHelper which is an example of a XML DAS
             System.out.println("Creating purchase order DataObject");
-            DataObject po = scope.getXMLHelper().load(ClassLoader.getSystemResourceAsStream(SdoSampleConstants.PO_XML_RESOURCE))
+            DataObject po = scope.getXMLHelper().load(ClassLoader.getSystemResourceAsStream(SampleInfrastructure.PO_XML_RESOURCE))
                     .getRootObject();
 
             printDataObject(po, 0);



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org