blob: b12c43f0345364765b8b2bfe0d97a1d9c6d85df3 [file] [log] [blame]
/**
* <copyright>
* </copyright>
*
* $Id: FaceletTaglibFunctionImpl.java,v 1.1 2010/03/18 06:24:38 cbateman Exp $
*/
package org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.faceletTaglib.impl;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.faceletTaglib.FaceletTaglibFunction;
import org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.faceletTaglib.FaceletTaglibPackage;
import org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.faceletTaglib.FullyQualifiedClass;
import org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.faceletTaglib.IdentifiableStringValue;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Facelet Taglib Function</b></em>'.
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
* <ul>
* <li>{@link org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.faceletTaglib.impl.FaceletTaglibFunctionImpl#getFunctionName <em>Function Name</em>}</li>
* <li>{@link org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.faceletTaglib.impl.FaceletTaglibFunctionImpl#getFunctionClass <em>Function Class</em>}</li>
* <li>{@link org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.faceletTaglib.impl.FaceletTaglibFunctionImpl#getFunctionSignature <em>Function Signature</em>}</li>
* </ul>
* </p>
*
* @generated
*/
public class FaceletTaglibFunctionImpl extends UserVisibleTaglibObjectImpl implements FaceletTaglibFunction
{
/**
* The cached value of the '{@link #getFunctionName() <em>Function Name</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getFunctionName()
* @generated
* @ordered
*/
protected IdentifiableStringValue functionName;
/**
* The cached value of the '{@link #getFunctionClass() <em>Function Class</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getFunctionClass()
* @generated
* @ordered
*/
protected FullyQualifiedClass functionClass;
/**
* The cached value of the '{@link #getFunctionSignature() <em>Function Signature</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getFunctionSignature()
* @generated
* @ordered
*/
protected IdentifiableStringValue functionSignature;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected FaceletTaglibFunctionImpl()
{
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass()
{
return FaceletTaglibPackage.Literals.FACELET_TAGLIB_FUNCTION;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public IdentifiableStringValue getFunctionName()
{
return functionName;
}
/**
* <!-- begin-user-doc -->
* @param newFunctionName
* @param msgs
* @return the notification chain
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetFunctionName(IdentifiableStringValue newFunctionName, NotificationChain msgs)
{
IdentifiableStringValue oldFunctionName = functionName;
functionName = newFunctionName;
if (eNotificationRequired())
{
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_NAME, oldFunctionName, newFunctionName);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setFunctionName(IdentifiableStringValue newFunctionName)
{
if (newFunctionName != functionName)
{
NotificationChain msgs = null;
if (functionName != null)
msgs = ((InternalEObject)functionName).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_NAME, null, msgs);
if (newFunctionName != null)
msgs = ((InternalEObject)newFunctionName).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_NAME, null, msgs);
msgs = basicSetFunctionName(newFunctionName, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_NAME, newFunctionName, newFunctionName));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public FullyQualifiedClass getFunctionClass()
{
return functionClass;
}
/**
* <!-- begin-user-doc -->
* @param newFunctionClass
* @param msgs
* @return the notification chain.
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetFunctionClass(FullyQualifiedClass newFunctionClass, NotificationChain msgs)
{
FullyQualifiedClass oldFunctionClass = functionClass;
functionClass = newFunctionClass;
if (eNotificationRequired())
{
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_CLASS, oldFunctionClass, newFunctionClass);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setFunctionClass(FullyQualifiedClass newFunctionClass)
{
if (newFunctionClass != functionClass)
{
NotificationChain msgs = null;
if (functionClass != null)
msgs = ((InternalEObject)functionClass).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_CLASS, null, msgs);
if (newFunctionClass != null)
msgs = ((InternalEObject)newFunctionClass).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_CLASS, null, msgs);
msgs = basicSetFunctionClass(newFunctionClass, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_CLASS, newFunctionClass, newFunctionClass));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public IdentifiableStringValue getFunctionSignature()
{
return functionSignature;
}
/**
* <!-- begin-user-doc -->
* @param newFunctionSignature
* @param msgs
* @return the notification chain.
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetFunctionSignature(IdentifiableStringValue newFunctionSignature, NotificationChain msgs)
{
IdentifiableStringValue oldFunctionSignature = functionSignature;
functionSignature = newFunctionSignature;
if (eNotificationRequired())
{
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_SIGNATURE, oldFunctionSignature, newFunctionSignature);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setFunctionSignature(IdentifiableStringValue newFunctionSignature)
{
if (newFunctionSignature != functionSignature)
{
NotificationChain msgs = null;
if (functionSignature != null)
msgs = ((InternalEObject)functionSignature).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_SIGNATURE, null, msgs);
if (newFunctionSignature != null)
msgs = ((InternalEObject)newFunctionSignature).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_SIGNATURE, null, msgs);
msgs = basicSetFunctionSignature(newFunctionSignature, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_SIGNATURE, newFunctionSignature, newFunctionSignature));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
{
switch (featureID)
{
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_NAME:
return basicSetFunctionName(null, msgs);
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_CLASS:
return basicSetFunctionClass(null, msgs);
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_SIGNATURE:
return basicSetFunctionSignature(null, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType)
{
switch (featureID)
{
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_NAME:
return getFunctionName();
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_CLASS:
return getFunctionClass();
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_SIGNATURE:
return getFunctionSignature();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue)
{
switch (featureID)
{
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_NAME:
setFunctionName((IdentifiableStringValue)newValue);
return;
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_CLASS:
setFunctionClass((FullyQualifiedClass)newValue);
return;
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_SIGNATURE:
setFunctionSignature((IdentifiableStringValue)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID)
{
switch (featureID)
{
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_NAME:
setFunctionName((IdentifiableStringValue)null);
return;
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_CLASS:
setFunctionClass((FullyQualifiedClass)null);
return;
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_SIGNATURE:
setFunctionSignature((IdentifiableStringValue)null);
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID)
{
switch (featureID)
{
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_NAME:
return functionName != null;
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_CLASS:
return functionClass != null;
case FaceletTaglibPackage.FACELET_TAGLIB_FUNCTION__FUNCTION_SIGNATURE:
return functionSignature != null;
}
return super.eIsSet(featureID);
}
} //FaceletTaglibFunctionImpl