001/** 002 */ 003package org.nasdanika.rag.model.impl; 004 005import java.util.Collection; 006 007import org.eclipse.emf.common.notify.NotificationChain; 008 009import org.eclipse.emf.common.util.EList; 010 011import org.eclipse.emf.ecore.EClass; 012import org.eclipse.emf.ecore.InternalEObject; 013 014import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; 015 016import org.eclipse.emf.ecore.util.InternalEList; 017 018import org.nasdanika.rag.model.DoubleVectorStringItem; 019import org.nasdanika.rag.model.DoubleVectorStringStore; 020import org.nasdanika.rag.model.RagPackage; 021 022/** 023 * <!-- begin-user-doc --> 024 * An implementation of the model object '<em><b>Double Vector String Store</b></em>'. 025 * <!-- end-user-doc --> 026 * <p> 027 * The following features are implemented: 028 * </p> 029 * <ul> 030 * <li>{@link org.nasdanika.rag.model.impl.DoubleVectorStringStoreImpl#getItems <em>Items</em>}</li> 031 * </ul> 032 * 033 * @generated 034 */ 035public class DoubleVectorStringStoreImpl extends MinimalEObjectImpl.Container implements DoubleVectorStringStore { 036 /** 037 * <!-- begin-user-doc --> 038 * <!-- end-user-doc --> 039 * @generated 040 */ 041 protected DoubleVectorStringStoreImpl() { 042 super(); 043 } 044 045 /** 046 * <!-- begin-user-doc --> 047 * <!-- end-user-doc --> 048 * @generated 049 */ 050 @Override 051 protected EClass eStaticClass() { 052 return RagPackage.Literals.DOUBLE_VECTOR_STRING_STORE; 053 } 054 055 /** 056 * <!-- begin-user-doc --> 057 * <!-- end-user-doc --> 058 * @generated 059 */ 060 @Override 061 protected int eStaticFeatureCount() { 062 return 0; 063 } 064 065 /** 066 * <!-- begin-user-doc --> 067 * <!-- end-user-doc --> 068 * @generated 069 */ 070 @SuppressWarnings("unchecked") 071 @Override 072 public EList<DoubleVectorStringItem> getItems() { 073 return (EList<DoubleVectorStringItem>)eDynamicGet(RagPackage.DOUBLE_VECTOR_STRING_STORE__ITEMS, RagPackage.Literals.DOUBLE_VECTOR_STRING_STORE__ITEMS, true, true); 074 } 075 076 /** 077 * <!-- begin-user-doc --> 078 * <!-- end-user-doc --> 079 * @generated 080 */ 081 @Override 082 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { 083 switch (featureID) { 084 case RagPackage.DOUBLE_VECTOR_STRING_STORE__ITEMS: 085 return ((InternalEList<?>)getItems()).basicRemove(otherEnd, msgs); 086 } 087 return super.eInverseRemove(otherEnd, featureID, msgs); 088 } 089 090 /** 091 * <!-- begin-user-doc --> 092 * <!-- end-user-doc --> 093 * @generated 094 */ 095 @Override 096 public Object eGet(int featureID, boolean resolve, boolean coreType) { 097 switch (featureID) { 098 case RagPackage.DOUBLE_VECTOR_STRING_STORE__ITEMS: 099 return getItems(); 100 } 101 return super.eGet(featureID, resolve, coreType); 102 } 103 104 /** 105 * <!-- begin-user-doc --> 106 * <!-- end-user-doc --> 107 * @generated 108 */ 109 @SuppressWarnings("unchecked") 110 @Override 111 public void eSet(int featureID, Object newValue) { 112 switch (featureID) { 113 case RagPackage.DOUBLE_VECTOR_STRING_STORE__ITEMS: 114 getItems().clear(); 115 getItems().addAll((Collection<? extends DoubleVectorStringItem>)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 RagPackage.DOUBLE_VECTOR_STRING_STORE__ITEMS: 130 getItems().clear(); 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 RagPackage.DOUBLE_VECTOR_STRING_STORE__ITEMS: 145 return !getItems().isEmpty(); 146 } 147 return super.eIsSet(featureID); 148 } 149 150} //DoubleVectorStringStoreImpl