001    /**
002     * <copyright>
003     * </copyright>
004     *
005     * $Id$
006     */
007    package com.hammurapi.eventbus.snapshot;
008    
009    import java.util.Date;
010    
011    import org.eclipse.emf.common.util.EList;
012    
013    import org.eclipse.emf.ecore.EObject;
014    
015    /**
016     * <!-- begin-user-doc -->
017     * A representation of the model object '<em><b>Snapshot</b></em>'.
018     * <!-- end-user-doc -->
019     *
020     * <!-- begin-model-doc -->
021     * Model root.
022     * <!-- end-model-doc -->
023     *
024     * <p>
025     * The following features are supported:
026     * <ul>
027     *   <li>{@link com.hammurapi.eventbus.snapshot.Snapshot#getTimestamp <em>Timestamp</em>}</li>
028     *   <li>{@link com.hammurapi.eventbus.snapshot.Snapshot#getElements <em>Elements</em>}</li>
029     *   <li>{@link com.hammurapi.eventbus.snapshot.Snapshot#getJvmId <em>Jvm Id</em>}</li>
030     * </ul>
031     * </p>
032     *
033     * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getSnapshot()
034     * @model
035     * @generated
036     */
037    public interface Snapshot extends EObject {
038            /**
039             * Returns the value of the '<em><b>Timestamp</b></em>' attribute.
040             * <!-- begin-user-doc -->
041             * <p>
042             * If the meaning of the '<em>Timestamp</em>' attribute isn't clear,
043             * there really should be more of a description here...
044             * </p>
045             * <!-- end-user-doc -->
046             * <!-- begin-model-doc -->
047             * Time when snapshot was taken.
048             * <!-- end-model-doc -->
049             * @return the value of the '<em>Timestamp</em>' attribute.
050             * @see #setTimestamp(Date)
051             * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getSnapshot_Timestamp()
052             * @model
053             * @generated
054             */
055            Date getTimestamp();
056    
057            /**
058             * Sets the value of the '{@link com.hammurapi.eventbus.snapshot.Snapshot#getTimestamp <em>Timestamp</em>}' attribute.
059             * <!-- begin-user-doc -->
060             * <!-- end-user-doc -->
061             * @param value the new value of the '<em>Timestamp</em>' attribute.
062             * @see #getTimestamp()
063             * @generated
064             */
065            void setTimestamp(Date value);
066    
067            /**
068             * Returns the value of the '<em><b>Elements</b></em>' containment reference list.
069             * The list contents are of type {@link com.hammurapi.eventbus.snapshot.SnapshotElement}.
070             * It is bidirectional and its opposite is '{@link com.hammurapi.eventbus.snapshot.SnapshotElement#getSnapshot <em>Snapshot</em>}'.
071             * <!-- begin-user-doc -->
072             * <p>
073             * If the meaning of the '<em>Elements</em>' containment reference list isn't clear,
074             * there really should be more of a description here...
075             * </p>
076             * <!-- end-user-doc -->
077             * <!-- begin-model-doc -->
078             * Snapshot elements.
079             * <!-- end-model-doc -->
080             * @return the value of the '<em>Elements</em>' containment reference list.
081             * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getSnapshot_Elements()
082             * @see com.hammurapi.eventbus.snapshot.SnapshotElement#getSnapshot
083             * @model opposite="snapshot" containment="true"
084             * @generated
085             */
086            EList<SnapshotElement> getElements();
087    
088            /**
089             * Returns the value of the '<em><b>Jvm Id</b></em>' attribute.
090             * <!-- begin-user-doc -->
091             * <p>
092             * If the meaning of the '<em>Jvm Id</em>' attribute isn't clear,
093             * there really should be more of a description here...
094             * </p>
095             * <!-- end-user-doc -->
096             * <!-- begin-model-doc -->
097             * ID of the JVM in which snapshot was taken.
098             * <!-- end-model-doc -->
099             * @return the value of the '<em>Jvm Id</em>' attribute.
100             * @see #setJvmId(String)
101             * @see com.hammurapi.eventbus.snapshot.SnapshotPackage#getSnapshot_JvmId()
102             * @model
103             * @generated
104             */
105            String getJvmId();
106    
107            /**
108             * Sets the value of the '{@link com.hammurapi.eventbus.snapshot.Snapshot#getJvmId <em>Jvm Id</em>}' attribute.
109             * <!-- begin-user-doc -->
110             * <!-- end-user-doc -->
111             * @param value the new value of the '<em>Jvm Id</em>' attribute.
112             * @see #getJvmId()
113             * @generated
114             */
115            void setJvmId(String value);
116    
117    } // Snapshot