001 /**
002 * <copyright>
003 * </copyright>
004 *
005 * $Id$
006 */
007 package com.hammurapi.eventbus.snapshot;
008
009 import org.eclipse.emf.common.util.EList;
010
011 /**
012 * <!-- begin-user-doc -->
013 * A representation of the model object '<em><b>Extractor</b></em>'.
014 * <!-- end-user-doc -->
015 *
016 * <!-- begin-model-doc -->
017 * Predicate.
018 * <!-- end-model-doc -->
019 *
020 * <p>
021 * The following features are supported:
022 * <ul>
023 * <li>{@link com.hammurapi.eventbus.snapshot.Extractor#getRole <em>Role</em>}</li>
024 * <li>{@link com.hammurapi.eventbus.snapshot.Extractor#getParts <em>Parts</em>}</li>
025 * <li>{@link com.hammurapi.eventbus.snapshot.Extractor#getParameterIndices <em>Parameter Indices</em>}</li>
026 * <li>{@link com.hammurapi.eventbus.snapshot.Extractor#getCost <em>Cost</em>}</li>
027 * </ul>
028 * </p>
029 *
030 * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getExtractor()
031 * @model
032 * @generated
033 */
034 public interface Extractor extends SnapshotElement {
035 /**
036 * Returns the value of the '<em><b>Role</b></em>' attribute.
037 * <!-- begin-user-doc -->
038 * <!-- end-user-doc -->
039 * <!-- begin-model-doc -->
040 * For composite/facade predicates role is the role of child in the parent.
041 * <!-- end-model-doc -->
042 * @return the value of the '<em>Role</em>' attribute.
043 * @see #setRole(String)
044 * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getExtractor_Role()
045 * @model
046 * @generated
047 */
048 String getRole();
049
050 /**
051 * Sets the value of the '{@link com.hammurapi.eventbus.snapshot.Extractor#getRole <em>Role</em>}' attribute.
052 * <!-- begin-user-doc -->
053 * <!-- end-user-doc -->
054 * @param value the new value of the '<em>Role</em>' attribute.
055 * @see #getRole()
056 * @generated
057 */
058 void setRole(String value);
059
060 /**
061 * Returns the value of the '<em><b>Parts</b></em>' containment reference list.
062 * The list contents are of type {@link com.hammurapi.eventbus.snapshot.Extractor}.
063 * <!-- begin-user-doc -->
064 * <!-- end-user-doc -->
065 * <!-- begin-model-doc -->
066 * Predicate parts (for composite/comparison/complex predicates).
067 * <!-- end-model-doc -->
068 * @return the value of the '<em>Parts</em>' containment reference list.
069 * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getExtractor_Parts()
070 * @model containment="true"
071 * @generated
072 */
073 EList<Extractor> getParts();
074
075 /**
076 * Returns the value of the '<em><b>Parameter Indices</b></em>' attribute list.
077 * The list contents are of type {@link java.lang.Integer}.
078 * <!-- begin-user-doc -->
079 * <p>
080 * If the meaning of the '<em>Parameter Indices</em>' attribute list isn't clear,
081 * there really should be more of a description here...
082 * </p>
083 * <!-- end-user-doc -->
084 * @return the value of the '<em>Parameter Indices</em>' attribute list.
085 * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getExtractor_ParameterIndices()
086 * @model
087 * @generated
088 */
089 EList<Integer> getParameterIndices();
090
091 /**
092 * Returns the value of the '<em><b>Cost</b></em>' attribute.
093 * <!-- begin-user-doc -->
094 * <p>
095 * If the meaning of the '<em>Cost</em>' attribute isn't clear,
096 * there really should be more of a description here...
097 * </p>
098 * <!-- end-user-doc -->
099 * @return the value of the '<em>Cost</em>' attribute.
100 * @see #setCost(Double)
101 * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getExtractor_Cost()
102 * @model
103 * @generated
104 */
105 Double getCost();
106
107 /**
108 * Sets the value of the '{@link com.hammurapi.eventbus.snapshot.Extractor#getCost <em>Cost</em>}' attribute.
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @param value the new value of the '<em>Cost</em>' attribute.
112 * @see #getCost()
113 * @generated
114 */
115 void setCost(Double value);
116
117 } // Extractor