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 package org.ogf.graap.wsag.samples;
36
37 import org.apache.log4j.Logger;
38 import org.ogf.graap.wsag.api.AgreementOffer;
39 import org.ogf.graap.wsag.api.types.AbstractAgreementType;
40 import org.ogf.schemas.graap.wsAgreement.AgreementPropertiesType;
41 import org.ogf.schemas.graap.wsAgreement.AgreementStateDefinition;
42 import org.ogf.schemas.graap.wsAgreement.AgreementStateDocument;
43 import org.ogf.schemas.graap.wsAgreement.AgreementStateType;
44 import org.ogf.schemas.graap.wsAgreement.GuaranteeTermStateDefinition;
45 import org.ogf.schemas.graap.wsAgreement.GuaranteeTermStateType;
46 import org.ogf.schemas.graap.wsAgreement.ServiceTermStateDefinition;
47 import org.ogf.schemas.graap.wsAgreement.ServiceTermStateType;
48 import org.ogf.schemas.graap.wsAgreement.TerminateInputType;
49 import org.w3c.dom.Node;
50
51
52
53
54
55
56
57 public class SampleAgreement extends AbstractAgreementType
58 {
59
60
61
62
63
64
65
66 public SampleAgreement( AgreementOffer offer )
67 {
68 super( offer );
69 setName( "SampleAgreement" );
70 }
71
72 private static Logger log = Logger.getLogger( SampleAgreement.class );
73
74
75
76
77
78
79
80 public SampleAgreement( AgreementPropertiesType properties )
81 {
82 super();
83 this.agreementProperties = properties;
84 }
85
86
87
88
89
90
91 public void terminate( TerminateInputType reason )
92 {
93 Node terminateReson = reason.getDomNode().getFirstChild();
94 if ( terminateReson != null )
95 {
96
97 if ( log.isInfoEnabled() )
98 {
99 log.info( "The agreement was terminated for the following reason: " + reason.xmlText() );
100 }
101 }
102 }
103
104
105
106
107 @Override
108 public ServiceTermStateType[] getServiceTermStates()
109 {
110
111
112
113
114 ServiceTermStateType[] state = new ServiceTermStateType[1];
115
116
117
118
119
120 state[0] = ServiceTermStateType.Factory.newInstance();
121
122
123 for ( int i = 0; i < state.length; i++ )
124 {
125 state[i].setState( ServiceTermStateDefinition.READY );
126 }
127
128
129 return state;
130 }
131
132
133
134
135 @Override
136 public AgreementStateType getState()
137 {
138
139
140 AgreementStateDocument stateDoc = AgreementStateDocument.Factory.newInstance();
141 AgreementStateType state = stateDoc.addNewAgreementState();
142
143 state.setState( AgreementStateDefinition.OBSERVED );
144
145
146 return stateDoc.getAgreementState();
147 }
148
149
150
151
152
153 @Override
154 public GuaranteeTermStateType[] getGuaranteeTermStates()
155 {
156 GuaranteeTermStateType[] state = new GuaranteeTermStateType[2];
157
158 state[0] = GuaranteeTermStateType.Factory.newInstance();
159 state[1] = GuaranteeTermStateType.Factory.newInstance();
160
161 state[0].setState( GuaranteeTermStateDefinition.NOT_DETERMINED );
162 state[0].setTermName( "term_0" );
163
164 state[1].setState( GuaranteeTermStateDefinition.FULFILLED );
165 state[1].setTermName( "term_1" );
166
167 return state;
168 }
169
170
171 }