Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl')
-rw-r--r--examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/AccountImpl.java276
-rw-r--r--examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/FolderContentImpl.java41
-rw-r--r--examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/FolderImpl.java257
-rw-r--r--examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailContentImpl.java39
-rw-r--r--examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailFactoryImpl.java128
-rw-r--r--examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailImpl.java314
-rw-r--r--examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailPackageImpl.java363
7 files changed, 1418 insertions, 0 deletions
diff --git a/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/AccountImpl.java b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/AccountImpl.java
new file mode 100644
index 000000000..1f3699882
--- /dev/null
+++ b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/AccountImpl.java
@@ -0,0 +1,276 @@
+/**
+ */
+package org.eclipse.emf.parsley.examples.mail.impl;
+
+
+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.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.emf.parsley.examples.mail.Account;
+import org.eclipse.emf.parsley.examples.mail.Folder;
+import org.eclipse.emf.parsley.examples.mail.MailPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Account</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.parsley.examples.mail.impl.AccountImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.emf.parsley.examples.mail.impl.AccountImpl#getEmail <em>Email</em>}</li>
+ * <li>{@link org.eclipse.emf.parsley.examples.mail.impl.AccountImpl#getFolders <em>Folders</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AccountImpl extends EObjectImpl implements Account {
+ /**
+ * 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 #getEmail() <em>Email</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEmail()
+ * @generated
+ * @ordered
+ */
+ protected static final String EMAIL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getEmail() <em>Email</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEmail()
+ * @generated
+ * @ordered
+ */
+ protected String email = EMAIL_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getFolders() <em>Folders</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFolders()
+ * @generated
+ * @ordered
+ */
+ protected EList<Folder> folders;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AccountImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return MailPackage.Literals.ACCOUNT;
+ }
+
+ /**
+ * <!-- 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, MailPackage.ACCOUNT__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getEmail() {
+ return email;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEmail(String newEmail) {
+ String oldEmail = email;
+ email = newEmail;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, MailPackage.ACCOUNT__EMAIL, oldEmail, email));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Folder> getFolders() {
+ if (folders == null) {
+ folders = new EObjectContainmentEList<Folder>(Folder.class, this, MailPackage.ACCOUNT__FOLDERS);
+ }
+ return folders;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case MailPackage.ACCOUNT__FOLDERS:
+ return ((InternalEList<?>)getFolders()).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 MailPackage.ACCOUNT__NAME:
+ return getName();
+ case MailPackage.ACCOUNT__EMAIL:
+ return getEmail();
+ case MailPackage.ACCOUNT__FOLDERS:
+ return getFolders();
+ }
+ 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 MailPackage.ACCOUNT__NAME:
+ setName((String)newValue);
+ return;
+ case MailPackage.ACCOUNT__EMAIL:
+ setEmail((String)newValue);
+ return;
+ case MailPackage.ACCOUNT__FOLDERS:
+ getFolders().clear();
+ getFolders().addAll((Collection<? extends Folder>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case MailPackage.ACCOUNT__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case MailPackage.ACCOUNT__EMAIL:
+ setEmail(EMAIL_EDEFAULT);
+ return;
+ case MailPackage.ACCOUNT__FOLDERS:
+ getFolders().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case MailPackage.ACCOUNT__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case MailPackage.ACCOUNT__EMAIL:
+ return EMAIL_EDEFAULT == null ? email != null : !EMAIL_EDEFAULT.equals(email);
+ case MailPackage.ACCOUNT__FOLDERS:
+ return folders != null && !folders.isEmpty();
+ }
+ 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(", email: ");
+ result.append(email);
+ result.append(')');
+ return result.toString();
+ }
+
+} //AccountImpl
diff --git a/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/FolderContentImpl.java b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/FolderContentImpl.java
new file mode 100644
index 000000000..d01bac11b
--- /dev/null
+++ b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/FolderContentImpl.java
@@ -0,0 +1,41 @@
+/**
+ */
+package org.eclipse.emf.parsley.examples.mail.impl;
+
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.parsley.examples.mail.FolderContent;
+import org.eclipse.emf.parsley.examples.mail.MailPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Folder Content</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class FolderContentImpl extends EObjectImpl implements FolderContent {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FolderContentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return MailPackage.Literals.FOLDER_CONTENT;
+ }
+
+} //FolderContentImpl
diff --git a/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/FolderImpl.java b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/FolderImpl.java
new file mode 100644
index 000000000..552e900e4
--- /dev/null
+++ b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/FolderImpl.java
@@ -0,0 +1,257 @@
+/**
+ */
+package org.eclipse.emf.parsley.examples.mail.impl;
+
+
+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.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.emf.parsley.examples.mail.Folder;
+import org.eclipse.emf.parsley.examples.mail.Mail;
+import org.eclipse.emf.parsley.examples.mail.MailPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Folder</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.parsley.examples.mail.impl.FolderImpl#getSubfolders <em>Subfolders</em>}</li>
+ * <li>{@link org.eclipse.emf.parsley.examples.mail.impl.FolderImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.emf.parsley.examples.mail.impl.FolderImpl#getMails <em>Mails</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FolderImpl extends FolderContentImpl implements Folder {
+ /**
+ * The cached value of the '{@link #getSubfolders() <em>Subfolders</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubfolders()
+ * @generated
+ * @ordered
+ */
+ protected EList<Folder> subfolders;
+
+ /**
+ * 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 cached value of the '{@link #getMails() <em>Mails</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMails()
+ * @generated
+ * @ordered
+ */
+ protected EList<Mail> mails;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FolderImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return MailPackage.Literals.FOLDER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Folder> getSubfolders() {
+ if (subfolders == null) {
+ subfolders = new EObjectContainmentEList<Folder>(Folder.class, this, MailPackage.FOLDER__SUBFOLDERS);
+ }
+ return subfolders;
+ }
+
+ /**
+ * <!-- 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, MailPackage.FOLDER__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Mail> getMails() {
+ if (mails == null) {
+ mails = new EObjectContainmentEList<Mail>(Mail.class, this, MailPackage.FOLDER__MAILS);
+ }
+ return mails;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case MailPackage.FOLDER__SUBFOLDERS:
+ return ((InternalEList<?>)getSubfolders()).basicRemove(otherEnd, msgs);
+ case MailPackage.FOLDER__MAILS:
+ return ((InternalEList<?>)getMails()).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 MailPackage.FOLDER__SUBFOLDERS:
+ return getSubfolders();
+ case MailPackage.FOLDER__NAME:
+ return getName();
+ case MailPackage.FOLDER__MAILS:
+ return getMails();
+ }
+ 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 MailPackage.FOLDER__SUBFOLDERS:
+ getSubfolders().clear();
+ getSubfolders().addAll((Collection<? extends Folder>)newValue);
+ return;
+ case MailPackage.FOLDER__NAME:
+ setName((String)newValue);
+ return;
+ case MailPackage.FOLDER__MAILS:
+ getMails().clear();
+ getMails().addAll((Collection<? extends Mail>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case MailPackage.FOLDER__SUBFOLDERS:
+ getSubfolders().clear();
+ return;
+ case MailPackage.FOLDER__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case MailPackage.FOLDER__MAILS:
+ getMails().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case MailPackage.FOLDER__SUBFOLDERS:
+ return subfolders != null && !subfolders.isEmpty();
+ case MailPackage.FOLDER__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case MailPackage.FOLDER__MAILS:
+ return mails != null && !mails.isEmpty();
+ }
+ 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(')');
+ return result.toString();
+ }
+
+} //FolderImpl
diff --git a/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailContentImpl.java b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailContentImpl.java
new file mode 100644
index 000000000..156b856aa
--- /dev/null
+++ b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailContentImpl.java
@@ -0,0 +1,39 @@
+/**
+ */
+package org.eclipse.emf.parsley.examples.mail.impl;
+
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.parsley.examples.mail.MailContent;
+import org.eclipse.emf.parsley.examples.mail.MailPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Content</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class MailContentImpl extends FolderContentImpl implements MailContent {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MailContentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return MailPackage.Literals.MAIL_CONTENT;
+ }
+
+} //MailContentImpl
diff --git a/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailFactoryImpl.java b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailFactoryImpl.java
new file mode 100644
index 000000000..b2b752a79
--- /dev/null
+++ b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailFactoryImpl.java
@@ -0,0 +1,128 @@
+/**
+ */
+package org.eclipse.emf.parsley.examples.mail.impl;
+
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.emf.parsley.examples.mail.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class MailFactoryImpl extends EFactoryImpl implements MailFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static MailFactory init() {
+ try {
+ MailFactory theMailFactory = (MailFactory)EPackage.Registry.INSTANCE.getEFactory("http:///org/eclipse/emf/parsley/examples/mail/mail.ecore/0.1.0");
+ if (theMailFactory != null) {
+ return theMailFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new MailFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MailFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case MailPackage.ACCOUNT: return createAccount();
+ case MailPackage.FOLDER: return createFolder();
+ case MailPackage.MAIL_CONTENT: return createMailContent();
+ case MailPackage.MAIL: return createMail();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Account createAccount() {
+ AccountImpl account = new AccountImpl();
+ return account;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Folder createFolder() {
+ FolderImpl folder = new FolderImpl();
+ return folder;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MailContent createMailContent() {
+ MailContentImpl mailContent = new MailContentImpl();
+ return mailContent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Mail createMail() {
+ MailImpl mail = new MailImpl();
+ return mail;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MailPackage getMailPackage() {
+ return (MailPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static MailPackage getPackage() {
+ return MailPackage.eINSTANCE;
+ }
+
+} //MailFactoryImpl
diff --git a/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailImpl.java b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailImpl.java
new file mode 100644
index 000000000..9f8a4f545
--- /dev/null
+++ b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailImpl.java
@@ -0,0 +1,314 @@
+/**
+ */
+package org.eclipse.emf.parsley.examples.mail.impl;
+
+
+import java.util.Collection;
+
+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.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.parsley.examples.mail.Mail;
+import org.eclipse.emf.parsley.examples.mail.MailPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Mail</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.emf.parsley.examples.mail.impl.MailImpl#getFrom <em>From</em>}</li>
+ * <li>{@link org.eclipse.emf.parsley.examples.mail.impl.MailImpl#getRecipients <em>Recipients</em>}</li>
+ * <li>{@link org.eclipse.emf.parsley.examples.mail.impl.MailImpl#getMessage <em>Message</em>}</li>
+ * <li>{@link org.eclipse.emf.parsley.examples.mail.impl.MailImpl#getSubject <em>Subject</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class MailImpl extends EObjectImpl implements Mail {
+ /**
+ * The default value of the '{@link #getFrom() <em>From</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFrom()
+ * @generated
+ * @ordered
+ */
+ protected static final String FROM_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getFrom() <em>From</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFrom()
+ * @generated
+ * @ordered
+ */
+ protected String from = FROM_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getRecipients() <em>Recipients</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRecipients()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> recipients;
+
+ /**
+ * The default value of the '{@link #getMessage() <em>Message</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMessage()
+ * @generated
+ * @ordered
+ */
+ protected static final String MESSAGE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getMessage() <em>Message</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMessage()
+ * @generated
+ * @ordered
+ */
+ protected String message = MESSAGE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSubject() <em>Subject</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubject()
+ * @generated
+ * @ordered
+ */
+ protected static final String SUBJECT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSubject() <em>Subject</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSubject()
+ * @generated
+ * @ordered
+ */
+ protected String subject = SUBJECT_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MailImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return MailPackage.Literals.MAIL;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getFrom() {
+ return from;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setFrom(String newFrom) {
+ String oldFrom = from;
+ from = newFrom;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, MailPackage.MAIL__FROM, oldFrom, from));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getRecipients() {
+ if (recipients == null) {
+ recipients = new EDataTypeUniqueEList<String>(String.class, this, MailPackage.MAIL__RECIPIENTS);
+ }
+ return recipients;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getMessage() {
+ return message;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setMessage(String newMessage) {
+ String oldMessage = message;
+ message = newMessage;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, MailPackage.MAIL__MESSAGE, oldMessage, message));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSubject() {
+ return subject;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSubject(String newSubject) {
+ String oldSubject = subject;
+ subject = newSubject;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, MailPackage.MAIL__SUBJECT, oldSubject, subject));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case MailPackage.MAIL__FROM:
+ return getFrom();
+ case MailPackage.MAIL__RECIPIENTS:
+ return getRecipients();
+ case MailPackage.MAIL__MESSAGE:
+ return getMessage();
+ case MailPackage.MAIL__SUBJECT:
+ return getSubject();
+ }
+ 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 MailPackage.MAIL__FROM:
+ setFrom((String)newValue);
+ return;
+ case MailPackage.MAIL__RECIPIENTS:
+ getRecipients().clear();
+ getRecipients().addAll((Collection<? extends String>)newValue);
+ return;
+ case MailPackage.MAIL__MESSAGE:
+ setMessage((String)newValue);
+ return;
+ case MailPackage.MAIL__SUBJECT:
+ setSubject((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case MailPackage.MAIL__FROM:
+ setFrom(FROM_EDEFAULT);
+ return;
+ case MailPackage.MAIL__RECIPIENTS:
+ getRecipients().clear();
+ return;
+ case MailPackage.MAIL__MESSAGE:
+ setMessage(MESSAGE_EDEFAULT);
+ return;
+ case MailPackage.MAIL__SUBJECT:
+ setSubject(SUBJECT_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case MailPackage.MAIL__FROM:
+ return FROM_EDEFAULT == null ? from != null : !FROM_EDEFAULT.equals(from);
+ case MailPackage.MAIL__RECIPIENTS:
+ return recipients != null && !recipients.isEmpty();
+ case MailPackage.MAIL__MESSAGE:
+ return MESSAGE_EDEFAULT == null ? message != null : !MESSAGE_EDEFAULT.equals(message);
+ case MailPackage.MAIL__SUBJECT:
+ return SUBJECT_EDEFAULT == null ? subject != null : !SUBJECT_EDEFAULT.equals(subject);
+ }
+ 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(" (from: ");
+ result.append(from);
+ result.append(", recipients: ");
+ result.append(recipients);
+ result.append(", message: ");
+ result.append(message);
+ result.append(", subject: ");
+ result.append(subject);
+ result.append(')');
+ return result.toString();
+ }
+
+} //MailImpl
diff --git a/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailPackageImpl.java b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailPackageImpl.java
new file mode 100644
index 000000000..0983ed075
--- /dev/null
+++ b/examples/org.eclipse.emf.parsley.examples.mail.model/src/org/eclipse/emf/parsley/examples/mail/impl/MailPackageImpl.java
@@ -0,0 +1,363 @@
+/**
+ */
+package org.eclipse.emf.parsley.examples.mail.impl;
+
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.emf.parsley.examples.mail.Account;
+import org.eclipse.emf.parsley.examples.mail.Folder;
+import org.eclipse.emf.parsley.examples.mail.FolderContent;
+import org.eclipse.emf.parsley.examples.mail.Mail;
+import org.eclipse.emf.parsley.examples.mail.MailContent;
+import org.eclipse.emf.parsley.examples.mail.MailFactory;
+import org.eclipse.emf.parsley.examples.mail.MailPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class MailPackageImpl extends EPackageImpl implements MailPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass accountEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass folderEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass folderContentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass mailContentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass mailEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.emf.parsley.examples.mail.MailPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private MailPackageImpl() {
+ super(eNS_URI, MailFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link MailPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static MailPackage init() {
+ if (isInited) return (MailPackage)EPackage.Registry.INSTANCE.getEPackage(MailPackage.eNS_URI);
+
+ // Obtain or create and register package
+ MailPackageImpl theMailPackage = (MailPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof MailPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new MailPackageImpl());
+
+ isInited = true;
+
+ // Create package meta-data objects
+ theMailPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theMailPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theMailPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(MailPackage.eNS_URI, theMailPackage);
+ return theMailPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAccount() {
+ return accountEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getAccount_Name() {
+ return (EAttribute)accountEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getAccount_Email() {
+ return (EAttribute)accountEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAccount_Folders() {
+ return (EReference)accountEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFolder() {
+ return folderEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFolder_Subfolders() {
+ return (EReference)folderEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getFolder_Name() {
+ return (EAttribute)folderEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFolder_Mails() {
+ return (EReference)folderEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFolderContent() {
+ return folderContentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMailContent() {
+ return mailContentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMail() {
+ return mailEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getMail_From() {
+ return (EAttribute)mailEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getMail_Recipients() {
+ return (EAttribute)mailEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getMail_Message() {
+ return (EAttribute)mailEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getMail_Subject() {
+ return (EAttribute)mailEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MailFactory getMailFactory() {
+ return (MailFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ accountEClass = createEClass(ACCOUNT);
+ createEAttribute(accountEClass, ACCOUNT__NAME);
+ createEAttribute(accountEClass, ACCOUNT__EMAIL);
+ createEReference(accountEClass, ACCOUNT__FOLDERS);
+
+ folderEClass = createEClass(FOLDER);
+ createEReference(folderEClass, FOLDER__SUBFOLDERS);
+ createEAttribute(folderEClass, FOLDER__NAME);
+ createEReference(folderEClass, FOLDER__MAILS);
+
+ folderContentEClass = createEClass(FOLDER_CONTENT);
+
+ mailContentEClass = createEClass(MAIL_CONTENT);
+
+ mailEClass = createEClass(MAIL);
+ createEAttribute(mailEClass, MAIL__FROM);
+ createEAttribute(mailEClass, MAIL__RECIPIENTS);
+ createEAttribute(mailEClass, MAIL__MESSAGE);
+ createEAttribute(mailEClass, MAIL__SUBJECT);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ folderEClass.getESuperTypes().add(this.getFolderContent());
+ mailContentEClass.getESuperTypes().add(this.getFolderContent());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(accountEClass, Account.class, "Account", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getAccount_Name(), ecorePackage.getEString(), "name", null, 0, 1, Account.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getAccount_Email(), ecorePackage.getEString(), "email", null, 0, 1, Account.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getAccount_Folders(), this.getFolder(), null, "folders", null, 0, -1, Account.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(folderEClass, Folder.class, "Folder", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getFolder_Subfolders(), this.getFolder(), null, "subfolders", null, 0, -1, Folder.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getFolder_Name(), ecorePackage.getEString(), "name", null, 0, 1, Folder.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getFolder_Mails(), this.getMail(), null, "mails", null, 0, -1, Folder.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(folderContentEClass, FolderContent.class, "FolderContent", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(mailContentEClass, MailContent.class, "MailContent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(mailEClass, Mail.class, "Mail", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getMail_From(), ecorePackage.getEString(), "from", null, 0, 1, Mail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getMail_Recipients(), ecorePackage.getEString(), "recipients", null, 0, -1, Mail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getMail_Message(), ecorePackage.getEString(), "message", null, 0, 1, Mail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getMail_Subject(), ecorePackage.getEString(), "subject", null, 0, 1, Mail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //MailPackageImpl

Back to the top