You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by ro...@apache.org on 2007/07/13 20:26:31 UTC

svn commit: r556089 [2/11] - in /incubator/tuscany/cpp/sca: VSExpress/tuscany_sca/tuscany_sca_cpp/ doc/ runtime/extensions/cpp/ runtime/extensions/cpp/tools/ runtime/extensions/cpp/tools/scagen/ runtime/extensions/cpp/tools/scagen/META-INF/ runtime/ext...

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/SimplePublicPrivateProtectedTest.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/SimplePublicPrivateProtectedTest.java?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/SimplePublicPrivateProtectedTest.java (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/SimplePublicPrivateProtectedTest.java Fri Jul 13 11:26:14 2007
@@ -0,0 +1,49 @@
+/**
+ *
+ *  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.sca.cpp.tools.junit;
+
+/**
+ * This is a "run this first" testcase that just tests some simple operations of
+ * the scagen tools it uses the
+ * Hydra.sca.core\test\testSCASystem\composites\MyValueServiceComposite SCA composite as
+ * input data.
+ */
+public class SimplePublicPrivateProtectedTest extends TuscanyTestCase {
+
+    /**
+     * Constructor for CustomerInfoTestOLD.
+     * 
+     * @param arg0
+     */
+    public SimplePublicPrivateProtectedTest(String arg0) {
+        super(arg0);
+    }
+
+    /**
+     * Test the Hydra.sca.core\test\testSCASystem\composites\MyValueServiceComposite
+     * proxy and wrapper generation.
+     */
+    public void testEnvHandler() {
+
+        testComposite("SimplePublicPrivateProtectedTest", check_results);
+    }
+
+}
\ No newline at end of file

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/SimplePublicPrivateProtectedTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/SimplePublicPrivateProtectedTest.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestAllCompositesTest.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestAllCompositesTest.java?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestAllCompositesTest.java (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestAllCompositesTest.java Fri Jul 13 11:26:14 2007
@@ -0,0 +1,89 @@
+/**
+ *
+ *  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.sca.cpp.tools.junit;
+
+import java.io.File;
+import java.util.HashSet;
+import java.util.Set;
+
+import org.apache.tuscany.sca.cpp.tools.junit.TuscanyTestCase;
+
+/**
+ * This test case will test all the composites placed in the "composites" directory
+ * against the results in their repectice "expected_results" folders.
+ */
+public class TestAllCompositesTest extends TuscanyTestCase {
+
+    String testsDir = TuscanyTestCase.junit_composites;
+
+    Set excludes = new HashSet();
+
+    public TestAllCompositesTest(String arg0) {
+        super(arg0);
+        excludes.add("MyValueServiceCompositeMissingScaComposite");
+        excludes.add("CVS");
+        excludes.add(".svn");
+    }
+
+    
+    /* main exists to allow running from the java ant task */
+    public static void main(String[] args) {
+        TestAllCompositesTest test = new TestAllCompositesTest("");
+        test.testAllCompositesRegression();
+    }
+    
+    public void testAllCompositesRegression() {
+        File dir = new File(testsDir);
+
+        if (dir.isDirectory()) {
+            System.out.println("Testing all composites under "
+                    + dir.getAbsolutePath());
+            String[] test_composites = dir.list();
+
+            for (int i = 0; i < test_composites.length; i++) {
+                File test_composite = new File(testsDir, test_composites[i]);
+
+                String composite_name = null;
+                if (test_composite.isDirectory()) {
+                    composite_name = test_composite.getName();
+                    if (!excludes.contains(composite_name.intern())) {
+                        testComposite(composite_name, check_results);
+                        System.out.println("Test of composite \"" + composite_name
+                                + "\" passed.");
+                        continue;
+                    } else {
+                        System.out
+                                .println("Ignoring excluded composite subdirectory \""
+                                        + composite_name + "\"");
+                    }
+                }
+            }
+
+        } else {
+
+            fail("Test directory is not a directory! \r The variable org.apache.tuscany.sca.cpp.tools.junit.TuscanyTestCase.root sets the location of the junit input data,\r it is currently set as "
+                    + TuscanyTestCase.root + "\rand we expect to find a testinput\\composites directory under there.");
+        }
+
+        System.out.println("testAllComposites test passed.");
+    }
+
+}
\ No newline at end of file

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestAllCompositesTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestAllCompositesTest.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestDeployAssistTool.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestDeployAssistTool.java?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestDeployAssistTool.java (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestDeployAssistTool.java Fri Jul 13 11:26:14 2007
@@ -0,0 +1,97 @@
+/**
+ *
+ *  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.sca.cpp.tools.junit;
+
+import java.io.File;
+import java.util.HashSet;
+import java.util.Set;
+
+/**
+ * This test case will test all the composites placed in the "composites" directory
+ * against the results in their repectice "expected_results" folders.
+ */
+public class TestDeployAssistTool extends TuscanyTestCase {
+
+    String testsDir = TuscanyTestCase.junit_composites;
+
+    Set excludes = new HashSet();
+
+    public TestDeployAssistTool(String arg0) {
+        super(arg0);
+        excludes.add("MyValueServiceCompositeMissingScaComposite");
+        excludes.add("CVS");
+    }
+
+    /* main exists to allow running from the test script which will
+     * wrap this test case and pipe the satandard output to somewhere
+     * for checking. 
+     */
+
+    public static void main(String[] args) {
+        TestDeployAssistTool test = new TestDeployAssistTool("");
+        test.testDeployToolNullParms();
+    }
+
+    public void testDeployTool() {
+        //Utils.setReportArtefacts(true);
+        TestAllCompositesTest t = new TestAllCompositesTest("");
+        File dir = new File(testsDir);
+
+        if (dir.isDirectory()) {
+            String[] test_composites = dir.list();
+
+            for (int i = 0; i < test_composites.length; i++) {
+                File test_composite = new File(testsDir, test_composites[i]);
+                String composite_name = null;
+                if (test_composite.isDirectory()) {
+                    composite_name = test_composite.getName();
+                    if (!excludes.contains(composite_name.intern())) {
+                        t.testCompositeDeploy(composite_name, create_results, "c:\\colin", "cp");
+                    }
+                }
+                System.out.println("");
+            }
+        }
+    }
+    
+    public void testDeployToolNullParms() {
+        //Utils.setReportArtefacts(true);
+        TestAllCompositesTest t = new TestAllCompositesTest("");
+        File dir = new File(testsDir);
+
+        if (dir.isDirectory()) {
+            String[] test_composites = dir.list();
+
+            for (int i = 0; i < test_composites.length; i++) {
+                File test_composite = new File(testsDir, test_composites[i]);
+                String composite_name = null;
+                if (test_composite.isDirectory()) {
+                    composite_name = test_composite.getName();
+                    if (!excludes.contains(composite_name.intern())) {
+                        t.testCompositeDeploy(composite_name, create_results, null, null);
+                    }
+                }
+                System.out.println("");
+            }
+        }
+    }
+}
+

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestDeployAssistTool.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TestDeployAssistTool.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TuscanyTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TuscanyTestCase.java?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TuscanyTestCase.java (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TuscanyTestCase.java Fri Jul 13 11:26:14 2007
@@ -0,0 +1,341 @@
+/**
+ *
+ *  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.sca.cpp.tools.junit;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.Reader;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.sca.cpp.tools.common.Options;
+import org.apache.tuscany.sca.cpp.tools.services.Scagen;
+
+/**
+ * A superclass for testcases that can be used to store common functions.
+ */
+public abstract class TuscanyTestCase extends TestCase {
+
+    public static String root = "d:\\tuscany\\cpp\\sca\\tools\\scagen\\junit\\";
+
+    public static String junit_composites = root + "testinput\\composites\\";
+
+    public static String junit_output = root + "testoutput\\";
+
+    private String testcase = "TESTCASE NOT SET BY SUBCLASS";
+
+    String input = null;
+
+    String output = null;
+
+    /**
+     * Check the resulting files with the contents of the expected_results
+     * folder in the testComposite method
+     */
+    public final static boolean check_results = true;
+
+    /**
+     * Create test output but do not check it (useful for setting up new
+     * expected test output
+     */
+    public final static boolean create_results = false;
+
+    /**
+     *  
+     */
+    public TuscanyTestCase() {
+        super();
+    }
+
+    /**
+     * @param arg0
+     */
+    public TuscanyTestCase(String arg0) {
+        super(arg0);
+    }
+
+    protected void setUp() throws Exception {
+        super.setUp();
+    }
+
+    protected void tearDown() throws Exception {
+        super.tearDown();
+    }
+
+    /**
+     * Tests to see if two files are the same - this is just a scratch method at
+     * the moment that flags up testcase output files not matching expected
+     * results rather than needing to be a fully robust implementation and needs
+     * a little further work.
+     * 
+     * @param file1
+     *            the first file to compare
+     * @param file2
+     *            the second file to compare
+     *  
+     */
+    protected boolean areFilesEqual(String file1, String file2) {
+
+        try {
+            FileInputStream fis1 = new java.io.FileInputStream(file1);
+            FileInputStream fis2 = new java.io.FileInputStream(file2);
+
+            BufferedReader br1 = new BufferedReader(new InputStreamReader(fis1));
+            BufferedReader br2 = new BufferedReader(new InputStreamReader(fis2));
+
+            String line1 = br1.readLine();
+            String line2 = br2.readLine();
+            boolean moretodo = (line1 != null) && (line2 != null);
+
+            for (int line = 1; moretodo; line++) {
+
+                if (line1.equals(line2)) {
+
+                    line1 = br1.readLine();
+                    line2 = br2.readLine();
+
+                } else {
+
+                    int l1i, l2i;
+
+                    if ((l1i = line1.lastIndexOf("$Id")) > 0) {
+                        //allow CVS strings
+                        line1 = br1.readLine();
+                    }
+
+                    if ((l2i = line2.lastIndexOf("$Id")) > 0) {
+                        //allow CVS strings
+                        line2 = br2.readLine();
+                    }
+
+                    if (l1i == -1 && l2i == -1) {
+
+                        // they don't match
+                        System.out.println("file " + file1 + " and file "
+                                + file2);
+                        System.out.println(" don't match at line " + line);
+                        System.out.println("1 is :" + line1);
+                        System.out.println("2 is :" + line2);
+
+                        return false;
+                    }
+                }
+
+                moretodo = (line1 != null) && (line2 != null);
+            }
+
+            System.out.println("MATCH FOR: file " + file1 + " and file "
+                    + file2);
+            return true;
+
+        } catch (Throwable t) {
+            t.printStackTrace();
+            return true;
+        }
+
+    }
+
+    /**
+     * @param outputDir
+     */
+    protected void clearDirButNotExpectedOutputSubDir(String outputDir) {
+        File dir = new File(outputDir);
+        if (dir.isDirectory()) {
+            String[] files = dir.list();
+            for (int i = 0; i < files.length; i++) {
+                File child = new File(dir, files[i]);
+                if (child.isDirectory()) {
+                    if (!(child.getName().equals("expected_output") || child.getName().equals(".svn"))) {
+                        clearDirButNotExpectedOutputSubDir(dir
+                                .getAbsolutePath()
+                                + File.separator + files[i]);
+                    }
+                }
+                else
+                {                    
+	                if( !child.delete() )
+	                {
+	                    System.out.println("File "+outputDir+"/"+child.getName()+" could not be deleted");
+	                }
+                }
+            }
+        }
+
+    }
+
+    public void testComposite(String composite, boolean check) {
+
+        Options.reset();
+        setTestcase(composite);
+        clearDirButNotExpectedOutputSubDir(output);
+
+        String[] commandLine = new String[] { "-dir", input, "-output", output };
+        try {
+            Scagen.main(commandLine);
+        } catch (Exception e) {
+            fail(e.getMessage());
+        }
+
+        if (check) {
+            checkDirWithExpected(output);
+        }
+    }
+
+    public void testCompositeDeploy(String composite, boolean check,
+            String deployDir, String command) {
+
+        Options.reset();
+        setTestcase(composite);
+        clearDirButNotExpectedOutputSubDir(output);
+
+        String[] commandLine;
+        if (null == deployDir) {
+            commandLine = new String[] { "-dir", input, "-output",
+                    output, "-deploy"};
+        } else {
+            commandLine = new String[] { "-dir", input, "-output",
+                    output, "-deploy", deployDir, "-command", command };
+        }
+        try {
+            Scagen.main(commandLine);
+        } catch (Exception e) {
+            fail(e.getMessage());
+        }
+
+        if (check) {
+            checkDirWithExpected(output);
+        }
+    }
+
+    /**
+     * @param outputDirName
+     */
+    private void checkDirWithExpected(String outputDirName) {
+
+        File actualDir = new File(outputDirName);
+        if (actualDir == null || !actualDir.isDirectory()) {
+            fail("result directory does not exist");
+        }
+
+        File expectedDir = new File(outputDirName + File.separator
+                + "expected_output");
+        if (expectedDir == null || !actualDir.isDirectory()) {
+            fail("can't check results as expected directory does not exist");
+        }
+
+        //Check every file in the expected output directory is present
+        //in the actual directory
+
+        String[] expectedFiles = expectedDir.list();
+
+        if (expectedFiles == null) {
+            fail("no expected results for " + expectedDir.getPath());
+        }
+        for (int i = 0; expectedFiles != null && i < expectedFiles.length; i++) {
+            File expectedFile = new File(expectedDir, expectedFiles[i]);
+            if (expectedFile.isDirectory()) {
+                // we can't check subdirectories yet
+                // and it conveniently skips over "CVS"
+            } else {
+                File actualFile = checkFileExistsFailIfNot(actualDir,
+                        expectedFile.getName());
+                checkFileHasNoTabsAndEndsInNewline(actualDir, expectedFile
+                        .getName());
+                if (!areFilesEqual(expectedFile.getAbsolutePath(), actualFile
+                        .getAbsolutePath())) {
+                    fail("odd output for " + expectedFile.getPath());
+                }
+
+            }
+
+        }
+
+    }
+
+    /**
+     * @param actualDir
+     * @param name
+     */
+    private File checkFileExistsFailIfNot(File dir, String name) {
+
+        File f = new File(dir, name);
+        if (f == null || !f.exists() || !f.isFile()) {
+            fail("Expected result file " + f + " does not exist");
+        }
+        return f;
+
+    }
+
+    /**
+     * @param actualDir
+     * @param name
+     */
+    private void checkFileHasNoTabsAndEndsInNewline(File dir, String name) {
+
+        try {
+            File f = new File(dir, name);
+            FileInputStream fis = new FileInputStream(f);
+            InputStreamReader isr = new InputStreamReader(fis);
+            Reader br = new BufferedReader(isr);
+            int ch, charBeforeMinusOne = -1;
+            while ((ch = br.read()) > -1) {
+                if (ch == '\t') {
+                    fail("found tab in output " + f.getPath());
+                }
+                charBeforeMinusOne = ch;
+            }
+            //The last char must be newline;
+            if (charBeforeMinusOne != '\n') {
+                fail("last char in file is not a newline in " + "(char is:"
+                        + ch + "  " + dir.getName() + File.separator + name);
+            }
+
+            br.close();
+        } catch (IOException e) {
+            e.printStackTrace();
+            fail("io exception in tab/newline checker for " + dir.getName()
+                    + File.separator + name);
+            return;
+        }
+
+    }
+
+    /**
+     * @param testcase
+     *            The testcase to set.
+     */
+    void setTestcase(String testcase) {
+        this.testcase = testcase;
+        input = TuscanyTestCase.junit_composites + testcase;
+        output = TuscanyTestCase.junit_output + testcase;
+    }
+
+    /**
+     * @return Returns the testcase.
+     */
+    String getTestcase() {
+        return testcase;
+    }
+
+}
\ No newline at end of file

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TuscanyTestCase.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/org/apache/tuscany/sca/cpp/tools/junit/TuscanyTestCase.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/Calculator.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/Calculator.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/Calculator.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/Calculator.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,36 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+#ifndef CALCULATOR_H
+#define CALCULATOR_H
+
+
+class Calculator {
+
+private:
+   virtual long add(long a, long b) = 0;
+public:
+
+   virtual long subtract(long a, long b) = 0;
+};
+
+
+#endif // CALCULATOR_H

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/Calculator.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/Calculator.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/CalculatorImpl.componentType
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/CalculatorImpl.componentType?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/CalculatorImpl.componentType (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/CalculatorImpl.componentType Fri Jul 13 11:26:14 2007
@@ -0,0 +1,25 @@
+<?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.
+-->
+
+<componentType xmlns="http://www.osoa.org/xmlns/sca/0.9">
+    <service name="CalculatorService">
+        <interface.cpp header="Calculator.h"/> <!-- Header is relative to the composite root -->
+    </service>
+</componentType>
\ No newline at end of file

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/CalculatorImpl.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/CalculatorImpl.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/CalculatorImpl.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/CalculatorImpl.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,37 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+#ifndef CALCULATORIMPL_H
+#define CALCULATORIMPL_H
+
+#include "Calculator.h"
+
+class CalculatorImpl : public Calculator
+{
+public:
+   CalculatorImpl();
+   virtual ~CalculatorImpl();
+   virtual long add(long a, long b);
+   virtual long subtract(long a, long b);
+
+};
+
+#endif //

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/CalculatorImpl.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/CalculatorImpl.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/sca.composite
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/sca.composite?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/sca.composite (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorCompositeAndComponent/sca.composite Fri Jul 13 11:26:14 2007
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+
+<composite   xmlns="http://www.osoa.org/xmlns/sca/0.9"   name="Calculator">
+
+   <component name="Calculator">
+      <implementation.cpp dll="debug/Calculator.dll" header="CalculatorImpl.h"/>
+   </component>
+
+</composite>

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorBack.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorBack.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorBack.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorBack.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,36 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+#ifndef CALCULATOR_H
+#define CALCULATOR_H
+
+
+class CalculatorBack {
+
+
+
+public:
+   virtual long subtractBack(long a, long b) = 0;
+   virtual long addBack(long a, long b) = 0;
+};
+
+
+#endif // CALCULATOR_H

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorBack.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorBack.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorForward.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorForward.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorForward.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorForward.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,35 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+#ifndef CALCULATOR_H
+#define CALCULATOR_H
+
+
+class CalculatorForward {
+
+public:
+
+   virtual long subtractForward(long a, long b) = 0;
+   virtual long addForward(long a, long b) = 0;
+};
+
+
+#endif // CALCULATOR_H

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorForward.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/otherSubFolder/CalculatorForward.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/sca.composite
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/sca.composite?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/sca.composite (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/sca.composite Fri Jul 13 11:26:14 2007
@@ -0,0 +1,31 @@
+<?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.
+-->
+
+<composite   xmlns="http://www.osoa.org/xmlns/sca/0.9"   name="Calculator">
+
+   <component name="CalculatorForward">
+      <implementation.cpp header="subFolder/CalculatorForwardImpl.h"/>
+   </component>
+   
+    <component name="CalculatorBack">
+      <implementation.cpp header="subFolder\CalculatorBackImpl.h"/>
+   </component>
+
+</composite>

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorBackImpl.componentType
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorBackImpl.componentType?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorBackImpl.componentType (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorBackImpl.componentType Fri Jul 13 11:26:14 2007
@@ -0,0 +1,26 @@
+<?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.
+-->
+
+
+<componentType xmlns="http://www.osoa.org/xmlns/sca/0.9">
+    <service name="CalculatorService">
+        <interface.cpp header="otherSubFolder\CalculatorBack.h"/> <!-- Header is relative to the composite root -->
+    </service>
+</componentType>
\ No newline at end of file

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorBackImpl.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorBackImpl.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorBackImpl.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorBackImpl.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,37 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+#ifndef CALCULATORIMPL_H
+#define CALCULATORIMPL_H
+
+#include "Calculator.h"
+
+class CalculatorBackImpl : public Calculator
+{
+public:
+   CalculatorImpl();
+   virtual ~CalculatorImpl();
+   virtual long addBack(long a, long b);
+   virtual long subtractBack(long a, long b);
+
+};
+
+#endif //

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorBackImpl.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorBackImpl.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorForwardImpl.componentType
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorForwardImpl.componentType?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorForwardImpl.componentType (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorForwardImpl.componentType Fri Jul 13 11:26:14 2007
@@ -0,0 +1,25 @@
+<?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.
+-->
+
+<componentType xmlns="http://www.osoa.org/xmlns/sca/0.9">
+    <service name="CalculatorService">
+        <interface.cpp header="otherSubFolder/CalculatorForward.h"/> <!-- Header is relative to the composite root -->
+    </service>
+</componentType>
\ No newline at end of file

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorForwardImpl.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorForwardImpl.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorForwardImpl.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorForwardImpl.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,37 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+#ifndef CALCULATORIMPL_H
+#define CALCULATORIMPL_H
+
+#include "Calculator.h"
+
+class CalculatorForwardImpl : public Calculator
+{
+public:
+   CalculatorImpl();
+   virtual ~CalculatorImpl();
+   virtual long addForward(long a, long b);
+   virtual long subtractForward(long a, long b);
+
+};
+
+#endif //

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorForwardImpl.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CalculatorSlashDirectionTest/subFolder/CalculatorForwardImpl.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfo.fragment
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfo.fragment?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfo.fragment (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfo.fragment Fri Jul 13 11:26:14 2007
@@ -0,0 +1,39 @@
+<?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.
+-->
+
+<compositeFragment xmlns="http://www.osoa.org/xmlns/sca/0.9" 
+   xmlns:v="http://www.osoa.org/xmlns/sca/values/0.9" 
+   xmlns:mvs="http://www.myvalue.org/MyValueService/"
+   name="CustomerInfoComponent">
+
+
+   <component name="CustomerInfoComponent">
+      <implementation.cpp dll="CustomerInfo.dll" class="CustomerInfoImpl" header="CustomerInfoImpl.h"></implementation.cpp>
+      <properties>
+         <v:Fred>x</v:Fred>
+         <v:Joe>23</v:Joe>
+         <Joe>42</Joe>
+      </properties>
+      <references>
+      </references>
+   </component>
+
+</compositeFragment>
+   
\ No newline at end of file

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfo.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfo.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfo.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfo.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,98 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+#ifndef CustomerInfo_h
+#define CustomerInfo_h
+
+class CustomerInfo
+{
+public:
+//char (simple extra type)
+   virtual const char* getCustomerInformationChar(char * p1, const char* customerID ) = 0;
+   virtual const char* getCustomerInfoAChar(char * p1,const char*) = 0;
+   virtual const char* getCustomerInfoBChar(char * p1, char* customerID ) = 0;
+   virtual const char* getCustomerInfoCChar(char * p1, char customerID ) = 0;
+   virtual const char* getCustomerInfoDChar(char * p1,char) = 0;
+   virtual const char* getCustomerInfoEChar(char * p1 , char *) = 0;
+   virtual const char* getCustomerInfoFChar(char * p1, char * p1, char *customerID ) = 0;
+   virtual const char* getCustomerInfoGChar(char * p1, char *, char * p1,signed char *customerID ) = 0;
+        virtual const char* getCustomerInfoHChar(unsigned char *customerID, const char, ) = 0;
+        virtual const char* getCustomerInfoHChar(unsigned char *customerID, const char*) = 0;
+
+//long (duplicate the types)
+          virtual const long* getCustomerInformationLong(const long* customerID, const long* customerID ) = 0;
+   virtual const long* getCustomerInfoALong(const long*,const long*) = 0;
+   virtual const long* getCustomerInfoBLong(long* customerID, long* customerID2 ) = 0;
+   virtual const long* getCustomerInfoCLong(long customerID , long customerID2 ) = 0;
+   virtual const long* getCustomerInfoDLong(long,long) = 0;
+   virtual const long* getCustomerInfoELong(long *, long*) = 0;
+   virtual const long* getCustomerInfoFLong(long *customerID, long* customerID2 ) = 0;
+   virtual const long* getCustomerInfoGLong(signed long *customerID, signed long *customerID2 ) = 0;
+        virtual const long* getCustomerInfoHLong(signed long *customerID, signed long *customerID2 ) = 0;
+
+//int
+        virtual const int* getCustomerInformationInt(char*, const int* customerID ) = 0;
+   virtual const int* getCustomerInfoAInt(char*,const int*) = 0;
+   virtual const int* getCustomerInfoBInt(char*,int* customerID ) = 0;
+   virtual const int* getCustomerInfoCInt(char*,int customerID ) = 0;
+   virtual const int* getCustomerInfoDInt(char*,int) = 0;
+   virtual const int* getCustomerInfoEInt(char*,int *) = 0;
+   virtual const int* getCustomerInfoFInt(char*,int *customerID ) = 0;
+   virtual const int* getCustomerInfoGInt(char*,signed int *customerID ) = 0;
+        virtual const int* getCustomerInfoHInt(char*,unsigned int *customerID ) = 0;
+
+
+//__int64
+        virtual const __int64* getCustomerInformationint64(Diamond&,const __int64* customerID ) = 0;
+   virtual const __int64* getCustomerInfoAint64(Diamond&, const __int64*) = 0;
+   virtual const __int64* getCustomerInfoBint64( Diamond&, __int64* customerID ) = 0;
+   virtual const __int64* getCustomerInfoCint64(Diamond&,__int64 customerID ) = 0;
+   virtual const __int64* getCustomerInfoDint64(Diamond& myDiamond,__int64) = 0;
+   virtual const __int64* getCustomerInfoEint64(Diamond& myDiamond, __int64 *) = 0;
+   virtual const __int64* getCustomerInfoFint64(Diamond& myDiamond, __int64 *customerID ) = 0;
+   virtual const __int64* getCustomerInfoGint64(Diamond& myDiamond, signed __int64 *customerID ) = 0;
+        virtual const __int64* getCustomerInfoHint64(const Diamond& myDiamond, unsigned int64 *customerID ) = 0;
+         
+//void
+        virtual const void* getCustomerInformationVoid(float& f, const __int64* customerID ) = 0;
+   virtual void getCustomerInfoAVoid(const float& f, const __int64*) = 0;
+   virtual void getCustomerInfoBVoid( ) = 0;
+   virtual void getCustomerInfoCVoid() = 0;
+   virtual void getCustomerInfoDVoid(void) = 0;
+    virtual char getCustomerInfoEVoid(void) = 0;
+   virtual char getCustomerInfoFVoid() = 0;
+   virtual char getCustomerInfoGVoid( void      ) = 0;
+   
+//inline
+        virtual inline const char * getCustomerInfoAInline(int,int,int,int, char* customer id) = 0;
+   inline int getCustomerInfoBInline(int*,int* f, int* g, char* customer id) = 0;
+   virtual inline friend const unsigned int * getCustomerInfoCInline(char* customer id) = 0;
+   
+//tricky examples
+        int getCustomerInfoTrickyA(const char, const char) = 0;
+        int getCustomerInfoTrickyB(int myInt, int myInt) = 0;
+   
+
+
+
+};
+
+#endif

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfo.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfo.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfoImpl.componentType
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfoImpl.componentType?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfoImpl.componentType (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfoImpl.componentType Fri Jul 13 11:26:14 2007
@@ -0,0 +1,33 @@
+<?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.
+-->
+
+<componentType xmlns="http://www.osoa.org/xmlns/sca/0.9"
+               xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+    <service name="CustomerInfoService">
+        <interface.cpp header="/CustomerInfo.h">
+        </interface.cpp>
+    </service>
+
+    <property name="Fred" type="xs:string"/>
+    <property name="Joe" type="xs:integer" many="true"/>
+
+</componentType>
+    
\ No newline at end of file

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfoImpl.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfoImpl.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfoImpl.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfoImpl.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,38 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+#ifndef CustomerInfoImpl_h
+#define CustomerInfoImpl_h
+
+#include "CustomerInfo.h"
+
+
+
+class CustomerInfoImpl : public CustomerInfo
+{
+public:
+   CustomerInfoImpl();
+   virtual ~CustomerInfoImpl();
+   virtual const char* getCustomerInformation(const char* customerID);
+
+};
+
+#endif

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfoImpl.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplMultiParamDiffTypesTest/CustomerInfoImpl.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfo.fragment
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfo.fragment?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfo.fragment (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfo.fragment Fri Jul 13 11:26:14 2007
@@ -0,0 +1,39 @@
+<?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.
+-->
+
+<compositeFragment xmlns="http://www.osoa.org/xmlns/sca/0.9" 
+   xmlns:v="http://www.osoa.org/xmlns/sca/values/0.9" 
+   xmlns:mvs="http://www.myvalue.org/MyValueService/"
+   name="CustomerInfoComponent">
+
+
+   <component name="CustomerInfoComponent">
+      <implementation.cpp dll="CustomerInfo" class="CustomerInfoImpl" header="CustomerInfoImpl.h"></implementation.cpp>
+      <properties>
+         <v:Fred>x</v:Fred>
+         <v:Joe>23</v:Joe>
+         <Joe>42</Joe>
+      </properties>
+      <references>
+      </references>
+   </component>
+
+</compositeFragment>
+   
\ No newline at end of file

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfo.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfo.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfo.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfo.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,94 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+#ifndef CustomerInfo_h
+#define CustomerInfo_h
+
+class CustomerInfo
+{
+public:
+//char
+   virtual const char* getCustomerInformationChar(const char* customerID ) = 0;
+   virtual const char* getCustomerInfoAChar(const char*) = 0;
+   virtual const char* getCustomerInfoBChar(char* customerID ) = 0;
+   virtual const char* getCustomerInfoCChar(char customerID ) = 0;
+   virtual const char* getCustomerInfoDChar(char) = 0;
+   virtual const char* getCustomerInfoEChar(char *) = 0;
+   virtual const char* getCustomerInfoFChar(char *customerID ) = 0;
+   virtual const char* getCustomerInfoGChar(signed char *customerID ) = 0;
+        virtual const char* getCustomerInfoHChar(unsigned char *customerID ) = 0;
+
+//long
+          virtual const long* getCustomerInformationLong(const long* customerID ) = 0;
+   virtual const long* getCustomerInfoALong(const long*) = 0;
+   virtual const long* getCustomerInfoBLong(long* customerID ) = 0;
+   virtual const long* getCustomerInfoCLong(long customerID ) = 0;
+   virtual const long* getCustomerInfoDLong(long) = 0;
+   virtual const long* getCustomerInfoELong(long *) = 0;
+   virtual const long* getCustomerInfoFLong(long *customerID ) = 0;
+   virtual const long* getCustomerInfoGLong(signed long *customerID ) = 0;
+        virtual const long* getCustomerInfoHLong(unsigned long *customerID ) = 0;
+
+//int
+        virtual const int* getCustomerInformationInt(const int* customerID ) = 0;
+   virtual const int* getCustomerInfoAInt(const int*) = 0;
+   virtual const int* getCustomerInfoBInt(int* customerID ) = 0;
+   virtual const int* getCustomerInfoCInt(int customerID ) = 0;
+   virtual const int* getCustomerInfoDInt(int) = 0;
+   virtual const int* getCustomerInfoEInt(int *) = 0;
+   virtual const int* getCustomerInfoFInt(int *customerID ) = 0;
+   virtual const int* getCustomerInfoGInt(signed int *customerID ) = 0;
+        virtual const int* getCustomerInfoHInt(unsigned int *customerID ) = 0;
+
+
+//__int64
+        virtual const __int64* getCustomerInformationint64(const __int64* customerID ) = 0;
+   virtual const __int64* getCustomerInfoAint64(const __int64*) = 0;
+   virtual const __int64* getCustomerInfoBint64(__int64* customerID ) = 0;
+   virtual const __int64* getCustomerInfoCint64(__int64 customerID ) = 0;
+   virtual const __int64* getCustomerInfoDint64(__int64) = 0;
+   virtual const __int64* getCustomerInfoEint64(__int64 *) = 0;
+   virtual const __int64* getCustomerInfoFint64(__int64 *customerID ) = 0;
+   virtual const __int64* getCustomerInfoGint64(signed __int64 *customerID ) = 0;
+        virtual const __int64* getCustomerInfoHint64(unsigned int64 *customerID ) = 0;
+         
+//void
+        virtual const void* getCustomerInformationVoid(const __int64* customerID ) = 0;
+   virtual void getCustomerInfoAVoid(const __int64*) = 0;
+   virtual void getCustomerInfoBVoid( ) = 0;
+   virtual void getCustomerInfoCVoid() = 0;
+   virtual void getCustomerInfoDVoid(void) = 0;
+   
+//inline
+        virtual inline const char * getCustomerInfoAInline(char* customer id) = 0;
+   inline int getCustomerInfoBInline(char* customer id) = 0;
+   virtual inline friend const unsigned int * getCustomerInfoCInline(char* customer id) = 0;
+   
+//tricky examples
+        int getCustomerInfoTrickyA(const char) = 0;
+        int getCustomerInfoTrickyB(int myInt) = 0;
+   
+
+
+
+};
+
+#endif

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfo.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfo.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfoImpl.componentType
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfoImpl.componentType?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfoImpl.componentType (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfoImpl.componentType Fri Jul 13 11:26:14 2007
@@ -0,0 +1,33 @@
+<?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.
+-->
+
+<componentType xmlns="http://www.osoa.org/xmlns/sca/0.9"
+               xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+    <service name="CustomerInfoService">
+        <interface.cpp header="/CustomerInfo.h">
+        </interface.cpp>
+    </service>
+
+    <property name="Fred" type="xs:string"/>
+    <property name="Joe" type="xs:integer" many="true"/>
+
+</componentType>
+    
\ No newline at end of file

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfoImpl.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfoImpl.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfoImpl.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfoImpl.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,47 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+#ifndef CustomerInfoImpl_h
+#define CustomerInfoImpl_h
+
+#include "CustomerInfo.h"
+
+
+
+class CustomerInfoImpl : public CustomerInfo
+{
+public:
+   CustomerInfoImpl();
+   virtual ~CustomerInfoImpl();
+   virtual const char* getCustomerInformation(const char* customerID);
+
+};
+
+class CustomerInfoImpl2 : public CustomerInfo
+{
+public:
+   CustomerInfoImpl();
+   virtual ~CustomerInfoImpl();
+   virtual const char* getCustomerInformation2(const char* customerID);
+
+};
+
+#endif

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfoImpl.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/CustomerInfoImplSingleParamDiffTypesTest/CustomerInfoImpl.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfo.fragment
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfo.fragment?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfo.fragment (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfo.fragment Fri Jul 13 11:26:14 2007
@@ -0,0 +1,39 @@
+<?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.
+-->
+
+<compositeFragment xmlns="http://www.osoa.org/xmlns/sca/0.9" 
+   xmlns:v="http://www.osoa.org/xmlns/sca/values/0.9" 
+   xmlns:mvs="http://www.myvalue.org/MyValueService/"
+   name="CustomerInfoComponent">
+
+
+   <component name="CustomerInfoComponent">
+      <implementation.cpp dll="CustomerInfo" class="CustomerInfoImpl2" header="CustomerInfoImpl.h"></implementation.cpp>
+      <properties>
+         <v:Fred>x</v:Fred>
+         <v:Joe>23</v:Joe>
+         <Joe>42</Joe>
+      </properties>
+      <references>
+      </references>
+   </component>
+
+</compositeFragment>
+   
\ No newline at end of file

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfo.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfo.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfo.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfo.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,36 @@
+/*
+ *
+ *  Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+#ifndef CustomerInfo_h
+#define CustomerInfo_h
+
+class CustomerInfo
+{
+public:
+   virtual const char* getCustomerInformation(const char* customerID) = 0;
+
+};
+
+
+class CustomerInfoSecond
+{
+public:
+   virtual const char* getCustomerInformationSecond(const char* customerID) = 0;
+
+};
+
+
+#endif

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfo.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfo.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfoImpl.componentType
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfoImpl.componentType?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfoImpl.componentType (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfoImpl.componentType Fri Jul 13 11:26:14 2007
@@ -0,0 +1,33 @@
+<?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.
+-->
+
+<componentType xmlns="http://www.osoa.org/xmlns/sca/0.9"
+               xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+    <service name="CustomerInfoService">
+        <interface.cpp header="/CustomerInfo.h">
+        </interface.cpp>
+    </service>
+
+    <property name="Fred" type="xs:string"/>
+    <property name="Joe" type="xs:integer" many="true"/>
+
+</componentType>
+    
\ No newline at end of file

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfoImpl.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfoImpl.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfoImpl.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfoImpl.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,49 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+// Class definition for the implementation
+
+#ifndef CustomerInfoImpl_h
+#define CustomerInfoImpl_h
+
+#include "CustomerInfo.h"
+
+
+
+class CustomerInfoImpl : public CustomerInfo
+{
+public:
+   CustomerInfoImpl();
+   virtual ~CustomerInfoImpl();
+   virtual const char* getCustomerInformation(const char* customerID);
+
+};
+
+class CustomerInfoImpl2 : public CustomerInfo
+{
+public:
+   CustomerInfoImpl();
+   virtual ~CustomerInfoImpl();
+   virtual const char* getCustomerInformation2(const char* customerID);
+
+};
+
+#endif

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfoImpl.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/CustomerInfoImpl.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/MyValue.h
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/MyValue.h?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/MyValue.h (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/MyValue.h Fri Jul 13 11:26:14 2007
@@ -0,0 +1,40 @@
+/*
+ * 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.
+ */
+
+/* $Rev$ $Date$ */
+
+// MyValue.h: interface for the MyValueImpl class.
+//
+//////////////////////////////////////////////////////////////////////
+
+#ifndef MyValue_h
+#define MyValue_h
+#include <string>
+using std::string;
+class MyValue
+{
+public:
+   virtual float getMyValue(const char* customerID) = 0;
+   virtual float getMyValueS(const string& customerID) = 0;
+   virtual string getCustname(string& customerID) = 0;
+   virtual const string& getCustnamecs(string customerID) = 0;
+
+};
+
+#endif

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/MyValue.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/MyValue.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/MyValueImpl.componentType
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/MyValueImpl.componentType?view=auto&rev=556089
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/MyValueImpl.componentType (added)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/tools/scagen/junit/testinput/composites/MyValueServiceComposite/MyValueImpl.componentType Fri Jul 13 11:26:14 2007
@@ -0,0 +1,39 @@
+<?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.
+-->
+
+<componentType xmlns="http://www.osoa.org/xmlns/sca/0.9">
+
+    <service name="MyValueService">
+        <interface.cpp class="MyValue" header="MyValue.h">
+        </interface.cpp>
+    </service>
+
+    <reference name="customerInfo">
+        <interface.cpp header="CustomerInfo.h">
+        </interface.cpp>
+    </reference>
+
+    <reference name="stockQuote">
+        <interface.cpp header="StockQuoteService.h">
+        </interface.cpp>
+    </reference>
+
+</componentType>
+    
\ No newline at end of file



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