Author: svkrish
Date: Mon Oct 15 04:46:30 2007
New Revision: 584751

URL: http://svn.apache.org/viewvc?rev=584751&view=rev
Log:
applying patch from https://issues.apache.org/jira/browse/TUSCANY-1848

Modified:
    
incubator/tuscany/java/sca/itest/properties/src/main/java/org/apache/tuscany/sca/itest/PropertyComponent.java
    
incubator/tuscany/java/sca/itest/properties/src/main/java/org/apache/tuscany/sca/itest/PropertyComponentImpl.java
    
incubator/tuscany/java/sca/itest/properties/src/main/resources/PropertyTest.composite
    
incubator/tuscany/java/sca/itest/properties/src/test/java/org/apache/tuscany/sca/itest/PropertyTestCase.java

Modified: 
incubator/tuscany/java/sca/itest/properties/src/main/java/org/apache/tuscany/sca/itest/PropertyComponent.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/properties/src/main/java/org/apache/tuscany/sca/itest/PropertyComponent.java?rev=584751&r1=584750&r2=584751&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/properties/src/main/java/org/apache/tuscany/sca/itest/PropertyComponent.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/properties/src/main/java/org/apache/tuscany/sca/itest/PropertyComponent.java
 Mon Oct 15 04:46:30 2007
@@ -1,37 +1,62 @@
-/*
- * 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.itest;
-
-import java.util.Collection;
-
-import commonj.sdo.DataObject;
-
-
-public interface PropertyComponent {
-    public String getLocation();
-    public String getLocationFromComponentContext();
-    public String getYear();
-    public ComplexPropertyBean getComplexPropertyOne();
-    public ComplexPropertyBean getComplexPropertyTwo();
-    public ComplexPropertyBean getComplexPropertyThree();
-    public Collection<ComplexPropertyBean> getComplexPropertyFour();
-    public DataObject getSdoProperty();
-    public DataObject getCustomerSdo();
-}
+/*
+ * 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.itest;
+
+import java.util.Collection;
+
+import commonj.sdo.DataObject;
+
+
+public interface PropertyComponent {
+    public String getLocation();
+    public String getLocationFromComponentContext();
+    public String getYear();
+    
+    /**
+     * This method is used to test injecting a primitive String Array
+     * @return The injected array
+     */
+    public String[] getDaysOfTheWeek();
+
+    /**
+     * This method is used to test injecting an Object Integer Array
+     * @return The injected array
+     */
+    public Integer[] getIntegerNumbers();
+    
+    /**
+     * This method is used to test injecting an int Array
+     * @return The injected array
+     */
+    public int[] getIntNumbers();
+
+    /**
+     * This method is used to test injecting an Object Array
+     * @return The injected array
+     */
+    public DataObject[] getSdoArrayProperty();
+    
+    public ComplexPropertyBean getComplexPropertyOne();
+    public ComplexPropertyBean getComplexPropertyTwo();
+    public ComplexPropertyBean getComplexPropertyThree();
+    public Collection<ComplexPropertyBean> getComplexPropertyFour();
+    public DataObject getSdoProperty();
+    public DataObject getCustomerSdo();
+}

Modified: 
incubator/tuscany/java/sca/itest/properties/src/main/java/org/apache/tuscany/sca/itest/PropertyComponentImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/properties/src/main/java/org/apache/tuscany/sca/itest/PropertyComponentImpl.java?rev=584751&r1=584750&r2=584751&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/properties/src/main/java/org/apache/tuscany/sca/itest/PropertyComponentImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/properties/src/main/java/org/apache/tuscany/sca/itest/PropertyComponentImpl.java
 Mon Oct 15 04:46:30 2007
