 d64d4281ec
			
		
	
	
	d64d4281ec
	
	
	
		
			
			git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1069273 13f79535-47bb-0310-9956-ffa450edef68
		
			
				
	
	
		
			97 lines
		
	
	
	
		
			3.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
	
		
			3.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| Calculator Sample
 | |
| =================
 | |
| This sample implements a simple calculator using SCA components. 
 | |
| 
 | |
| The README in the samples directory (the directory above this) provides 
 | |
| general instructions about building and running samples. Take a look there 
 | |
| first. 
 | |
| 
 | |
| If you just want to run it to see what happens open a command prompt, navigate
 | |
| to this sample directory and do:
 | |
| 
 | |
| ant run
 | |
| 
 | |
| OR if you don't have ant, on Windows do
 | |
| 
 | |
| java -cp ..\..\lib\tuscany-sca-manifest.jar;target\sample-calculator.jar calculator.CalculatorClient
 | |
| 
 | |
| and on *nix do
 | |
| 
 | |
| java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-calculator.jar calculator.CalculatorClient
 | |
| 
 | |
| Sample Overview
 | |
| ---------------
 | |
| The sample provides a single calculator service with a default SCA (java) 
 | |
| binding. The CalculatorClient exercises this interface by calling add, 
 | |
| subtract, multiply and divide operations. This results in messages passing to 
 | |
| the appropriate components in the composite across the local wires.
 | |
| 
 | |
| calculator/
 | |
|   src/
 | |
|     main/
 | |
|       java/
 | |
|         calculator/
 | |
|           CalculatorService.java  - the first component, calls +-/* as 
 | |
|                                     appropriate
 | |
|           CalculatorServiceImpl.java
 | |
|           AddService.java         - adds two numbers
 | |
|           AddServiceImpl.java
 | |
|           SubtractService.java    - subtracts one number from another
 | |
|           SubtractServiceImpl.java
 | |
|           MultiplyService.java    - multiplies two numbers
 | |
|           MultiplyServiceImpl.java
 | |
|           DivideService.java      - divides one number by another
 | |
|           DivideServiceImpl.java
 | |
|           CalculatorClient.java   - starts the SCA Runtime and 
 | |
|                                     deploys the Calculator.composite. 
 | |
|                                     It then calls the deployed Calculator 
 | |
|                                     Components services
 | |
|       resources/
 | |
|         Calculator.composite      - the SCA assembly for this sample
 | |
|     test/
 | |
|       java/
 | |
|         calculator/
 | |
|           CalculatorTestCase.java - JUnit test case 
 | |
|   calculator.png                  - a pictorial representation of the sample 
 | |
|                                     .composite file
 | |
|   build.xml                       - the Ant build file
 | |
|   pom.xml                         - the Maven build file        
 | |
| 
 | |
| Building And Running The Sample Using Ant
 | |
| -----------------------------------------
 | |
| With the binary distribution the sample can be built and run using Ant as 
 | |
| follows
 | |
| 
 | |
| cd calculator
 | |
| ant compile
 | |
| ant run
 | |
| 
 | |
| You should see the following output from the run target.
 | |
| 
 | |
| run:
 | |
|      [java] 3 + 2=5.0
 | |
|      [java] 3 - 2=1.0
 | |
|      [java] 3 * 2=6.0
 | |
|      [java] 3 / 2=1.5
 | |
| 
 | |
| Building And Running The Sample Using Maven 
 | |
| -------------------------------------------
 | |
| With either the binary or source distributions the sample can be built and run 
 | |
| using Maven as follows. 
 | |
| 
 | |
| cd calculator
 | |
| mvn
 | |
| 
 | |
| You should see the following output from the test phase.
 | |
| 
 | |
| -------------------------------------------------------
 | |
|  T E S T S
 | |
| -------------------------------------------------------
 | |
| Running calculator.CalculatorTestCase
 | |
| Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.272 sec
 | |
| 
 | |
| Results :
 | |
| 
 | |
| Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
 | |
| 
 | |
| This shows that the Junit test cases have run successfully. 
 |