001: /**
002: * <copyright>
003: * </copyright>
004: *
005: * $Id: TransactionType.java 7522 2007-09-12 22:00:10Z saul.farber $
006: */package net.opengis.wfs;
007:
008: import org.eclipse.emf.common.util.EList;
009:
010: import org.eclipse.emf.ecore.util.FeatureMap;
011:
012: /**
013: * <!-- begin-user-doc -->
014: * A representation of the model object '<em><b>Transaction Type</b></em>'.
015: * <!-- end-user-doc -->
016: *
017: * <!-- begin-model-doc -->
018: *
019: * The TransactionType defines the Transaction operation. A
020: * Transaction element contains one or more Insert, Update
021: * Delete and Native elements that allow a client application
022: * to create, modify or remove feature instances from the
023: * feature repository that a Web Feature Service controls.
024: * <!-- end-model-doc -->
025: *
026: * <p>
027: * The following features are supported:
028: * <ul>
029: * <li>{@link net.opengis.wfs.TransactionType#getLockId <em>Lock Id</em>}</li>
030: * <li>{@link net.opengis.wfs.TransactionType#getGroup <em>Group</em>}</li>
031: * <li>{@link net.opengis.wfs.TransactionType#getInsert <em>Insert</em>}</li>
032: * <li>{@link net.opengis.wfs.TransactionType#getUpdate <em>Update</em>}</li>
033: * <li>{@link net.opengis.wfs.TransactionType#getDelete <em>Delete</em>}</li>
034: * <li>{@link net.opengis.wfs.TransactionType#getNative <em>Native</em>}</li>
035: * <li>{@link net.opengis.wfs.TransactionType#getReleaseAction <em>Release Action</em>}</li>
036: * </ul>
037: * </p>
038: *
039: * @see net.opengis.wfs.WfsPackage#getTransactionType()
040: * @model extendedMetaData="name='TransactionType' kind='elementOnly'"
041: * @generated
042: */
043: public interface TransactionType extends BaseRequestType {
044: /**
045: * Returns the value of the '<em><b>Lock Id</b></em>' attribute.
046: * <!-- begin-user-doc -->
047: * <!-- end-user-doc -->
048: * <!-- begin-model-doc -->
049: *
050: * In order for a client application to operate upon
051: * locked feature instances, the Transaction request
052: * must include the LockId element. The content of
053: * this element must be the lock identifier the client
054: * application obtained from a previous
055: * GetFeatureWithLock or LockFeature operation.
056: *
057: * If the correct lock identifier is specified the Web
058: * Feature Service knows that the client application may
059: * operate upon the locked feature instances.
060: *
061: * No LockId element needs to be specified to operate upon
062: * unlocked features.
063: * <!-- end-model-doc -->
064: * @return the value of the '<em>Lock Id</em>' attribute.
065: * @see #setLockId(String)
066: * @see net.opengis.wfs.WfsPackage#getTransactionType_LockId()
067: * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
068: * extendedMetaData="kind='element' name='LockId' namespace='##targetNamespace'"
069: * @generated
070: */
071: String getLockId();
072:
073: /**
074: * Sets the value of the '{@link net.opengis.wfs.TransactionType#getLockId <em>Lock Id</em>}' attribute.
075: * <!-- begin-user-doc -->
076: * <!-- end-user-doc -->
077: * @param value the new value of the '<em>Lock Id</em>' attribute.
078: * @see #getLockId()
079: * @generated
080: */
081: void setLockId(String value);
082:
083: /**
084: * Returns the value of the '<em><b>Group</b></em>' attribute list.
085: * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
086: * <!-- begin-user-doc -->
087: * <p>
088: * If the meaning of the '<em>Group</em>' attribute list isn't clear,
089: * there really should be more of a description here...
090: * </p>
091: * <!-- end-user-doc -->
092: * @return the value of the '<em>Group</em>' attribute list.
093: * @see net.opengis.wfs.WfsPackage#getTransactionType_Group()
094: * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
095: * extendedMetaData="kind='group' name='group:4'"
096: * @generated
097: */
098: FeatureMap getGroup();
099:
100: /**
101: * Returns the value of the '<em><b>Insert</b></em>' containment reference list.
102: * The list contents are of type {@link net.opengis.wfs.InsertElementType}.
103: * <!-- begin-user-doc -->
104: * <p>
105: * If the meaning of the '<em>Insert</em>' containment reference list isn't clear,
106: * there really should be more of a description here...
107: * </p>
108: * <!-- end-user-doc -->
109: * @return the value of the '<em>Insert</em>' containment reference list.
110: * @see net.opengis.wfs.WfsPackage#getTransactionType_Insert()
111: * @model type="net.opengis.wfs.InsertElementType" containment="true" transient="true" volatile="true" derived="true"
112: * extendedMetaData="kind='element' name='Insert' namespace='##targetNamespace' group='#group:4'"
113: * @generated
114: */
115: EList getInsert();
116:
117: /**
118: * Returns the value of the '<em><b>Update</b></em>' containment reference list.
119: * The list contents are of type {@link net.opengis.wfs.UpdateElementType}.
120: * <!-- begin-user-doc -->
121: * <p>
122: * If the meaning of the '<em>Update</em>' containment reference list isn't clear,
123: * there really should be more of a description here...
124: * </p>
125: * <!-- end-user-doc -->
126: * @return the value of the '<em>Update</em>' containment reference list.
127: * @see net.opengis.wfs.WfsPackage#getTransactionType_Update()
128: * @model type="net.opengis.wfs.UpdateElementType" containment="true" transient="true" volatile="true" derived="true"
129: * extendedMetaData="kind='element' name='Update' namespace='##targetNamespace' group='#group:4'"
130: * @generated
131: */
132: EList getUpdate();
133:
134: /**
135: * Returns the value of the '<em><b>Delete</b></em>' containment reference list.
136: * The list contents are of type {@link net.opengis.wfs.DeleteElementType}.
137: * <!-- begin-user-doc -->
138: * <p>
139: * If the meaning of the '<em>Delete</em>' containment reference list isn't clear,
140: * there really should be more of a description here...
141: * </p>
142: * <!-- end-user-doc -->
143: * @return the value of the '<em>Delete</em>' containment reference list.
144: * @see net.opengis.wfs.WfsPackage#getTransactionType_Delete()
145: * @model type="net.opengis.wfs.DeleteElementType" containment="true" transient="true" volatile="true" derived="true"
146: * extendedMetaData="kind='element' name='Delete' namespace='##targetNamespace' group='#group:4'"
147: * @generated
148: */
149: EList getDelete();
150:
151: /**
152: * Returns the value of the '<em><b>Native</b></em>' containment reference list.
153: * The list contents are of type {@link net.opengis.wfs.NativeType}.
154: * <!-- begin-user-doc -->
155: * <p>
156: * If the meaning of the '<em>Native</em>' containment reference list isn't clear,
157: * there really should be more of a description here...
158: * </p>
159: * <!-- end-user-doc -->
160: * @return the value of the '<em>Native</em>' containment reference list.
161: * @see net.opengis.wfs.WfsPackage#getTransactionType_Native()
162: * @model type="net.opengis.wfs.NativeType" containment="true" transient="true" volatile="true" derived="true"
163: * extendedMetaData="kind='element' name='Native' namespace='##targetNamespace' group='#group:4'"
164: * @generated
165: */
166: EList getNative();
167:
168: /**
169: * Returns the value of the '<em><b>Release Action</b></em>' attribute.
170: * The default value is <code>"ALL"</code>.
171: * The literals are from the enumeration {@link net.opengis.wfs.AllSomeType}.
172: * <!-- begin-user-doc -->
173: * <!-- end-user-doc -->
174: * <!-- begin-model-doc -->
175: *
176: * The releaseAction attribute is used to control how a Web
177: * Feature service releases locks on feature instances after
178: * a Transaction request has been processed.
179: *
180: * Valid values are ALL or SOME.
181: *
182: * A value of ALL means that the Web Feature Service should
183: * release the locks of all feature instances locked with the
184: * specified lockId regardless or whether or not the features
185: * were actually modified.
186: *
187: * A value of SOME means that the Web Feature Service will
188: * only release the locks held on feature instances that
189: * were actually operated upon by the transaction. The
190: * lockId that the client application obtained shall remain
191: * valid and the other, unmodified, feature instances shall
192: * remain locked.
193: *
194: * If the expiry attribute was specified in the original
195: * operation that locked the feature instances, then the
196: * expiry counter will be reset to give the client
197: * application that same amount of time to post subsequent
198: * transactions against the locked features.
199: * <!-- end-model-doc -->
200: * @return the value of the '<em>Release Action</em>' attribute.
201: * @see net.opengis.wfs.AllSomeType
202: * @see #isSetReleaseAction()
203: * @see #unsetReleaseAction()
204: * @see #setReleaseAction(AllSomeType)
205: * @see net.opengis.wfs.WfsPackage#getTransactionType_ReleaseAction()
206: * @model default="ALL" unique="false" unsettable="true"
207: * extendedMetaData="kind='attribute' name='releaseAction'"
208: * @generated
209: */
210: AllSomeType getReleaseAction();
211:
212: /**
213: * Sets the value of the '{@link net.opengis.wfs.TransactionType#getReleaseAction <em>Release Action</em>}' attribute.
214: * <!-- begin-user-doc -->
215: * <!-- end-user-doc -->
216: * @param value the new value of the '<em>Release Action</em>' attribute.
217: * @see net.opengis.wfs.AllSomeType
218: * @see #isSetReleaseAction()
219: * @see #unsetReleaseAction()
220: * @see #getReleaseAction()
221: * @generated
222: */
223: void setReleaseAction(AllSomeType value);
224:
225: /**
226: * Unsets the value of the '{@link net.opengis.wfs.TransactionType#getReleaseAction <em>Release Action</em>}' attribute.
227: * <!-- begin-user-doc -->
228: * <!-- end-user-doc -->
229: * @see #isSetReleaseAction()
230: * @see #getReleaseAction()
231: * @see #setReleaseAction(AllSomeType)
232: * @generated
233: */
234: void unsetReleaseAction();
235:
236: /**
237: * Returns whether the value of the '{@link net.opengis.wfs.TransactionType#getReleaseAction <em>Release Action</em>}' attribute is set.
238: * <!-- begin-user-doc -->
239: * <!-- end-user-doc -->
240: * @return whether the value of the '<em>Release Action</em>' attribute is set.
241: * @see #unsetReleaseAction()
242: * @see #getReleaseAction()
243: * @see #setReleaseAction(AllSomeType)
244: * @generated
245: */
246: boolean isSetReleaseAction();
247:
248: } // TransactionType
|