@@ -1,108 +1,152 @@
-/*
- * 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.itest;
-
-import java.util.Collection;
-
-import org.osoa.sca.ComponentContext;
-import org.osoa.sca.annotations.Context;
-import org.osoa.sca.annotations.Property;
-
-import com.example.customer.sdo.impl.CustomerImpl;
-import commonj.sdo.DataObject;
-
-public class PropertyComponentImpl implements PropertyComponent {
-    
-    @Context
-    protected ComponentContext context;
-    
-    @Property
-    protected CustomerImpl customerSdo;
-    
-    @Property
-    protected DataObject sdoProperty;
-    
-    @Property
-    protected ComplexPropertyBean complexPropertyOne;
-    
-    @Property
-    protected ComplexPropertyBean complexPropertyTwo;
-    
-    @Property
-    protected ComplexPropertyBean complexPropertyThree;
-    
-    @Property
-    protected Collection<ComplexPropertyBean> complexPropertyFour;
-    
-    @Property(name = "location")
-    protected String location;
-
-    @Property(name = "year")
-    protected String year;
-    
-    public String getLocation(){
-        return location;
-    }
-    
-    public String getLocationFromComponentContext() {
-        return context.getProperty(String.class, "location");
-    }
-    
-    public String getYear(){
-        return year;
-    }
-
-    public ComplexPropertyBean getComplexPropertyOne() {
-        //System.out.println(complexPropertyOne);
-        return complexPropertyOne;
-    }
-
-    public ComplexPropertyBean getComplexPropertyTwo() {
-        //System.out.println(complexPropertyTwo);
-        return complexPropertyTwo;
-    }
-    
-    public ComplexPropertyBean getComplexPropertyThree() {
-        //System.out.println(complexPropertyThree);
-        return complexPropertyThree;
-    }
-    
-    public Collection<ComplexPropertyBean> getComplexPropertyFour() {
-        //System.out.println(complexPropertyThree);
-        return complexPropertyFour;
-    }
-
-    public DataObject getSdoProperty() {
-        return sdoProperty;
-    }
-
-    public void setSdoProperty(DataObject sdoProperty) {
-        System.out.println("Reached here da machi");
-        this.sdoProperty = sdoProperty;
-    }
-
-    public CustomerImpl getCustomerSdo() {
-        return customerSdo;
-    }
-
-    public void setCustomerSdo(CustomerImpl customerSdo) {
-        this.customerSdo = customerSdo;
-    }
-}
+/*
+ * 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.itest;
+
+import java.util.Collection;
+
+import org.osoa.sca.ComponentContext;
+import org.osoa.sca.annotations.Context;
+import org.osoa.sca.annotations.Property;
+
+import com.example.customer.sdo.impl.CustomerImpl;
+import commonj.sdo.DataObject;
+
+public class PropertyComponentImpl implements PropertyComponent {
+    
+    @Context
+    protected ComponentContext context;
+    
+    @Property
+    protected CustomerImpl customerSdo;
+    
+    @Property
+    protected DataObject sdoProperty;
+    
+    @Property
+    protected ComplexPropertyBean complexPropertyOne;
+    
+    @Property
+    protected ComplexPropertyBean complexPropertyTwo;
+    
+    @Property
+    protected ComplexPropertyBean complexPropertyThree;
+    
+    @Property
+    protected Collection<ComplexPropertyBean> complexPropertyFour;
+    
+    @Property(name = "location")
+    protected String location;
+
+    @Property(name = "year")
+    protected String year;
+    
+    @Property(name = "daysOfTheWeek")
+    protected String[] daysOfTheWeek;
+    
+    @Property(name = "integerNumbers")
+    protected Integer[] integerNumbers;
+
+    @Property(name = "intNumbers")
+    protected int[] intNumbers;
+
+    @Property(name = "sdoArray")
+    protected DataObject[] sdoArray;
+    
+    public String getLocation(){
+        return location;
+    }
+    
+    public String getLocationFromComponentContext() {
+        return context.getProperty(String.class, "location");
+    }
+    
+    public String getYear(){
+        return year;
+    }
+
+    public ComplexPropertyBean getComplexPropertyOne() {
+        //System.out.println(complexPropertyOne);
+        return complexPropertyOne;
+    }
+
+    public ComplexPropertyBean getComplexPropertyTwo() {
+        //System.out.println(complexPropertyTwo);
+        return complexPropertyTwo;
+    }
+    
+    public ComplexPropertyBean getComplexPropertyThree() {
+        //System.out.println(complexPropertyThree);
+        return complexPropertyThree;
+    }
+    
+    public Collection<ComplexPropertyBean> getComplexPropertyFour() {
+        //System.out.println(complexPropertyThree);
+        return complexPropertyFour;
+    }
+
+    public DataObject getSdoProperty() {
+        return sdoProperty;
+    }
+
+    public void setSdoProperty(DataObject sdoProperty) {
+        System.out.println("Reached here da machi");
+        this.sdoProperty = sdoProperty;
+    }
+
+    public CustomerImpl getCustomerSdo() {
+        return customerSdo;
+    }
+
+    public void setCustomerSdo(CustomerImpl customerSdo) {
+        this.customerSdo = customerSdo;
+    }
+    
+    /**
+     * This method is used to test injecting an Array
+     * @return The injected array
+     */
+    public String[] getDaysOfTheWeek() {
+        return daysOfTheWeek;
+    }
+    
+    /**
+     * This method is used to test injecting an Object Integer Array
+     * @return The injected array
+     */
+    public Integer[] getIntegerNumbers() {
+        return integerNumbers;
+    }
+    
+    /**
+     * This method is used to test injecting an int Array
+     * @return The injected array
+     */
+    public int[] getIntNumbers() {
+        return intNumbers;
+    }
+
+    /**
+     * This method is used to test injecting an Object Array
+     * @return The injected array
+     */
+    public DataObject[] getSdoArrayProperty() {
+        return sdoArray;
+    }
+}

