/**
* Copyright (c) 2013 itemis AG and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Mark Broerkens - initial API and implementation
*
*/
package org.eclipse.rmf.reqif10.xhtml.impl;
import java.math.BigInteger;
import java.util.Collection;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
import org.eclipse.emf.ecore.util.EObjectContainmentEList;
import org.eclipse.emf.ecore.util.InternalEList;
import org.eclipse.emf.ecore.xml.namespace.SpaceType;
import org.eclipse.rmf.reqif10.xhtml.FrameType;
import org.eclipse.rmf.reqif10.xhtml.RulesType;
import org.eclipse.rmf.reqif10.xhtml.XhtmlCaptionType;
import org.eclipse.rmf.reqif10.xhtml.XhtmlColType;
import org.eclipse.rmf.reqif10.xhtml.XhtmlColgroupType;
import org.eclipse.rmf.reqif10.xhtml.XhtmlPackage;
import org.eclipse.rmf.reqif10.xhtml.XhtmlTableType;
import org.eclipse.rmf.reqif10.xhtml.XhtmlTbodyType;
import org.eclipse.rmf.reqif10.xhtml.XhtmlTfootType;
import org.eclipse.rmf.reqif10.xhtml.XhtmlTheadType;
import org.eclipse.rmf.reqif10.xhtml.XhtmlTrType;
/**
* <!-- begin-user-doc --> An implementation of the model object '<em><b>Table Type</b></em>'. <!-- end-user-doc -->
* <p>
* The following features are implemented:
* <ul>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getCaption <em>Caption</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getCol <em>Col</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getColgroup <em>Colgroup</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getThead <em>Thead</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getTfoot <em>Tfoot</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getTbody <em>Tbody</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getTr <em>Tr</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getBorder <em>Border</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getCellpadding <em>Cellpadding</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getCellspacing <em>Cellspacing</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getClass_ <em>Class</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getFrame <em>Frame</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getId <em>Id</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getLang <em>Lang</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getRules <em>Rules</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getSpace <em>Space</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getStyle <em>Style</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getSummary <em>Summary</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getTitle <em>Title</em>}</li>
* <li>{@link org.eclipse.rmf.reqif10.xhtml.impl.XhtmlTableTypeImpl#getWidth <em>Width</em>}</li>
* </ul>
* </p>
*
* @generated
*/
public class XhtmlTableTypeImpl extends MinimalEObjectImpl implements XhtmlTableType {
/**
* The cached value of the '{@link #getCaption() <em>Caption</em>}' containment reference. <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @see #getCaption()
* @generated
* @ordered
*/
protected XhtmlCaptionType caption;
/**
* The cached value of the '{@link #getCol() <em>Col</em>}' containment reference list. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getCol()
* @generated
* @ordered
*/
protected EList<XhtmlColType> col;
/**
* The cached value of the '{@link #getColgroup() <em>Colgroup</em>}' containment reference list. <!--
* begin-user-doc --> <!-- end-user-doc -->
*
* @see #getColgroup()
* @generated
* @ordered
*/
protected EList<XhtmlColgroupType> colgroup;
/**
* The cached value of the '{@link #getThead() <em>Thead</em>}' containment reference. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getThead()
* @generated
* @ordered
*/
protected XhtmlTheadType thead;
/**
* The cached value of the '{@link #getTfoot() <em>Tfoot</em>}' containment reference. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getTfoot()
* @generated
* @ordered
*/
protected XhtmlTfootType tfoot;
/**
* The cached value of the '{@link #getTbody() <em>Tbody</em>}' containment reference list. <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @see #getTbody()
* @generated
* @ordered
*/
protected EList<XhtmlTbodyType> tbody;
/**
* The cached value of the '{@link #getTr() <em>Tr</em>}' containment reference list. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getTr()
* @generated
* @ordered
*/
protected EList<XhtmlTrType> tr;
/**
* The default value of the '{@link #getBorder() <em>Border</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getBorder()
* @generated
* @ordered
*/
protected static final BigInteger BORDER_EDEFAULT = null;
/**
* The cached value of the '{@link #getBorder() <em>Border</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getBorder()
* @generated
* @ordered
*/
protected BigInteger border = BORDER_EDEFAULT;
/**
* The default value of the '{@link #getCellpadding() <em>Cellpadding</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getCellpadding()
* @generated
* @ordered
*/
protected static final Object CELLPADDING_EDEFAULT = null;
/**
* The cached value of the '{@link #getCellpadding() <em>Cellpadding</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getCellpadding()
* @generated
* @ordered
*/
protected Object cellpadding = CELLPADDING_EDEFAULT;
/**
* The default value of the '{@link #getCellspacing() <em>Cellspacing</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getCellspacing()
* @generated
* @ordered
*/
protected static final Object CELLSPACING_EDEFAULT = null;
/**
* The cached value of the '{@link #getCellspacing() <em>Cellspacing</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getCellspacing()
* @generated
* @ordered
*/
protected Object cellspacing = CELLSPACING_EDEFAULT;
/**
* The default value of the '{@link #getClass_() <em>Class</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getClass_()
* @generated
* @ordered
*/
protected static final String CLASS_EDEFAULT = null;
/**
* The cached value of the '{@link #getClass_() <em>Class</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getClass_()
* @generated
* @ordered
*/
protected String class_ = CLASS_EDEFAULT;
/**
* The default value of the '{@link #getFrame() <em>Frame</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getFrame()
* @generated
* @ordered
*/
protected static final FrameType FRAME_EDEFAULT = FrameType.VOID;
/**
* The cached value of the '{@link #getFrame() <em>Frame</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
* -->
*
* @see #getFrame()
* @generated
* @ordered
*/
protected FrameType frame = FRAME_EDEFAULT;
/**
* This is true if the Frame attribute has been set. <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
* @ordered
*/
protected boolean frameESet;
/**
* The default value of the '{@link #getId() <em>Id</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @see #getId()
* @generated
* @ordered
*/
protected static final String ID_EDEFAULT = null;
/**
* The cached value of the '{@link #getId() <em>Id</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @see #getId()
* @generated
* @ordered
*/
protected String id = ID_EDEFAULT;
/**
* The default value of the '{@link #getLang() <em>Lang</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
* -->
*
* @see #getLang()
* @generated
* @ordered
*/
protected static final String LANG_EDEFAULT = null;
/**
* The cached value of the '{@link #getLang() <em>Lang</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
* -->
*
* @see #getLang()
* @generated
* @ordered
*/
protected String lang = LANG_EDEFAULT;
/**
* The default value of the '{@link #getRules() <em>Rules</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getRules()
* @generated
* @ordered
*/
protected static final RulesType RULES_EDEFAULT = RulesType.NONE;
/**
* The cached value of the '{@link #getRules() <em>Rules</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
* -->
*
* @see #getRules()
* @generated
* @ordered
*/
protected RulesType rules = RULES_EDEFAULT;
/**
* This is true if the Rules attribute has been set. <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
* @ordered
*/
protected boolean rulesESet;
/**
* The default value of the '{@link #getSpace() <em>Space</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getSpace()
* @generated
* @ordered
*/
protected static final SpaceType SPACE_EDEFAULT = SpaceType.PRESERVE_LITERAL;
/**
* The cached value of the '{@link #getSpace() <em>Space</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
* -->
*
* @see #getSpace()
* @generated
* @ordered
*/
protected SpaceType space = SPACE_EDEFAULT;
/**
* This is true if the Space attribute has been set. <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
* @ordered
*/
protected boolean spaceESet;
/**
* The default value of the '{@link #getStyle() <em>Style</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getStyle()
* @generated
* @ordered
*/
protected static final String STYLE_EDEFAULT = null;
/**
* The cached value of the '{@link #getStyle() <em>Style</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
* -->
*
* @see #getStyle()
* @generated
* @ordered
*/
protected String style = STYLE_EDEFAULT;
/**
* The default value of the '{@link #getSummary() <em>Summary</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getSummary()
* @generated
* @ordered
*/
protected static final String SUMMARY_EDEFAULT = null;
/**
* The cached value of the '{@link #getSummary() <em>Summary</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getSummary()
* @generated
* @ordered
*/
protected String summary = SUMMARY_EDEFAULT;
/**
* The default value of the '{@link #getTitle() <em>Title</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getTitle()
* @generated
* @ordered
*/
protected static final String TITLE_EDEFAULT = null;
/**
* The cached value of the '{@link #getTitle() <em>Title</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
* -->
*
* @see #getTitle()
* @generated
* @ordered
*/
protected String title = TITLE_EDEFAULT;
/**
* The default value of the '{@link #getWidth() <em>Width</em>}' attribute. <!-- begin-user-doc --> <!--
* end-user-doc -->
*
* @see #getWidth()
* @generated
* @ordered
*/
protected static final Object WIDTH_EDEFAULT = null;
/**
* The cached value of the '{@link #getWidth() <em>Width</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
* -->
*
* @see #getWidth()
* @generated
* @ordered
*/
protected Object width = WIDTH_EDEFAULT;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
protected XhtmlTableTypeImpl() {
super();
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
@Override
protected EClass eStaticClass() {
return XhtmlPackage.eINSTANCE.getXhtmlTableType();
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public XhtmlCaptionType getCaption() {
return caption;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public NotificationChain basicSetCaption(XhtmlCaptionType newCaption, NotificationChain msgs) {
XhtmlCaptionType oldCaption = caption;
caption = newCaption;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__CAPTION, oldCaption,
newCaption);
if (msgs == null)
msgs = notification;
else
msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setCaption(XhtmlCaptionType newCaption) {
if (newCaption != caption) {
NotificationChain msgs = null;
if (caption != null)
msgs = ((InternalEObject) caption).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - XhtmlPackage.XHTML_TABLE_TYPE__CAPTION, null, msgs);
if (newCaption != null)
msgs = ((InternalEObject) newCaption).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - XhtmlPackage.XHTML_TABLE_TYPE__CAPTION, null, msgs);
msgs = basicSetCaption(newCaption, msgs);
if (msgs != null)
msgs.dispatch();
} else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__CAPTION, newCaption, newCaption));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public EList<XhtmlColType> getCol() {
if (col == null) {
col = new EObjectContainmentEList<XhtmlColType>(XhtmlColType.class, this, XhtmlPackage.XHTML_TABLE_TYPE__COL);
}
return col;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public EList<XhtmlColgroupType> getColgroup() {
if (colgroup == null) {
colgroup = new EObjectContainmentEList<XhtmlColgroupType>(XhtmlColgroupType.class, this, XhtmlPackage.XHTML_TABLE_TYPE__COLGROUP);
}
return colgroup;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public XhtmlTheadType getThead() {
return thead;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public NotificationChain basicSetThead(XhtmlTheadType newThead, NotificationChain msgs) {
XhtmlTheadType oldThead = thead;
thead = newThead;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__THEAD, oldThead, newThead);
if (msgs == null)
msgs = notification;
else
msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setThead(XhtmlTheadType newThead) {
if (newThead != thead) {
NotificationChain msgs = null;
if (thead != null)
msgs = ((InternalEObject) thead).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - XhtmlPackage.XHTML_TABLE_TYPE__THEAD, null, msgs);
if (newThead != null)
msgs = ((InternalEObject) newThead).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - XhtmlPackage.XHTML_TABLE_TYPE__THEAD, null, msgs);
msgs = basicSetThead(newThead, msgs);
if (msgs != null)
msgs.dispatch();
} else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__THEAD, newThead, newThead));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public XhtmlTfootType getTfoot() {
return tfoot;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public NotificationChain basicSetTfoot(XhtmlTfootType newTfoot, NotificationChain msgs) {
XhtmlTfootType oldTfoot = tfoot;
tfoot = newTfoot;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__TFOOT, oldTfoot, newTfoot);
if (msgs == null)
msgs = notification;
else
msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setTfoot(XhtmlTfootType newTfoot) {
if (newTfoot != tfoot) {
NotificationChain msgs = null;
if (tfoot != null)
msgs = ((InternalEObject) tfoot).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - XhtmlPackage.XHTML_TABLE_TYPE__TFOOT, null, msgs);
if (newTfoot != null)
msgs = ((InternalEObject) newTfoot).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - XhtmlPackage.XHTML_TABLE_TYPE__TFOOT, null, msgs);
msgs = basicSetTfoot(newTfoot, msgs);
if (msgs != null)
msgs.dispatch();
} else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__TFOOT, newTfoot, newTfoot));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public EList<XhtmlTbodyType> getTbody() {
if (tbody == null) {
tbody = new EObjectContainmentEList<XhtmlTbodyType>(XhtmlTbodyType.class, this, XhtmlPackage.XHTML_TABLE_TYPE__TBODY);
}
return tbody;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public EList<XhtmlTrType> getTr() {
if (tr == null) {
tr = new EObjectContainmentEList<XhtmlTrType>(XhtmlTrType.class, this, XhtmlPackage.XHTML_TABLE_TYPE__TR);
}
return tr;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public BigInteger getBorder() {
return border;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setBorder(BigInteger newBorder) {
BigInteger oldBorder = border;
border = newBorder;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__BORDER, oldBorder, border));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public Object getCellpadding() {
return cellpadding;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setCellpadding(Object newCellpadding) {
Object oldCellpadding = cellpadding;
cellpadding = newCellpadding;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__CELLPADDING, oldCellpadding, cellpadding));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public Object getCellspacing() {
return cellspacing;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setCellspacing(Object newCellspacing) {
Object oldCellspacing = cellspacing;
cellspacing = newCellspacing;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__CELLSPACING, oldCellspacing, cellspacing));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public String getClass_() {
return class_;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setClass(String newClass) {
String oldClass = class_;
class_ = newClass;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__CLASS, oldClass, class_));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public FrameType getFrame() {
return frame;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setFrame(FrameType newFrame) {
FrameType oldFrame = frame;
frame = newFrame == null ? FRAME_EDEFAULT : newFrame;
boolean oldFrameESet = frameESet;
frameESet = true;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__FRAME, oldFrame, frame, !oldFrameESet));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void unsetFrame() {
FrameType oldFrame = frame;
boolean oldFrameESet = frameESet;
frame = FRAME_EDEFAULT;
frameESet = false;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.UNSET, XhtmlPackage.XHTML_TABLE_TYPE__FRAME, oldFrame, FRAME_EDEFAULT, oldFrameESet));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public boolean isSetFrame() {
return frameESet;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public String getId() {
return id;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setId(String newId) {
String oldId = id;
id = newId;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__ID, oldId, id));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public String getLang() {
return lang;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setLang(String newLang) {
String oldLang = lang;
lang = newLang;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__LANG, oldLang, lang));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public RulesType getRules() {
return rules;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setRules(RulesType newRules) {
RulesType oldRules = rules;
rules = newRules == null ? RULES_EDEFAULT : newRules;
boolean oldRulesESet = rulesESet;
rulesESet = true;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__RULES, oldRules, rules, !oldRulesESet));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void unsetRules() {
RulesType oldRules = rules;
boolean oldRulesESet = rulesESet;
rules = RULES_EDEFAULT;
rulesESet = false;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.UNSET, XhtmlPackage.XHTML_TABLE_TYPE__RULES, oldRules, RULES_EDEFAULT, oldRulesESet));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public boolean isSetRules() {
return rulesESet;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public SpaceType getSpace() {
return space;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setSpace(SpaceType newSpace) {
SpaceType oldSpace = space;
space = newSpace == null ? SPACE_EDEFAULT : newSpace;
boolean oldSpaceESet = spaceESet;
spaceESet = true;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__SPACE, oldSpace, space, !oldSpaceESet));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void unsetSpace() {
SpaceType oldSpace = space;
boolean oldSpaceESet = spaceESet;
space = SPACE_EDEFAULT;
spaceESet = false;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.UNSET, XhtmlPackage.XHTML_TABLE_TYPE__SPACE, oldSpace, SPACE_EDEFAULT, oldSpaceESet));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public boolean isSetSpace() {
return spaceESet;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public String getStyle() {
return style;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setStyle(String newStyle) {
String oldStyle = style;
style = newStyle;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__STYLE, oldStyle, style));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public String getSummary() {
return summary;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setSummary(String newSummary) {
String oldSummary = summary;
summary = newSummary;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__SUMMARY, oldSummary, summary));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public String getTitle() {
return title;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setTitle(String newTitle) {
String oldTitle = title;
title = newTitle;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__TITLE, oldTitle, title));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public Object getWidth() {
return width;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public void setWidth(Object newWidth) {
Object oldWidth = width;
width = newWidth;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, XhtmlPackage.XHTML_TABLE_TYPE__WIDTH, oldWidth, width));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case XhtmlPackage.XHTML_TABLE_TYPE__CAPTION:
return basicSetCaption(null, msgs);
case XhtmlPackage.XHTML_TABLE_TYPE__COL:
return ((InternalEList<?>) getCol()).basicRemove(otherEnd, msgs);
case XhtmlPackage.XHTML_TABLE_TYPE__COLGROUP:
return ((InternalEList<?>) getColgroup()).basicRemove(otherEnd, msgs);
case XhtmlPackage.XHTML_TABLE_TYPE__THEAD:
return basicSetThead(null, msgs);
case XhtmlPackage.XHTML_TABLE_TYPE__TFOOT:
return basicSetTfoot(null, msgs);
case XhtmlPackage.XHTML_TABLE_TYPE__TBODY:
return ((InternalEList<?>) getTbody()).basicRemove(otherEnd, msgs);
case XhtmlPackage.XHTML_TABLE_TYPE__TR:
return ((InternalEList<?>) getTr()).basicRemove(otherEnd, 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 XhtmlPackage.XHTML_TABLE_TYPE__CAPTION:
return getCaption();
case XhtmlPackage.XHTML_TABLE_TYPE__COL:
return getCol();
case XhtmlPackage.XHTML_TABLE_TYPE__COLGROUP:
return getColgroup();
case XhtmlPackage.XHTML_TABLE_TYPE__THEAD:
return getThead();
case XhtmlPackage.XHTML_TABLE_TYPE__TFOOT:
return getTfoot();
case XhtmlPackage.XHTML_TABLE_TYPE__TBODY:
return getTbody();
case XhtmlPackage.XHTML_TABLE_TYPE__TR:
return getTr();
case XhtmlPackage.XHTML_TABLE_TYPE__BORDER:
return getBorder();
case XhtmlPackage.XHTML_TABLE_TYPE__CELLPADDING:
return getCellpadding();
case XhtmlPackage.XHTML_TABLE_TYPE__CELLSPACING:
return getCellspacing();
case XhtmlPackage.XHTML_TABLE_TYPE__CLASS:
return getClass_();
case XhtmlPackage.XHTML_TABLE_TYPE__FRAME:
return getFrame();
case XhtmlPackage.XHTML_TABLE_TYPE__ID:
return getId();
case XhtmlPackage.XHTML_TABLE_TYPE__LANG:
return getLang();
case XhtmlPackage.XHTML_TABLE_TYPE__RULES:
return getRules();
case XhtmlPackage.XHTML_TABLE_TYPE__SPACE:
return getSpace();
case XhtmlPackage.XHTML_TABLE_TYPE__STYLE:
return getStyle();
case XhtmlPackage.XHTML_TABLE_TYPE__SUMMARY:
return getSummary();
case XhtmlPackage.XHTML_TABLE_TYPE__TITLE:
return getTitle();
case XhtmlPackage.XHTML_TABLE_TYPE__WIDTH:
return getWidth();
}
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 XhtmlPackage.XHTML_TABLE_TYPE__CAPTION:
setCaption((XhtmlCaptionType) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__COL:
getCol().clear();
getCol().addAll((Collection<? extends XhtmlColType>) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__COLGROUP:
getColgroup().clear();
getColgroup().addAll((Collection<? extends XhtmlColgroupType>) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__THEAD:
setThead((XhtmlTheadType) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__TFOOT:
setTfoot((XhtmlTfootType) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__TBODY:
getTbody().clear();
getTbody().addAll((Collection<? extends XhtmlTbodyType>) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__TR:
getTr().clear();
getTr().addAll((Collection<? extends XhtmlTrType>) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__BORDER:
setBorder((BigInteger) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__CELLPADDING:
setCellpadding(newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__CELLSPACING:
setCellspacing(newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__CLASS:
setClass((String) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__FRAME:
setFrame((FrameType) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__ID:
setId((String) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__LANG:
setLang((String) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__RULES:
setRules((RulesType) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__SPACE:
setSpace((SpaceType) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__STYLE:
setStyle((String) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__SUMMARY:
setSummary((String) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__TITLE:
setTitle((String) newValue);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__WIDTH:
setWidth(newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case XhtmlPackage.XHTML_TABLE_TYPE__CAPTION:
setCaption((XhtmlCaptionType) null);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__COL:
getCol().clear();
return;
case XhtmlPackage.XHTML_TABLE_TYPE__COLGROUP:
getColgroup().clear();
return;
case XhtmlPackage.XHTML_TABLE_TYPE__THEAD:
setThead((XhtmlTheadType) null);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__TFOOT:
setTfoot((XhtmlTfootType) null);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__TBODY:
getTbody().clear();
return;
case XhtmlPackage.XHTML_TABLE_TYPE__TR:
getTr().clear();
return;
case XhtmlPackage.XHTML_TABLE_TYPE__BORDER:
setBorder(BORDER_EDEFAULT);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__CELLPADDING:
setCellpadding(CELLPADDING_EDEFAULT);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__CELLSPACING:
setCellspacing(CELLSPACING_EDEFAULT);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__CLASS:
setClass(CLASS_EDEFAULT);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__FRAME:
unsetFrame();
return;
case XhtmlPackage.XHTML_TABLE_TYPE__ID:
setId(ID_EDEFAULT);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__LANG:
setLang(LANG_EDEFAULT);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__RULES:
unsetRules();
return;
case XhtmlPackage.XHTML_TABLE_TYPE__SPACE:
unsetSpace();
return;
case XhtmlPackage.XHTML_TABLE_TYPE__STYLE:
setStyle(STYLE_EDEFAULT);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__SUMMARY:
setSummary(SUMMARY_EDEFAULT);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__TITLE:
setTitle(TITLE_EDEFAULT);
return;
case XhtmlPackage.XHTML_TABLE_TYPE__WIDTH:
setWidth(WIDTH_EDEFAULT);
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case XhtmlPackage.XHTML_TABLE_TYPE__CAPTION:
return caption != null;
case XhtmlPackage.XHTML_TABLE_TYPE__COL:
return col != null && !col.isEmpty();
case XhtmlPackage.XHTML_TABLE_TYPE__COLGROUP:
return colgroup != null && !colgroup.isEmpty();
case XhtmlPackage.XHTML_TABLE_TYPE__THEAD:
return thead != null;
case XhtmlPackage.XHTML_TABLE_TYPE__TFOOT:
return tfoot != null;
case XhtmlPackage.XHTML_TABLE_TYPE__TBODY:
return tbody != null && !tbody.isEmpty();
case XhtmlPackage.XHTML_TABLE_TYPE__TR:
return tr != null && !tr.isEmpty();
case XhtmlPackage.XHTML_TABLE_TYPE__BORDER:
return BORDER_EDEFAULT == null ? border != null : !BORDER_EDEFAULT.equals(border);
case XhtmlPackage.XHTML_TABLE_TYPE__CELLPADDING:
return CELLPADDING_EDEFAULT == null ? cellpadding != null : !CELLPADDING_EDEFAULT.equals(cellpadding);
case XhtmlPackage.XHTML_TABLE_TYPE__CELLSPACING:
return CELLSPACING_EDEFAULT == null ? cellspacing != null : !CELLSPACING_EDEFAULT.equals(cellspacing);
case XhtmlPackage.XHTML_TABLE_TYPE__CLASS:
return CLASS_EDEFAULT == null ? class_ != null : !CLASS_EDEFAULT.equals(class_);
case XhtmlPackage.XHTML_TABLE_TYPE__FRAME:
return isSetFrame();
case XhtmlPackage.XHTML_TABLE_TYPE__ID:
return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
case XhtmlPackage.XHTML_TABLE_TYPE__LANG:
return LANG_EDEFAULT == null ? lang != null : !LANG_EDEFAULT.equals(lang);
case XhtmlPackage.XHTML_TABLE_TYPE__RULES:
return isSetRules();
case XhtmlPackage.XHTML_TABLE_TYPE__SPACE:
return isSetSpace();
case XhtmlPackage.XHTML_TABLE_TYPE__STYLE:
return STYLE_EDEFAULT == null ? style != null : !STYLE_EDEFAULT.equals(style);
case XhtmlPackage.XHTML_TABLE_TYPE__SUMMARY:
return SUMMARY_EDEFAULT == null ? summary != null : !SUMMARY_EDEFAULT.equals(summary);
case XhtmlPackage.XHTML_TABLE_TYPE__TITLE:
return TITLE_EDEFAULT == null ? title != null : !TITLE_EDEFAULT.equals(title);
case XhtmlPackage.XHTML_TABLE_TYPE__WIDTH:
return WIDTH_EDEFAULT == null ? width != null : !WIDTH_EDEFAULT.equals(width);
}
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(" (border: "); //$NON-NLS-1$
result.append(border);
result.append(", cellpadding: "); //$NON-NLS-1$
result.append(cellpadding);
result.append(", cellspacing: "); //$NON-NLS-1$
result.append(cellspacing);
result.append(", class: "); //$NON-NLS-1$
result.append(class_);
result.append(", frame: "); //$NON-NLS-1$
if (frameESet)
result.append(frame);
else
result.append("<unset>"); //$NON-NLS-1$
result.append(", id: "); //$NON-NLS-1$
result.append(id);
result.append(", lang: "); //$NON-NLS-1$
result.append(lang);
result.append(", rules: "); //$NON-NLS-1$
if (rulesESet)
result.append(rules);
else
result.append("<unset>"); //$NON-NLS-1$
result.append(", space: "); //$NON-NLS-1$
if (spaceESet)
result.append(space);
else
result.append("<unset>"); //$NON-NLS-1$
result.append(", style: "); //$NON-NLS-1$
result.append(style);
result.append(", summary: "); //$NON-NLS-1$
result.append(summary);
result.append(", title: "); //$NON-NLS-1$
result.append(title);
result.append(", width: "); //$NON-NLS-1$
result.append(width);
result.append(')');
return result.toString();
}
} // XhtmlTableTypeImpl