001    /**
002     * <copyright>
003     * </copyright>
004     *
005     * $Id$
006     */
007    package com.hammurapi.eventbus.snapshot;
008    
009    import org.eclipse.emf.ecore.EObject;
010    
011    /**
012     * <!-- begin-user-doc -->
013     * A representation of the model object '<em><b>Element</b></em>'.
014     * <!-- end-user-doc -->
015     *
016     * <!-- begin-model-doc -->
017     * Snapshot element.
018     * <!-- end-model-doc -->
019     *
020     * <p>
021     * The following features are supported:
022     * <ul>
023     *   <li>{@link com.hammurapi.eventbus.snapshot.SnapshotElement#getId <em>Id</em>}</li>
024     *   <li>{@link com.hammurapi.eventbus.snapshot.SnapshotElement#getName <em>Name</em>}</li>
025     *   <li>{@link com.hammurapi.eventbus.snapshot.SnapshotElement#getDetails <em>Details</em>}</li>
026     *   <li>{@link com.hammurapi.eventbus.snapshot.SnapshotElement#getSnapshot <em>Snapshot</em>}</li>
027     * </ul>
028     * </p>
029     *
030     * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getSnapshotElement()
031     * @model interface="true" abstract="true"
032     * @generated
033     */
034    public interface SnapshotElement extends EObject {
035            /**
036             * Returns the value of the '<em><b>Id</b></em>' attribute.
037             * <!-- begin-user-doc -->
038             * <p>
039             * If the meaning of the '<em>Id</em>' attribute isn't clear,
040             * there really should be more of a description here...
041             * </p>
042             * <!-- end-user-doc -->
043             * <!-- begin-model-doc -->
044             * Unique element ID.
045             * <!-- end-model-doc -->
046             * @return the value of the '<em>Id</em>' attribute.
047             * @see #setId(String)
048             * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getSnapshotElement_Id()
049             * @model id="true"
050             * @generated
051             */
052            String getId();
053    
054            /**
055             * Sets the value of the '{@link com.hammurapi.eventbus.snapshot.SnapshotElement#getId <em>Id</em>}' attribute.
056             * <!-- begin-user-doc -->
057             * <!-- end-user-doc -->
058             * @param value the new value of the '<em>Id</em>' attribute.
059             * @see #getId()
060             * @generated
061             */
062            void setId(String value);
063    
064            /**
065             * Returns the value of the '<em><b>Name</b></em>' attribute.
066             * <!-- begin-user-doc -->
067             * <!-- end-user-doc -->
068             * <!-- begin-model-doc -->
069             * Element name becomes a label of element node.
070             * <!-- end-model-doc -->
071             * @return the value of the '<em>Name</em>' attribute.
072             * @see #setName(String)
073             * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getSnapshotElement_Name()
074             * @model
075             * @generated
076             */
077            String getName();
078    
079            /**
080             * Sets the value of the '{@link com.hammurapi.eventbus.snapshot.SnapshotElement#getName <em>Name</em>}' attribute.
081             * <!-- begin-user-doc -->
082             * <!-- end-user-doc -->
083             * @param value the new value of the '<em>Name</em>' attribute.
084             * @see #getName()
085             * @generated
086             */
087            void setName(String value);
088    
089            /**
090             * Returns the value of the '<em><b>Details</b></em>' attribute.
091             * <!-- begin-user-doc -->
092             * <!-- end-user-doc -->
093             * <!-- begin-model-doc -->
094             * Detailed information about the element, typically value returned by toString().
095             * <!-- end-model-doc -->
096             * @return the value of the '<em>Details</em>' attribute.
097             * @see #setDetails(String)
098             * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getSnapshotElement_Details()
099             * @model
100             * @generated
101             */
102            String getDetails();
103    
104            /**
105             * Sets the value of the '{@link com.hammurapi.eventbus.snapshot.SnapshotElement#getDetails <em>Details</em>}' attribute.
106             * <!-- begin-user-doc -->
107             * <!-- end-user-doc -->
108             * @param value the new value of the '<em>Details</em>' attribute.
109             * @see #getDetails()
110             * @generated
111             */
112            void setDetails(String value);
113    
114            /**
115             * Returns the value of the '<em><b>Snapshot</b></em>' container reference.
116             * It is bidirectional and its opposite is '{@link com.hammurapi.eventbus.snapshot.Snapshot#getElements <em>Elements</em>}'.
117             * <!-- begin-user-doc -->
118             * <p>
119             * If the meaning of the '<em>Snapshot</em>' container reference isn't clear,
120             * there really should be more of a description here...
121             * </p>
122             * <!-- end-user-doc -->
123             * @return the value of the '<em>Snapshot</em>' container reference.
124             * @see #setSnapshot(Snapshot)
125             * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getSnapshotElement_Snapshot()
126             * @see com.hammurapi.eventbus.snapshot.Snapshot#getElements
127             * @model opposite="elements" transient="false"
128             * @generated
129             */
130            Snapshot getSnapshot();
131    
132            /**
133             * Sets the value of the '{@link com.hammurapi.eventbus.snapshot.SnapshotElement#getSnapshot <em>Snapshot</em>}' container reference.
134             * <!-- begin-user-doc -->
135             * <!-- end-user-doc -->
136             * @param value the new value of the '<em>Snapshot</em>' container reference.
137             * @see #getSnapshot()
138             * @generated
139             */
140            void setSnapshot(Snapshot value);
141    
142    } // SnapshotElement