View Javadoc

1   /**
2    * <copyright>
3    * </copyright>
4    *
5    * $Id$
6    */
7   package org.mod4j.dsl.service.mm.ServiceDsl.impl;
8   
9   import org.eclipse.emf.common.notify.Notification;
10  
11  import org.eclipse.emf.ecore.EClass;
12  import org.eclipse.emf.ecore.InternalEObject;
13  
14  import org.eclipse.emf.ecore.impl.ENotificationImpl;
15  
16  import org.mod4j.dsl.service.mm.ServiceDsl.DtoReference;
17  import org.mod4j.dsl.service.mm.ServiceDsl.ServiceDslPackage;
18  import org.mod4j.dsl.service.mm.ServiceDsl.SpecialMethod;
19  
20  /**
21   * <!-- begin-user-doc -->
22   * An implementation of the model object '<em><b>Special Method</b></em>'.
23   * <!-- end-user-doc -->
24   * <p>
25   * The following features are implemented:
26   * <ul>
27   *   <li>{@link org.mod4j.dsl.service.mm.ServiceDsl.impl.SpecialMethodImpl#getDto <em>Dto</em>}</li>
28   * </ul>
29   * </p>
30   *
31   * @generated
32   */
33  public class SpecialMethodImpl extends ServiceMethodImpl implements SpecialMethod {
34      /**
35       * The cached value of the '{@link #getDto() <em>Dto</em>}' reference.
36       * <!-- begin-user-doc -->
37       * <!-- end-user-doc -->
38       * @see #getDto()
39       * @generated
40       * @ordered
41       */
42      protected DtoReference dto;
43  
44      /**
45       * <!-- begin-user-doc -->
46       * <!-- end-user-doc -->
47       * @generated
48       */
49      protected SpecialMethodImpl() {
50          super();
51      }
52  
53      /**
54       * <!-- begin-user-doc -->
55       * <!-- end-user-doc -->
56       * @generated
57       */
58      @Override
59      protected EClass eStaticClass() {
60          return ServiceDslPackage.Literals.SPECIAL_METHOD;
61      }
62  
63      /**
64       * <!-- begin-user-doc -->
65       * <!-- end-user-doc -->
66       * @generated
67       */
68      public DtoReference getDto() {
69          if (dto != null && dto.eIsProxy()) {
70              InternalEObject oldDto = (InternalEObject)dto;
71              dto = (DtoReference)eResolveProxy(oldDto);
72              if (dto != oldDto) {
73                  if (eNotificationRequired())
74                      eNotify(new ENotificationImpl(this, Notification.RESOLVE, ServiceDslPackage.SPECIAL_METHOD__DTO, oldDto, dto));
75              }
76          }
77          return dto;
78      }
79  
80      /**
81       * <!-- begin-user-doc -->
82       * <!-- end-user-doc -->
83       * @generated
84       */
85      public DtoReference basicGetDto() {
86          return dto;
87      }
88  
89      /**
90       * <!-- begin-user-doc -->
91       * <!-- end-user-doc -->
92       * @generated
93       */
94      public void setDto(DtoReference newDto) {
95          DtoReference oldDto = dto;
96          dto = newDto;
97          if (eNotificationRequired())
98              eNotify(new ENotificationImpl(this, Notification.SET, ServiceDslPackage.SPECIAL_METHOD__DTO, oldDto, dto));
99      }
100 
101     /**
102      * <!-- begin-user-doc -->
103      * <!-- end-user-doc -->
104      * @generated
105      */
106     @Override
107     public Object eGet(int featureID, boolean resolve, boolean coreType) {
108         switch (featureID) {
109             case ServiceDslPackage.SPECIAL_METHOD__DTO:
110                 if (resolve) return getDto();
111                 return basicGetDto();
112         }
113         return super.eGet(featureID, resolve, coreType);
114     }
115 
116     /**
117      * <!-- begin-user-doc -->
118      * <!-- end-user-doc -->
119      * @generated
120      */
121     @Override
122     public void eSet(int featureID, Object newValue) {
123         switch (featureID) {
124             case ServiceDslPackage.SPECIAL_METHOD__DTO:
125                 setDto((DtoReference)newValue);
126                 return;
127         }
128         super.eSet(featureID, newValue);
129     }
130 
131     /**
132      * <!-- begin-user-doc -->
133      * <!-- end-user-doc -->
134      * @generated
135      */
136     @Override
137     public void eUnset(int featureID) {
138         switch (featureID) {
139             case ServiceDslPackage.SPECIAL_METHOD__DTO:
140                 setDto((DtoReference)null);
141                 return;
142         }
143         super.eUnset(featureID);
144     }
145 
146     /**
147      * <!-- begin-user-doc -->
148      * <!-- end-user-doc -->
149      * @generated
150      */
151     @Override
152     public boolean eIsSet(int featureID) {
153         switch (featureID) {
154             case ServiceDslPackage.SPECIAL_METHOD__DTO:
155                 return dto != null;
156         }
157         return super.eIsSet(featureID);
158     }
159 
160 } //SpecialMethodImpl