Author: dblevins
Date: Fri Apr 8 21:07:29 2011
New Revision: 1090445
URL: http://svn.apache.org/viewvc?rev=1090445&view=rev
Log:
Reworked to fully use EJB 3.1 APIs
Added:
openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorBean.java
(contents, props changed)
- copied, changed from r1090437,
openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorImpl.java
Removed:
openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorImpl.java
openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorLocal.java
openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorRemote.java
Modified:
openejb/trunk/openejb3/examples/simple-stateless/src/test/java/org/superbiz/stateless/basic/CalculatorTest.java
Copied:
openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorBean.java
(from r1090437,
openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorImpl.java)
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorBean.java?p2=openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorBean.java&p1=openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorImpl.java&r1=1090437&r2=1090445&rev=1090445&view=diff
==============================================================================
---
openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorImpl.java
(original)
+++
openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorBean.java
Fri Apr 8 21:07:29 2011
@@ -19,24 +19,31 @@ package org.superbiz.stateless.basic;
import javax.ejb.Stateless;
/**
- * This is an EJB 3 style pojo stateless session bean
- * Every stateless session bean implementation must be annotated
- * using the annotation @Stateless
- * This EJB has 2 business interfaces: CalculatorRemote, a remote business
- * interface, and CalculatorLocal, a local business interface
- *
+ * This is an EJB 3.1 style pojo Stateless session bean
*/
//START SNIPPET: code
@Stateless
-public class CalculatorImpl implements CalculatorRemote, CalculatorLocal {
+public class CalculatorBean {
- public int sum(int add1, int add2) {
- return add1+add2;
- }
-
- public int multiply(int mul1, int mul2) {
- return mul1*mul2;
- }
+ public int add(int a, int b) {
+ return a + b;
+ }
+
+ public int subtract(int a, int b) {
+ return a - b;
+ }
+
+ public int multiply(int a, int b) {
+ return a * b;
+ }
+
+ public int divide(int a, int b) {
+ return a / b;
+ }
+
+ public int remainder(int a, int b) {
+ return a % b;
+ }
}
//END SNIPPET: code
\ No newline at end of file
Propchange:
openejb/trunk/openejb3/examples/simple-stateless/src/main/java/org/superbiz/stateless/basic/CalculatorBean.java
------------------------------------------------------------------------------
svn:keywords = Date Rev Author Id Revision HeadURL
Modified:
openejb/trunk/openejb3/examples/simple-stateless/src/test/java/org/superbiz/stateless/basic/CalculatorTest.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/examples/simple-stateless/src/test/java/org/superbiz/stateless/basic/CalculatorTest.java?rev=1090445&r1=1090444&r2=1090445&view=diff
==============================================================================
---
openejb/trunk/openejb3/examples/simple-stateless/src/test/java/org/superbiz/stateless/basic/CalculatorTest.java
(original)
+++
openejb/trunk/openejb3/examples/simple-stateless/src/test/java/org/superbiz/stateless/basic/CalculatorTest.java
Fri Apr 8 21:07:29 2011
@@ -16,62 +16,73 @@
*/
package org.superbiz.stateless.basic;
-import javax.ejb.embeddable.EJBContainer;
-import javax.naming.Context;
-
import junit.framework.TestCase;
-import org.superbiz.stateless.basic.CalculatorLocal;
-import org.superbiz.stateless.basic.CalculatorRemote;
+
+import javax.ejb.embeddable.EJBContainer;
public class CalculatorTest extends TestCase {
- //START SNIPPET: setup
- private Context context;
+ private CalculatorBean calculator;
+ /**
+ * Bootstrap the Embedded EJB Container
+ *
+ * @throws Exception
+ */
protected void setUp() throws Exception {
-// Map<Object, Object> map = new HashMap<Object, Object>();
-// map.put(EJBContainer.APP_NAME, "test");
-// EJBContainer ejbContainer = EJBContainer.createEJBContainer(map);
EJBContainer ejbContainer = EJBContainer.createEJBContainer();
- context = ejbContainer.getContext();
+ Object object =
ejbContainer.getContext().lookup("java:global/simple-stateless/CalculatorBean");
+
+ assertTrue(object instanceof CalculatorBean);
+
+ calculator = (CalculatorBean) object;
}
-
- //END SNIPPET: setup
/**
- * Lookup the Calculator bean via its remote home interface
- *
- * @throws Exception
+ * Test Add method
*/
- //START SNIPPET: remote
- public void testCalculatorViaRemoteInterface() throws Exception {
- Object object =
context.lookup("java:global/simple-stateless/CalculatorImpl!"+CalculatorRemote.class.getName());
-
- assertNotNull(object);
- assertTrue(object instanceof CalculatorRemote);
- CalculatorRemote calc = (CalculatorRemote) object;
- assertEquals(10, calc.sum(4,6));
- assertEquals(12, calc.multiply(3,4));
+ public void testAdd() {
+
+ assertEquals(10, calculator.add(4, 6));
+
}
- //END SNIPPET: remote
-
+
/**
- * Lookup the Calculator bean via its local home interface
- *
- * @throws Exception
+ * Test Subtract method
*/
- //START SNIPPET: local
- public void testCalculatorViaLocalInterface() throws Exception {
- Object object =
context.lookup("java:global/simple-stateless/CalculatorImpl");
-
- assertNotNull(object);
- assertTrue(object instanceof CalculatorLocal);
- CalculatorLocal calc = (CalculatorLocal) object;
- assertEquals(10, calc.sum(4,6));
- assertEquals(12, calc.multiply(3,4));
+ public void testSubtract() {
+
+ assertEquals(-2, calculator.subtract(4, 6));
+
+ }
+
+ /**
+ * Test Multiply method
+ */
+ public void testMultiply() {
+
+ assertEquals(24, calculator.multiply(4, 6));
+
+ }
+
+ /**
+ * Test Divide method
+ */
+ public void testDivide() {
+
+ assertEquals(2, calculator.divide(12, 6));
+
+ }
+
+ /**
+ * Test Remainder method
+ */
+ public void testRemainder() {
+
+ assertEquals(4, calculator.remainder(46, 6));
+
}
- //END SNIPPET: local
}