001    /**
002     * <copyright>
003     * </copyright>
004     *
005     * $Id$
006     */
007    package com.hammurapi.eventbus.snapshot;
008    
009    import org.eclipse.emf.ecore.EFactory;
010    
011    /**
012     * <!-- begin-user-doc -->
013     * The <b>Factory</b> for the model.
014     * It provides a create method for each non-abstract class of the model.
015     * <!-- end-user-doc -->
016     * @see com.hammurapi.eventbus.snapshot.SnapshotPackage
017     * @generated
018     */
019    public interface SnapshotFactory extends EFactory {
020            /**
021             * The singleton instance of the factory.
022             * <!-- begin-user-doc -->
023             * <!-- end-user-doc -->
024             * @generated
025             */
026            SnapshotFactory eINSTANCE = com.hammurapi.eventbus.snapshot.impl.SnapshotFactoryImpl.init();
027    
028            /**
029             * Returns a new object of class '<em>Snapshot</em>'.
030             * <!-- begin-user-doc -->
031             * <!-- end-user-doc -->
032             * @return a new object of class '<em>Snapshot</em>'.
033             * @generated
034             */
035            Snapshot createSnapshot();
036    
037            /**
038             * Returns a new object of class '<em>Handler</em>'.
039             * <!-- begin-user-doc -->
040             * <!-- end-user-doc -->
041             * @return a new object of class '<em>Handler</em>'.
042             * @generated
043             */
044            Handler createHandler();
045    
046            /**
047             * Returns a new object of class '<em>Derivation</em>'.
048             * <!-- begin-user-doc -->
049             * <!-- end-user-doc -->
050             * @return a new object of class '<em>Derivation</em>'.
051             * @generated
052             */
053            Derivation createDerivation();
054    
055            /**
056             * Returns a new object of class '<em>Event</em>'.
057             * <!-- begin-user-doc -->
058             * <!-- end-user-doc -->
059             * @return a new object of class '<em>Event</em>'.
060             * @generated
061             */
062            Event createEvent();
063    
064            /**
065             * Returns a new object of class '<em>Predicate Node</em>'.
066             * <!-- begin-user-doc -->
067             * <!-- end-user-doc -->
068             * @return a new object of class '<em>Predicate Node</em>'.
069             * @generated
070             */
071            PredicateNode createPredicateNode();
072    
073            /**
074             * Returns a new object of class '<em>Join Input</em>'.
075             * <!-- begin-user-doc -->
076             * <!-- end-user-doc -->
077             * @return a new object of class '<em>Join Input</em>'.
078             * @generated
079             */
080            JoinInput createJoinInput();
081    
082            /**
083             * Returns a new object of class '<em>Join Node</em>'.
084             * <!-- begin-user-doc -->
085             * <!-- end-user-doc -->
086             * @return a new object of class '<em>Join Node</em>'.
087             * @generated
088             */
089            JoinNode createJoinNode();
090    
091            /**
092             * Returns a new object of class '<em>Join Input Collector</em>'.
093             * <!-- begin-user-doc -->
094             * <!-- end-user-doc -->
095             * @return a new object of class '<em>Join Input Collector</em>'.
096             * @generated
097             */
098            JoinInputCollector createJoinInputCollector();
099    
100            /**
101             * Returns a new object of class '<em>Join Entry</em>'.
102             * <!-- begin-user-doc -->
103             * <!-- end-user-doc -->
104             * @return a new object of class '<em>Join Entry</em>'.
105             * @generated
106             */
107            JoinEntry createJoinEntry();
108    
109            /**
110             * Returns a new object of class '<em>Extractor</em>'.
111             * <!-- begin-user-doc -->
112             * <!-- end-user-doc -->
113             * @return a new object of class '<em>Extractor</em>'.
114             * @generated
115             */
116            Extractor createExtractor();
117    
118            /**
119             * Returns a new object of class '<em>Predicate</em>'.
120             * <!-- begin-user-doc -->
121             * <!-- end-user-doc -->
122             * @return a new object of class '<em>Predicate</em>'.
123             * @generated
124             */
125            Predicate createPredicate();
126    
127            /**
128             * Returns a new object of class '<em>Composite Event</em>'.
129             * <!-- begin-user-doc -->
130             * <!-- end-user-doc -->
131             * @return a new object of class '<em>Composite Event</em>'.
132             * @generated
133             */
134            CompositeEvent createCompositeEvent();
135    
136            /**
137             * Returns the package supported by this factory.
138             * <!-- begin-user-doc -->
139             * <!-- end-user-doc -->
140             * @return the package supported by this factory.
141             * @generated
142             */
143            SnapshotPackage getSnapshotPackage();
144    
145    } //SnapshotFactory