001/**
002 */
003package org.nasdanika.models.gitlab.impl;
004
005import org.eclipse.emf.common.notify.NotificationChain;
006
007import org.eclipse.emf.ecore.EClass;
008import org.eclipse.emf.ecore.EObject;
009import org.eclipse.emf.ecore.InternalEObject;
010
011import org.nasdanika.models.gitlab.EObjectRepositoryFile;
012import org.nasdanika.models.gitlab.GitLabPackage;
013
014/**
015 * <!-- begin-user-doc -->
016 * An implementation of the model object '<em><b>EObject Repository File</b></em>'.
017 * <!-- end-user-doc -->
018 * <p>
019 * The following features are implemented:
020 * </p>
021 * <ul>
022 *   <li>{@link org.nasdanika.models.gitlab.impl.EObjectRepositoryFileImpl#getContent <em>Content</em>}</li>
023 * </ul>
024 *
025 * @generated
026 */
027public class EObjectRepositoryFileImpl extends RepositoryFileImpl implements EObjectRepositoryFile {
028        /**
029         * <!-- begin-user-doc -->
030         * <!-- end-user-doc -->
031         * @generated
032         */
033        protected EObjectRepositoryFileImpl() {
034                super();
035        }
036
037        /**
038         * <!-- begin-user-doc -->
039         * <!-- end-user-doc -->
040         * @generated
041         */
042        @Override
043        protected EClass eStaticClass() {
044                return GitLabPackage.Literals.EOBJECT_REPOSITORY_FILE;
045        }
046
047        /**
048         * <!-- begin-user-doc -->
049         * <!-- end-user-doc -->
050         * @generated
051         */
052        @Override
053        public EObject getContent() {
054                return (EObject)eDynamicGet(GitLabPackage.EOBJECT_REPOSITORY_FILE__CONTENT, GitLabPackage.Literals.EOBJECT_REPOSITORY_FILE__CONTENT, true, true);
055        }
056
057        /**
058         * <!-- begin-user-doc -->
059         * <!-- end-user-doc -->
060         * @generated
061         */
062        public NotificationChain basicSetContent(EObject newContent, NotificationChain msgs) {
063                msgs = eDynamicInverseAdd((InternalEObject)newContent, GitLabPackage.EOBJECT_REPOSITORY_FILE__CONTENT, msgs);
064                return msgs;
065        }
066
067        /**
068         * <!-- begin-user-doc -->
069         * <!-- end-user-doc -->
070         * @generated
071         */
072        @Override
073        public void setContent(EObject newContent) {
074                eDynamicSet(GitLabPackage.EOBJECT_REPOSITORY_FILE__CONTENT, GitLabPackage.Literals.EOBJECT_REPOSITORY_FILE__CONTENT, newContent);
075        }
076
077        /**
078         * <!-- begin-user-doc -->
079         * <!-- end-user-doc -->
080         * @generated
081         */
082        @Override
083        public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
084                switch (featureID) {
085                        case GitLabPackage.EOBJECT_REPOSITORY_FILE__CONTENT:
086                                return basicSetContent(null, msgs);
087                }
088                return super.eInverseRemove(otherEnd, featureID, msgs);
089        }
090
091        /**
092         * <!-- begin-user-doc -->
093         * <!-- end-user-doc -->
094         * @generated
095         */
096        @Override
097        public Object eGet(int featureID, boolean resolve, boolean coreType) {
098                switch (featureID) {
099                        case GitLabPackage.EOBJECT_REPOSITORY_FILE__CONTENT:
100                                return getContent();
101                }
102                return super.eGet(featureID, resolve, coreType);
103        }
104
105        /**
106         * <!-- begin-user-doc -->
107         * <!-- end-user-doc -->
108         * @generated
109         */
110        @Override
111        public void eSet(int featureID, Object newValue) {
112                switch (featureID) {
113                        case GitLabPackage.EOBJECT_REPOSITORY_FILE__CONTENT:
114                                setContent((EObject)newValue);
115                                return;
116                }
117                super.eSet(featureID, newValue);
118        }
119
120        /**
121         * <!-- begin-user-doc -->
122         * <!-- end-user-doc -->
123         * @generated
124         */
125        @Override
126        public void eUnset(int featureID) {
127                switch (featureID) {
128                        case GitLabPackage.EOBJECT_REPOSITORY_FILE__CONTENT:
129                                setContent((EObject)null);
130                                return;
131                }
132                super.eUnset(featureID);
133        }
134
135        /**
136         * <!-- begin-user-doc -->
137         * <!-- end-user-doc -->
138         * @generated
139         */
140        @Override
141        public boolean eIsSet(int featureID) {
142                switch (featureID) {
143                        case GitLabPackage.EOBJECT_REPOSITORY_FILE__CONTENT:
144                                return getContent() != null;
145                }
146                return super.eIsSet(featureID);
147        }
148
149} //EObjectRepositoryFileImpl