Modified: 
incubator/tuscany/java/sca/itest/properties/src/main/resources/PropertyTest.composite
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/properties/src/main/resources/PropertyTest.composite?rev=584751&r1=584750&r2=584751&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/properties/src/main/resources/PropertyTest.composite
 (original)
+++ 
incubator/tuscany/java/sca/itest/properties/src/main/resources/PropertyTest.composite
 Mon Oct 15 04:46:30 2007
@@ -211,6 +211,26 @@
         </property>
         <property name="location" type="xsd:string">RTP</property>     
         <property name="year" type="xsd:string">2006</property>        
+        <property name="daysOfTheWeek" many="true" type="xsd:string">"Monday" 
"Tuesday" "Wednesday" "Thursday" "Friday" "Saturday" "Sunday"</property>
+        <property name="integerNumbers" many="true" type="xsd:int">1 2 3 4 5 6 
7 8 9 10</property>
+        <property name="intNumbers" many="true" type="xsd:int">10 9 8 7 6 5 4 
3 2 1 0</property>
+        <property name="sdoArray" many="true" type="cust:Customer">
+            <cust:customer>
+                <cust:firstName>Firstly Name 1</cust:firstName>
+                <cust:middleName>Middler Name 1</cust:middleName>
+                <cust:lastName>Lasting Name 1</cust:lastName>
+            </cust:customer>
+            <cust:customer>
+                <cust:firstName>Firstly Name 2</cust:firstName>
+                <cust:middleName>Middler Name 2</cust:middleName>
+                <cust:lastName>Lasting Name 2</cust:lastName>
+            </cust:customer>
+            <cust:customer>
+                <cust:firstName>Firstly Name 3</cust:firstName>
+                <cust:middleName>Middler Name 3</cust:middleName>
+                <cust:lastName>Lasting Name 3</cust:lastName>
+            </cust:customer>
+        </property>
     </component>
 </composite>
 

Modified: 
incubator/tuscany/java/sca/itest/properties/src/test/java/org/apache/tuscany/sca/itest/PropertyTestCase.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/properties/src/test/java/org/apache/tuscany/sca/itest/PropertyTestCase.java?rev=584751&r1=584750&r2=584751&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/properties/src/test/java/org/apache/tuscany/sca/itest/PropertyTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/properties/src/test/java/org/apache/tuscany/sca/itest/PropertyTestCase.java
 Mon Oct 15 04:46:30 2007
@@ -22,8 +22,11 @@
 import static junit.framework.Assert.assertEquals;
 import static junit.framework.Assert.assertNotNull;
 
+import java.util.Arrays;
 import java.util.Iterator;
 
+import junit.framework.Assert;
+
 import org.apache.tuscany.sca.host.embedded.SCADomain;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -197,7 +200,53 @@
         assertNotNull(locationFromCC);
         assertEquals(location, locationFromCC);
     }
+    
+    @Test
+    public void testGetInjectedStringArrayProperty()
+    {
+        String[] daysOfWeek = propertyService.getDaysOfTheWeek();
+        assertNotNull(daysOfWeek);
+
+        String[] expected = {"Monday", "Tuesday", "Wednesday", "Thursday", 
"Friday", "Saturday", "Sunday"};
+        Assert.assertTrue(Arrays.equals(expected, daysOfWeek));
+    }
+
+    @Test
+    public void testGetInjectedIntegerArrayProperty()
+    {
+        Integer[] numbers = propertyService.getIntegerNumbers();
+        assertNotNull(numbers);
+
+        Integer[] expected = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
+        Assert.assertTrue(Arrays.equals(expected, numbers));
+    }
 
+    @Test
+    public void testGetInjectedIntArrayProperty()
+    {
+        int[] numbers = propertyService.getIntNumbers();
+        assertNotNull(numbers);
+
+        int[] expected = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0};
+        Assert.assertTrue(Arrays.equals(expected, numbers));
+    }
+    
+    
+    @Test
+    public void testGetInjectedSdoArrayProperty()
+    {
+        DataObject[] sdos = propertyService.getSdoArrayProperty();
+        assertNotNull(sdos);
+
+        for (int i = 1; i <= 3; i++) {
+            DataObject dataObject = sdos[i - 1];
+            assertEquals("Firstly Name " + i, dataObject.get("firstName"));
+            assertEquals("Middler Name " + i, 
dataObject.getString("middleName"));
+            assertEquals("Lasting Name " + i, 
dataObject.getString("lastName"));
+        }
+    }
+    
+    
     @BeforeClass
     public static void init() throws Exception {
         try {



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to