001 /** 002 * <copyright> 003 * </copyright> 004 * 005 * $Id$ 006 */ 007 package com.hammurapi.review.impl; 008 009 import com.hammurapi.config.Named; 010 import com.hammurapi.config.Factory; 011 012 import com.hammurapi.review.ArtifactType; 013 import com.hammurapi.review.ReviewPackage; 014 015 import java.util.Collection; 016 017 import org.eclipse.emf.common.util.EList; 018 019 import org.eclipse.emf.ecore.EClass; 020 021 import org.eclipse.emf.ecore.util.EObjectResolvingEList; 022 023 /** 024 * <!-- begin-user-doc --> 025 * An implementation of the model object '<em><b>Artifact Type</b></em>'. 026 * <!-- end-user-doc --> 027 * <p> 028 * The following features are implemented: 029 * <ul> 030 * <li>{@link com.hammurapi.review.impl.ArtifactTypeImpl#getLanguageModules <em>Language Modules</em>}</li> 031 * </ul> 032 * </p> 033 * 034 * @generated 035 */ 036 public class ArtifactTypeImpl extends InspectorCategoryImpl implements ArtifactType { 037 /** 038 * The cached value of the '{@link #getLanguageModules() <em>Language Modules</em>}' reference list. 039 * <!-- begin-user-doc --> 040 * <!-- end-user-doc --> 041 * @see #getLanguageModules() 042 * @generated 043 * @ordered 044 */ 045 protected EList<Named> languageModules; 046 047 /** 048 * <!-- begin-user-doc --> 049 * <!-- end-user-doc --> 050 * @generated 051 */ 052 protected ArtifactTypeImpl() { 053 super(); 054 } 055 056 /** 057 * <!-- begin-user-doc --> 058 * <!-- end-user-doc --> 059 * @generated 060 */ 061 @Override 062 protected EClass eStaticClass() { 063 return ReviewPackage.Literals.ARTIFACT_TYPE; 064 } 065 066 /** 067 * <!-- begin-user-doc --> 068 * <!-- end-user-doc --> 069 * @generated 070 */ 071 public EList<Named> getLanguageModules() { 072 if (languageModules == null) { 073 languageModules = new EObjectResolvingEList<Named>(Named.class, this, ReviewPackage.ARTIFACT_TYPE__LANGUAGE_MODULES); 074 } 075 return languageModules; 076 } 077 078 /** 079 * <!-- begin-user-doc --> 080 * <!-- end-user-doc --> 081 * @generated 082 */ 083 @Override 084 public Object eGet(int featureID, boolean resolve, boolean coreType) { 085 switch (featureID) { 086 case ReviewPackage.ARTIFACT_TYPE__LANGUAGE_MODULES: 087 return getLanguageModules(); 088 } 089 return super.eGet(featureID, resolve, coreType); 090 } 091 092 /** 093 * <!-- begin-user-doc --> 094 * <!-- end-user-doc --> 095 * @generated 096 */ 097 @SuppressWarnings("unchecked") 098 @Override 099 public void eSet(int featureID, Object newValue) { 100 switch (featureID) { 101 case ReviewPackage.ARTIFACT_TYPE__LANGUAGE_MODULES: 102 getLanguageModules().clear(); 103 getLanguageModules().addAll((Collection<? extends Named>)newValue); 104 return; 105 } 106 super.eSet(featureID, newValue); 107 } 108 109 /** 110 * <!-- begin-user-doc --> 111 * <!-- end-user-doc --> 112 * @generated 113 */ 114 @Override 115 public void eUnset(int featureID) { 116 switch (featureID) { 117 case ReviewPackage.ARTIFACT_TYPE__LANGUAGE_MODULES: 118 getLanguageModules().clear(); 119 return; 120 } 121 super.eUnset(featureID); 122 } 123 124 /** 125 * <!-- begin-user-doc --> 126 * <!-- end-user-doc --> 127 * @generated 128 */ 129 @Override 130 public boolean eIsSet(int featureID) { 131 switch (featureID) { 132 case ReviewPackage.ARTIFACT_TYPE__LANGUAGE_MODULES: 133 return languageModules != null && !languageModules.isEmpty(); 134 } 135 return super.eIsSet(featureID); 136 } 137 138 } //ArtifactTypeImpl