summaryrefslogtreecommitdiffstats
path: root/sandbox/sebastien/java/sca-node/samples/implementation-crud-extension/README
blob: 5e8190648f9cfccf43e71681b19abfa049d94fce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
Implementation CRUD Sample
==========================
This sample demonstrates how new implementation types are constructed for 
Apache Tuscany SCA. 

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 want to try out the CRUD implementation type that this sample provides
please see the implementation-crud sample that provides the necessary client
code to bring up an application that uses this implementation extension.

Sample Overview
---------------
This sample contains a CRUD implementation type as an example of how to create
new implementation types. Components using this implementation type always
expose the same Create, Retrieve, Update and Delete interface. This sample
uses a singleton ResourceManager to perform the CRUD operations but of course
a real component would provide a real implementation. 

implementation-crud-extension/
  src/
    main/
      java/
        crud/                  - implementation model interfaces
          backend/             - fake component implementation
          impl/                - implementations of the model interfaces
          provider/            - runtime implementation
      resources/
        META-INF/
          services/            - declares the extension
    test/
      java/
        crud/
          CRUDTestCase.java    - JUnit test case
      resources/
        crud.composite         - the SCA assembly used during unit testing

  build.xml                    - the Ant build file
  pom.xml                      - the Maven build file
  
Building The Sample Extension Using Ant
-----------------------------------------
With the binary distribution the sample extension can be built using Ant as 
follows

cd implementation-crud-extension
ant compile

See the implementation-crud sample to run a sample that uses this
implementation extension.

Building The Sample Using Maven 
-------------------------------------------
With either the binary or source distributions the sample can be built 
using Maven as follows. 

cd implementation-crud-extension
mvn

Maven will also test that the sample extension built properly. You should see 
the following output from the test phase.

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running crud.CRUDTestCase
Starting CRUDServiceComponent
create(ABC) in tmp
retrieve(0)
update(0)
retrieve(0)
delete(0)
retrieve(0)
Stopping CRUDServiceComponent
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.212 sec

Results :

Tests run: 1, Failures: 0, Errors: 0, Skipped: 0

This shows that the Junit test cases have run successfully.