You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by gn...@apache.org on 2006/10/10 17:46:46 UTC
svn commit: r454790 [3/5] - in /geronimo/xbean/trunk: ./
xbean-spring-itests/ xbean-spring-itests/2.0/ xbean-spring-itests/2.0/src/
xbean-spring-itests/2.0/src/main/ xbean-spring-itests/2.0/src/main/resources/
xbean-spring-itests/2.0/src/main/resources...
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingSpringTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingSpringTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingSpringTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingSpringTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,41 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.apache.xbean.spring.example.PizzaService;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public class PizzaUsingSpringTest extends SpringTestSupport {
+
+ public void testPizza() throws Exception {
+ PizzaService pizza = (PizzaService) getBean("pizzaService");
+ pizza.makePizza();
+
+ assertEquals("topping", "Salami", pizza.getTopping());
+ assertEquals("cheese", "Edam", pizza.getCheese());
+ assertEquals("size", 17, pizza.getSize());
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/pizza-normal.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,32 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public class PizzaUsingXBeanTest extends PizzaUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/pizza-xbean.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWinBeanRefTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWinBeanRefTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWinBeanRefTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWinBeanRefTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,41 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.apache.xbean.spring.example.PizzaService;
+
+/**
+ *
+ * @version $Revision: 1.1 $
+ */
+public class PizzaUsingXBeanWinBeanRefTest extends PizzaUsingSpringTest {
+
+ public void testPizza() throws Exception {
+ PizzaService pizza = (PizzaService) getBean("pizzaService");
+ pizza.makePizza();
+
+ assertEquals("topping", "Salami", pizza.getTopping());
+ assertEquals("cheese", "#Edam", pizza.getCheese());
+ assertEquals("size", 17, pizza.getSize());
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/pizza-xbean-bean-ref.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWithJavaNamespaceTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWithJavaNamespaceTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWithJavaNamespaceTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWithJavaNamespaceTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,32 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public class PizzaUsingXBeanWithJavaNamespaceTest extends PizzaUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/pizza-xbean-java.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWithPropertiesTextNodeTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWithPropertiesTextNodeTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWithPropertiesTextNodeTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/PizzaUsingXBeanWithPropertiesTextNodeTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,31 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+/**
+ *
+ * @version $Revision: 1.1 $
+ */
+public class PizzaUsingXBeanWithPropertiesTextNodeTest extends PizzaUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/pizza-xbean-properties.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/QNameUsingSpringTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/QNameUsingSpringTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/QNameUsingSpringTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/QNameUsingSpringTest.java Tue Oct 10 08:46:36 2006
@@ -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.
+ */
+package org.apache.xbean.spring.context;
+
+import java.util.List;
+
+import javax.xml.namespace.QName;
+
+import org.apache.xbean.spring.example.QNameService;
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+public class QNameUsingSpringTest extends SpringTestSupport {
+
+ public void testQName() throws Exception {
+ QNameService svc = (QNameService) getBean("qnameService");
+
+ QName[] services = svc.getServices();
+ assertNotNull(services);
+ assertEquals(2, services.length);
+ assertEquals(new QName("urn:foo", "test"), services[0]);
+ assertEquals(new QName("urn:foo", "bar"), services[1]);
+
+ List list = svc.getList();
+ assertNotNull(list);
+ assertEquals(1, list.size());
+ assertEquals(new QName("urn:foo", "list"), list.get(0));
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/qname-normal.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/QNameUsingXBeanTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/QNameUsingXBeanTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/QNameUsingXBeanTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/QNameUsingXBeanTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,27 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+public class QNameUsingXBeanTest extends QNameUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/qname-xbean.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RecipeUsingSpringTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RecipeUsingSpringTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RecipeUsingSpringTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RecipeUsingSpringTest.java Tue Oct 10 08:46:36 2006
@@ -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.xbean.spring.context;
+
+import java.util.List;
+
+import org.apache.xbean.spring.example.Recipe;
+import org.apache.xbean.spring.example.RecipeService;
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+public class RecipeUsingSpringTest extends SpringTestSupport {
+
+ public void testRecipes() throws Exception {
+ RecipeService svc = (RecipeService) getBean("recipeService");
+
+ List list = svc.getRecipes();
+ assertNotNull(list);
+ assertEquals(2, list.size());
+ Recipe r = (Recipe) list.get(0);
+ assertEquals("Food", r.getIngredients());
+ assertEquals("Mash together", r.getInstructions());
+
+ r = (Recipe) list.get(1);
+ assertEquals("Food", r.getIngredients());
+ assertEquals("Mash together", r.getInstructions());
+
+ assertNotNull(svc.getTopRecipe());
+ assertEquals("Food", svc.getTopRecipe().getIngredients());
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/recipe-normal.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RecipeUsingXBeanTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RecipeUsingXBeanTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RecipeUsingXBeanTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RecipeUsingXBeanTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,27 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+public class RecipeUsingXBeanTest extends RecipeUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/recipe-xbean.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingResourceXmlApplicationContextTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingResourceXmlApplicationContextTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingResourceXmlApplicationContextTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingResourceXmlApplicationContextTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,32 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.springframework.core.io.ClassPathResource;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public class RestaurantUsingResourceXmlApplicationContextTest extends RestaurantUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ResourceXmlApplicationContext(new ClassPathResource("org/apache/xbean/spring/context/restaurant-xbean.xml"));
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingSpringExtendedTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingSpringExtendedTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingSpringExtendedTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingSpringExtendedTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,33 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+import java.util.List;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public class RestaurantUsingSpringExtendedTest extends RestaurantUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/restaurant-spring-extended.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingSpringTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingSpringTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingSpringTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingSpringTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,80 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.apache.xbean.spring.example.PizzaService;
+import org.apache.xbean.spring.example.RestaurantService;
+
+import java.util.List;
+
+import javax.xml.namespace.QName;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public class RestaurantUsingSpringTest extends SpringTestSupport {
+
+ public void testPizza() throws Exception {
+ RestaurantService restaurant = (RestaurantService) getBean("restaurant");
+
+ QName service = restaurant.getServiceName();
+ assertEquals(new QName("http://acme.com", "xyz"), service);
+
+ // dinners (1-many using list)
+ List dinners = restaurant.getDinnerMenu();
+ assertNotNull("dinners is null!", dinners);
+ assertEquals("dinners size: " + dinners, 2, dinners.size());
+
+ PizzaService pizza = (PizzaService) dinners.get(0);
+ assertEquals("topping", "Ham", pizza.getTopping());
+ assertEquals("cheese", "Mozzarella", pizza.getCheese());
+ assertEquals("size", 15, pizza.getSize());
+
+ pizza = (PizzaService) dinners.get(1);
+ assertEquals("topping", "Eggs", pizza.getTopping());
+ assertEquals("cheese", "Mozzarella", pizza.getCheese());
+ assertEquals("size", 16, pizza.getSize());
+
+ // lunches (1-many using array)
+ PizzaService[] lunches = restaurant.getLunchMenu();
+ assertNotNull("lunches is null!", lunches);
+ assertEquals("lunches size: " + lunches, 1, lunches.length);
+
+ pizza = lunches[0];
+ assertEquals("topping", "Chicken", pizza.getTopping());
+ assertEquals("cheese", "Brie", pizza.getCheese());
+ assertEquals("size", 17, pizza.getSize());
+
+
+ // favourite (1-1)
+ pizza = restaurant.getFavourite();
+ assertNotNull("Pizza is null!", pizza);
+ pizza.makePizza();
+
+ assertEquals("topping", "Salami", pizza.getTopping());
+ assertEquals("cheese", "Edam", pizza.getCheese());
+ assertEquals("size", 17, pizza.getSize());
+
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/restaurant-normal.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanAsRootTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanAsRootTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanAsRootTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanAsRootTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,26 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+public class RestaurantUsingXBeanAsRootTest extends RestaurantUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/restaurant-xbean-root.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanMixedTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanMixedTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanMixedTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanMixedTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,31 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public class RestaurantUsingXBeanMixedTest extends RestaurantUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/restaurant-xbean-mixed.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,59 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.apache.xbean.spring.example.RestaurantService;
+
+import javax.xml.namespace.QName;
+
+import java.net.URI;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public class RestaurantUsingXBeanTest extends RestaurantUsingSpringTest {
+ private static final Log log = LogFactory.getLog(RestaurantUsingXBeanTest.class);
+
+ public void testPizza() throws Exception {
+ super.testPizza();
+
+ RestaurantService restaurant = (RestaurantService) getBean("restaurant");
+ QName name = restaurant.getServiceName();
+ assertNotNull("Name is null", name);
+
+ assertEquals("Namespace URI", "http://acme.com", name.getNamespaceURI());
+ assertEquals("localName", "xyz", name.getLocalPart());
+ assertEquals("prefix", "foo", name.getPrefix());
+
+ log.info("Successfully converted the property to a QName: " + name);
+
+ URI uri = restaurant.getUri();
+ assertNotNull("URI is null", uri);
+ assertEquals("URI", new URI("http://cheese.com"), uri);
+
+ log.info("Successfully converted the property to a URI: " + uri);
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/restaurant-xbean.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanWithSimplerConfigTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanWithSimplerConfigTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanWithSimplerConfigTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/RestaurantUsingXBeanWithSimplerConfigTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,31 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public class RestaurantUsingXBeanWithSimplerConfigTest extends RestaurantUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/restaurant-xbean.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SaladUsingSpringTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SaladUsingSpringTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SaladUsingSpringTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SaladUsingSpringTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,39 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.apache.xbean.spring.example.SaladService;
+
+/**
+ * @author Dain Sundstrom
+ * @version $Id$
+ * @since 1.0
+ */
+public class SaladUsingSpringTest extends SpringTestSupport {
+ public void testSalad() throws Exception {
+ SaladService salad = (SaladService) getBean("saladService");
+
+ assertEquals("dressing", "Cesar", salad.getDressing());
+ assertEquals("size", "Small", salad.getSize());
+ assertEquals("crouton", true, salad.isCrouton());
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/salad-normal.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SaladUsingXBeanTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SaladUsingXBeanTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SaladUsingXBeanTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SaladUsingXBeanTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,32 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+/**
+ * @author Dain Sundstrom
+ * @version $Id$
+ * @since 2.0
+ */
+public class SaladUsingXBeanTest extends SaladUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/salad-xbean.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SoupUsingSpringTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SoupUsingSpringTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SoupUsingSpringTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SoupUsingSpringTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,54 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.apache.xbean.spring.example.SoupService;
+
+/**
+ * @author Dain Sundstrom
+ * @version $Id$
+ * @since 1.0
+ */
+public class SoupUsingSpringTest extends SpringTestSupport {
+ private static final long time = System.currentTimeMillis();
+
+ public void testSoup() throws Exception {
+ SoupService soup = (SoupService) getBean("soupService");
+ SoupService nestedBean = (SoupService) getBean("nestedBean");
+ SoupService nestedValue = (SoupService) getBean("nestedValue");
+
+ asssertValidSoup(soup);
+ asssertValidSoup(nestedBean);
+ asssertValidSoup(nestedValue);
+
+ context.close();
+ assertFalse(soup.exists());
+ assertFalse(nestedBean.exists());
+ assertFalse(nestedValue.exists());
+ }
+
+ private void asssertValidSoup(SoupService soup) {
+ assertEquals("type", "French Onion", soup.getSoupType());
+ assertTrue(soup.getCreateTime() >= time);
+ assertTrue(soup.exists());
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/soup-normal.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SoupUsingXBeanTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SoupUsingXBeanTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SoupUsingXBeanTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SoupUsingXBeanTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,32 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+/**
+ * @author Dain Sundstrom
+ * @version $Id$
+ * @since 2.0
+ */
+public class SoupUsingXBeanTest extends SoupUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/soup-xbean.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SpringExtensionTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SpringExtensionTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SpringExtensionTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SpringExtensionTest.java Tue Oct 10 08:46:36 2006
@@ -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.
+ */
+package org.apache.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+/**
+ *
+ * @author gnodet
+ * @since 2.7
+ */
+public class SpringExtensionTest extends SpringTestSupport {
+
+ public void test() {
+
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/spring-extension.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SpringTestSupport.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SpringTestSupport.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SpringTestSupport.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/SpringTestSupport.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,56 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+import junit.framework.TestCase;
+
+/**
+ * A useful base class for testing spring based utilities.
+ *
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public abstract class SpringTestSupport extends TestCase {
+ protected transient Log log = LogFactory.getLog(getClass());
+
+ protected AbstractXmlApplicationContext context;
+
+ protected void setUp() throws Exception {
+ context = createApplicationContext();
+ assertNotNull("ApplicationContext is null!", context);
+ }
+
+ protected void tearDown() throws Exception {
+ if (context != null) {
+ log.info("Closing down the spring context");
+ context.destroy();
+ }
+ }
+
+ protected Object getBean(String name) {
+ Object answer = answer = context.getBean(name);
+ assertNotNull("Could not find object in Spring for key: " + name, answer);
+ return answer;
+ }
+
+ protected abstract AbstractXmlApplicationContext createApplicationContext();
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/VodkaUsingSpringTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/VodkaUsingSpringTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/VodkaUsingSpringTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/VodkaUsingSpringTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,42 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.apache.xbean.spring.example.VodkaService;
+
+/**
+ * @author Dan Diephouse
+ * @version $Id: VodkaUsingSpringTest.java 434369 2006-08-24 10:24:21Z gnodet $
+ * @since 1.0
+ */
+public class VodkaUsingSpringTest extends SpringTestSupport {
+
+ public void testWine() throws Exception {
+ VodkaService vodka = (VodkaService) getBean("vodkaService");
+
+ assertEquals("name", "Grey Goose", vodka.getName());
+ assertEquals("id", "vodkaService", vodka.getId());
+
+ // Test more complex classes
+ assertEquals("class", VodkaService.class, vodka.getClass());
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/vodka-normal.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/VodkaUsingXBeanTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/VodkaUsingXBeanTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/VodkaUsingXBeanTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/VodkaUsingXBeanTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,32 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+/**
+ * @author James Strachan
+ * @version $Id: VodkaUsingXBeanTest.java 434369 2006-08-24 10:24:21Z gnodet $
+ * @since 2.0
+ */
+public class VodkaUsingXBeanTest extends VodkaUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/vodka-xbean.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/WineUsingSpringTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/WineUsingSpringTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/WineUsingSpringTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/WineUsingSpringTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,39 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.apache.xbean.spring.example.WineService;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 1.0
+ */
+public class WineUsingSpringTest extends SpringTestSupport {
+
+ public void testWine() throws Exception {
+ WineService soup = (WineService) getBean("wineService");
+
+ assertEquals("name", "Amarone", soup.getName());
+ assertEquals("id", "wineService", soup.getId());
+ }
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/wine-normal.xml");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/WineUsingXBeanTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/WineUsingXBeanTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/WineUsingXBeanTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/WineUsingXBeanTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,32 @@
+/**
+ * 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.xbean.spring.context;
+
+import org.springframework.context.support.AbstractXmlApplicationContext;
+
+/**
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+public class WineUsingXBeanTest extends WineUsingSpringTest {
+
+ protected AbstractXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/xbean/spring/context/wine-xbean.xml");
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/impl/NamedConstructorArgsTest.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/impl/NamedConstructorArgsTest.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/impl/NamedConstructorArgsTest.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/context/impl/NamedConstructorArgsTest.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,81 @@
+/**
+ * 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.xbean.spring.context.impl;
+
+import java.io.ByteArrayInputStream;
+import java.lang.reflect.Constructor;
+import java.net.URL;
+import java.net.URLClassLoader;
+import java.util.Arrays;
+import java.util.Properties;
+
+import junit.framework.TestCase;
+
+/**
+ * @author Dain Sundstrom
+ * @version $Id$
+ * @since 1.0
+ */
+public class NamedConstructorArgsTest extends TestCase {
+ private Properties properties = new Properties();
+
+ public void testPropertyParsing() {
+ assertEquals("bar", properties.getProperty("foo"));
+ assertEquals("blah", properties.getProperty("foo,chese"));
+ assertEquals("StringBuffer", properties.getProperty("java.lang.String(java.lang.StringBuffer)"));
+ assertEquals("char[]", properties.getProperty("java.lang.String([C)"));
+ assertEquals("byte[],int,int", properties.getProperty("java.lang.String([B,int,int)"));
+ assertEquals("URL[],ClassLoader", properties.getProperty("java.net.URLClassLoader([Ljava.net.URL;,java.lang.ClassLoader)"));
+ }
+
+ public void testMappingMetaData() throws Exception {
+ MappingMetaData mappingMetaData = new MappingMetaData(properties);
+ Constructor constructor = URLClassLoader.class.getConstructor(new Class[] { URL[].class, ClassLoader.class});
+ assertTrue(mappingMetaData.isDefaultConstructor(constructor));
+ assertEquals(Arrays.asList(new String[] { "urls", "parent" }),
+ Arrays.asList(mappingMetaData.getParameterNames(constructor)));
+
+ constructor = String.class.getConstructor(new Class[] { byte[].class, int.class, int.class});
+ assertFalse(mappingMetaData.isDefaultConstructor(constructor));
+ assertEquals(Arrays.asList(new String[] { "bytes", "offset", "length" }),
+ Arrays.asList(mappingMetaData.getParameterNames(constructor)));
+ }
+
+ protected void setUp() throws Exception {
+ StringBuffer buf = new StringBuffer();
+ buf.append("# test properties\n");
+ buf.append("foo=bar\n");
+ buf.append("foo,chese=blah\n");
+ Constructor constructor = String.class.getConstructor(new Class[] { StringBuffer.class});
+ buf.append(MappingMetaData.constructorToPropertyName(constructor) + "=StringBuffer\n");
+ constructor = String.class.getConstructor(new Class[] { char[].class});
+ buf.append(MappingMetaData.constructorToPropertyName(constructor) + "=char[]\n");
+ constructor = String.class.getConstructor(new Class[] { byte[].class, int.class, int.class});
+ buf.append(MappingMetaData.constructorToPropertyName(constructor) + "=byte[],int,int\n");
+ constructor = URLClassLoader.class.getConstructor(new Class[] { URL[].class, ClassLoader.class});
+ buf.append(MappingMetaData.constructorToPropertyName(constructor) + "=URL[],ClassLoader\n");
+
+ properties.load(new ByteArrayInputStream(buf.toString().getBytes()));
+
+ constructor = URLClassLoader.class.getConstructor(new Class[] { URL[].class, ClassLoader.class});
+ properties.put(MappingMetaData.constructorToPropertyName(constructor) + ".default", "true");
+ properties.put(MappingMetaData.constructorToPropertyName(constructor) + ".parameterNames", "urls,parent");
+ constructor = String.class.getConstructor(new Class[] { byte[].class, int.class, int.class});
+ properties.put(MappingMetaData.constructorToPropertyName(constructor) + ".default", "false");
+ properties.put(MappingMetaData.constructorToPropertyName(constructor) + ".parameterNames", "bytes,offset,length");
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/BeerService.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/BeerService.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/BeerService.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/BeerService.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,59 @@
+/**
+ * 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.xbean.spring.example;
+
+
+/**
+ * @org.apache.xbean.XBean element="beer" description="Mmmmm beer"
+ *
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+
+// START SNIPPET: bean
+public class BeerService {
+ private String id;
+ private String name;
+ private String source = "tap";
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getSource() {
+ return source;
+ }
+
+ public void setSource(String source) {
+ this.source = source;
+ }
+}
+// END SNIPPET: bean
+
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/ContainerBean.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/ContainerBean.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/ContainerBean.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/ContainerBean.java Tue Oct 10 08:46:36 2006
@@ -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.
+ */
+package org.apache.xbean.spring.example;
+
+public class ContainerBean {
+
+ InnerBean[] beans;
+
+ /**
+ * @return the beans
+ */
+ public InnerBean[] getBeans() {
+ return beans;
+ }
+
+ /**
+ * @param beans the beans to set
+ */
+ public void setBeans(InnerBean[] beans) {
+ this.beans = beans;
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/DummyBean.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/DummyBean.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/DummyBean.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/DummyBean.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,42 @@
+/**
+ * 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.xbean.spring.example;
+
+/**
+ * @org.apache.xbean.XBean element="dummy"
+ * @author gnodet
+ * @since 2.7
+ */
+public class DummyBean {
+
+ private Object inner;
+
+ /**
+ * @return the inner
+ */
+ public Object getInner() {
+ return inner;
+ }
+
+ /**
+ * @param inner the inner to set
+ */
+ public void setInner(Object inner) {
+ this.inner = inner;
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/FavoriteService.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/FavoriteService.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/FavoriteService.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/FavoriteService.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,46 @@
+/**
+ * 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.xbean.spring.example;
+
+import java.util.Map;
+
+
+/**
+ * @org.apache.xbean.XBean element="favorite"
+ *
+ * @author Dan Diephouse
+ * @version $Id$
+ */
+
+// START SNIPPET: bean
+public class FavoriteService {
+ private Map favorites;
+
+ /**
+ * @org.apache.xbean.Map entryName="favorite-item" keyName="person"
+ * @return
+ */
+ public Map getFavorites() {
+ return favorites;
+ }
+
+ public void setFavorites(Map favorites) {
+ this.favorites = favorites;
+ }
+}
+// END SNIPPET: bean
+
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/GinService.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/GinService.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/GinService.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/GinService.java Tue Oct 10 08:46:36 2006
@@ -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.
+ */
+package org.apache.xbean.spring.example;
+
+/**
+ * Gin is made from the distillation of white grain spirit and juniper berries.
+ * @org.apache.xbean.XBean element="gin" contentProperty="name"
+ *
+ * @version $Revision: 1.1 $
+ */
+public class GinService {
+
+ private String name;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/InnerBean.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/InnerBean.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/InnerBean.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/InnerBean.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,31 @@
+/**
+ * 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.xbean.spring.example;
+
+public class InnerBean {
+
+ public static InnerBean INSTANCE = null;
+
+ public InnerBean() {
+ Thread.dumpStack();
+ if (INSTANCE == null) {
+ INSTANCE = this;
+ } else {
+ throw new IllegalStateException("Already instanciated");
+ }
+ }
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/KegService.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/KegService.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/KegService.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/KegService.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,57 @@
+/**
+ * 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.xbean.spring.example;
+
+//START SNIPPET: java
+/**
+ * @org.apache.xbean.XBean element="keg"
+ *
+ * Used to verify that property PropertyEditors work correctly.
+ *
+ * @author chirino
+ */
+public class KegService {
+
+ private long remaining;
+
+ /**
+ * Gets the amount of beer remaining in the keg (in ml)
+ *
+ * @param remaining
+ */
+ public long getRemaining() {
+ return remaining;
+ }
+
+ /**
+ * Sets the amount of beer remaining in the keg (in ml)
+ *
+ * @org.apache.xbean.Property propertyEditor="org.apache.xbean.spring.example.MilliLittersPropertyEditor"
+ * @param remaining
+ */
+ public void setRemaining(long remaining) {
+ this.remaining = remaining;
+ }
+
+ public long dispense( long amount ) {
+ this.remaining -= amount;
+ return this.remaining;
+ }
+
+}
+// END SNIPPET: java
+
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/MilliLittersPropertyEditor.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/MilliLittersPropertyEditor.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/MilliLittersPropertyEditor.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/MilliLittersPropertyEditor.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,64 @@
+/**
+ * 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.xbean.spring.example;
+
+import java.beans.PropertyEditorSupport;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+//START SNIPPET: java
+/**
+ *
+ * Used to verify that per property PropertyEditors work correctly.
+ *
+ * @author chirino
+ */
+public class MilliLittersPropertyEditor extends PropertyEditorSupport {
+
+ public void setAsText(String text) throws IllegalArgumentException {
+
+ Pattern p = Pattern.compile("^(\\d+)\\s*(l(iter)?)?$", Pattern.CASE_INSENSITIVE);
+ Matcher m = p.matcher(text);
+ if( m.matches() ) {
+ setValue(new Long(Long.parseLong(m.group(1))*1000));
+ return;
+ }
+
+ p = Pattern.compile("^(\\d+)\\s*(ml)?$", Pattern.CASE_INSENSITIVE);
+ m = p.matcher(text);
+ if( m.matches() ) {
+ setValue(new Long(Long.parseLong(m.group(1))));
+ return;
+ }
+
+ p = Pattern.compile("^(\\d+)\\s*pints?$", Pattern.CASE_INSENSITIVE);
+ m = p.matcher(text);
+ if( m.matches() ) {
+ long pints = Long.parseLong(m.group(1));
+ setValue(new Long( (long)(pints * 1750) ));
+ return;
+ }
+
+ throw new IllegalArgumentException("Could convert not to long (in ml) for "+ text);
+ }
+
+ public String getAsText() {
+ Long value = (Long) getValue();
+ return (value != null ? value.toString() : "");
+ }
+}
+//END SNIPPET: java
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/PizzaService.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/PizzaService.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/PizzaService.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/PizzaService.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,82 @@
+/**
+ * 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.xbean.spring.example;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+/**
+ * @org.apache.xbean.XBean element="pizza"
+ * description="This is a tasty Pizza"
+ *
+ * @author James Strachan
+ * @version $Id$
+ * @since 2.0
+ */
+
+// START SNIPPET: bean
+public class PizzaService {
+
+ private static final Log log = LogFactory.getLog(PizzaService.class);
+
+ private String topping;
+ private String cheese;
+ private int size;
+ private double price;
+
+ public void makePizza() {
+ log.info("Making a pizza with topping: " + topping + " cheese: " + cheese + " with size: " + size);
+ }
+
+ public String getCheese() {
+ return cheese;
+ }
+
+ public void setCheese(String cheese) {
+ this.cheese = cheese;
+ }
+
+ public double getPrice() {
+ return price;
+ }
+
+ public void setPrice(double price) {
+ this.price = price;
+ }
+
+ public int getSize() {
+ return size;
+ }
+
+ public void setSize(int size) {
+ this.size = size;
+ }
+
+ /**
+ * @org.apache.xbean.Property alias="myTopping"
+ */
+ public String getTopping() {
+ return topping;
+ }
+
+ public void setTopping(String topping) {
+ this.topping = topping;
+ }
+
+}
+// END SNIPPET: bean
+
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/QNameService.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/QNameService.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/QNameService.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/QNameService.java Tue Oct 10 08:46:36 2006
@@ -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.xbean.spring.example;
+
+import java.util.List;
+
+import javax.xml.namespace.QName;
+
+/**
+ * @org.apache.xbean.XBean element="qname-service"
+ * @author gnodet
+ */
+public class QNameService {
+
+ private QName[] services;
+ private List list;
+
+ public QName[] getServices() {
+ return services;
+ }
+
+ public void setServices(QName[] services) {
+ this.services = services;
+ }
+
+ public List getList() {
+ return list;
+ }
+
+ public void setList(List list) {
+ this.list = list;
+ }
+
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/Recipe.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/Recipe.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/Recipe.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/Recipe.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,48 @@
+/**
+ * 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.xbean.spring.example;
+
+/**
+ * @org.apache.xbean.XBean element="recipe"
+ * @author Dan Diephouse
+ */
+public class Recipe
+{
+ private String ingredients;
+ private String instructions;
+
+ public String getInstructions()
+ {
+ return instructions;
+ }
+
+ public void setInstructions(String instructions)
+ {
+ this.instructions = instructions;
+ }
+
+ public String getIngredients()
+ {
+ return ingredients;
+ }
+
+ public void setIngredients(String ingredients)
+ {
+ this.ingredients = ingredients;
+ }
+
+}
Added: geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/RecipeService.java
URL: http://svn.apache.org/viewvc/geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/RecipeService.java?view=auto&rev=454790
==============================================================================
--- geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/RecipeService.java (added)
+++ geronimo/xbean/trunk/xbean-spring-v2c/src/test/java/org/apache/xbean/spring/example/RecipeService.java Tue Oct 10 08:46:36 2006
@@ -0,0 +1,54 @@
+/**
+ * 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.xbean.spring.example;
+
+import java.util.List;
+/**
+ * @org.apache.xbean.XBean element="recipe-service"
+ * @author Dan Diephouse
+ */
+public class RecipeService
+{
+ private List recipes;
+ private Recipe topRecipe;
+
+ /**
+ * @org.apache.xbean.FlatCollection childElement="recipe"
+ * @return
+ */
+ public List getRecipes()
+ {
+ return recipes;
+ }
+
+ public void setRecipes(List recipes)
+ {
+ this.recipes = recipes;
+ }
+
+ /**
+ * @org.apache.xbean.Flat
+ * @return
+ */
+ public Recipe getTopRecipe() {
+ return topRecipe;
+ }
+
+ public void setTopRecipe(Recipe topRecipe) {
+ this.topRecipe = topRecipe;
+ }
+}