/** * <copyright> * </copyright> * * $Id$ */ package org.eclipse.bpel.fnmeta.model.impl; import java.util.Collection; import org.eclipse.bpel.fnmeta.model.Argument; import org.eclipse.bpel.fnmeta.model.FMPackage; import org.eclipse.bpel.fnmeta.model.Function; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.util.EObjectResolvingEList; /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>Function</b></em>'. * <!-- end-user-doc --> * <p> * The following features are implemented: * <ul> * <li>{@link org.eclipse.bpel.fnmeta.model.impl.FunctionImpl#getName <em>Name</em>}</li> * <li>{@link org.eclipse.bpel.fnmeta.model.impl.FunctionImpl#getNamespace <em>Namespace</em>}</li> * <li>{@link org.eclipse.bpel.fnmeta.model.impl.FunctionImpl#getReturnType <em>Return Type</em>}</li> * <li>{@link org.eclipse.bpel.fnmeta.model.impl.FunctionImpl#getArguments <em>Arguments</em>}</li> * <li>{@link org.eclipse.bpel.fnmeta.model.impl.FunctionImpl#getComment <em>Comment</em>}</li> * <li>{@link org.eclipse.bpel.fnmeta.model.impl.FunctionImpl#getHelp <em>Help</em>}</li> * <li>{@link org.eclipse.bpel.fnmeta.model.impl.FunctionImpl#getPrefix <em>Prefix</em>}</li> * <li>{@link org.eclipse.bpel.fnmeta.model.impl.FunctionImpl#getIsDeprecated <em>Is Deprecated</em>}</li> * <li>{@link org.eclipse.bpel.fnmeta.model.impl.FunctionImpl#getDeprecateComment <em>Deprecate Comment</em>}</li> * <li>{@link org.eclipse.bpel.fnmeta.model.impl.FunctionImpl#getClassName <em>Class Name</em>}</li> * </ul> * </p> * * @generated */ public class FunctionImpl extends FacadeElementImpl implements Function { /** * The default value of the '{@link #getName() <em>Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getName() * @generated * @ordered */ protected static final String NAME_EDEFAULT = null; /** * The cached value of the '{@link #getName() <em>Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getName() * @generated * @ordered */ protected String name = NAME_EDEFAULT; /** * The default value of the '{@link #getNamespace() <em>Namespace</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getNamespace() * @generated * @ordered */ protected static final String NAMESPACE_EDEFAULT = "urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"; /** * The cached value of the '{@link #getNamespace() <em>Namespace</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getNamespace() * @generated * @ordered */ protected String namespace = NAMESPACE_EDEFAULT; /** * The default value of the '{@link #getReturnType() <em>Return Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getReturnType() * @generated * @ordered */ protected static final String RETURN_TYPE_EDEFAULT = null; /** * The cached value of the '{@link #getReturnType() <em>Return Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getReturnType() * @generated * @ordered */ protected String returnType = RETURN_TYPE_EDEFAULT; /** * The cached value of the '{@link #getArguments() <em>Arguments</em>}' reference list. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getArguments() * @generated * @ordered */ protected EList<Argument> arguments; /** * The default value of the '{@link #getComment() <em>Comment</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getComment() * @generated * @ordered */ protected static final String COMMENT_EDEFAULT = null; /** * The cached value of the '{@link #getComment() <em>Comment</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getComment() * @generated * @ordered */ protected String comment = COMMENT_EDEFAULT; /** * The default value of the '{@link #getHelp() <em>Help</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getHelp() * @generated * @ordered */ protected static final String HELP_EDEFAULT = null; /** * The cached value of the '{@link #getHelp() <em>Help</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getHelp() * @generated * @ordered */ protected String help = HELP_EDEFAULT; /** * The default value of the '{@link #getPrefix() <em>Prefix</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getPrefix() * @generated * @ordered */ protected static final String PREFIX_EDEFAULT = null; /** * The cached value of the '{@link #getPrefix() <em>Prefix</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getPrefix() * @generated * @ordered */ protected String prefix = PREFIX_EDEFAULT; /** * The default value of the '{@link #getIsDeprecated() <em>Is Deprecated</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getIsDeprecated() * @generated * @ordered */ protected static final Boolean IS_DEPRECATED_EDEFAULT = Boolean.FALSE; /** * The cached value of the '{@link #getIsDeprecated() <em>Is Deprecated</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getIsDeprecated() * @generated * @ordered */ protected Boolean isDeprecated = IS_DEPRECATED_EDEFAULT; /** * The default value of the '{@link #getDeprecateComment() <em>Deprecate Comment</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getDeprecateComment() * @generated * @ordered */ protected static final String DEPRECATE_COMMENT_EDEFAULT = null; /** * The cached value of the '{@link #getDeprecateComment() <em>Deprecate Comment</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getDeprecateComment() * @generated * @ordered */ protected String deprecateComment = DEPRECATE_COMMENT_EDEFAULT; /** * The default value of the '{@link #getClassName() <em>Class Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getClassName() * @generated * @ordered */ protected static final String CLASS_NAME_EDEFAULT = ""; /** * The cached value of the '{@link #getClassName() <em>Class Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getClassName() * @generated * @ordered */ protected String className = CLASS_NAME_EDEFAULT; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected FunctionImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override protected EClass eStaticClass() { return FMPackage.Literals.FUNCTION; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getName() { return name; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setName(String newName) { String oldName = name; name = newName; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, FMPackage.FUNCTION__NAME, oldName, name)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getNamespace() { return namespace; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setNamespace(String newNamespace) { String oldNamespace = namespace; namespace = newNamespace; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, FMPackage.FUNCTION__NAMESPACE, oldNamespace, namespace)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getReturnType() { return returnType; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setReturnType(String newReturnType) { String oldReturnType = returnType; returnType = newReturnType; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, FMPackage.FUNCTION__RETURN_TYPE, oldReturnType, returnType)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EList<Argument> getArguments() { if (arguments == null) { arguments = new EObjectResolvingEList<Argument>(Argument.class, this, FMPackage.FUNCTION__ARGUMENTS); } return arguments; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getComment() { return comment; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setComment(String newComment) { String oldComment = comment; comment = newComment; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, FMPackage.FUNCTION__COMMENT, oldComment, comment)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getHelp() { return help; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setHelp(String newHelp) { String oldHelp = help; help = newHelp; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, FMPackage.FUNCTION__HELP, oldHelp, help)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getPrefix() { return prefix; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setPrefix(String newPrefix) { String oldPrefix = prefix; prefix = newPrefix; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, FMPackage.FUNCTION__PREFIX, oldPrefix, prefix)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public Boolean getIsDeprecated() { return isDeprecated; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setIsDeprecated(Boolean newIsDeprecated) { Boolean oldIsDeprecated = isDeprecated; isDeprecated = newIsDeprecated; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, FMPackage.FUNCTION__IS_DEPRECATED, oldIsDeprecated, isDeprecated)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getDeprecateComment() { return deprecateComment; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setDeprecateComment(String newDeprecateComment) { String oldDeprecateComment = deprecateComment; deprecateComment = newDeprecateComment; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, FMPackage.FUNCTION__DEPRECATE_COMMENT, oldDeprecateComment, deprecateComment)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String getClassName() { return className; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setClassName(String newClassName) { String oldClassName = className; className = newClassName; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, FMPackage.FUNCTION__CLASS_NAME, oldClassName, className)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { case FMPackage.FUNCTION__NAME: return getName(); case FMPackage.FUNCTION__NAMESPACE: return getNamespace(); case FMPackage.FUNCTION__RETURN_TYPE: return getReturnType(); case FMPackage.FUNCTION__ARGUMENTS: return getArguments(); case FMPackage.FUNCTION__COMMENT: return getComment(); case FMPackage.FUNCTION__HELP: return getHelp(); case FMPackage.FUNCTION__PREFIX: return getPrefix(); case FMPackage.FUNCTION__IS_DEPRECATED: return getIsDeprecated(); case FMPackage.FUNCTION__DEPRECATE_COMMENT: return getDeprecateComment(); case FMPackage.FUNCTION__CLASS_NAME: return getClassName(); } 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 FMPackage.FUNCTION__NAME: setName((String)newValue); return; case FMPackage.FUNCTION__NAMESPACE: setNamespace((String)newValue); return; case FMPackage.FUNCTION__RETURN_TYPE: setReturnType((String)newValue); return; case FMPackage.FUNCTION__ARGUMENTS: getArguments().clear(); getArguments().addAll((Collection<? extends Argument>)newValue); return; case FMPackage.FUNCTION__COMMENT: setComment((String)newValue); return; case FMPackage.FUNCTION__HELP: setHelp((String)newValue); return; case FMPackage.FUNCTION__PREFIX: setPrefix((String)newValue); return; case FMPackage.FUNCTION__IS_DEPRECATED: setIsDeprecated((Boolean)newValue); return; case FMPackage.FUNCTION__DEPRECATE_COMMENT: setDeprecateComment((String)newValue); return; case FMPackage.FUNCTION__CLASS_NAME: setClassName((String)newValue); return; } super.eSet(featureID, newValue); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eUnset(int featureID) { switch (featureID) { case FMPackage.FUNCTION__NAME: setName(NAME_EDEFAULT); return; case FMPackage.FUNCTION__NAMESPACE: setNamespace(NAMESPACE_EDEFAULT); return; case FMPackage.FUNCTION__RETURN_TYPE: setReturnType(RETURN_TYPE_EDEFAULT); return; case FMPackage.FUNCTION__ARGUMENTS: getArguments().clear(); return; case FMPackage.FUNCTION__COMMENT: setComment(COMMENT_EDEFAULT); return; case FMPackage.FUNCTION__HELP: setHelp(HELP_EDEFAULT); return; case FMPackage.FUNCTION__PREFIX: setPrefix(PREFIX_EDEFAULT); return; case FMPackage.FUNCTION__IS_DEPRECATED: setIsDeprecated(IS_DEPRECATED_EDEFAULT); return; case FMPackage.FUNCTION__DEPRECATE_COMMENT: setDeprecateComment(DEPRECATE_COMMENT_EDEFAULT); return; case FMPackage.FUNCTION__CLASS_NAME: setClassName(CLASS_NAME_EDEFAULT); return; } super.eUnset(featureID); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean eIsSet(int featureID) { switch (featureID) { case FMPackage.FUNCTION__NAME: return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); case FMPackage.FUNCTION__NAMESPACE: return NAMESPACE_EDEFAULT == null ? namespace != null : !NAMESPACE_EDEFAULT.equals(namespace); case FMPackage.FUNCTION__RETURN_TYPE: return RETURN_TYPE_EDEFAULT == null ? returnType != null : !RETURN_TYPE_EDEFAULT.equals(returnType); case FMPackage.FUNCTION__ARGUMENTS: return arguments != null && !arguments.isEmpty(); case FMPackage.FUNCTION__COMMENT: return COMMENT_EDEFAULT == null ? comment != null : !COMMENT_EDEFAULT.equals(comment); case FMPackage.FUNCTION__HELP: return HELP_EDEFAULT == null ? help != null : !HELP_EDEFAULT.equals(help); case FMPackage.FUNCTION__PREFIX: return PREFIX_EDEFAULT == null ? prefix != null : !PREFIX_EDEFAULT.equals(prefix); case FMPackage.FUNCTION__IS_DEPRECATED: return IS_DEPRECATED_EDEFAULT == null ? isDeprecated != null : !IS_DEPRECATED_EDEFAULT.equals(isDeprecated); case FMPackage.FUNCTION__DEPRECATE_COMMENT: return DEPRECATE_COMMENT_EDEFAULT == null ? deprecateComment != null : !DEPRECATE_COMMENT_EDEFAULT.equals(deprecateComment); case FMPackage.FUNCTION__CLASS_NAME: return CLASS_NAME_EDEFAULT == null ? className != null : !CLASS_NAME_EDEFAULT.equals(className); } return super.eIsSet(featureID); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String toString() { if (eIsProxy()) return super.toString(); StringBuffer result = new StringBuffer(super.toString()); result.append(" (name: "); result.append(name); result.append(", namespace: "); result.append(namespace); result.append(", returnType: "); result.append(returnType); result.append(", comment: "); result.append(comment); result.append(", help: "); result.append(help); result.append(", prefix: "); result.append(prefix); result.append(", isDeprecated: "); result.append(isDeprecated); result.append(", deprecateComment: "); result.append(deprecateComment); result.append(", className: "); result.append(className); result.append(')'); return result.toString(); } } //FunctionImpl