001/** 002 */ 003package org.nasdanika.html.model.bootstrap.impl; 004 005import org.eclipse.emf.common.notify.NotificationChain; 006 007import org.eclipse.emf.ecore.EClass; 008import org.eclipse.emf.ecore.InternalEObject; 009 010import org.nasdanika.html.model.bootstrap.Appearance; 011import org.nasdanika.html.model.bootstrap.BootstrapElement; 012import org.nasdanika.html.model.bootstrap.BootstrapPackage; 013import org.nasdanika.html.model.bootstrap.Tag; 014 015/** 016 * <!-- begin-user-doc --> 017 * An implementation of the model object '<em><b>Tag</b></em>'. 018 * <!-- end-user-doc --> 019 * <p> 020 * The following features are implemented: 021 * </p> 022 * <ul> 023 * <li>{@link org.nasdanika.html.model.bootstrap.impl.TagImpl#getAppearance <em>Appearance</em>}</li> 024 * </ul> 025 * 026 * @generated 027 */ 028public class TagImpl extends org.nasdanika.html.model.html.impl.TagImpl implements Tag { 029 /** 030 * <!-- begin-user-doc --> 031 * <!-- end-user-doc --> 032 * @generated 033 */ 034 protected TagImpl() { 035 super(); 036 } 037 038 /** 039 * <!-- begin-user-doc --> 040 * <!-- end-user-doc --> 041 * @generated 042 */ 043 @Override 044 protected EClass eStaticClass() { 045 return BootstrapPackage.Literals.TAG; 046 } 047 048 /** 049 * <!-- begin-user-doc --> 050 * <!-- end-user-doc --> 051 * @generated 052 */ 053 @Override 054 public Appearance getAppearance() { 055 return (Appearance)eDynamicGet(BootstrapPackage.TAG__APPEARANCE, BootstrapPackage.Literals.BOOTSTRAP_ELEMENT__APPEARANCE, true, true); 056 } 057 058 /** 059 * <!-- begin-user-doc --> 060 * <!-- end-user-doc --> 061 * @generated 062 */ 063 public NotificationChain basicSetAppearance(Appearance newAppearance, NotificationChain msgs) { 064 msgs = eDynamicInverseAdd((InternalEObject)newAppearance, BootstrapPackage.TAG__APPEARANCE, msgs); 065 return msgs; 066 } 067 068 /** 069 * <!-- begin-user-doc --> 070 * <!-- end-user-doc --> 071 * @generated 072 */ 073 @Override 074 public void setAppearance(Appearance newAppearance) { 075 eDynamicSet(BootstrapPackage.TAG__APPEARANCE, BootstrapPackage.Literals.BOOTSTRAP_ELEMENT__APPEARANCE, newAppearance); 076 } 077 078 /** 079 * <!-- begin-user-doc --> 080 * <!-- end-user-doc --> 081 * @generated 082 */ 083 @Override 084 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { 085 switch (featureID) { 086 case BootstrapPackage.TAG__APPEARANCE: 087 return basicSetAppearance(null, msgs); 088 } 089 return super.eInverseRemove(otherEnd, featureID, msgs); 090 } 091 092 /** 093 * <!-- begin-user-doc --> 094 * <!-- end-user-doc --> 095 * @generated 096 */ 097 @Override 098 public Object eGet(int featureID, boolean resolve, boolean coreType) { 099 switch (featureID) { 100 case BootstrapPackage.TAG__APPEARANCE: 101 return getAppearance(); 102 } 103 return super.eGet(featureID, resolve, coreType); 104 } 105 106 /** 107 * <!-- begin-user-doc --> 108 * <!-- end-user-doc --> 109 * @generated 110 */ 111 @Override 112 public void eSet(int featureID, Object newValue) { 113 switch (featureID) { 114 case BootstrapPackage.TAG__APPEARANCE: 115 setAppearance((Appearance)newValue); 116 return; 117 } 118 super.eSet(featureID, newValue); 119 } 120 121 /** 122 * <!-- begin-user-doc --> 123 * <!-- end-user-doc --> 124 * @generated 125 */ 126 @Override 127 public void eUnset(int featureID) { 128 switch (featureID) { 129 case BootstrapPackage.TAG__APPEARANCE: 130 setAppearance((Appearance)null); 131 return; 132 } 133 super.eUnset(featureID); 134 } 135 136 /** 137 * <!-- begin-user-doc --> 138 * <!-- end-user-doc --> 139 * @generated 140 */ 141 @Override 142 public boolean eIsSet(int featureID) { 143 switch (featureID) { 144 case BootstrapPackage.TAG__APPEARANCE: 145 return getAppearance() != null; 146 } 147 return super.eIsSet(featureID); 148 } 149 150 /** 151 * <!-- begin-user-doc --> 152 * <!-- end-user-doc --> 153 * @generated 154 */ 155 @Override 156 public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { 157 if (baseClass == BootstrapElement.class) { 158 switch (derivedFeatureID) { 159 case BootstrapPackage.TAG__APPEARANCE: return BootstrapPackage.BOOTSTRAP_ELEMENT__APPEARANCE; 160 default: return -1; 161 } 162 } 163 return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); 164 } 165 166 /** 167 * <!-- begin-user-doc --> 168 * <!-- end-user-doc --> 169 * @generated 170 */ 171 @Override 172 public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { 173 if (baseClass == BootstrapElement.class) { 174 switch (baseFeatureID) { 175 case BootstrapPackage.BOOTSTRAP_ELEMENT__APPEARANCE: return BootstrapPackage.TAG__APPEARANCE; 176 default: return -1; 177 } 178 } 179 return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); 180 } 181 182} //TagImpl