diff options
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.tests.model4interfaces')
34 files changed, 4110 insertions, 0 deletions
diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/.classpath b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/.classpath new file mode 100644 index 0000000000..121e527a93 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/.classpath @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="src" path="src"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/.cvsignore b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/.cvsignore new file mode 100644 index 0000000000..ba077a4031 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/.cvsignore @@ -0,0 +1 @@ +bin diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/.project b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/.project new file mode 100644 index 0000000000..7ff2b128de --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.emf.cdo.tests.model4interfaces</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + </natures> +</projectDescription> diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/META-INF/CDO.MF b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/META-INF/CDO.MF new file mode 100644 index 0000000000..bbfa1b0550 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/META-INF/CDO.MF @@ -0,0 +1 @@ +This is a marker file for bundles with CDO native models. diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/META-INF/MANIFEST.MF new file mode 100644 index 0000000000..31f182b9ac --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/META-INF/MANIFEST.MF @@ -0,0 +1,16 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %pluginName +Bundle-SymbolicName: org.eclipse.emf.cdo.tests.model4interfaces;singleton:=true +Bundle-Version: 1.0.0 +Bundle-ClassPath: . +Bundle-Vendor: %providerName +Bundle-Localization: plugin +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Export-Package: org.eclipse.emf.cdo.tests.model4interfaces, + org.eclipse.emf.cdo.tests.model4interfaces.impl, + org.eclipse.emf.cdo.tests.model4interfaces.util +Require-Bundle: org.eclipse.core.runtime, + org.eclipse.emf.ecore;visibility:=reexport, + org.eclipse.emf.cdo;visibility:=reexport +Bundle-ActivationPolicy: lazy diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/about.html b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/about.html new file mode 100644 index 0000000000..d35d5aed64 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/about.html @@ -0,0 +1,28 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>June 5, 2007</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> +</html> diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/build.properties b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/build.properties new file mode 100644 index 0000000000..0163ffc257 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/build.properties @@ -0,0 +1,14 @@ + +# <copyright> +# </copyright> +# +# $Id: build.properties,v 1.1 2008-07-10 15:42:29 estepper Exp $ + +bin.includes = .,\ + model/,\ + META-INF/,\ + plugin.xml,\ + plugin.properties +jars.compile.order = . +source.. = src/ +output.. = bin/ diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/copyright.txt b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/copyright.txt new file mode 100644 index 0000000000..529118d99e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/copyright.txt @@ -0,0 +1,8 @@ +Copyright (c) 2004 - 2008 Eike Stepper, Germany. +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: + Eike Stepper - initial API and implementation
\ No newline at end of file diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/epl-v10.html b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/epl-v10.html new file mode 100644 index 0000000000..d7b88e9416 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/epl-v10.html @@ -0,0 +1,319 @@ +<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"><head> +<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> +<meta name="ProgId" content="Word.Document"> +<meta name="Generator" content="Microsoft Word 9"> +<meta name="Originator" content="Microsoft Word 9"> +<link rel="File-List" href="http://www.eclipse.org/org/documents/Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml"><title>Eclipse Public License - Version 1.0</title><!--[if gte mso 9]><xml> + <o:DocumentProperties> + <o:Revision>2</o:Revision> + <o:TotalTime>3</o:TotalTime> + <o:Created>2004-03-05T23:03:00Z</o:Created> + <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved> + <o:Pages>4</o:Pages> + <o:Words>1626</o:Words> + <o:Characters>9270</o:Characters> + <o:Lines>77</o:Lines> + <o:Paragraphs>18</o:Paragraphs> + <o:CharactersWithSpaces>11384</o:CharactersWithSpaces> + <o:Version>9.4402</o:Version> + </o:DocumentProperties> +</xml><![endif]--><!--[if gte mso 9]><xml> + <w:WordDocument> + <w:TrackRevisions/> + </w:WordDocument> +</xml><![endif]--> + + +<style> +<!-- + /* Font Definitions */ +@font-face + {font-family:Tahoma; + panose-1:2 11 6 4 3 5 4 4 2 4; + mso-font-charset:0; + mso-generic-font-family:swiss; + mso-font-pitch:variable; + mso-font-signature:553679495 -2147483648 8 0 66047 0;} + /* Style Definitions */ +p.MsoNormal, li.MsoNormal, div.MsoNormal + {mso-style-parent:""; + margin:0in; + margin-bottom:.0001pt; + mso-pagination:widow-orphan; + font-size:12.0pt; + font-family:"Times New Roman"; + mso-fareast-font-family:"Times New Roman";} +p + {margin-right:0in; + mso-margin-top-alt:auto; + mso-margin-bottom-alt:auto; + margin-left:0in; + mso-pagination:widow-orphan; + font-size:12.0pt; + font-family:"Times New Roman"; + mso-fareast-font-family:"Times New Roman";} +p.BalloonText, li.BalloonText, div.BalloonText + {mso-style-name:"Balloon Text"; + margin:0in; + margin-bottom:.0001pt; + mso-pagination:widow-orphan; + font-size:8.0pt; + font-family:Tahoma; + mso-fareast-font-family:"Times New Roman";} +@page Section1 + {size:8.5in 11.0in; + margin:1.0in 1.25in 1.0in 1.25in; + mso-header-margin:.5in; + mso-footer-margin:.5in; + mso-paper-source:0;} +div.Section1 + {page:Section1;} +--> +</style></head> + +<body style="" lang="EN-US"> + +<div class="Section1"> + +<p style="text-align: center;" align="center"><b>Eclipse Public License - v 1.0</b> +</p> + +<p><span style="font-size: 10pt;">THE ACCOMPANYING PROGRAM IS PROVIDED UNDER +THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, +REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE +OF THIS AGREEMENT.</span> </p> + +<p><b><span style="font-size: 10pt;">1. DEFINITIONS</span></b> </p> + +<p><span style="font-size: 10pt;">"Contribution" means:</span> </p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a) +in the case of the initial Contributor, the initial code and documentation +distributed under this Agreement, and<br clear="left"> +b) in the case of each subsequent Contributor:</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">i) +changes to the Program, and</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">ii) +additions to the Program;</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">where +such changes and/or additions to the Program originate from and are distributed +by that particular Contributor. A Contribution 'originates' from a Contributor +if it was added to the Program by such Contributor itself or anyone acting on +such Contributor's behalf. Contributions do not include additions to the +Program which: (i) are separate modules of software distributed in conjunction +with the Program under their own license agreement, and (ii) are not derivative +works of the Program. </span></p> + +<p><span style="font-size: 10pt;">"Contributor" means any person or +entity that distributes the Program.</span> </p> + +<p><span style="font-size: 10pt;">"Licensed Patents " mean patent +claims licensable by a Contributor which are necessarily infringed by the use +or sale of its Contribution alone or when combined with the Program. </span></p> + +<p><span style="font-size: 10pt;">"Program" means the Contributions +distributed in accordance with this Agreement.</span> </p> + +<p><span style="font-size: 10pt;">"Recipient" means anyone who +receives the Program under this Agreement, including all Contributors.</span> </p> + +<p><b><span style="font-size: 10pt;">2. GRANT OF RIGHTS</span></b> </p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a) +Subject to the terms of this Agreement, each Contributor hereby grants Recipient +a non-exclusive, worldwide, royalty-free copyright license to<span style="color: red;"> </span>reproduce, prepare derivative works of, publicly +display, publicly perform, distribute and sublicense the Contribution of such +Contributor, if any, and such derivative works, in source code and object code +form.</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b) +Subject to the terms of this Agreement, each Contributor hereby grants +Recipient a non-exclusive, worldwide,<span style="color: green;"> </span>royalty-free +patent license under Licensed Patents to make, use, sell, offer to sell, import +and otherwise transfer the Contribution of such Contributor, if any, in source +code and object code form. This patent license shall apply to the combination +of the Contribution and the Program if, at the time the Contribution is added +by the Contributor, such addition of the Contribution causes such combination +to be covered by the Licensed Patents. The patent license shall not apply to +any other combinations which include the Contribution. No hardware per se is +licensed hereunder. </span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">c) +Recipient understands that although each Contributor grants the licenses to its +Contributions set forth herein, no assurances are provided by any Contributor +that the Program does not infringe the patent or other intellectual property +rights of any other entity. Each Contributor disclaims any liability to Recipient +for claims brought by any other entity based on infringement of intellectual +property rights or otherwise. As a condition to exercising the rights and +licenses granted hereunder, each Recipient hereby assumes sole responsibility +to secure any other intellectual property rights needed, if any. For example, +if a third party patent license is required to allow Recipient to distribute +the Program, it is Recipient's responsibility to acquire that license before +distributing the Program.</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">d) +Each Contributor represents that to its knowledge it has sufficient copyright +rights in its Contribution, if any, to grant the copyright license set forth in +this Agreement. </span></p> + +<p><b><span style="font-size: 10pt;">3. REQUIREMENTS</span></b> </p> + +<p><span style="font-size: 10pt;">A Contributor may choose to distribute the +Program in object code form under its own license agreement, provided that:</span> +</p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a) +it complies with the terms and conditions of this Agreement; and</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b) +its license agreement:</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">i) +effectively disclaims on behalf of all Contributors all warranties and +conditions, express and implied, including warranties or conditions of title +and non-infringement, and implied warranties or conditions of merchantability +and fitness for a particular purpose; </span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">ii) +effectively excludes on behalf of all Contributors all liability for damages, +including direct, indirect, special, incidental and consequential damages, such +as lost profits; </span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">iii) +states that any provisions which differ from this Agreement are offered by that +Contributor alone and not by any other party; and</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">iv) +states that source code for the Program is available from such Contributor, and +informs licensees how to obtain it in a reasonable manner on or through a +medium customarily used for software exchange.<span style="color: blue;"> </span></span></p> + +<p><span style="font-size: 10pt;">When the Program is made available in source +code form:</span> </p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a) +it must be made available under this Agreement; and </span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b) a +copy of this Agreement must be included with each copy of the Program. </span></p> + +<p><span style="font-size: 10pt;">Contributors may not remove or alter any +copyright notices contained within the Program. </span></p> + +<p><span style="font-size: 10pt;">Each Contributor must identify itself as the +originator of its Contribution, if any, in a manner that reasonably allows +subsequent Recipients to identify the originator of the Contribution. </span></p> + +<p><b><span style="font-size: 10pt;">4. COMMERCIAL DISTRIBUTION</span></b> </p> + +<p><span style="font-size: 10pt;">Commercial distributors of software may +accept certain responsibilities with respect to end users, business partners +and the like. While this license is intended to facilitate the commercial use +of the Program, the Contributor who includes the Program in a commercial +product offering should do so in a manner which does not create potential +liability for other Contributors. Therefore, if a Contributor includes the +Program in a commercial product offering, such Contributor ("Commercial +Contributor") hereby agrees to defend and indemnify every other +Contributor ("Indemnified Contributor") against any losses, damages and +costs (collectively "Losses") arising from claims, lawsuits and other +legal actions brought by a third party against the Indemnified Contributor to +the extent caused by the acts or omissions of such Commercial Contributor in +connection with its distribution of the Program in a commercial product +offering. The obligations in this section do not apply to any claims or Losses +relating to any actual or alleged intellectual property infringement. In order +to qualify, an Indemnified Contributor must: a) promptly notify the Commercial +Contributor in writing of such claim, and b) allow the Commercial Contributor +to control, and cooperate with the Commercial Contributor in, the defense and +any related settlement negotiations. The Indemnified Contributor may participate +in any such claim at its own expense.</span> </p> + +<p><span style="font-size: 10pt;">For example, a Contributor might include the +Program in a commercial product offering, Product X. That Contributor is then a +Commercial Contributor. If that Commercial Contributor then makes performance +claims, or offers warranties related to Product X, those performance claims and +warranties are such Commercial Contributor's responsibility alone. Under this +section, the Commercial Contributor would have to defend claims against the +other Contributors related to those performance claims and warranties, and if a +court requires any other Contributor to pay any damages as a result, the +Commercial Contributor must pay those damages.</span> </p> + +<p><b><span style="font-size: 10pt;">5. NO WARRANTY</span></b> </p> + +<p><span style="font-size: 10pt;">EXCEPT AS EXPRESSLY SET FORTH IN THIS +AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT +WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, +WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely +responsible for determining the appropriateness of using and distributing the +Program and assumes all risks associated with its exercise of rights under this +Agreement , including but not limited to the risks and costs of program errors, +compliance with applicable laws, damage to or loss of data, programs or +equipment, and unavailability or interruption of operations. </span></p> + +<p><b><span style="font-size: 10pt;">6. DISCLAIMER OF LIABILITY</span></b> </p> + +<p><span style="font-size: 10pt;">EXCEPT AS EXPRESSLY SET FORTH IN THIS +AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF +THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF +THE POSSIBILITY OF SUCH DAMAGES.</span> </p> + +<p><b><span style="font-size: 10pt;">7. GENERAL</span></b> </p> + +<p><span style="font-size: 10pt;">If any provision of this Agreement is invalid +or unenforceable under applicable law, it shall not affect the validity or +enforceability of the remainder of the terms of this Agreement, and without +further action by the parties hereto, such provision shall be reformed to the +minimum extent necessary to make such provision valid and enforceable.</span> </p> + +<p><span style="font-size: 10pt;">If Recipient institutes patent litigation +against any entity (including a cross-claim or counterclaim in a lawsuit) +alleging that the Program itself (excluding combinations of the Program with +other software or hardware) infringes such Recipient's patent(s), then such +Recipient's rights granted under Section 2(b) shall terminate as of the date +such litigation is filed. </span></p> + +<p><span style="font-size: 10pt;">All Recipient's rights under this Agreement +shall terminate if it fails to comply with any of the material terms or +conditions of this Agreement and does not cure such failure in a reasonable +period of time after becoming aware of such noncompliance. If all Recipient's +rights under this Agreement terminate, Recipient agrees to cease use and +distribution of the Program as soon as reasonably practicable. However, +Recipient's obligations under this Agreement and any licenses granted by +Recipient relating to the Program shall continue and survive. </span></p> + +<p><span style="font-size: 10pt;">Everyone is permitted to copy and distribute +copies of this Agreement, but in order to avoid inconsistency the Agreement is +copyrighted and may only be modified in the following manner. The Agreement +Steward reserves the right to publish new versions (including revisions) of +this Agreement from time to time. No one other than the Agreement Steward has +the right to modify this Agreement. The Eclipse Foundation is the initial +Agreement Steward. The Eclipse Foundation may assign the responsibility to +serve as the Agreement Steward to a suitable separate entity. Each new version +of the Agreement will be given a distinguishing version number. The Program +(including Contributions) may always be distributed subject to the version of +the Agreement under which it was received. In addition, after a new version of +the Agreement is published, Contributor may elect to distribute the Program +(including its Contributions) under the new version. Except as expressly stated +in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to +the intellectual property of any Contributor under this Agreement, whether +expressly, by implication, estoppel or otherwise. All rights in the Program not +expressly granted under this Agreement are reserved.</span> </p> + +<p><span style="font-size: 10pt;">This Agreement is governed by the laws of the +State of New York and the intellectual property laws of the United States of +America. No party to this Agreement will bring a legal action under this +Agreement more than one year after the cause of action arose. Each party waives +its rights to a jury trial in any resulting litigation.</span> </p> + +<p class="MsoNormal"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></p> + +</div> + +</body></html>
\ No newline at end of file diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/license.html b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/license.html new file mode 100644 index 0000000000..d7b88e9416 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/license.html @@ -0,0 +1,319 @@ +<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"><head> +<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> +<meta name="ProgId" content="Word.Document"> +<meta name="Generator" content="Microsoft Word 9"> +<meta name="Originator" content="Microsoft Word 9"> +<link rel="File-List" href="http://www.eclipse.org/org/documents/Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml"><title>Eclipse Public License - Version 1.0</title><!--[if gte mso 9]><xml> + <o:DocumentProperties> + <o:Revision>2</o:Revision> + <o:TotalTime>3</o:TotalTime> + <o:Created>2004-03-05T23:03:00Z</o:Created> + <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved> + <o:Pages>4</o:Pages> + <o:Words>1626</o:Words> + <o:Characters>9270</o:Characters> + <o:Lines>77</o:Lines> + <o:Paragraphs>18</o:Paragraphs> + <o:CharactersWithSpaces>11384</o:CharactersWithSpaces> + <o:Version>9.4402</o:Version> + </o:DocumentProperties> +</xml><![endif]--><!--[if gte mso 9]><xml> + <w:WordDocument> + <w:TrackRevisions/> + </w:WordDocument> +</xml><![endif]--> + + +<style> +<!-- + /* Font Definitions */ +@font-face + {font-family:Tahoma; + panose-1:2 11 6 4 3 5 4 4 2 4; + mso-font-charset:0; + mso-generic-font-family:swiss; + mso-font-pitch:variable; + mso-font-signature:553679495 -2147483648 8 0 66047 0;} + /* Style Definitions */ +p.MsoNormal, li.MsoNormal, div.MsoNormal + {mso-style-parent:""; + margin:0in; + margin-bottom:.0001pt; + mso-pagination:widow-orphan; + font-size:12.0pt; + font-family:"Times New Roman"; + mso-fareast-font-family:"Times New Roman";} +p + {margin-right:0in; + mso-margin-top-alt:auto; + mso-margin-bottom-alt:auto; + margin-left:0in; + mso-pagination:widow-orphan; + font-size:12.0pt; + font-family:"Times New Roman"; + mso-fareast-font-family:"Times New Roman";} +p.BalloonText, li.BalloonText, div.BalloonText + {mso-style-name:"Balloon Text"; + margin:0in; + margin-bottom:.0001pt; + mso-pagination:widow-orphan; + font-size:8.0pt; + font-family:Tahoma; + mso-fareast-font-family:"Times New Roman";} +@page Section1 + {size:8.5in 11.0in; + margin:1.0in 1.25in 1.0in 1.25in; + mso-header-margin:.5in; + mso-footer-margin:.5in; + mso-paper-source:0;} +div.Section1 + {page:Section1;} +--> +</style></head> + +<body style="" lang="EN-US"> + +<div class="Section1"> + +<p style="text-align: center;" align="center"><b>Eclipse Public License - v 1.0</b> +</p> + +<p><span style="font-size: 10pt;">THE ACCOMPANYING PROGRAM IS PROVIDED UNDER +THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, +REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE +OF THIS AGREEMENT.</span> </p> + +<p><b><span style="font-size: 10pt;">1. DEFINITIONS</span></b> </p> + +<p><span style="font-size: 10pt;">"Contribution" means:</span> </p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a) +in the case of the initial Contributor, the initial code and documentation +distributed under this Agreement, and<br clear="left"> +b) in the case of each subsequent Contributor:</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">i) +changes to the Program, and</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">ii) +additions to the Program;</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">where +such changes and/or additions to the Program originate from and are distributed +by that particular Contributor. A Contribution 'originates' from a Contributor +if it was added to the Program by such Contributor itself or anyone acting on +such Contributor's behalf. Contributions do not include additions to the +Program which: (i) are separate modules of software distributed in conjunction +with the Program under their own license agreement, and (ii) are not derivative +works of the Program. </span></p> + +<p><span style="font-size: 10pt;">"Contributor" means any person or +entity that distributes the Program.</span> </p> + +<p><span style="font-size: 10pt;">"Licensed Patents " mean patent +claims licensable by a Contributor which are necessarily infringed by the use +or sale of its Contribution alone or when combined with the Program. </span></p> + +<p><span style="font-size: 10pt;">"Program" means the Contributions +distributed in accordance with this Agreement.</span> </p> + +<p><span style="font-size: 10pt;">"Recipient" means anyone who +receives the Program under this Agreement, including all Contributors.</span> </p> + +<p><b><span style="font-size: 10pt;">2. GRANT OF RIGHTS</span></b> </p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a) +Subject to the terms of this Agreement, each Contributor hereby grants Recipient +a non-exclusive, worldwide, royalty-free copyright license to<span style="color: red;"> </span>reproduce, prepare derivative works of, publicly +display, publicly perform, distribute and sublicense the Contribution of such +Contributor, if any, and such derivative works, in source code and object code +form.</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b) +Subject to the terms of this Agreement, each Contributor hereby grants +Recipient a non-exclusive, worldwide,<span style="color: green;"> </span>royalty-free +patent license under Licensed Patents to make, use, sell, offer to sell, import +and otherwise transfer the Contribution of such Contributor, if any, in source +code and object code form. This patent license shall apply to the combination +of the Contribution and the Program if, at the time the Contribution is added +by the Contributor, such addition of the Contribution causes such combination +to be covered by the Licensed Patents. The patent license shall not apply to +any other combinations which include the Contribution. No hardware per se is +licensed hereunder. </span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">c) +Recipient understands that although each Contributor grants the licenses to its +Contributions set forth herein, no assurances are provided by any Contributor +that the Program does not infringe the patent or other intellectual property +rights of any other entity. Each Contributor disclaims any liability to Recipient +for claims brought by any other entity based on infringement of intellectual +property rights or otherwise. As a condition to exercising the rights and +licenses granted hereunder, each Recipient hereby assumes sole responsibility +to secure any other intellectual property rights needed, if any. For example, +if a third party patent license is required to allow Recipient to distribute +the Program, it is Recipient's responsibility to acquire that license before +distributing the Program.</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">d) +Each Contributor represents that to its knowledge it has sufficient copyright +rights in its Contribution, if any, to grant the copyright license set forth in +this Agreement. </span></p> + +<p><b><span style="font-size: 10pt;">3. REQUIREMENTS</span></b> </p> + +<p><span style="font-size: 10pt;">A Contributor may choose to distribute the +Program in object code form under its own license agreement, provided that:</span> +</p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a) +it complies with the terms and conditions of this Agreement; and</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b) +its license agreement:</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">i) +effectively disclaims on behalf of all Contributors all warranties and +conditions, express and implied, including warranties or conditions of title +and non-infringement, and implied warranties or conditions of merchantability +and fitness for a particular purpose; </span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">ii) +effectively excludes on behalf of all Contributors all liability for damages, +including direct, indirect, special, incidental and consequential damages, such +as lost profits; </span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">iii) +states that any provisions which differ from this Agreement are offered by that +Contributor alone and not by any other party; and</span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">iv) +states that source code for the Program is available from such Contributor, and +informs licensees how to obtain it in a reasonable manner on or through a +medium customarily used for software exchange.<span style="color: blue;"> </span></span></p> + +<p><span style="font-size: 10pt;">When the Program is made available in source +code form:</span> </p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">a) +it must be made available under this Agreement; and </span></p> + +<p class="MsoNormal" style="margin-left: 0.5in;"><span style="font-size: 10pt;">b) a +copy of this Agreement must be included with each copy of the Program. </span></p> + +<p><span style="font-size: 10pt;">Contributors may not remove or alter any +copyright notices contained within the Program. </span></p> + +<p><span style="font-size: 10pt;">Each Contributor must identify itself as the +originator of its Contribution, if any, in a manner that reasonably allows +subsequent Recipients to identify the originator of the Contribution. </span></p> + +<p><b><span style="font-size: 10pt;">4. COMMERCIAL DISTRIBUTION</span></b> </p> + +<p><span style="font-size: 10pt;">Commercial distributors of software may +accept certain responsibilities with respect to end users, business partners +and the like. While this license is intended to facilitate the commercial use +of the Program, the Contributor who includes the Program in a commercial +product offering should do so in a manner which does not create potential +liability for other Contributors. Therefore, if a Contributor includes the +Program in a commercial product offering, such Contributor ("Commercial +Contributor") hereby agrees to defend and indemnify every other +Contributor ("Indemnified Contributor") against any losses, damages and +costs (collectively "Losses") arising from claims, lawsuits and other +legal actions brought by a third party against the Indemnified Contributor to +the extent caused by the acts or omissions of such Commercial Contributor in +connection with its distribution of the Program in a commercial product +offering. The obligations in this section do not apply to any claims or Losses +relating to any actual or alleged intellectual property infringement. In order +to qualify, an Indemnified Contributor must: a) promptly notify the Commercial +Contributor in writing of such claim, and b) allow the Commercial Contributor +to control, and cooperate with the Commercial Contributor in, the defense and +any related settlement negotiations. The Indemnified Contributor may participate +in any such claim at its own expense.</span> </p> + +<p><span style="font-size: 10pt;">For example, a Contributor might include the +Program in a commercial product offering, Product X. That Contributor is then a +Commercial Contributor. If that Commercial Contributor then makes performance +claims, or offers warranties related to Product X, those performance claims and +warranties are such Commercial Contributor's responsibility alone. Under this +section, the Commercial Contributor would have to defend claims against the +other Contributors related to those performance claims and warranties, and if a +court requires any other Contributor to pay any damages as a result, the +Commercial Contributor must pay those damages.</span> </p> + +<p><b><span style="font-size: 10pt;">5. NO WARRANTY</span></b> </p> + +<p><span style="font-size: 10pt;">EXCEPT AS EXPRESSLY SET FORTH IN THIS +AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT +WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, +WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely +responsible for determining the appropriateness of using and distributing the +Program and assumes all risks associated with its exercise of rights under this +Agreement , including but not limited to the risks and costs of program errors, +compliance with applicable laws, damage to or loss of data, programs or +equipment, and unavailability or interruption of operations. </span></p> + +<p><b><span style="font-size: 10pt;">6. DISCLAIMER OF LIABILITY</span></b> </p> + +<p><span style="font-size: 10pt;">EXCEPT AS EXPRESSLY SET FORTH IN THIS +AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF +THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF +THE POSSIBILITY OF SUCH DAMAGES.</span> </p> + +<p><b><span style="font-size: 10pt;">7. GENERAL</span></b> </p> + +<p><span style="font-size: 10pt;">If any provision of this Agreement is invalid +or unenforceable under applicable law, it shall not affect the validity or +enforceability of the remainder of the terms of this Agreement, and without +further action by the parties hereto, such provision shall be reformed to the +minimum extent necessary to make such provision valid and enforceable.</span> </p> + +<p><span style="font-size: 10pt;">If Recipient institutes patent litigation +against any entity (including a cross-claim or counterclaim in a lawsuit) +alleging that the Program itself (excluding combinations of the Program with +other software or hardware) infringes such Recipient's patent(s), then such +Recipient's rights granted under Section 2(b) shall terminate as of the date +such litigation is filed. </span></p> + +<p><span style="font-size: 10pt;">All Recipient's rights under this Agreement +shall terminate if it fails to comply with any of the material terms or +conditions of this Agreement and does not cure such failure in a reasonable +period of time after becoming aware of such noncompliance. If all Recipient's +rights under this Agreement terminate, Recipient agrees to cease use and +distribution of the Program as soon as reasonably practicable. However, +Recipient's obligations under this Agreement and any licenses granted by +Recipient relating to the Program shall continue and survive. </span></p> + +<p><span style="font-size: 10pt;">Everyone is permitted to copy and distribute +copies of this Agreement, but in order to avoid inconsistency the Agreement is +copyrighted and may only be modified in the following manner. The Agreement +Steward reserves the right to publish new versions (including revisions) of +this Agreement from time to time. No one other than the Agreement Steward has +the right to modify this Agreement. The Eclipse Foundation is the initial +Agreement Steward. The Eclipse Foundation may assign the responsibility to +serve as the Agreement Steward to a suitable separate entity. Each new version +of the Agreement will be given a distinguishing version number. The Program +(including Contributions) may always be distributed subject to the version of +the Agreement under which it was received. In addition, after a new version of +the Agreement is published, Contributor may elect to distribute the Program +(including its Contributions) under the new version. Except as expressly stated +in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to +the intellectual property of any Contributor under this Agreement, whether +expressly, by implication, estoppel or otherwise. All rights in the Program not +expressly granted under this Agreement are reserved.</span> </p> + +<p><span style="font-size: 10pt;">This Agreement is governed by the laws of the +State of New York and the intellectual property laws of the United States of +America. No party to this Agreement will bring a legal action under this +Agreement more than one year after the cause of action arose. Each party waives +its rights to a jury trial in any resulting litigation.</span> </p> + +<p class="MsoNormal"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></p> + +</div> + +</body></html>
\ No newline at end of file diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/model/interfaces.ecore b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/model/interfaces.ecore new file mode 100644 index 0000000000..71b02acaf8 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/model/interfaces.ecore @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ecore:EPackage xmi:version="2.0" + xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="model4interfaces" + nsURI="http://www.eclipse.org/emf/CDO/tests/model4interfaces/1.0.0" nsPrefix="model4interfaces"> + <eClassifiers xsi:type="ecore:EClass" name="ISingleRefContainer" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="element" eType="#//ISingleRefContainedElement" + containment="true" eOpposite="#//ISingleRefContainedElement/parent"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ISingleRefContainedElement" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//ISingleRefContainer" + eOpposite="#//ISingleRefContainer/element"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ISingleRefNonContainer" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="element" eType="#//ISingleRefNonContainedElement" + eOpposite="#//ISingleRefNonContainedElement/parent"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ISingleRefNonContainedElement" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//ISingleRefNonContainer" + eOpposite="#//ISingleRefNonContainer/element"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IMultiRefContainer" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1" + eType="#//IMultiRefContainedElement" containment="true" eOpposite="#//IMultiRefContainedElement/parent"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IMultiRefContainedElement" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IMultiRefContainer" + eOpposite="#//IMultiRefContainer/elements"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IMultiRefNonContainer" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1" + eType="#//IMultiRefNonContainedElement" eOpposite="#//IMultiRefNonContainedElement/parent"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IMultiRefNonContainedElement" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//IMultiRefNonContainer" + eOpposite="#//IMultiRefNonContainer/elements"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="INamedElement" abstract="true" interface="true"> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IContainedElementNoParentLink" abstract="true" + interface="true"/> + <eClassifiers xsi:type="ecore:EClass" name="ISingleRefContainerNPL" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="element" eType="#//IContainedElementNoParentLink" + containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="ISingleRefNonContainerNPL" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="element" eType="#//IContainedElementNoParentLink"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IMultiRefContainerNPL" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1" + eType="#//IContainedElementNoParentLink" containment="true"/> + </eClassifiers> + <eClassifiers xsi:type="ecore:EClass" name="IMultiRefNonContainerNPL" abstract="true" + interface="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1" + eType="#//IContainedElementNoParentLink"/> + </eClassifiers> +</ecore:EPackage> diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/model/interfaces.genmodel b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/model/interfaces.genmodel new file mode 100644 index 0000000000..f8393786e3 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/model/interfaces.genmodel @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="UTF-8"?> +<genmodel:GenModel xmi:version="2.0" + xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" + xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.emf.cdo.tests.model4interfaces/src" + modelPluginID="org.eclipse.emf.cdo.tests.model4interfaces" modelName="Interfaces" + rootExtendsInterface="org.eclipse.emf.cdo.CDOObject" rootExtendsClass="org.eclipse.emf.internal.cdo.CDOObjectImpl" + reflectiveDelegation="true" importerID="org.eclipse.emf.importer.cdo" featureDelegation="Reflective" + complianceLevel="6.0" copyrightFields="false" editPluginID="org.eclipse.emf.cdo.tests.model4interfaces.edit" + editorPluginID="org.eclipse.emf.cdo.tests.model4interfaces.editor"> + <foreignModel>interfaces.ecore</foreignModel> + <modelPluginVariables>CDO=org.eclipse.emf.cdo</modelPluginVariables> + <genPackages prefix="model4interfaces" basePackage="org.eclipse.emf.cdo.tests" disposableProviderFactory="true" + ecorePackage="interfaces.ecore#/"> + <genClasses image="false" ecoreClass="interfaces.ecore#//ISingleRefContainer"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference interfaces.ecore#//ISingleRefContainer/element"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//ISingleRefContainedElement"> + <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference interfaces.ecore#//ISingleRefContainedElement/parent"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//ISingleRefNonContainer"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference interfaces.ecore#//ISingleRefNonContainer/element"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//ISingleRefNonContainedElement"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference interfaces.ecore#//ISingleRefNonContainedElement/parent"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//IMultiRefContainer"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference interfaces.ecore#//IMultiRefContainer/elements"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//IMultiRefContainedElement"> + <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference interfaces.ecore#//IMultiRefContainedElement/parent"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//IMultiRefNonContainer"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference interfaces.ecore#//IMultiRefNonContainer/elements"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//IMultiRefNonContainedElement"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference interfaces.ecore#//IMultiRefNonContainedElement/parent"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//INamedElement"> + <genFeatures createChild="false" ecoreFeature="ecore:EAttribute interfaces.ecore#//INamedElement/name"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//IContainedElementNoParentLink"/> + <genClasses image="false" ecoreClass="interfaces.ecore#//ISingleRefContainerNPL"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference interfaces.ecore#//ISingleRefContainerNPL/element"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//ISingleRefNonContainerNPL"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference interfaces.ecore#//ISingleRefNonContainerNPL/element"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//IMultiRefContainerNPL"> + <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference interfaces.ecore#//IMultiRefContainerNPL/element"/> + </genClasses> + <genClasses image="false" ecoreClass="interfaces.ecore#//IMultiRefNonContainerNPL"> + <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference interfaces.ecore#//IMultiRefNonContainerNPL/element"/> + </genClasses> + </genPackages> +</genmodel:GenModel> diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/plugin.properties b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/plugin.properties new file mode 100644 index 0000000000..51fabab773 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/plugin.properties @@ -0,0 +1,25 @@ +# Copyright (c) 2004 - 2008 Eike Stepper, Germany. +# 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: +# Eike Stepper - initial API and implementation + +# NLS_MESSAGEFORMAT_VAR + +# ============================================================================== +# Do not change the properties between this line and the last line containing: +# %%% END OF TRANSLATED PROPERTIES %%% +# Instead, either redefine an existing property, or create a new property, +# append it to the end of the file, and change the code to use the new name. +# ============================================================================== + +pluginName = CDO Model Repository Tests Model4 Interfaces +providerName = Eclipse.org + +# ============================================================================== +# %%% END OF TRANSLATED PROPERTIES %%% +# The above properties have been shipped for translation. +# ============================================================================== diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/plugin.xml b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/plugin.xml new file mode 100644 index 0000000000..a010fe2505 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/plugin.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.0"?> + +<!-- + <copyright> + </copyright> + + $Id: plugin.xml,v 1.1 2008-07-10 15:42:28 estepper Exp $ +--> + +<plugin> + + <extension point="org.eclipse.emf.ecore.generated_package"> + <package + uri="http://www.eclipse.org/emf/CDO/tests/model4interfaces/1.0.0" + class="org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage"/> + </extension> + +</plugin> diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IContainedElementNoParentLink.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IContainedElementNoParentLink.java new file mode 100644 index 0000000000..aee9ae6465 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IContainedElementNoParentLink.java @@ -0,0 +1,23 @@ +/** + * <copyright> + * </copyright> + * + * $Id: IContainedElementNoParentLink.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IContained Element No Parent Link</b></em>'. + * <!-- end-user-doc --> + * + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIContainedElementNoParentLink() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface IContainedElementNoParentLink extends CDOObject { +} // IContainedElementNoParentLink diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefContainedElement.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefContainedElement.java new file mode 100644 index 0000000000..5de33ccdc4 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefContainedElement.java @@ -0,0 +1,57 @@ +/** + * <copyright> + * </copyright> + * + * $Id: IMultiRefContainedElement.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IMulti Ref Contained Element</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement#getParent <em>Parent</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefContainedElement() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface IMultiRefContainedElement extends CDOObject { + /** + * Returns the value of the '<em><b>Parent</b></em>' container reference. + * It is bidirectional and its opposite is '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer#getElements <em>Elements</em>}'. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Parent</em>' container reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Parent</em>' container reference. + * @see #setParent(IMultiRefContainer) + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefContainedElement_Parent() + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer#getElements + * @model opposite="elements" transient="false" + * @generated + */ + IMultiRefContainer getParent(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement#getParent <em>Parent</em>}' container reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Parent</em>' container reference. + * @see #getParent() + * @generated + */ + void setParent(IMultiRefContainer value); + +} // IMultiRefContainedElement diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefContainer.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefContainer.java new file mode 100644 index 0000000000..ec97a95f31 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefContainer.java @@ -0,0 +1,49 @@ +/** + * <copyright> + * </copyright> + * + * $Id: IMultiRefContainer.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IMulti Ref Container</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer#getElements <em>Elements</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefContainer() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface IMultiRefContainer extends CDOObject { + /** + * Returns the value of the '<em><b>Elements</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement}. + * It is bidirectional and its opposite is '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement#getParent <em>Parent</em>}'. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Elements</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Elements</em>' containment reference list. + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefContainer_Elements() + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement#getParent + * @model opposite="parent" containment="true" + * @generated + */ + EList<IMultiRefContainedElement> getElements(); + +} // IMultiRefContainer diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefContainerNPL.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefContainerNPL.java new file mode 100644 index 0000000000..d1140857a1 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefContainerNPL.java @@ -0,0 +1,47 @@ +/** + * <copyright> + * </copyright> + * + * $Id: IMultiRefContainerNPL.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IMulti Ref Container NPL</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL#getElements <em>Elements</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefContainerNPL() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface IMultiRefContainerNPL extends CDOObject { + /** + * Returns the value of the '<em><b>Elements</b></em>' containment reference list. + * The list contents are of type {@link org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Elements</em>' containment reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Elements</em>' containment reference list. + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefContainerNPL_Elements() + * @model containment="true" + * @generated + */ + EList<IContainedElementNoParentLink> getElements(); + +} // IMultiRefContainerNPL diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefNonContainedElement.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefNonContainedElement.java new file mode 100644 index 0000000000..87b74bccb6 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefNonContainedElement.java @@ -0,0 +1,59 @@ +/** + * <copyright> + * </copyright> + * + * $Id: IMultiRefNonContainedElement.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IMulti Ref Non Contained Element</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement#getParent <em>Parent</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefNonContainedElement() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface IMultiRefNonContainedElement extends CDOObject { + /** + * Returns the value of the '<em><b>Parent</b></em>' reference. + * It is bidirectional and its opposite is '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer#getElements <em>Elements</em>}'. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Parent</em>' reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Parent</em>' reference. + * @see #setParent(IMultiRefNonContainer) + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefNonContainedElement_Parent() + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer#getElements + * @model opposite="elements" + * @generated + */ + IMultiRefNonContainer getParent(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement#getParent <em>Parent</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Parent</em>' reference. + * @see #getParent() + * @generated + */ + void setParent(IMultiRefNonContainer value); + +} // IMultiRefNonContainedElement diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefNonContainer.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefNonContainer.java new file mode 100644 index 0000000000..4c34460038 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefNonContainer.java @@ -0,0 +1,48 @@ +/** + * <copyright> + * </copyright> + * + * $Id: IMultiRefNonContainer.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IMulti Ref Non Container</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer#getElements <em>Elements</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefNonContainer() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface IMultiRefNonContainer extends CDOObject { + /** + * Returns the value of the '<em><b>Elements</b></em>' reference list. + * The list contents are of type {@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement}. + * It is bidirectional and its opposite is '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement#getParent <em>Parent</em>}'. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Elements</em>' reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Elements</em>' reference list. + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefNonContainer_Elements() + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement#getParent + * @model opposite="parent" + * @generated + */ + EList<IMultiRefNonContainedElement> getElements(); + +} // IMultiRefNonContainer diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefNonContainerNPL.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefNonContainerNPL.java new file mode 100644 index 0000000000..f63f6d5711 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/IMultiRefNonContainerNPL.java @@ -0,0 +1,47 @@ +/** + * <copyright> + * </copyright> + * + * $Id: IMultiRefNonContainerNPL.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>IMulti Ref Non Container NPL</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL#getElements <em>Elements</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefNonContainerNPL() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface IMultiRefNonContainerNPL extends CDOObject { + /** + * Returns the value of the '<em><b>Elements</b></em>' reference list. + * The list contents are of type {@link org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink}. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Elements</em>' reference list isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Elements</em>' reference list. + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getIMultiRefNonContainerNPL_Elements() + * @model + * @generated + */ + EList<IContainedElementNoParentLink> getElements(); + +} // IMultiRefNonContainerNPL diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/INamedElement.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/INamedElement.java new file mode 100644 index 0000000000..01b7671da5 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/INamedElement.java @@ -0,0 +1,55 @@ +/** + * <copyright> + * </copyright> + * + * $Id: INamedElement.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>INamed Element</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.INamedElement#getName <em>Name</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getINamedElement() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface INamedElement extends CDOObject { + /** + * Returns the value of the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Name</em>' attribute isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Name</em>' attribute. + * @see #setName(String) + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getINamedElement_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.tests.model4interfaces.INamedElement#getName <em>Name</em>}' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Name</em>' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // INamedElement diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefContainedElement.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefContainedElement.java new file mode 100644 index 0000000000..ef5ed894ab --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefContainedElement.java @@ -0,0 +1,57 @@ +/** + * <copyright> + * </copyright> + * + * $Id: ISingleRefContainedElement.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>ISingle Ref Contained Element</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement#getParent <em>Parent</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefContainedElement() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface ISingleRefContainedElement extends CDOObject { + /** + * Returns the value of the '<em><b>Parent</b></em>' container reference. + * It is bidirectional and its opposite is '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer#getElement <em>Element</em>}'. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Parent</em>' container reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Parent</em>' container reference. + * @see #setParent(ISingleRefContainer) + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefContainedElement_Parent() + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer#getElement + * @model opposite="element" transient="false" + * @generated + */ + ISingleRefContainer getParent(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement#getParent <em>Parent</em>}' container reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Parent</em>' container reference. + * @see #getParent() + * @generated + */ + void setParent(ISingleRefContainer value); + +} // ISingleRefContainedElement diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefContainer.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefContainer.java new file mode 100644 index 0000000000..b11aa29fa0 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefContainer.java @@ -0,0 +1,57 @@ +/** + * <copyright> + * </copyright> + * + * $Id: ISingleRefContainer.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>ISingle Ref Container</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer#getElement <em>Element</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefContainer() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface ISingleRefContainer extends CDOObject { + /** + * Returns the value of the '<em><b>Element</b></em>' containment reference. + * It is bidirectional and its opposite is '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement#getParent <em>Parent</em>}'. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Element</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Element</em>' containment reference. + * @see #setElement(ISingleRefContainedElement) + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefContainer_Element() + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement#getParent + * @model opposite="parent" containment="true" + * @generated + */ + ISingleRefContainedElement getElement(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer#getElement <em>Element</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Element</em>' containment reference. + * @see #getElement() + * @generated + */ + void setElement(ISingleRefContainedElement value); + +} // ISingleRefContainer diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefContainerNPL.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefContainerNPL.java new file mode 100644 index 0000000000..31e2f68ec5 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefContainerNPL.java @@ -0,0 +1,55 @@ +/** + * <copyright> + * </copyright> + * + * $Id: ISingleRefContainerNPL.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>ISingle Ref Container NPL</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL#getElement <em>Element</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefContainerNPL() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface ISingleRefContainerNPL extends CDOObject { + /** + * Returns the value of the '<em><b>Element</b></em>' containment reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Element</em>' containment reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Element</em>' containment reference. + * @see #setElement(IContainedElementNoParentLink) + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefContainerNPL_Element() + * @model containment="true" + * @generated + */ + IContainedElementNoParentLink getElement(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL#getElement <em>Element</em>}' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Element</em>' containment reference. + * @see #getElement() + * @generated + */ + void setElement(IContainedElementNoParentLink value); + +} // ISingleRefContainerNPL diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefNonContainedElement.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefNonContainedElement.java new file mode 100644 index 0000000000..67ef51481f --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefNonContainedElement.java @@ -0,0 +1,57 @@ +/** + * <copyright> + * </copyright> + * + * $Id: ISingleRefNonContainedElement.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>ISingle Ref Non Contained Element</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement#getParent <em>Parent</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefNonContainedElement() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface ISingleRefNonContainedElement extends CDOObject { + /** + * Returns the value of the '<em><b>Parent</b></em>' reference. + * It is bidirectional and its opposite is '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer#getElement <em>Element</em>}'. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Parent</em>' reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Parent</em>' reference. + * @see #setParent(ISingleRefNonContainer) + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefNonContainedElement_Parent() + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer#getElement + * @model opposite="element" + * @generated + */ + ISingleRefNonContainer getParent(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement#getParent <em>Parent</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Parent</em>' reference. + * @see #getParent() + * @generated + */ + void setParent(ISingleRefNonContainer value); + +} // ISingleRefNonContainedElement diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefNonContainer.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefNonContainer.java new file mode 100644 index 0000000000..cf85922a9e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefNonContainer.java @@ -0,0 +1,57 @@ +/** + * <copyright> + * </copyright> + * + * $Id: ISingleRefNonContainer.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>ISingle Ref Non Container</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer#getElement <em>Element</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefNonContainer() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface ISingleRefNonContainer extends CDOObject { + /** + * Returns the value of the '<em><b>Element</b></em>' reference. + * It is bidirectional and its opposite is '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement#getParent <em>Parent</em>}'. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Element</em>' reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Element</em>' reference. + * @see #setElement(ISingleRefNonContainedElement) + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefNonContainer_Element() + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement#getParent + * @model opposite="parent" + * @generated + */ + ISingleRefNonContainedElement getElement(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer#getElement <em>Element</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Element</em>' reference. + * @see #getElement() + * @generated + */ + void setElement(ISingleRefNonContainedElement value); + +} // ISingleRefNonContainer diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefNonContainerNPL.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefNonContainerNPL.java new file mode 100644 index 0000000000..2f1eecd427 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/ISingleRefNonContainerNPL.java @@ -0,0 +1,55 @@ +/** + * <copyright> + * </copyright> + * + * $Id: ISingleRefNonContainerNPL.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.cdo.CDOObject; + +/** + * <!-- begin-user-doc --> + * A representation of the model object '<em><b>ISingle Ref Non Container NPL</b></em>'. + * <!-- end-user-doc --> + * + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL#getElement <em>Element</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefNonContainerNPL() + * @model interface="true" abstract="true" + * @extends CDOObject + * @generated + */ +public interface ISingleRefNonContainerNPL extends CDOObject { + /** + * Returns the value of the '<em><b>Element</b></em>' reference. + * <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Element</em>' reference isn't clear, + * there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * @return the value of the '<em>Element</em>' reference. + * @see #setElement(IContainedElementNoParentLink) + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage#getISingleRefNonContainerNPL_Element() + * @model + * @generated + */ + IContainedElementNoParentLink getElement(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL#getElement <em>Element</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param value the new value of the '<em>Element</em>' reference. + * @see #getElement() + * @generated + */ + void setElement(IContainedElementNoParentLink value); + +} // ISingleRefNonContainerNPL diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/impl/model4interfacesFactoryImpl.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/impl/model4interfacesFactoryImpl.java new file mode 100644 index 0000000000..5aaf127510 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/impl/model4interfacesFactoryImpl.java @@ -0,0 +1,88 @@ +/** + * <copyright> + * </copyright> + * + * $Id: model4interfacesFactoryImpl.java,v 1.1 2008-07-10 15:42:29 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces.impl; + +import org.eclipse.emf.cdo.tests.model4interfaces.*; + +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; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Factory</b>. + * <!-- end-user-doc --> + * @generated + */ +public class model4interfacesFactoryImpl extends EFactoryImpl implements model4interfacesFactory { + /** + * Creates the default factory implementation. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public static model4interfacesFactory init() { + try { + model4interfacesFactory themodel4interfacesFactory = (model4interfacesFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/emf/CDO/tests/model4interfaces/1.0.0"); + if (themodel4interfacesFactory != null) { + return themodel4interfacesFactory; + } + } + catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new model4interfacesFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public model4interfacesFactoryImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public model4interfacesPackage getmodel4interfacesPackage() { + return (model4interfacesPackage)getEPackage(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @deprecated + * @generated + */ + @Deprecated + public static model4interfacesPackage getPackage() { + return model4interfacesPackage.eINSTANCE; + } + +} //model4interfacesFactoryImpl diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/impl/model4interfacesPackageImpl.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/impl/model4interfacesPackageImpl.java new file mode 100644 index 0000000000..644bd625ff --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/impl/model4interfacesPackageImpl.java @@ -0,0 +1,594 @@ +/** + * <copyright> + * </copyright> + * + * $Id: model4interfacesPackageImpl.java,v 1.1 2008-07-10 15:42:29 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces.impl; + +import org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink; +import org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement; +import org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer; +import org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL; +import org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement; +import org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer; +import org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL; +import org.eclipse.emf.cdo.tests.model4interfaces.INamedElement; +import org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement; +import org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer; +import org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL; +import org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement; +import org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer; +import org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL; +import org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesFactory; +import org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage; + +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; + +/** + * <!-- begin-user-doc --> + * An implementation of the model <b>Package</b>. + * <!-- end-user-doc --> + * @generated + */ +public class model4interfacesPackageImpl extends EPackageImpl implements model4interfacesPackage { + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iSingleRefContainerEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iSingleRefContainedElementEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iSingleRefNonContainerEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iSingleRefNonContainedElementEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iMultiRefContainerEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iMultiRefContainedElementEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iMultiRefNonContainerEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iMultiRefNonContainedElementEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iNamedElementEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iContainedElementNoParentLinkEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iSingleRefContainerNPLEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iSingleRefNonContainerNPLEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iMultiRefContainerNPLEClass = null; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + private EClass iMultiRefNonContainerNPLEClass = 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.cdo.tests.model4interfaces.model4interfacesPackage#eNS_URI + * @see #init() + * @generated + */ + private model4interfacesPackageImpl() { + super(eNS_URI, model4interfacesFactory.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. Simple + * dependencies are satisfied by calling this method on all + * dependent packages before doing anything else. This method drives + * initialization for interdependent packages directly, in parallel + * with this package, itself. + * <p>Of this package and its interdependencies, all packages which + * have not yet been registered by their URI values are first created + * and registered. The packages are then initialized in two steps: + * meta-model objects for all of the packages are created before any + * are initialized, since one package's meta-model objects may refer to + * those of another. + * <p>Invocation of this method will not affect any packages that have + * already been initialized. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static model4interfacesPackage init() { + if (isInited) return (model4interfacesPackage)EPackage.Registry.INSTANCE.getEPackage(model4interfacesPackage.eNS_URI); + + // Obtain or create and register package + model4interfacesPackageImpl themodel4interfacesPackage = (model4interfacesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof model4interfacesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new model4interfacesPackageImpl()); + + isInited = true; + + // Create package meta-data objects + themodel4interfacesPackage.createPackageContents(); + + // Initialize created meta-data + themodel4interfacesPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + themodel4interfacesPackage.freeze(); + + return themodel4interfacesPackage; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getISingleRefContainer() { + return iSingleRefContainerEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getISingleRefContainer_Element() { + return (EReference)iSingleRefContainerEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getISingleRefContainedElement() { + return iSingleRefContainedElementEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getISingleRefContainedElement_Parent() { + return (EReference)iSingleRefContainedElementEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getISingleRefNonContainer() { + return iSingleRefNonContainerEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getISingleRefNonContainer_Element() { + return (EReference)iSingleRefNonContainerEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getISingleRefNonContainedElement() { + return iSingleRefNonContainedElementEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getISingleRefNonContainedElement_Parent() { + return (EReference)iSingleRefNonContainedElementEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIMultiRefContainer() { + return iMultiRefContainerEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIMultiRefContainer_Elements() { + return (EReference)iMultiRefContainerEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIMultiRefContainedElement() { + return iMultiRefContainedElementEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIMultiRefContainedElement_Parent() { + return (EReference)iMultiRefContainedElementEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIMultiRefNonContainer() { + return iMultiRefNonContainerEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIMultiRefNonContainer_Elements() { + return (EReference)iMultiRefNonContainerEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIMultiRefNonContainedElement() { + return iMultiRefNonContainedElementEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIMultiRefNonContainedElement_Parent() { + return (EReference)iMultiRefNonContainedElementEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getINamedElement() { + return iNamedElementEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EAttribute getINamedElement_Name() { + return (EAttribute)iNamedElementEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIContainedElementNoParentLink() { + return iContainedElementNoParentLinkEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getISingleRefContainerNPL() { + return iSingleRefContainerNPLEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getISingleRefContainerNPL_Element() { + return (EReference)iSingleRefContainerNPLEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getISingleRefNonContainerNPL() { + return iSingleRefNonContainerNPLEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getISingleRefNonContainerNPL_Element() { + return (EReference)iSingleRefNonContainerNPLEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIMultiRefContainerNPL() { + return iMultiRefContainerNPLEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIMultiRefContainerNPL_Elements() { + return (EReference)iMultiRefContainerNPLEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EClass getIMultiRefNonContainerNPL() { + return iMultiRefNonContainerNPLEClass; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EReference getIMultiRefNonContainerNPL_Elements() { + return (EReference)iMultiRefNonContainerNPLEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public model4interfacesFactory getmodel4interfacesFactory() { + return (model4interfacesFactory)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 + iSingleRefContainerEClass = createEClass(ISINGLE_REF_CONTAINER); + createEReference(iSingleRefContainerEClass, ISINGLE_REF_CONTAINER__ELEMENT); + + iSingleRefContainedElementEClass = createEClass(ISINGLE_REF_CONTAINED_ELEMENT); + createEReference(iSingleRefContainedElementEClass, ISINGLE_REF_CONTAINED_ELEMENT__PARENT); + + iSingleRefNonContainerEClass = createEClass(ISINGLE_REF_NON_CONTAINER); + createEReference(iSingleRefNonContainerEClass, ISINGLE_REF_NON_CONTAINER__ELEMENT); + + iSingleRefNonContainedElementEClass = createEClass(ISINGLE_REF_NON_CONTAINED_ELEMENT); + createEReference(iSingleRefNonContainedElementEClass, ISINGLE_REF_NON_CONTAINED_ELEMENT__PARENT); + + iMultiRefContainerEClass = createEClass(IMULTI_REF_CONTAINER); + createEReference(iMultiRefContainerEClass, IMULTI_REF_CONTAINER__ELEMENTS); + + iMultiRefContainedElementEClass = createEClass(IMULTI_REF_CONTAINED_ELEMENT); + createEReference(iMultiRefContainedElementEClass, IMULTI_REF_CONTAINED_ELEMENT__PARENT); + + iMultiRefNonContainerEClass = createEClass(IMULTI_REF_NON_CONTAINER); + createEReference(iMultiRefNonContainerEClass, IMULTI_REF_NON_CONTAINER__ELEMENTS); + + iMultiRefNonContainedElementEClass = createEClass(IMULTI_REF_NON_CONTAINED_ELEMENT); + createEReference(iMultiRefNonContainedElementEClass, IMULTI_REF_NON_CONTAINED_ELEMENT__PARENT); + + iNamedElementEClass = createEClass(INAMED_ELEMENT); + createEAttribute(iNamedElementEClass, INAMED_ELEMENT__NAME); + + iContainedElementNoParentLinkEClass = createEClass(ICONTAINED_ELEMENT_NO_PARENT_LINK); + + iSingleRefContainerNPLEClass = createEClass(ISINGLE_REF_CONTAINER_NPL); + createEReference(iSingleRefContainerNPLEClass, ISINGLE_REF_CONTAINER_NPL__ELEMENT); + + iSingleRefNonContainerNPLEClass = createEClass(ISINGLE_REF_NON_CONTAINER_NPL); + createEReference(iSingleRefNonContainerNPLEClass, ISINGLE_REF_NON_CONTAINER_NPL__ELEMENT); + + iMultiRefContainerNPLEClass = createEClass(IMULTI_REF_CONTAINER_NPL); + createEReference(iMultiRefContainerNPLEClass, IMULTI_REF_CONTAINER_NPL__ELEMENTS); + + iMultiRefNonContainerNPLEClass = createEClass(IMULTI_REF_NON_CONTAINER_NPL); + createEReference(iMultiRefNonContainerNPLEClass, IMULTI_REF_NON_CONTAINER_NPL__ELEMENTS); + } + + /** + * <!-- 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 + + // Initialize classes and features; add operations and parameters + initEClass(iSingleRefContainerEClass, ISingleRefContainer.class, "ISingleRefContainer", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getISingleRefContainer_Element(), this.getISingleRefContainedElement(), this.getISingleRefContainedElement_Parent(), "element", null, 0, 1, ISingleRefContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iSingleRefContainedElementEClass, ISingleRefContainedElement.class, "ISingleRefContainedElement", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getISingleRefContainedElement_Parent(), this.getISingleRefContainer(), this.getISingleRefContainer_Element(), "parent", null, 0, 1, ISingleRefContainedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iSingleRefNonContainerEClass, ISingleRefNonContainer.class, "ISingleRefNonContainer", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getISingleRefNonContainer_Element(), this.getISingleRefNonContainedElement(), this.getISingleRefNonContainedElement_Parent(), "element", null, 0, 1, ISingleRefNonContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iSingleRefNonContainedElementEClass, ISingleRefNonContainedElement.class, "ISingleRefNonContainedElement", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getISingleRefNonContainedElement_Parent(), this.getISingleRefNonContainer(), this.getISingleRefNonContainer_Element(), "parent", null, 0, 1, ISingleRefNonContainedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iMultiRefContainerEClass, IMultiRefContainer.class, "IMultiRefContainer", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getIMultiRefContainer_Elements(), this.getIMultiRefContainedElement(), this.getIMultiRefContainedElement_Parent(), "elements", null, 0, -1, IMultiRefContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iMultiRefContainedElementEClass, IMultiRefContainedElement.class, "IMultiRefContainedElement", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getIMultiRefContainedElement_Parent(), this.getIMultiRefContainer(), this.getIMultiRefContainer_Elements(), "parent", null, 0, 1, IMultiRefContainedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iMultiRefNonContainerEClass, IMultiRefNonContainer.class, "IMultiRefNonContainer", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getIMultiRefNonContainer_Elements(), this.getIMultiRefNonContainedElement(), this.getIMultiRefNonContainedElement_Parent(), "elements", null, 0, -1, IMultiRefNonContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iMultiRefNonContainedElementEClass, IMultiRefNonContainedElement.class, "IMultiRefNonContainedElement", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getIMultiRefNonContainedElement_Parent(), this.getIMultiRefNonContainer(), this.getIMultiRefNonContainer_Elements(), "parent", null, 0, 1, IMultiRefNonContainedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iNamedElementEClass, INamedElement.class, "INamedElement", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getINamedElement_Name(), ecorePackage.getEString(), "name", null, 0, 1, INamedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iContainedElementNoParentLinkEClass, IContainedElementNoParentLink.class, "IContainedElementNoParentLink", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(iSingleRefContainerNPLEClass, ISingleRefContainerNPL.class, "ISingleRefContainerNPL", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getISingleRefContainerNPL_Element(), this.getIContainedElementNoParentLink(), null, "element", null, 0, 1, ISingleRefContainerNPL.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iSingleRefNonContainerNPLEClass, ISingleRefNonContainerNPL.class, "ISingleRefNonContainerNPL", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getISingleRefNonContainerNPL_Element(), this.getIContainedElementNoParentLink(), null, "element", null, 0, 1, ISingleRefNonContainerNPL.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iMultiRefContainerNPLEClass, IMultiRefContainerNPL.class, "IMultiRefContainerNPL", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getIMultiRefContainerNPL_Elements(), this.getIContainedElementNoParentLink(), null, "elements", null, 0, -1, IMultiRefContainerNPL.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(iMultiRefNonContainerNPLEClass, IMultiRefNonContainerNPL.class, "IMultiRefNonContainerNPL", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getIMultiRefNonContainerNPL_Elements(), this.getIContainedElementNoParentLink(), null, "elements", null, 0, -1, IMultiRefNonContainerNPL.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + // Create resource + createResource(eNS_URI); + } + +} //model4interfacesPackageImpl diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/model4interfacesFactory.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/model4interfacesFactory.java new file mode 100644 index 0000000000..bc24c46464 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/model4interfacesFactory.java @@ -0,0 +1,37 @@ +/** + * <copyright> + * </copyright> + * + * $Id: model4interfacesFactory.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.ecore.EFactory; + +/** + * <!-- begin-user-doc --> + * The <b>Factory</b> for the model. + * It provides a create method for each non-abstract class of the model. + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage + * @generated + */ +public interface model4interfacesFactory extends EFactory { + /** + * The singleton instance of the factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + model4interfacesFactory eINSTANCE = org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesFactoryImpl.init(); + + /** + * Returns the package supported by this factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the package supported by this factory. + * @generated + */ + model4interfacesPackage getmodel4interfacesPackage(); + +} //model4interfacesFactory diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/model4interfacesPackage.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/model4interfacesPackage.java new file mode 100644 index 0000000000..6f242c2940 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/model4interfacesPackage.java @@ -0,0 +1,997 @@ +/** + * <copyright> + * </copyright> + * + * $Id: model4interfacesPackage.java,v 1.1 2008-07-10 15:42:28 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * <!-- begin-user-doc --> + * The <b>Package</b> for the model. + * It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesFactory + * @model kind="package" + * @generated + */ +public interface model4interfacesPackage extends EPackage { + /** + * The package name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNAME = "model4interfaces"; + + /** + * The package namespace URI. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_URI = "http://www.eclipse.org/emf/CDO/tests/model4interfaces/1.0.0"; + + /** + * The package namespace name. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + String eNS_PREFIX = "model4interfaces"; + + /** + * The singleton instance of the package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + model4interfacesPackage eINSTANCE = org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl.init(); + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer <em>ISingle Ref Container</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefContainer() + * @generated + */ + int ISINGLE_REF_CONTAINER = 0; + + /** + * The feature id for the '<em><b>Element</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_CONTAINER__ELEMENT = 0; + + /** + * The number of structural features of the '<em>ISingle Ref Container</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_CONTAINER_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement <em>ISingle Ref Contained Element</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefContainedElement() + * @generated + */ + int ISINGLE_REF_CONTAINED_ELEMENT = 1; + + /** + * The feature id for the '<em><b>Parent</b></em>' container reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_CONTAINED_ELEMENT__PARENT = 0; + + /** + * The number of structural features of the '<em>ISingle Ref Contained Element</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_CONTAINED_ELEMENT_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer <em>ISingle Ref Non Container</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefNonContainer() + * @generated + */ + int ISINGLE_REF_NON_CONTAINER = 2; + + /** + * The feature id for the '<em><b>Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_NON_CONTAINER__ELEMENT = 0; + + /** + * The number of structural features of the '<em>ISingle Ref Non Container</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_NON_CONTAINER_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement <em>ISingle Ref Non Contained Element</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefNonContainedElement() + * @generated + */ + int ISINGLE_REF_NON_CONTAINED_ELEMENT = 3; + + /** + * The feature id for the '<em><b>Parent</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_NON_CONTAINED_ELEMENT__PARENT = 0; + + /** + * The number of structural features of the '<em>ISingle Ref Non Contained Element</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_NON_CONTAINED_ELEMENT_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer <em>IMulti Ref Container</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefContainer() + * @generated + */ + int IMULTI_REF_CONTAINER = 4; + + /** + * The feature id for the '<em><b>Elements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_CONTAINER__ELEMENTS = 0; + + /** + * The number of structural features of the '<em>IMulti Ref Container</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_CONTAINER_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement <em>IMulti Ref Contained Element</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefContainedElement() + * @generated + */ + int IMULTI_REF_CONTAINED_ELEMENT = 5; + + /** + * The feature id for the '<em><b>Parent</b></em>' container reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_CONTAINED_ELEMENT__PARENT = 0; + + /** + * The number of structural features of the '<em>IMulti Ref Contained Element</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_CONTAINED_ELEMENT_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer <em>IMulti Ref Non Container</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefNonContainer() + * @generated + */ + int IMULTI_REF_NON_CONTAINER = 6; + + /** + * The feature id for the '<em><b>Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_NON_CONTAINER__ELEMENTS = 0; + + /** + * The number of structural features of the '<em>IMulti Ref Non Container</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_NON_CONTAINER_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement <em>IMulti Ref Non Contained Element</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefNonContainedElement() + * @generated + */ + int IMULTI_REF_NON_CONTAINED_ELEMENT = 7; + + /** + * The feature id for the '<em><b>Parent</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_NON_CONTAINED_ELEMENT__PARENT = 0; + + /** + * The number of structural features of the '<em>IMulti Ref Non Contained Element</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_NON_CONTAINED_ELEMENT_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.INamedElement <em>INamed Element</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.INamedElement + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getINamedElement() + * @generated + */ + int INAMED_ELEMENT = 8; + + /** + * The feature id for the '<em><b>Name</b></em>' attribute. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INAMED_ELEMENT__NAME = 0; + + /** + * The number of structural features of the '<em>INamed Element</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int INAMED_ELEMENT_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink <em>IContained Element No Parent Link</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIContainedElementNoParentLink() + * @generated + */ + int ICONTAINED_ELEMENT_NO_PARENT_LINK = 9; + + /** + * The number of structural features of the '<em>IContained Element No Parent Link</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ICONTAINED_ELEMENT_NO_PARENT_LINK_FEATURE_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL <em>ISingle Ref Container NPL</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefContainerNPL() + * @generated + */ + int ISINGLE_REF_CONTAINER_NPL = 10; + + /** + * The feature id for the '<em><b>Element</b></em>' containment reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_CONTAINER_NPL__ELEMENT = 0; + + /** + * The number of structural features of the '<em>ISingle Ref Container NPL</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_CONTAINER_NPL_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL <em>ISingle Ref Non Container NPL</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefNonContainerNPL() + * @generated + */ + int ISINGLE_REF_NON_CONTAINER_NPL = 11; + + /** + * The feature id for the '<em><b>Element</b></em>' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_NON_CONTAINER_NPL__ELEMENT = 0; + + /** + * The number of structural features of the '<em>ISingle Ref Non Container NPL</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int ISINGLE_REF_NON_CONTAINER_NPL_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL <em>IMulti Ref Container NPL</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefContainerNPL() + * @generated + */ + int IMULTI_REF_CONTAINER_NPL = 12; + + /** + * The feature id for the '<em><b>Elements</b></em>' containment reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_CONTAINER_NPL__ELEMENTS = 0; + + /** + * The number of structural features of the '<em>IMulti Ref Container NPL</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_CONTAINER_NPL_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL <em>IMulti Ref Non Container NPL</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefNonContainerNPL() + * @generated + */ + int IMULTI_REF_NON_CONTAINER_NPL = 13; + + /** + * The feature id for the '<em><b>Elements</b></em>' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_NON_CONTAINER_NPL__ELEMENTS = 0; + + /** + * The number of structural features of the '<em>IMulti Ref Non Container NPL</em>' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + * @ordered + */ + int IMULTI_REF_NON_CONTAINER_NPL_FEATURE_COUNT = 1; + + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer <em>ISingle Ref Container</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>ISingle Ref Container</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer + * @generated + */ + EClass getISingleRefContainer(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer#getElement <em>Element</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Element</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer#getElement() + * @see #getISingleRefContainer() + * @generated + */ + EReference getISingleRefContainer_Element(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement <em>ISingle Ref Contained Element</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>ISingle Ref Contained Element</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement + * @generated + */ + EClass getISingleRefContainedElement(); + + /** + * Returns the meta object for the container reference '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement#getParent <em>Parent</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the container reference '<em>Parent</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement#getParent() + * @see #getISingleRefContainedElement() + * @generated + */ + EReference getISingleRefContainedElement_Parent(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer <em>ISingle Ref Non Container</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>ISingle Ref Non Container</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer + * @generated + */ + EClass getISingleRefNonContainer(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer#getElement <em>Element</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Element</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer#getElement() + * @see #getISingleRefNonContainer() + * @generated + */ + EReference getISingleRefNonContainer_Element(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement <em>ISingle Ref Non Contained Element</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>ISingle Ref Non Contained Element</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement + * @generated + */ + EClass getISingleRefNonContainedElement(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement#getParent <em>Parent</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Parent</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement#getParent() + * @see #getISingleRefNonContainedElement() + * @generated + */ + EReference getISingleRefNonContainedElement_Parent(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer <em>IMulti Ref Container</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IMulti Ref Container</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer + * @generated + */ + EClass getIMultiRefContainer(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer#getElements <em>Elements</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Elements</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer#getElements() + * @see #getIMultiRefContainer() + * @generated + */ + EReference getIMultiRefContainer_Elements(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement <em>IMulti Ref Contained Element</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IMulti Ref Contained Element</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement + * @generated + */ + EClass getIMultiRefContainedElement(); + + /** + * Returns the meta object for the container reference '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement#getParent <em>Parent</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the container reference '<em>Parent</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement#getParent() + * @see #getIMultiRefContainedElement() + * @generated + */ + EReference getIMultiRefContainedElement_Parent(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer <em>IMulti Ref Non Container</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IMulti Ref Non Container</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer + * @generated + */ + EClass getIMultiRefNonContainer(); + + /** + * Returns the meta object for the reference list '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer#getElements <em>Elements</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Elements</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer#getElements() + * @see #getIMultiRefNonContainer() + * @generated + */ + EReference getIMultiRefNonContainer_Elements(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement <em>IMulti Ref Non Contained Element</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IMulti Ref Non Contained Element</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement + * @generated + */ + EClass getIMultiRefNonContainedElement(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement#getParent <em>Parent</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Parent</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement#getParent() + * @see #getIMultiRefNonContainedElement() + * @generated + */ + EReference getIMultiRefNonContainedElement_Parent(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.INamedElement <em>INamed Element</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>INamed Element</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.INamedElement + * @generated + */ + EClass getINamedElement(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.tests.model4interfaces.INamedElement#getName <em>Name</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the attribute '<em>Name</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.INamedElement#getName() + * @see #getINamedElement() + * @generated + */ + EAttribute getINamedElement_Name(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink <em>IContained Element No Parent Link</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IContained Element No Parent Link</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink + * @generated + */ + EClass getIContainedElementNoParentLink(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL <em>ISingle Ref Container NPL</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>ISingle Ref Container NPL</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL + * @generated + */ + EClass getISingleRefContainerNPL(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL#getElement <em>Element</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference '<em>Element</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL#getElement() + * @see #getISingleRefContainerNPL() + * @generated + */ + EReference getISingleRefContainerNPL_Element(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL <em>ISingle Ref Non Container NPL</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>ISingle Ref Non Container NPL</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL + * @generated + */ + EClass getISingleRefNonContainerNPL(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL#getElement <em>Element</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference '<em>Element</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL#getElement() + * @see #getISingleRefNonContainerNPL() + * @generated + */ + EReference getISingleRefNonContainerNPL_Element(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL <em>IMulti Ref Container NPL</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IMulti Ref Container NPL</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL + * @generated + */ + EClass getIMultiRefContainerNPL(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL#getElements <em>Elements</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the containment reference list '<em>Elements</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL#getElements() + * @see #getIMultiRefContainerNPL() + * @generated + */ + EReference getIMultiRefContainerNPL_Elements(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL <em>IMulti Ref Non Container NPL</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for class '<em>IMulti Ref Non Container NPL</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL + * @generated + */ + EClass getIMultiRefNonContainerNPL(); + + /** + * Returns the meta object for the reference list '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL#getElements <em>Elements</em>}'. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the meta object for the reference list '<em>Elements</em>'. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL#getElements() + * @see #getIMultiRefNonContainerNPL() + * @generated + */ + EReference getIMultiRefNonContainerNPL_Elements(); + + /** + * Returns the factory that creates the instances of the model. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the factory that creates the instances of the model. + * @generated + */ + model4interfacesFactory getmodel4interfacesFactory(); + + /** + * <!-- begin-user-doc --> + * Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer <em>ISingle Ref Container</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefContainer() + * @generated + */ + EClass ISINGLE_REF_CONTAINER = eINSTANCE.getISingleRefContainer(); + + /** + * The meta object literal for the '<em><b>Element</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ISINGLE_REF_CONTAINER__ELEMENT = eINSTANCE.getISingleRefContainer_Element(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement <em>ISingle Ref Contained Element</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefContainedElement() + * @generated + */ + EClass ISINGLE_REF_CONTAINED_ELEMENT = eINSTANCE.getISingleRefContainedElement(); + + /** + * The meta object literal for the '<em><b>Parent</b></em>' container reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ISINGLE_REF_CONTAINED_ELEMENT__PARENT = eINSTANCE.getISingleRefContainedElement_Parent(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer <em>ISingle Ref Non Container</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefNonContainer() + * @generated + */ + EClass ISINGLE_REF_NON_CONTAINER = eINSTANCE.getISingleRefNonContainer(); + + /** + * The meta object literal for the '<em><b>Element</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ISINGLE_REF_NON_CONTAINER__ELEMENT = eINSTANCE.getISingleRefNonContainer_Element(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement <em>ISingle Ref Non Contained Element</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefNonContainedElement() + * @generated + */ + EClass ISINGLE_REF_NON_CONTAINED_ELEMENT = eINSTANCE.getISingleRefNonContainedElement(); + + /** + * The meta object literal for the '<em><b>Parent</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ISINGLE_REF_NON_CONTAINED_ELEMENT__PARENT = eINSTANCE.getISingleRefNonContainedElement_Parent(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer <em>IMulti Ref Container</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefContainer() + * @generated + */ + EClass IMULTI_REF_CONTAINER = eINSTANCE.getIMultiRefContainer(); + + /** + * The meta object literal for the '<em><b>Elements</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IMULTI_REF_CONTAINER__ELEMENTS = eINSTANCE.getIMultiRefContainer_Elements(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement <em>IMulti Ref Contained Element</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefContainedElement() + * @generated + */ + EClass IMULTI_REF_CONTAINED_ELEMENT = eINSTANCE.getIMultiRefContainedElement(); + + /** + * The meta object literal for the '<em><b>Parent</b></em>' container reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IMULTI_REF_CONTAINED_ELEMENT__PARENT = eINSTANCE.getIMultiRefContainedElement_Parent(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer <em>IMulti Ref Non Container</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefNonContainer() + * @generated + */ + EClass IMULTI_REF_NON_CONTAINER = eINSTANCE.getIMultiRefNonContainer(); + + /** + * The meta object literal for the '<em><b>Elements</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IMULTI_REF_NON_CONTAINER__ELEMENTS = eINSTANCE.getIMultiRefNonContainer_Elements(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement <em>IMulti Ref Non Contained Element</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefNonContainedElement() + * @generated + */ + EClass IMULTI_REF_NON_CONTAINED_ELEMENT = eINSTANCE.getIMultiRefNonContainedElement(); + + /** + * The meta object literal for the '<em><b>Parent</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IMULTI_REF_NON_CONTAINED_ELEMENT__PARENT = eINSTANCE.getIMultiRefNonContainedElement_Parent(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.INamedElement <em>INamed Element</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.INamedElement + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getINamedElement() + * @generated + */ + EClass INAMED_ELEMENT = eINSTANCE.getINamedElement(); + + /** + * The meta object literal for the '<em><b>Name</b></em>' attribute feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EAttribute INAMED_ELEMENT__NAME = eINSTANCE.getINamedElement_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink <em>IContained Element No Parent Link</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIContainedElementNoParentLink() + * @generated + */ + EClass ICONTAINED_ELEMENT_NO_PARENT_LINK = eINSTANCE.getIContainedElementNoParentLink(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL <em>ISingle Ref Container NPL</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefContainerNPL() + * @generated + */ + EClass ISINGLE_REF_CONTAINER_NPL = eINSTANCE.getISingleRefContainerNPL(); + + /** + * The meta object literal for the '<em><b>Element</b></em>' containment reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ISINGLE_REF_CONTAINER_NPL__ELEMENT = eINSTANCE.getISingleRefContainerNPL_Element(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL <em>ISingle Ref Non Container NPL</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getISingleRefNonContainerNPL() + * @generated + */ + EClass ISINGLE_REF_NON_CONTAINER_NPL = eINSTANCE.getISingleRefNonContainerNPL(); + + /** + * The meta object literal for the '<em><b>Element</b></em>' reference feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference ISINGLE_REF_NON_CONTAINER_NPL__ELEMENT = eINSTANCE.getISingleRefNonContainerNPL_Element(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL <em>IMulti Ref Container NPL</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefContainerNPL() + * @generated + */ + EClass IMULTI_REF_CONTAINER_NPL = eINSTANCE.getIMultiRefContainerNPL(); + + /** + * The meta object literal for the '<em><b>Elements</b></em>' containment reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IMULTI_REF_CONTAINER_NPL__ELEMENTS = eINSTANCE.getIMultiRefContainerNPL_Elements(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL <em>IMulti Ref Non Container NPL</em>}' class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL + * @see org.eclipse.emf.cdo.tests.model4interfaces.impl.model4interfacesPackageImpl#getIMultiRefNonContainerNPL() + * @generated + */ + EClass IMULTI_REF_NON_CONTAINER_NPL = eINSTANCE.getIMultiRefNonContainerNPL(); + + /** + * The meta object literal for the '<em><b>Elements</b></em>' reference list feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + EReference IMULTI_REF_NON_CONTAINER_NPL__ELEMENTS = eINSTANCE.getIMultiRefNonContainerNPL_Elements(); + + } + +} //model4interfacesPackage diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/util/model4interfacesAdapterFactory.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/util/model4interfacesAdapterFactory.java new file mode 100644 index 0000000000..e72943ed3d --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/util/model4interfacesAdapterFactory.java @@ -0,0 +1,358 @@ +/** + * <copyright> + * </copyright> + * + * $Id: model4interfacesAdapterFactory.java,v 1.1 2008-07-10 15:42:29 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces.util; + +import org.eclipse.emf.cdo.tests.model4interfaces.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * The <b>Adapter Factory</b> for the model. + * It provides an adapter <code>createXXX</code> method for each class of the model. + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage + * @generated + */ +public class model4interfacesAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static model4interfacesPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public model4interfacesAdapterFactory() { + if (modelPackage == null) { + modelPackage = model4interfacesPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * <!-- begin-user-doc --> + * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. + * <!-- end-user-doc --> + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject)object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the <code>createXXX</code> methods. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected model4interfacesSwitch<Adapter> modelSwitch = + new model4interfacesSwitch<Adapter>() { + @Override + public Adapter caseISingleRefContainer(ISingleRefContainer object) { + return createISingleRefContainerAdapter(); + } + @Override + public Adapter caseISingleRefContainedElement(ISingleRefContainedElement object) { + return createISingleRefContainedElementAdapter(); + } + @Override + public Adapter caseISingleRefNonContainer(ISingleRefNonContainer object) { + return createISingleRefNonContainerAdapter(); + } + @Override + public Adapter caseISingleRefNonContainedElement(ISingleRefNonContainedElement object) { + return createISingleRefNonContainedElementAdapter(); + } + @Override + public Adapter caseIMultiRefContainer(IMultiRefContainer object) { + return createIMultiRefContainerAdapter(); + } + @Override + public Adapter caseIMultiRefContainedElement(IMultiRefContainedElement object) { + return createIMultiRefContainedElementAdapter(); + } + @Override + public Adapter caseIMultiRefNonContainer(IMultiRefNonContainer object) { + return createIMultiRefNonContainerAdapter(); + } + @Override + public Adapter caseIMultiRefNonContainedElement(IMultiRefNonContainedElement object) { + return createIMultiRefNonContainedElementAdapter(); + } + @Override + public Adapter caseINamedElement(INamedElement object) { + return createINamedElementAdapter(); + } + @Override + public Adapter caseIContainedElementNoParentLink(IContainedElementNoParentLink object) { + return createIContainedElementNoParentLinkAdapter(); + } + @Override + public Adapter caseISingleRefContainerNPL(ISingleRefContainerNPL object) { + return createISingleRefContainerNPLAdapter(); + } + @Override + public Adapter caseISingleRefNonContainerNPL(ISingleRefNonContainerNPL object) { + return createISingleRefNonContainerNPLAdapter(); + } + @Override + public Adapter caseIMultiRefContainerNPL(IMultiRefContainerNPL object) { + return createIMultiRefContainerNPLAdapter(); + } + @Override + public Adapter caseIMultiRefNonContainerNPL(IMultiRefNonContainerNPL object) { + return createIMultiRefNonContainerNPLAdapter(); + } + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the <code>target</code>. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @param target the object to adapt. + * @return the adapter for the <code>target</code>. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject)target); + } + + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer <em>ISingle Ref Container</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainer + * @generated + */ + public Adapter createISingleRefContainerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement <em>ISingle Ref Contained Element</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainedElement + * @generated + */ + public Adapter createISingleRefContainedElementAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer <em>ISingle Ref Non Container</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainer + * @generated + */ + public Adapter createISingleRefNonContainerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement <em>ISingle Ref Non Contained Element</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainedElement + * @generated + */ + public Adapter createISingleRefNonContainedElementAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer <em>IMulti Ref Container</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainer + * @generated + */ + public Adapter createIMultiRefContainerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement <em>IMulti Ref Contained Element</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainedElement + * @generated + */ + public Adapter createIMultiRefContainedElementAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer <em>IMulti Ref Non Container</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainer + * @generated + */ + public Adapter createIMultiRefNonContainerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement <em>IMulti Ref Non Contained Element</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainedElement + * @generated + */ + public Adapter createIMultiRefNonContainedElementAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.INamedElement <em>INamed Element</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.INamedElement + * @generated + */ + public Adapter createINamedElementAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink <em>IContained Element No Parent Link</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IContainedElementNoParentLink + * @generated + */ + public Adapter createIContainedElementNoParentLinkAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL <em>ISingle Ref Container NPL</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefContainerNPL + * @generated + */ + public Adapter createISingleRefContainerNPLAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL <em>ISingle Ref Non Container NPL</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.ISingleRefNonContainerNPL + * @generated + */ + public Adapter createISingleRefNonContainerNPLAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL <em>IMulti Ref Container NPL</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefContainerNPL + * @generated + */ + public Adapter createIMultiRefContainerNPLAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL <em>IMulti Ref Non Container NPL</em>}'. + * <!-- begin-user-doc --> + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * <!-- end-user-doc --> + * @return the new adapter. + * @see org.eclipse.emf.cdo.tests.model4interfaces.IMultiRefNonContainerNPL + * @generated + */ + public Adapter createIMultiRefNonContainerNPLAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * <!-- begin-user-doc --> + * This default implementation returns null. + * <!-- end-user-doc --> + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //model4interfacesAdapterFactory diff --git a/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/util/model4interfacesSwitch.java b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/util/model4interfacesSwitch.java new file mode 100644 index 0000000000..442d478c39 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.tests.model4interfaces/src/org/eclipse/emf/cdo/tests/model4interfaces/util/model4interfacesSwitch.java @@ -0,0 +1,403 @@ +/** + * <copyright> + * </copyright> + * + * $Id: model4interfacesSwitch.java,v 1.1 2008-07-10 15:42:29 estepper Exp $ + */ +package org.eclipse.emf.cdo.tests.model4interfaces.util; + +import java.util.List; + +import org.eclipse.emf.cdo.tests.model4interfaces.*; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> + * The <b>Switch</b> for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * <!-- end-user-doc --> + * @see org.eclipse.emf.cdo.tests.model4interfaces.model4interfacesPackage + * @generated + */ +public class model4interfacesSwitch<T> { + /** + * The cached model package + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected static model4interfacesPackage modelPackage; + + /** + * Creates an instance of the switch. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public model4interfacesSwitch() { + if (modelPackage == null) { + modelPackage = model4interfacesPackage.eINSTANCE; + } + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + public T doSwitch(EObject theEObject) { + return doSwitch(theEObject.eClass(), theEObject); + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + protected T doSwitch(EClass theEClass, EObject theEObject) { + if (theEClass.eContainer() == modelPackage) { + return doSwitch(theEClass.getClassifierID(), theEObject); + } + else { + List<EClass> eSuperTypes = theEClass.getESuperTypes(); + return + eSuperTypes.isEmpty() ? + defaultCase(theEObject) : + doSwitch(eSuperTypes.get(0), theEObject); + } + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case model4interfacesPackage.ISINGLE_REF_CONTAINER: { + ISingleRefContainer iSingleRefContainer = (ISingleRefContainer)theEObject; + T result = caseISingleRefContainer(iSingleRefContainer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.ISINGLE_REF_CONTAINED_ELEMENT: { + ISingleRefContainedElement iSingleRefContainedElement = (ISingleRefContainedElement)theEObject; + T result = caseISingleRefContainedElement(iSingleRefContainedElement); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.ISINGLE_REF_NON_CONTAINER: { + ISingleRefNonContainer iSingleRefNonContainer = (ISingleRefNonContainer)theEObject; + T result = caseISingleRefNonContainer(iSingleRefNonContainer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.ISINGLE_REF_NON_CONTAINED_ELEMENT: { + ISingleRefNonContainedElement iSingleRefNonContainedElement = (ISingleRefNonContainedElement)theEObject; + T result = caseISingleRefNonContainedElement(iSingleRefNonContainedElement); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.IMULTI_REF_CONTAINER: { + IMultiRefContainer iMultiRefContainer = (IMultiRefContainer)theEObject; + T result = caseIMultiRefContainer(iMultiRefContainer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.IMULTI_REF_CONTAINED_ELEMENT: { + IMultiRefContainedElement iMultiRefContainedElement = (IMultiRefContainedElement)theEObject; + T result = caseIMultiRefContainedElement(iMultiRefContainedElement); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.IMULTI_REF_NON_CONTAINER: { + IMultiRefNonContainer iMultiRefNonContainer = (IMultiRefNonContainer)theEObject; + T result = caseIMultiRefNonContainer(iMultiRefNonContainer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.IMULTI_REF_NON_CONTAINED_ELEMENT: { + IMultiRefNonContainedElement iMultiRefNonContainedElement = (IMultiRefNonContainedElement)theEObject; + T result = caseIMultiRefNonContainedElement(iMultiRefNonContainedElement); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.INAMED_ELEMENT: { + INamedElement iNamedElement = (INamedElement)theEObject; + T result = caseINamedElement(iNamedElement); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.ICONTAINED_ELEMENT_NO_PARENT_LINK: { + IContainedElementNoParentLink iContainedElementNoParentLink = (IContainedElementNoParentLink)theEObject; + T result = caseIContainedElementNoParentLink(iContainedElementNoParentLink); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.ISINGLE_REF_CONTAINER_NPL: { + ISingleRefContainerNPL iSingleRefContainerNPL = (ISingleRefContainerNPL)theEObject; + T result = caseISingleRefContainerNPL(iSingleRefContainerNPL); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.ISINGLE_REF_NON_CONTAINER_NPL: { + ISingleRefNonContainerNPL iSingleRefNonContainerNPL = (ISingleRefNonContainerNPL)theEObject; + T result = caseISingleRefNonContainerNPL(iSingleRefNonContainerNPL); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.IMULTI_REF_CONTAINER_NPL: { + IMultiRefContainerNPL iMultiRefContainerNPL = (IMultiRefContainerNPL)theEObject; + T result = caseIMultiRefContainerNPL(iMultiRefContainerNPL); + if (result == null) result = defaultCase(theEObject); + return result; + } + case model4interfacesPackage.IMULTI_REF_NON_CONTAINER_NPL: { + IMultiRefNonContainerNPL iMultiRefNonContainerNPL = (IMultiRefNonContainerNPL)theEObject; + T result = caseIMultiRefNonContainerNPL(iMultiRefNonContainerNPL); + if (result == null) result = defaultCase(theEObject); + return result; + } + default: return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>ISingle Ref Container</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>ISingle Ref Container</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseISingleRefContainer(ISingleRefContainer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>ISingle Ref Contained Element</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>ISingle Ref Contained Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseISingleRefContainedElement(ISingleRefContainedElement object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>ISingle Ref Non Container</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>ISingle Ref Non Container</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseISingleRefNonContainer(ISingleRefNonContainer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>ISingle Ref Non Contained Element</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>ISingle Ref Non Contained Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseISingleRefNonContainedElement(ISingleRefNonContainedElement object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IMulti Ref Container</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IMulti Ref Container</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIMultiRefContainer(IMultiRefContainer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IMulti Ref Contained Element</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IMulti Ref Contained Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIMultiRefContainedElement(IMultiRefContainedElement object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IMulti Ref Non Container</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IMulti Ref Non Container</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIMultiRefNonContainer(IMultiRefNonContainer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IMulti Ref Non Contained Element</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IMulti Ref Non Contained Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIMultiRefNonContainedElement(IMultiRefNonContainedElement object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>INamed Element</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>INamed Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseINamedElement(INamedElement object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IContained Element No Parent Link</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IContained Element No Parent Link</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIContainedElementNoParentLink(IContainedElementNoParentLink object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>ISingle Ref Container NPL</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>ISingle Ref Container NPL</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseISingleRefContainerNPL(ISingleRefContainerNPL object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>ISingle Ref Non Container NPL</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>ISingle Ref Non Container NPL</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseISingleRefNonContainerNPL(ISingleRefNonContainerNPL object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IMulti Ref Container NPL</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IMulti Ref Container NPL</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIMultiRefContainerNPL(IMultiRefContainerNPL object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>IMulti Ref Non Container NPL</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>IMulti Ref Non Container NPL</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIMultiRefNonContainerNPL(IMultiRefNonContainerNPL object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. + * <!-- begin-user-doc --> + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * <!-- end-user-doc --> + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of '<em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + public T defaultCase(EObject object) { + return null; + } + +} //model4interfacesSwitch |