Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 247226 | Differences between
and this patch

Collapse All | Expand All

(-)src/org/eclipse/emf/cdo/tests/hibernate/HbNoLegacyTest.java (-26 lines)
Removed Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Simon McDuff - initial API and implementation
10
 *    Eike Stepper - maintenance
11
 **************************************************************************/
12
package org.eclipse.emf.cdo.tests.hibernate;
13
14
import org.eclipse.emf.cdo.tests.NoLegacyTest;
15
import org.eclipse.emf.cdo.tests.StoreRepositoryProvider;
16
17
/**
18
 * @author Martin Taal
19
 */
20
public class HbNoLegacyTest extends NoLegacyTest
21
{
22
  public HbNoLegacyTest()
23
  {
24
    StoreRepositoryProvider.setInstance(HbStoreRepositoryProvider.getInstance());
25
  }
26
}
(-)src/org/eclipse/emf/cdo/tests/hibernate/AllTests.java (-1 lines)
Lines 39-45 Link Here
39
    suite.addTestSuite(HbCrossReferenceTest.class);
39
    suite.addTestSuite(HbCrossReferenceTest.class);
40
    suite.addTestSuite(HbMangoTest.class);
40
    suite.addTestSuite(HbMangoTest.class);
41
    suite.addTestSuite(HbEnumTest.class);
41
    suite.addTestSuite(HbEnumTest.class);
42
    suite.addTestSuite(HbNoLegacyTest.class);
43
    suite.addTestSuite(HbNonCDOResourceTest.class);
42
    suite.addTestSuite(HbNonCDOResourceTest.class);
44
    suite.addTestSuite(HbInvalidationTest.class);
43
    suite.addTestSuite(HbInvalidationTest.class);
45
    suite.addTestSuite(HbIndexReconstructionTest.class);
44
    suite.addTestSuite(HbIndexReconstructionTest.class);
(-)src/org/eclipse/emf/common/notify/impl/BasicNotifierImpl.java (-43 / +54 lines)
Lines 9-14 Link Here
9
 * 
9
 * 
10
 * Contributors: 
10
 * Contributors: 
11
 *   IBM - Initial API and implementation
11
 *   IBM - Initial API and implementation
12
 *   Eike Stepper - http://bugs.eclipse.org/247130
12
 *
13
 *
13
 * </copyright>
14
 * </copyright>
14
 *
15
 *
Lines 40-56 Link Here
40
    super();
41
    super();
41
  }
42
  }
42
43
43
  public static class EAdapterList<E extends Object & Adapter> extends BasicEList<E>
44
  public static class ESafeList<E> extends BasicEList<E>
44
  {
45
  {
45
    private static final long serialVersionUID = 1L;
46
    private static final long serialVersionUID = 1L;
46
47
    protected Notifier notifier;
48
49
    public EAdapterList(Notifier notifier)
50
    {
51
      this.notifier = notifier;
52
    }
53
54
    protected boolean safe;
47
    protected boolean safe;
55
48
56
    @Override
49
    @Override
Lines 70-109 Link Here
70
    {
63
    {
71
      return new Adapter [capacity];
64
      return new Adapter [capacity];
72
    }
65
    }
73
66
    
74
    @Override
75
    protected void didAdd(int index, E newObject)
76
    {
77
      newObject.setTarget(notifier);
78
    }
79
80
    @Override
81
    protected void didRemove(int index, E oldObject)
82
    {
83
      E adapter = oldObject;
84
      if (notifier.eDeliver())
85
      {
86
        Notification notification = 
87
          new NotificationImpl(Notification.REMOVING_ADAPTER, oldObject, null, index)
88
          {
89
            @Override
90
            public Object getNotifier()
91
            {
92
              return notifier;
93
            }
94
          };
95
        adapter.notifyChanged(notification);
96
      }
97
      if (adapter instanceof Adapter.Internal)
98
      {
99
        ((Adapter.Internal)adapter).unsetTarget(notifier);
100
      }
101
      else if (adapter.getTarget() == notifier) 
102
      {
103
        adapter.setTarget(null);
104
      }
105
    }
106
107
    @Override
67
    @Override
108
    public Object [] data()
68
    public Object [] data()
109
    {
69
    {
Lines 200-205 Link Here
200
    }
160
    }
201
  }
161
  }
202
162
163
  public static class EAdapterList<E extends Object & Adapter> extends ESafeList<E>
164
  {
165
    private static final long serialVersionUID = 1L;
166
167
    protected Notifier notifier;
168
169
    public EAdapterList(Notifier notifier)
170
    {
171
      this.notifier = notifier;
172
    }
173
174
    @Override
175
    protected Object [] newData(int capacity)
176
    {
177
      return new Adapter [capacity];
178
    }
179
180
    @Override
181
    protected void didAdd(int index, E newObject)
182
    {
183
      newObject.setTarget(notifier);
184
    }
185
186
    @Override
187
    protected void didRemove(int index, E oldObject)
188
    {
189
      E adapter = oldObject;
190
      if (notifier.eDeliver())
191
      {
192
        Notification notification = 
193
          new NotificationImpl(Notification.REMOVING_ADAPTER, oldObject, null, index)
194
          {
195
            @Override
196
            public Object getNotifier()
197
            {
198
              return notifier;
199
            }
200
          };
201
        adapter.notifyChanged(notification);
202
      }
203
      if (adapter instanceof Adapter.Internal)
204
      {
205
        ((Adapter.Internal)adapter).unsetTarget(notifier);
206
      }
207
      else if (adapter.getTarget() == notifier) 
208
      {
209
        adapter.setTarget(null);
210
      }
211
    }
212
  }
213
203
  public EList<Adapter> eAdapters()
214
  public EList<Adapter> eAdapters()
204
  {
215
  {
205
    return ECollections.emptyEList();
216
    return ECollections.emptyEList();
(-)templates/model/Class.javajet (-2 / +12 lines)
Lines 580-595 Link Here
580
		if (<%=genFeature.getSafeName()%> == null)
580
		if (<%=genFeature.getSafeName()%> == null)
581
		{
581
		{
582
        <%if (genModel.isVirtualDelegation()) {%>
582
        <%if (genModel.isVirtualDelegation()) {%>
583
			eVirtualSet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>, <%=genFeature.getSafeName()%> = new <%=genClass.getListConstructor(genFeature)%>);
583
			eVirtualSet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>, <%=genFeature.getSafeName()%> = new <%=genClass.getListConstructor(genFeature)%>.readWriteFiringList());
584
        <%} else {%>
584
        <%} else {%>
585
			<%=genFeature.getSafeName()%> = new <%=genClass.getListConstructor(genFeature)%>;
585
			<%=genFeature.getSafeName()%> = new <%=genClass.getListConstructor(genFeature)%>.readWriteFiringList();
586
        <%}%>
586
        <%}%>
587
		}
587
		}
588
		return <%=genFeature.getSafeName()%><%=genFeature.isMapType() && genFeature.isEffectiveSuppressEMFTypes() ? ".map()" : ""%>;
588
		return <%=genFeature.getSafeName()%><%=genFeature.isMapType() && genFeature.isEffectiveSuppressEMFTypes() ? ".map()" : ""%>;
589
      <%} else if (genFeature.isContainer()) {%>
589
      <%} else if (genFeature.isContainer()) {%>
590
		eFireRead(<%=genClass.getQualifiedFeatureID(genFeature)%>);
590
		if (eContainerFeatureID != <%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>) return null;
591
		if (eContainerFeatureID != <%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>) return null;
591
		return (<%=genFeature.getImportedType(genClass)%>)eContainer();
592
		return (<%=genFeature.getImportedType(genClass)%>)eContainer();
592
      <%} else {%>
593
      <%} else {%>
594
		eFireRead(<%=genClass.getQualifiedFeatureID(genFeature)%>);
593
        <%if (genFeature.isResolveProxies()) {%>
595
        <%if (genFeature.isResolveProxies()) {%>
594
          <%if (genModel.isVirtualDelegation()) {%>
596
          <%if (genModel.isVirtualDelegation()) {%>
595
		<%=genFeature.getImportedType(genClass)%> <%=genFeature.getSafeName()%> = (<%=genFeature.getImportedType(genClass)%>)eVirtualGet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%><%if (genFeature.hasEDefault()) {%>, <%=genFeature.getEDefault()%><%}%>);
597
		<%=genFeature.getImportedType(genClass)%> <%=genFeature.getSafeName()%> = (<%=genFeature.getImportedType(genClass)%>)eVirtualGet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%><%if (genFeature.hasEDefault()) {%>, <%=genFeature.getEDefault()%><%}%>);
Lines 700-708 Link Here
700
    <%if (genModel.isDynamicDelegation()) {%>
702
    <%if (genModel.isDynamicDelegation()) {%>
701
		return (<%=genFeature.getImportedType(genClass)%>)eDynamicGet(<%=genClass.getQualifiedFeatureID(genFeature)%>, <%=genFeature.getQualifiedFeatureAccessor()%>, false, <%=!genFeature.isEffectiveSuppressEMFTypes()%>);
703
		return (<%=genFeature.getImportedType(genClass)%>)eDynamicGet(<%=genClass.getQualifiedFeatureID(genFeature)%>, <%=genFeature.getQualifiedFeatureAccessor()%>, false, <%=!genFeature.isEffectiveSuppressEMFTypes()%>);
702
    <%} else if (genFeature.isContainer()) {%>
704
    <%} else if (genFeature.isContainer()) {%>
705
		eFireRead(<%=genClass.getQualifiedFeatureID(genFeature)%>);
703
		if (eContainerFeatureID != <%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>) return null;
706
		if (eContainerFeatureID != <%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>) return null;
704
		return (<%=genFeature.getImportedType(genClass)%>)eInternalContainer();
707
		return (<%=genFeature.getImportedType(genClass)%>)eInternalContainer();
705
    <%} else if (!genFeature.isVolatile()) {%>
708
    <%} else if (!genFeature.isVolatile()) {%>
709
		eFireRead(<%=genClass.getQualifiedFeatureID(genFeature)%>);
706
      <%if (genModel.isVirtualDelegation()) {%>
710
      <%if (genModel.isVirtualDelegation()) {%>
707
		return (<%=genFeature.getImportedType(genClass)%>)eVirtualGet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>);
711
		return (<%=genFeature.getImportedType(genClass)%>)eVirtualGet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>);
708
      <%} else {%>
712
      <%} else {%>
Lines 741-746 Link Here
741
	public <%=genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain")%> basicSet<%=genFeature.getAccessorName()%>(<%=genFeature.getImportedInternalType(genClass)%> new<%=genFeature.getCapName()%>, <%=genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain")%> msgs)
745
	public <%=genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain")%> basicSet<%=genFeature.getAccessorName()%>(<%=genFeature.getImportedInternalType(genClass)%> new<%=genFeature.getCapName()%>, <%=genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain")%> msgs)
742
	{
746
	{
743
    <%if (genFeature.isContainer()) {%>
747
    <%if (genFeature.isContainer()) {%>
748
		eFireWrite(<%=genClass.getQualifiedFeatureID(genFeature)%>);
744
<%@ include file="Class/basicSetGenFeature.pre.insert.javajetinc" fail="silent" %>
749
<%@ include file="Class/basicSetGenFeature.pre.insert.javajetinc" fail="silent" %>
745
		msgs = eBasicSetContainer((<%=genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject")%>)new<%=genFeature.getCapName()%>, <%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>, msgs);
750
		msgs = eBasicSetContainer((<%=genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject")%>)new<%=genFeature.getCapName()%>, <%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>, msgs);
746
<%@ include file="Class/basicSetGenFeature.post.insert.javajetinc" fail="silent" %>
751
<%@ include file="Class/basicSetGenFeature.post.insert.javajetinc" fail="silent" %>
Lines 752-757 Link Here
752
		return msgs;
757
		return msgs;
753
    <%} else if (!genFeature.isVolatile()) {%>
758
    <%} else if (!genFeature.isVolatile()) {%>
754
<%@ include file="Class/basicSetGenFeature.pre.insert.javajetinc" fail="silent" %>
759
<%@ include file="Class/basicSetGenFeature.pre.insert.javajetinc" fail="silent" %>
760
		eFireWrite(<%=genClass.getQualifiedFeatureID(genFeature)%>);
755
      <%if (genModel.isVirtualDelegation()) {%>
761
      <%if (genModel.isVirtualDelegation()) {%>
756
		Object old<%=genFeature.getCapName()%> = eVirtualSet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>, new<%=genFeature.getCapName()%>);
762
		Object old<%=genFeature.getCapName()%> = eVirtualSet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>, new<%=genFeature.getCapName()%>);
757
      <%} else {%>
763
      <%} else {%>
Lines 858-863 Link Here
858
    <%} else if (genModel.isReflectiveDelegation()) {%>
864
    <%} else if (genModel.isReflectiveDelegation()) {%>
859
		eSet(<%=genFeature.getQualifiedFeatureAccessor()%>, <%if (genFeature.isPrimitiveType()) {%>new <%=genFeature.getObjectType(genClass)%>(<%}%>new<%=genFeature.getCapName()%><%if (genFeature.isPrimitiveType()) {%>)<%}%>);
865
		eSet(<%=genFeature.getQualifiedFeatureAccessor()%>, <%if (genFeature.isPrimitiveType()) {%>new <%=genFeature.getObjectType(genClass)%>(<%}%>new<%=genFeature.getCapName()%><%if (genFeature.isPrimitiveType()) {%>)<%}%>);
860
    <%} else if (!genFeature.isVolatile()) {%>
866
    <%} else if (!genFeature.isVolatile()) {%>
867
		eFireWrite(<%=genClass.getQualifiedFeatureID(genFeature)%>);
861
      <%if (genFeature.isContainer()) { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";%>
868
      <%if (genFeature.isContainer()) { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";%>
862
		if (new<%=genFeature.getCapName()%> != eInternalContainer() || (eContainerFeatureID != <%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%> && new<%=genFeature.getCapName()%> != null))
869
		if (new<%=genFeature.getCapName()%> != eInternalContainer() || (eContainerFeatureID != <%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%> && new<%=genFeature.getCapName()%> != null))
863
		{
870
		{
Lines 1021-1026 Link Here
1021
	public <%=genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain")%> basicUnset<%=genFeature.getAccessorName()%>(<%=genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain")%> msgs)
1028
	public <%=genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain")%> basicUnset<%=genFeature.getAccessorName()%>(<%=genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain")%> msgs)
1022
	{
1029
	{
1023
    <%if (!genFeature.isVolatile()) {%>
1030
    <%if (!genFeature.isVolatile()) {%>
1031
		eFireWrite(<%=genClass.getQualifiedFeatureID(genFeature)%>);
1024
      <%if (genModel.isVirtualDelegation()) {%>
1032
      <%if (genModel.isVirtualDelegation()) {%>
1025
        <%if (!genModel.isSuppressNotification()) {%>Object old<%=genFeature.getCapName()%> = <%}%>eVirtualUnset(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>);
1033
        <%if (!genModel.isSuppressNotification()) {%>Object old<%=genFeature.getCapName()%> = <%}%>eVirtualUnset(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>);
1026
      <%} else {%>
1034
      <%} else {%>
Lines 1109-1114 Link Here
1109
    <%} else if (genModel.isReflectiveDelegation()) {%>
1117
    <%} else if (genModel.isReflectiveDelegation()) {%>
1110
		eUnset(<%=genFeature.getQualifiedFeatureAccessor()%>);
1118
		eUnset(<%=genFeature.getQualifiedFeatureAccessor()%>);
1111
    <%} else if (!genFeature.isVolatile()) {%>
1119
    <%} else if (!genFeature.isVolatile()) {%>
1120
		eFireWrite(<%=genClass.getQualifiedFeatureID(genFeature)%>);
1112
      <%if (genFeature.isListType()) {%>
1121
      <%if (genFeature.isListType()) {%>
1113
        <%if (genModel.isVirtualDelegation()) {%>
1122
        <%if (genModel.isVirtualDelegation()) {%>
1114
		<%=genFeature.getImportedType(genClass)%> <%=genFeature.getSafeName()%> = (<%=genFeature.getImportedType(genClass)%>)eVirtualGet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>);
1123
		<%=genFeature.getImportedType(genClass)%> <%=genFeature.getSafeName()%> = (<%=genFeature.getImportedType(genClass)%>)eVirtualGet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>);
Lines 1280-1285 Link Here
1280
        <%}%>
1289
        <%}%>
1281
		return <%=genFeature.getSafeName()%> != null && ((<%=genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList")%>.Unsettable<%=singleWildcard%>)<%=genFeature.getSafeName()%>).isSet();
1290
		return <%=genFeature.getSafeName()%> != null && ((<%=genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList")%>.Unsettable<%=singleWildcard%>)<%=genFeature.getSafeName()%>).isSet();
1282
      <%} else {%>
1291
      <%} else {%>
1292
		eFireWrite(<%=genClass.getQualifiedFeatureID(genFeature)%>);
1283
        <%if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {%>
1293
        <%if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {%>
1284
		return eVirtualIsSet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>);
1294
		return eVirtualIsSet(<%=genClass.getQualifiedFeatureID(genFeature)%><%=positiveOffsetCorrection%>);
1285
        <%} else if (genClass.isESetFlag(genFeature)) {%>
1295
        <%} else if (genClass.isESetFlag(genFeature)) {%>
(-)src/org/eclipse/emf/codegen/ecore/templates/model/Class.java (-2425 / +2471 lines)
Lines 349-1584 Link Here
349
  protected final String TEXT_332 = NL + "\t\t\teVirtualSet(";
349
  protected final String TEXT_332 = NL + "\t\t\teVirtualSet(";
350
  protected final String TEXT_333 = ", ";
350
  protected final String TEXT_333 = ", ";
351
  protected final String TEXT_334 = " = new ";
351
  protected final String TEXT_334 = " = new ";
352
  protected final String TEXT_335 = ");";
352
  protected final String TEXT_335 = ".readWriteFiringList());";
353
  protected final String TEXT_336 = NL + "\t\t\t";
353
  protected final String TEXT_336 = NL + "\t\t\t";
354
  protected final String TEXT_337 = " = new ";
354
  protected final String TEXT_337 = " = new ";
355
  protected final String TEXT_338 = ";";
355
  protected final String TEXT_338 = ".readWriteFiringList();";
356
  protected final String TEXT_339 = NL + "\t\t}" + NL + "\t\treturn ";
356
  protected final String TEXT_339 = NL + "\t\t}" + NL + "\t\treturn ";
357
  protected final String TEXT_340 = ";";
357
  protected final String TEXT_340 = ";";
358
  protected final String TEXT_341 = NL + "\t\tif (eContainerFeatureID != ";
358
  protected final String TEXT_341 = NL + "\t\teFireRead(";
359
  protected final String TEXT_342 = ") return null;" + NL + "\t\treturn (";
359
  protected final String TEXT_342 = ");" + NL + "\t\tif (eContainerFeatureID != ";
360
  protected final String TEXT_343 = ")eContainer();";
360
  protected final String TEXT_343 = ") return null;" + NL + "\t\treturn (";
361
  protected final String TEXT_344 = NL + "\t\t";
361
  protected final String TEXT_344 = ")eContainer();";
362
  protected final String TEXT_345 = " ";
362
  protected final String TEXT_345 = NL + "\t\teFireRead(";
363
  protected final String TEXT_346 = " = (";
363
  protected final String TEXT_346 = ");";
364
  protected final String TEXT_347 = ")eVirtualGet(";
364
  protected final String TEXT_347 = NL + "\t\t";
365
  protected final String TEXT_348 = ", ";
365
  protected final String TEXT_348 = " ";
366
  protected final String TEXT_349 = ");";
366
  protected final String TEXT_349 = " = (";
367
  protected final String TEXT_350 = NL + "\t\tif (";
367
  protected final String TEXT_350 = ")eVirtualGet(";
368
  protected final String TEXT_351 = " != null && ";
368
  protected final String TEXT_351 = ", ";
369
  protected final String TEXT_352 = ".eIsProxy())" + NL + "\t\t{" + NL + "\t\t\t";
369
  protected final String TEXT_352 = ");";
370
  protected final String TEXT_353 = " old";
370
  protected final String TEXT_353 = NL + "\t\tif (";
371
  protected final String TEXT_354 = " = (";
371
  protected final String TEXT_354 = " != null && ";
372
  protected final String TEXT_355 = ")";
372
  protected final String TEXT_355 = ".eIsProxy())" + NL + "\t\t{" + NL + "\t\t\t";
373
  protected final String TEXT_356 = ";" + NL + "\t\t\t";
373
  protected final String TEXT_356 = " old";
374
  protected final String TEXT_357 = " = ";
374
  protected final String TEXT_357 = " = (";
375
  protected final String TEXT_358 = "eResolveProxy(old";
375
  protected final String TEXT_358 = ")";
376
  protected final String TEXT_359 = ");" + NL + "\t\t\tif (";
376
  protected final String TEXT_359 = ";" + NL + "\t\t\t";
377
  protected final String TEXT_360 = " != old";
377
  protected final String TEXT_360 = " = ";
378
  protected final String TEXT_361 = ")" + NL + "\t\t\t{";
378
  protected final String TEXT_361 = "eResolveProxy(old";
379
  protected final String TEXT_362 = NL + "\t\t\t\t";
379
  protected final String TEXT_362 = ");" + NL + "\t\t\tif (";
380
  protected final String TEXT_363 = " new";
380
  protected final String TEXT_363 = " != old";
381
  protected final String TEXT_364 = " = (";
381
  protected final String TEXT_364 = ")" + NL + "\t\t\t{";
382
  protected final String TEXT_365 = ")";
382
  protected final String TEXT_365 = NL + "\t\t\t\t";
383
  protected final String TEXT_366 = ";";
383
  protected final String TEXT_366 = " new";
384
  protected final String TEXT_367 = NL + "\t\t\t\t";
384
  protected final String TEXT_367 = " = (";
385
  protected final String TEXT_368 = " msgs = old";
385
  protected final String TEXT_368 = ")";
386
  protected final String TEXT_369 = ".eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ";
386
  protected final String TEXT_369 = ";";
387
  protected final String TEXT_370 = ", null, null);";
387
  protected final String TEXT_370 = NL + "\t\t\t\t";
388
  protected final String TEXT_371 = NL + "\t\t\t\t";
388
  protected final String TEXT_371 = " msgs = old";
389
  protected final String TEXT_372 = " msgs =  old";
389
  protected final String TEXT_372 = ".eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ";
390
  protected final String TEXT_373 = ".eInverseRemove(this, ";
390
  protected final String TEXT_373 = ", null, null);";
391
  protected final String TEXT_374 = ", ";
391
  protected final String TEXT_374 = NL + "\t\t\t\t";
392
  protected final String TEXT_375 = ".class, null);";
392
  protected final String TEXT_375 = " msgs =  old";
393
  protected final String TEXT_376 = NL + "\t\t\t\tif (new";
393
  protected final String TEXT_376 = ".eInverseRemove(this, ";
394
  protected final String TEXT_377 = ".eInternalContainer() == null)" + NL + "\t\t\t\t{";
394
  protected final String TEXT_377 = ", ";
395
  protected final String TEXT_378 = NL + "\t\t\t\t\tmsgs = new";
395
  protected final String TEXT_378 = ".class, null);";
396
  protected final String TEXT_379 = ".eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ";
396
  protected final String TEXT_379 = NL + "\t\t\t\tif (new";
397
  protected final String TEXT_380 = ", null, msgs);";
397
  protected final String TEXT_380 = ".eInternalContainer() == null)" + NL + "\t\t\t\t{";
398
  protected final String TEXT_381 = NL + "\t\t\t\t\tmsgs =  new";
398
  protected final String TEXT_381 = NL + "\t\t\t\t\tmsgs = new";
399
  protected final String TEXT_382 = ".eInverseAdd(this, ";
399
  protected final String TEXT_382 = ".eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ";
400
  protected final String TEXT_383 = ", ";
400
  protected final String TEXT_383 = ", null, msgs);";
401
  protected final String TEXT_384 = ".class, msgs);";
401
  protected final String TEXT_384 = NL + "\t\t\t\t\tmsgs =  new";
402
  protected final String TEXT_385 = NL + "\t\t\t\t}" + NL + "\t\t\t\tif (msgs != null) msgs.dispatch();";
402
  protected final String TEXT_385 = ".eInverseAdd(this, ";
403
  protected final String TEXT_386 = NL + "\t\t\t\teVirtualSet(";
403
  protected final String TEXT_386 = ", ";
404
  protected final String TEXT_387 = ", ";
404
  protected final String TEXT_387 = ".class, msgs);";
405
  protected final String TEXT_388 = ");";
405
  protected final String TEXT_388 = NL + "\t\t\t\t}" + NL + "\t\t\t\tif (msgs != null) msgs.dispatch();";
406
  protected final String TEXT_389 = NL + "\t\t\t\tif (eNotificationRequired())" + NL + "\t\t\t\t\teNotify(new ";
406
  protected final String TEXT_389 = NL + "\t\t\t\teVirtualSet(";
407
  protected final String TEXT_390 = "(this, ";
407
  protected final String TEXT_390 = ", ";
408
  protected final String TEXT_391 = ".RESOLVE, ";
408
  protected final String TEXT_391 = ");";
409
  protected final String TEXT_392 = ", old";
409
  protected final String TEXT_392 = NL + "\t\t\t\tif (eNotificationRequired())" + NL + "\t\t\t\t\teNotify(new ";
410
  protected final String TEXT_393 = ", ";
410
  protected final String TEXT_393 = "(this, ";
411
  protected final String TEXT_394 = "));";
411
  protected final String TEXT_394 = ".RESOLVE, ";
412
  protected final String TEXT_395 = NL + "\t\t\t}" + NL + "\t\t}";
412
  protected final String TEXT_395 = ", old";
413
  protected final String TEXT_396 = NL + "\t\treturn (";
413
  protected final String TEXT_396 = ", ";
414
  protected final String TEXT_397 = ")eVirtualGet(";
414
  protected final String TEXT_397 = "));";
415
  protected final String TEXT_398 = ", ";
415
  protected final String TEXT_398 = NL + "\t\t\t}" + NL + "\t\t}";
416
  protected final String TEXT_399 = ");";
416
  protected final String TEXT_399 = NL + "\t\treturn (";
417
  protected final String TEXT_400 = NL + "\t\treturn (";
417
  protected final String TEXT_400 = ")eVirtualGet(";
418
  protected final String TEXT_401 = " & ";
418
  protected final String TEXT_401 = ", ";
419
  protected final String TEXT_402 = "_EFLAG) != 0;";
419
  protected final String TEXT_402 = ");";
420
  protected final String TEXT_403 = NL + "\t\treturn ";
420
  protected final String TEXT_403 = NL + "\t\treturn (";
421
  protected final String TEXT_404 = "_EFLAG_VALUES[(";
421
  protected final String TEXT_404 = " & ";
422
  protected final String TEXT_405 = " & ";
422
  protected final String TEXT_405 = "_EFLAG) != 0;";
423
  protected final String TEXT_406 = "_EFLAG) >>> ";
423
  protected final String TEXT_406 = NL + "\t\treturn ";
424
  protected final String TEXT_407 = "_EFLAG_OFFSET];";
424
  protected final String TEXT_407 = "_EFLAG_VALUES[(";
425
  protected final String TEXT_408 = NL + "\t\treturn ";
425
  protected final String TEXT_408 = " & ";
426
  protected final String TEXT_409 = ";";
426
  protected final String TEXT_409 = "_EFLAG) >>> ";
427
  protected final String TEXT_410 = NL + "\t\t";
427
  protected final String TEXT_410 = "_EFLAG_OFFSET];";
428
  protected final String TEXT_411 = " ";
428
  protected final String TEXT_411 = NL + "\t\treturn ";
429
  protected final String TEXT_412 = " = basicGet";
429
  protected final String TEXT_412 = ";";
430
  protected final String TEXT_413 = "();" + NL + "\t\treturn ";
430
  protected final String TEXT_413 = NL + "\t\t";
431
  protected final String TEXT_414 = " != null && ";
431
  protected final String TEXT_414 = " ";
432
  protected final String TEXT_415 = ".eIsProxy() ? ";
432
  protected final String TEXT_415 = " = basicGet";
433
  protected final String TEXT_416 = "eResolveProxy((";
433
  protected final String TEXT_416 = "();" + NL + "\t\treturn ";
434
  protected final String TEXT_417 = ")";
434
  protected final String TEXT_417 = " != null && ";
435
  protected final String TEXT_418 = ") : ";
435
  protected final String TEXT_418 = ".eIsProxy() ? ";
436
  protected final String TEXT_419 = ";";
436
  protected final String TEXT_419 = "eResolveProxy((";
437
  protected final String TEXT_420 = NL + "\t\treturn new ";
437
  protected final String TEXT_420 = ")";
438
  protected final String TEXT_421 = "((";
438
  protected final String TEXT_421 = ") : ";
439
  protected final String TEXT_422 = ".Internal)((";
439
  protected final String TEXT_422 = ";";
440
  protected final String TEXT_423 = ".Internal.Wrapper)get";
440
  protected final String TEXT_423 = NL + "\t\treturn new ";
441
  protected final String TEXT_424 = "()).featureMap().";
441
  protected final String TEXT_424 = "((";
442
  protected final String TEXT_425 = "list(";
442
  protected final String TEXT_425 = ".Internal)((";
443
  protected final String TEXT_426 = "));";
443
  protected final String TEXT_426 = ".Internal.Wrapper)get";
444
  protected final String TEXT_427 = NL + "\t\treturn (";
444
  protected final String TEXT_427 = "()).featureMap().";
445
  protected final String TEXT_428 = ")get";
445
  protected final String TEXT_428 = "list(";
446
  protected final String TEXT_429 = "().";
446
  protected final String TEXT_429 = "));";
447
  protected final String TEXT_430 = "list(";
447
  protected final String TEXT_430 = NL + "\t\treturn (";
448
  protected final String TEXT_431 = ");";
448
  protected final String TEXT_431 = ")get";
449
  protected final String TEXT_432 = NL + "\t\treturn ((";
449
  protected final String TEXT_432 = "().";
450
  protected final String TEXT_433 = ".Internal.Wrapper)get";
450
  protected final String TEXT_433 = "list(";
451
  protected final String TEXT_434 = "()).featureMap().list(";
451
  protected final String TEXT_434 = ");";
452
  protected final String TEXT_435 = ");";
452
  protected final String TEXT_435 = NL + "\t\treturn ((";
453
  protected final String TEXT_436 = NL + "\t\treturn get";
453
  protected final String TEXT_436 = ".Internal.Wrapper)get";
454
  protected final String TEXT_437 = "().list(";
454
  protected final String TEXT_437 = "()).featureMap().list(";
455
  protected final String TEXT_438 = ");";
455
  protected final String TEXT_438 = ");";
456
  protected final String TEXT_439 = NL + "\t\treturn ";
456
  protected final String TEXT_439 = NL + "\t\treturn get";
457
  protected final String TEXT_440 = "(";
457
  protected final String TEXT_440 = "().list(";
458
  protected final String TEXT_441 = "(";
458
  protected final String TEXT_441 = ");";
459
  protected final String TEXT_442 = ")";
459
  protected final String TEXT_442 = NL + "\t\treturn ";
460
  protected final String TEXT_443 = "((";
460
  protected final String TEXT_443 = "(";
461
  protected final String TEXT_444 = ".Internal.Wrapper)get";
461
  protected final String TEXT_444 = "(";
462
  protected final String TEXT_445 = "()).featureMap().get(";
462
  protected final String TEXT_445 = ")";
463
  protected final String TEXT_446 = ", true)";
463
  protected final String TEXT_446 = "((";
464
  protected final String TEXT_447 = ").";
464
  protected final String TEXT_447 = ".Internal.Wrapper)get";
465
  protected final String TEXT_448 = "()";
465
  protected final String TEXT_448 = "()).featureMap().get(";
466
  protected final String TEXT_449 = ";";
466
  protected final String TEXT_449 = ", true)";
467
  protected final String TEXT_450 = NL + "\t\treturn ";
467
  protected final String TEXT_450 = ").";
468
  protected final String TEXT_451 = "(";
468
  protected final String TEXT_451 = "()";
469
  protected final String TEXT_452 = "(";
469
  protected final String TEXT_452 = ";";
470
  protected final String TEXT_453 = ")";
470
  protected final String TEXT_453 = NL + "\t\treturn ";
471
  protected final String TEXT_454 = "get";
471
  protected final String TEXT_454 = "(";
472
  protected final String TEXT_455 = "().get(";
472
  protected final String TEXT_455 = "(";
473
  protected final String TEXT_456 = ", true)";
473
  protected final String TEXT_456 = ")";
474
  protected final String TEXT_457 = ").";
474
  protected final String TEXT_457 = "get";
475
  protected final String TEXT_458 = "()";
475
  protected final String TEXT_458 = "().get(";
476
  protected final String TEXT_459 = ";";
476
  protected final String TEXT_459 = ", true)";
477
  protected final String TEXT_460 = NL + "\t\t";
477
  protected final String TEXT_460 = ").";
478
  protected final String TEXT_461 = NL + "\t\t// TODO: implement this method to return the '";
478
  protected final String TEXT_461 = "()";
479
  protected final String TEXT_462 = "' ";
479
  protected final String TEXT_462 = ";";
480
  protected final String TEXT_463 = NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT";
480
  protected final String TEXT_463 = NL + "\t\t";
481
  protected final String TEXT_464 = NL + "\t\t// The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting" + NL + "\t\t// so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.";
481
  protected final String TEXT_464 = NL + "\t\t// TODO: implement this method to return the '";
482
  protected final String TEXT_465 = "EcoreEMap";
482
  protected final String TEXT_465 = "' ";
483
  protected final String TEXT_466 = "BasicFeatureMap";
483
  protected final String TEXT_466 = NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT";
484
  protected final String TEXT_467 = "EcoreEList";
484
  protected final String TEXT_467 = NL + "\t\t// The list is expected to implement org.eclipse.emf.ecore.util.InternalEList and org.eclipse.emf.ecore.EStructuralFeature.Setting" + NL + "\t\t// so it's likely that an appropriate subclass of org.eclipse.emf.ecore.util.";
485
  protected final String TEXT_468 = " should be used.";
485
  protected final String TEXT_468 = "EcoreEMap";
486
  protected final String TEXT_469 = NL + "\t\tthrow new UnsupportedOperationException();";
486
  protected final String TEXT_469 = "BasicFeatureMap";
487
  protected final String TEXT_470 = NL + "\t}" + NL;
487
  protected final String TEXT_470 = "EcoreEList";
488
  protected final String TEXT_471 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
488
  protected final String TEXT_471 = " should be used.";
489
  protected final String TEXT_472 = NL + "\tpublic ";
489
  protected final String TEXT_472 = NL + "\t\tthrow new UnsupportedOperationException();";
490
  protected final String TEXT_473 = " basicGet";
490
  protected final String TEXT_473 = NL + "\t}" + NL;
491
  protected final String TEXT_474 = "()" + NL + "\t{";
491
  protected final String TEXT_474 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
492
  protected final String TEXT_475 = NL + "\t\treturn (";
492
  protected final String TEXT_475 = NL + "\tpublic ";
493
  protected final String TEXT_476 = ")eDynamicGet(";
493
  protected final String TEXT_476 = " basicGet";
494
  protected final String TEXT_477 = ", ";
494
  protected final String TEXT_477 = "()" + NL + "\t{";
495
  protected final String TEXT_478 = ", false, ";
495
  protected final String TEXT_478 = NL + "\t\treturn (";
496
  protected final String TEXT_479 = ");";
496
  protected final String TEXT_479 = ")eDynamicGet(";
497
  protected final String TEXT_480 = NL + "\t\tif (eContainerFeatureID != ";
497
  protected final String TEXT_480 = ", ";
498
  protected final String TEXT_481 = ") return null;" + NL + "\t\treturn (";
498
  protected final String TEXT_481 = ", false, ";
499
  protected final String TEXT_482 = ")eInternalContainer();";
499
  protected final String TEXT_482 = ");";
500
  protected final String TEXT_483 = NL + "\t\treturn (";
500
  protected final String TEXT_483 = NL + "\t\teFireRead(";
501
  protected final String TEXT_484 = ")eVirtualGet(";
501
  protected final String TEXT_484 = ");" + NL + "\t\tif (eContainerFeatureID != ";
502
  protected final String TEXT_485 = ");";
502
  protected final String TEXT_485 = ") return null;" + NL + "\t\treturn (";
503
  protected final String TEXT_486 = NL + "\t\treturn ";
503
  protected final String TEXT_486 = ")eInternalContainer();";
504
  protected final String TEXT_487 = ";";
504
  protected final String TEXT_487 = NL + "\t\teFireRead(";
505
  protected final String TEXT_488 = NL + "\t\treturn (";
505
  protected final String TEXT_488 = ");";
506
  protected final String TEXT_489 = ")((";
506
  protected final String TEXT_489 = NL + "\t\treturn (";
507
  protected final String TEXT_490 = ".Internal.Wrapper)get";
507
  protected final String TEXT_490 = ")eVirtualGet(";
508
  protected final String TEXT_491 = "()).featureMap().get(";
508
  protected final String TEXT_491 = ");";
509
  protected final String TEXT_492 = ", false);";
509
  protected final String TEXT_492 = NL + "\t\treturn ";
510
  protected final String TEXT_493 = NL + "\t\treturn (";
510
  protected final String TEXT_493 = ";";
511
  protected final String TEXT_494 = ")get";
511
  protected final String TEXT_494 = NL + "\t\treturn (";
512
  protected final String TEXT_495 = "().get(";
512
  protected final String TEXT_495 = ")((";
513
  protected final String TEXT_496 = ", false);";
513
  protected final String TEXT_496 = ".Internal.Wrapper)get";
514
  protected final String TEXT_497 = NL + "\t\t// TODO: implement this method to return the '";
514
  protected final String TEXT_497 = "()).featureMap().get(";
515
  protected final String TEXT_498 = "' ";
515
  protected final String TEXT_498 = ", false);";
516
  protected final String TEXT_499 = NL + "\t\t// -> do not perform proxy resolution" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
516
  protected final String TEXT_499 = NL + "\t\treturn (";
517
  protected final String TEXT_500 = NL + "\t}" + NL;
517
  protected final String TEXT_500 = ")get";
518
  protected final String TEXT_501 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
518
  protected final String TEXT_501 = "().get(";
519
  protected final String TEXT_502 = NL + "\tpublic ";
519
  protected final String TEXT_502 = ", false);";
520
  protected final String TEXT_503 = " basicSet";
520
  protected final String TEXT_503 = NL + "\t\t// TODO: implement this method to return the '";
521
  protected final String TEXT_504 = "(";
521
  protected final String TEXT_504 = "' ";
522
  protected final String TEXT_505 = " new";
522
  protected final String TEXT_505 = NL + "\t\t// -> do not perform proxy resolution" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
523
  protected final String TEXT_506 = ", ";
523
  protected final String TEXT_506 = NL + "\t}" + NL;
524
  protected final String TEXT_507 = " msgs)" + NL + "\t{";
524
  protected final String TEXT_507 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
525
  protected final String TEXT_508 = NL + "\t\tmsgs = eBasicSetContainer((";
525
  protected final String TEXT_508 = NL + "\tpublic ";
526
  protected final String TEXT_509 = ")new";
526
  protected final String TEXT_509 = " basicSet";
527
  protected final String TEXT_510 = ", ";
527
  protected final String TEXT_510 = "(";
528
  protected final String TEXT_511 = ", msgs);";
528
  protected final String TEXT_511 = " new";
529
  protected final String TEXT_512 = NL + "\t\treturn msgs;";
529
  protected final String TEXT_512 = ", ";
530
  protected final String TEXT_513 = NL + "\t\tmsgs = eDynamicInverseRemove((";
530
  protected final String TEXT_513 = " msgs)" + NL + "\t{";
531
  protected final String TEXT_514 = ")new";
531
  protected final String TEXT_514 = NL + "\t\teFireWrite(";
532
  protected final String TEXT_515 = ", ";
532
  protected final String TEXT_515 = ");";
533
  protected final String TEXT_516 = ", msgs);";
533
  protected final String TEXT_516 = NL + "\t\tmsgs = eBasicSetContainer((";
534
  protected final String TEXT_517 = NL + "\t\treturn msgs;";
534
  protected final String TEXT_517 = ")new";
535
  protected final String TEXT_518 = NL + "\t\tObject old";
535
  protected final String TEXT_518 = ", ";
536
  protected final String TEXT_519 = " = eVirtualSet(";
536
  protected final String TEXT_519 = ", msgs);";
537
  protected final String TEXT_520 = ", new";
537
  protected final String TEXT_520 = NL + "\t\treturn msgs;";
538
  protected final String TEXT_521 = ");";
538
  protected final String TEXT_521 = NL + "\t\tmsgs = eDynamicInverseRemove((";
539
  protected final String TEXT_522 = NL + "\t\t";
539
  protected final String TEXT_522 = ")new";
540
  protected final String TEXT_523 = " old";
540
  protected final String TEXT_523 = ", ";
541
  protected final String TEXT_524 = " = ";
541
  protected final String TEXT_524 = ", msgs);";
542
  protected final String TEXT_525 = ";" + NL + "\t\t";
542
  protected final String TEXT_525 = NL + "\t\treturn msgs;";
543
  protected final String TEXT_526 = " = new";
543
  protected final String TEXT_526 = NL + "\t\teFireWrite(";
544
  protected final String TEXT_527 = ";";
544
  protected final String TEXT_527 = ");";
545
  protected final String TEXT_528 = NL + "\t\tboolean isSetChange = old";
545
  protected final String TEXT_528 = NL + "\t\tObject old";
546
  protected final String TEXT_529 = " == EVIRTUAL_NO_VALUE;";
546
  protected final String TEXT_529 = " = eVirtualSet(";
547
  protected final String TEXT_530 = NL + "\t\tboolean old";
547
  protected final String TEXT_530 = ", new";
548
  protected final String TEXT_531 = "ESet = (";
548
  protected final String TEXT_531 = ");";
549
  protected final String TEXT_532 = " & ";
549
  protected final String TEXT_532 = NL + "\t\t";
550
  protected final String TEXT_533 = "_ESETFLAG) != 0;";
550
  protected final String TEXT_533 = " old";
551
  protected final String TEXT_534 = NL + "\t\t";
551
  protected final String TEXT_534 = " = ";
552
  protected final String TEXT_535 = " |= ";
552
  protected final String TEXT_535 = ";" + NL + "\t\t";
553
  protected final String TEXT_536 = "_ESETFLAG;";
553
  protected final String TEXT_536 = " = new";
554
  protected final String TEXT_537 = NL + "\t\tboolean old";
554
  protected final String TEXT_537 = ";";
555
  protected final String TEXT_538 = "ESet = ";
555
  protected final String TEXT_538 = NL + "\t\tboolean isSetChange = old";
556
  protected final String TEXT_539 = "ESet;";
556
  protected final String TEXT_539 = " == EVIRTUAL_NO_VALUE;";
557
  protected final String TEXT_540 = NL + "\t\t";
557
  protected final String TEXT_540 = NL + "\t\tboolean old";
558
  protected final String TEXT_541 = "ESet = true;";
558
  protected final String TEXT_541 = "ESet = (";
559
  protected final String TEXT_542 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t{";
559
  protected final String TEXT_542 = " & ";
560
  protected final String TEXT_543 = NL + "\t\t\t";
560
  protected final String TEXT_543 = "_ESETFLAG) != 0;";
561
  protected final String TEXT_544 = " notification = new ";
561
  protected final String TEXT_544 = NL + "\t\t";
562
  protected final String TEXT_545 = "(this, ";
562
  protected final String TEXT_545 = " |= ";
563
  protected final String TEXT_546 = ".SET, ";
563
  protected final String TEXT_546 = "_ESETFLAG;";
564
  protected final String TEXT_547 = ", ";
564
  protected final String TEXT_547 = NL + "\t\tboolean old";
565
  protected final String TEXT_548 = "isSetChange ? null : old";
565
  protected final String TEXT_548 = "ESet = ";
566
  protected final String TEXT_549 = "old";
566
  protected final String TEXT_549 = "ESet;";
567
  protected final String TEXT_550 = ", new";
567
  protected final String TEXT_550 = NL + "\t\t";
568
  protected final String TEXT_551 = ", ";
568
  protected final String TEXT_551 = "ESet = true;";
569
  protected final String TEXT_552 = "isSetChange";
569
  protected final String TEXT_552 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t{";
570
  protected final String TEXT_553 = "!old";
570
  protected final String TEXT_553 = NL + "\t\t\t";
571
  protected final String TEXT_554 = "ESet";
571
  protected final String TEXT_554 = " notification = new ";
572
  protected final String TEXT_555 = ");";
572
  protected final String TEXT_555 = "(this, ";
573
  protected final String TEXT_556 = NL + "\t\t\t";
573
  protected final String TEXT_556 = ".SET, ";
574
  protected final String TEXT_557 = " notification = new ";
574
  protected final String TEXT_557 = ", ";
575
  protected final String TEXT_558 = "(this, ";
575
  protected final String TEXT_558 = "isSetChange ? null : old";
576
  protected final String TEXT_559 = ".SET, ";
576
  protected final String TEXT_559 = "old";
577
  protected final String TEXT_560 = ", ";
577
  protected final String TEXT_560 = ", new";
578
  protected final String TEXT_561 = "old";
578
  protected final String TEXT_561 = ", ";
579
  protected final String TEXT_562 = " == EVIRTUAL_NO_VALUE ? null : old";
579
  protected final String TEXT_562 = "isSetChange";
580
  protected final String TEXT_563 = "old";
580
  protected final String TEXT_563 = "!old";
581
  protected final String TEXT_564 = ", new";
581
  protected final String TEXT_564 = "ESet";
582
  protected final String TEXT_565 = ");";
582
  protected final String TEXT_565 = ");";
583
  protected final String TEXT_566 = NL + "\t\t\tif (msgs == null) msgs = notification; else msgs.add(notification);" + NL + "\t\t}";
583
  protected final String TEXT_566 = NL + "\t\t\t";
584
  protected final String TEXT_567 = NL + "\t\treturn msgs;";
584
  protected final String TEXT_567 = " notification = new ";
585
  protected final String TEXT_568 = NL + "\t\treturn ((";
585
  protected final String TEXT_568 = "(this, ";
586
  protected final String TEXT_569 = ".Internal)((";
586
  protected final String TEXT_569 = ".SET, ";
587
  protected final String TEXT_570 = ".Internal.Wrapper)get";
587
  protected final String TEXT_570 = ", ";
588
  protected final String TEXT_571 = "()).featureMap()).basicAdd(";
588
  protected final String TEXT_571 = "old";
589
  protected final String TEXT_572 = ", new";
589
  protected final String TEXT_572 = " == EVIRTUAL_NO_VALUE ? null : old";
590
  protected final String TEXT_573 = ", msgs);";
590
  protected final String TEXT_573 = "old";
591
  protected final String TEXT_574 = NL + "\t\treturn ((";
591
  protected final String TEXT_574 = ", new";
592
  protected final String TEXT_575 = ".Internal)get";
592
  protected final String TEXT_575 = ");";
593
  protected final String TEXT_576 = "()).basicAdd(";
593
  protected final String TEXT_576 = NL + "\t\t\tif (msgs == null) msgs = notification; else msgs.add(notification);" + NL + "\t\t}";
594
  protected final String TEXT_577 = ", new";
594
  protected final String TEXT_577 = NL + "\t\treturn msgs;";
595
  protected final String TEXT_578 = ", msgs);";
595
  protected final String TEXT_578 = NL + "\t\treturn ((";
596
  protected final String TEXT_579 = NL + "\t\t// TODO: implement this method to set the contained '";
596
  protected final String TEXT_579 = ".Internal)((";
597
  protected final String TEXT_580 = "' ";
597
  protected final String TEXT_580 = ".Internal.Wrapper)get";
598
  protected final String TEXT_581 = NL + "\t\t// -> this method is automatically invoked to keep the containment relationship in synch" + NL + "\t\t// -> do not modify other features" + NL + "\t\t// -> return msgs, after adding any generated Notification to it (if it is null, a NotificationChain object must be created first)" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
598
  protected final String TEXT_581 = "()).featureMap()).basicAdd(";
599
  protected final String TEXT_582 = NL + "\t}" + NL;
599
  protected final String TEXT_582 = ", new";
600
  protected final String TEXT_583 = NL + "\t/**" + NL + "\t * Sets the value of the '{@link ";
600
  protected final String TEXT_583 = ", msgs);";
601
  protected final String TEXT_584 = "#";
601
  protected final String TEXT_584 = NL + "\t\treturn ((";
602
  protected final String TEXT_585 = " <em>";
602
  protected final String TEXT_585 = ".Internal)get";
603
  protected final String TEXT_586 = "</em>}' ";
603
  protected final String TEXT_586 = "()).basicAdd(";
604
  protected final String TEXT_587 = ".";
604
  protected final String TEXT_587 = ", new";
605
  protected final String TEXT_588 = NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @param value the new value of the '<em>";
605
  protected final String TEXT_588 = ", msgs);";
606
  protected final String TEXT_589 = "</em>' ";
606
  protected final String TEXT_589 = NL + "\t\t// TODO: implement this method to set the contained '";
607
  protected final String TEXT_590 = ".";
607
  protected final String TEXT_590 = "' ";
608
  protected final String TEXT_591 = NL + "\t * @see ";
608
  protected final String TEXT_591 = NL + "\t\t// -> this method is automatically invoked to keep the containment relationship in synch" + NL + "\t\t// -> do not modify other features" + NL + "\t\t// -> return msgs, after adding any generated Notification to it (if it is null, a NotificationChain object must be created first)" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
609
  protected final String TEXT_592 = NL + "\t * @see #isSet";
609
  protected final String TEXT_592 = NL + "\t}" + NL;
610
  protected final String TEXT_593 = "()";
610
  protected final String TEXT_593 = NL + "\t/**" + NL + "\t * Sets the value of the '{@link ";
611
  protected final String TEXT_594 = NL + "\t * @see #unset";
611
  protected final String TEXT_594 = "#";
612
  protected final String TEXT_595 = "()";
612
  protected final String TEXT_595 = " <em>";
613
  protected final String TEXT_596 = NL + "\t * @see #";
613
  protected final String TEXT_596 = "</em>}' ";
614
  protected final String TEXT_597 = "()" + NL + "\t * @generated" + NL + "\t */";
614
  protected final String TEXT_597 = ".";
615
  protected final String TEXT_598 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
615
  protected final String TEXT_598 = NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @param value the new value of the '<em>";
616
  protected final String TEXT_599 = NL + "\tvoid set";
616
  protected final String TEXT_599 = "</em>' ";
617
  protected final String TEXT_600 = "(";
617
  protected final String TEXT_600 = ".";
618
  protected final String TEXT_601 = " value);" + NL;
618
  protected final String TEXT_601 = NL + "\t * @see ";
619
  protected final String TEXT_602 = NL + "\tpublic void set";
619
  protected final String TEXT_602 = NL + "\t * @see #isSet";
620
  protected final String TEXT_603 = "_";
620
  protected final String TEXT_603 = "()";
621
  protected final String TEXT_604 = "(";
621
  protected final String TEXT_604 = NL + "\t * @see #unset";
622
  protected final String TEXT_605 = " ";
622
  protected final String TEXT_605 = "()";
623
  protected final String TEXT_606 = ")" + NL + "\t{";
623
  protected final String TEXT_606 = NL + "\t * @see #";
624
  protected final String TEXT_607 = NL + "\t\teDynamicSet(";
624
  protected final String TEXT_607 = "()" + NL + "\t * @generated" + NL + "\t */";
625
  protected final String TEXT_608 = ", ";
625
  protected final String TEXT_608 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
626
  protected final String TEXT_609 = ", ";
626
  protected final String TEXT_609 = NL + "\tvoid set";
627
  protected final String TEXT_610 = "new ";
627
  protected final String TEXT_610 = "(";
628
  protected final String TEXT_611 = "(";
628
  protected final String TEXT_611 = " value);" + NL;
629
  protected final String TEXT_612 = "new";
629
  protected final String TEXT_612 = NL + "\tpublic void set";
630
  protected final String TEXT_613 = ")";
630
  protected final String TEXT_613 = "_";
631
  protected final String TEXT_614 = ");";
631
  protected final String TEXT_614 = "(";
632
  protected final String TEXT_615 = NL + "\t\teSet(";
632
  protected final String TEXT_615 = " ";
633
  protected final String TEXT_616 = ", ";
633
  protected final String TEXT_616 = ")" + NL + "\t{";
634
  protected final String TEXT_617 = "new ";
634
  protected final String TEXT_617 = NL + "\t\teDynamicSet(";
635
  protected final String TEXT_618 = "(";
635
  protected final String TEXT_618 = ", ";
636
  protected final String TEXT_619 = "new";
636
  protected final String TEXT_619 = ", ";
637
  protected final String TEXT_620 = ")";
637
  protected final String TEXT_620 = "new ";
638
  protected final String TEXT_621 = ");";
638
  protected final String TEXT_621 = "(";
639
  protected final String TEXT_622 = NL + "\t\tif (new";
639
  protected final String TEXT_622 = "new";
640
  protected final String TEXT_623 = " != eInternalContainer() || (eContainerFeatureID != ";
640
  protected final String TEXT_623 = ")";
641
  protected final String TEXT_624 = " && new";
641
  protected final String TEXT_624 = ");";
642
  protected final String TEXT_625 = " != null))" + NL + "\t\t{" + NL + "\t\t\tif (";
642
  protected final String TEXT_625 = NL + "\t\teSet(";
643
  protected final String TEXT_626 = ".isAncestor(this, ";
643
  protected final String TEXT_626 = ", ";
644
  protected final String TEXT_627 = "new";
644
  protected final String TEXT_627 = "new ";
645
  protected final String TEXT_628 = "))" + NL + "\t\t\t\tthrow new ";
645
  protected final String TEXT_628 = "(";
646
  protected final String TEXT_629 = "(\"Recursive containment not allowed for \" + toString());";
646
  protected final String TEXT_629 = "new";
647
  protected final String TEXT_630 = NL + "\t\t\t";
647
  protected final String TEXT_630 = ")";
648
  protected final String TEXT_631 = " msgs = null;" + NL + "\t\t\tif (eInternalContainer() != null)" + NL + "\t\t\t\tmsgs = eBasicRemoveFromContainer(msgs);" + NL + "\t\t\tif (new";
648
  protected final String TEXT_631 = ");";
649
  protected final String TEXT_632 = " != null)" + NL + "\t\t\t\tmsgs = ((";
649
  protected final String TEXT_632 = NL + "\t\teFireWrite(";
650
  protected final String TEXT_633 = ")new";
650
  protected final String TEXT_633 = ");";
651
  protected final String TEXT_634 = ").eInverseAdd(this, ";
651
  protected final String TEXT_634 = NL + "\t\tif (new";
652
  protected final String TEXT_635 = ", ";
652
  protected final String TEXT_635 = " != eInternalContainer() || (eContainerFeatureID != ";
653
  protected final String TEXT_636 = ".class, msgs);" + NL + "\t\t\tmsgs = basicSet";
653
  protected final String TEXT_636 = " && new";
654
  protected final String TEXT_637 = "(";
654
  protected final String TEXT_637 = " != null))" + NL + "\t\t{" + NL + "\t\t\tif (";
655
  protected final String TEXT_638 = "new";
655
  protected final String TEXT_638 = ".isAncestor(this, ";
656
  protected final String TEXT_639 = ", msgs);" + NL + "\t\t\tif (msgs != null) msgs.dispatch();" + NL + "\t\t}";
656
  protected final String TEXT_639 = "new";
657
  protected final String TEXT_640 = NL + "\t\telse if (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
657
  protected final String TEXT_640 = "))" + NL + "\t\t\t\tthrow new ";
658
  protected final String TEXT_641 = "(this, ";
658
  protected final String TEXT_641 = "(\"Recursive containment not allowed for \" + toString());";
659
  protected final String TEXT_642 = ".SET, ";
659
  protected final String TEXT_642 = NL + "\t\t\t";
660
  protected final String TEXT_643 = ", new";
660
  protected final String TEXT_643 = " msgs = null;" + NL + "\t\t\tif (eInternalContainer() != null)" + NL + "\t\t\t\tmsgs = eBasicRemoveFromContainer(msgs);" + NL + "\t\t\tif (new";
661
  protected final String TEXT_644 = ", new";
661
  protected final String TEXT_644 = " != null)" + NL + "\t\t\t\tmsgs = ((";
662
  protected final String TEXT_645 = "));";
662
  protected final String TEXT_645 = ")new";
663
  protected final String TEXT_646 = NL + "\t\t";
663
  protected final String TEXT_646 = ").eInverseAdd(this, ";
664
  protected final String TEXT_647 = " ";
664
  protected final String TEXT_647 = ", ";
665
  protected final String TEXT_648 = " = (";
665
  protected final String TEXT_648 = ".class, msgs);" + NL + "\t\t\tmsgs = basicSet";
666
  protected final String TEXT_649 = ")eVirtualGet(";
666
  protected final String TEXT_649 = "(";
667
  protected final String TEXT_650 = ");";
667
  protected final String TEXT_650 = "new";
668
  protected final String TEXT_651 = NL + "\t\tif (new";
668
  protected final String TEXT_651 = ", msgs);" + NL + "\t\t\tif (msgs != null) msgs.dispatch();" + NL + "\t\t}";
669
  protected final String TEXT_652 = " != ";
669
  protected final String TEXT_652 = NL + "\t\telse if (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
670
  protected final String TEXT_653 = ")" + NL + "\t\t{" + NL + "\t\t\t";
670
  protected final String TEXT_653 = "(this, ";
671
  protected final String TEXT_654 = " msgs = null;" + NL + "\t\t\tif (";
671
  protected final String TEXT_654 = ".SET, ";
672
  protected final String TEXT_655 = " != null)";
672
  protected final String TEXT_655 = ", new";
673
  protected final String TEXT_656 = NL + "\t\t\t\tmsgs = ((";
673
  protected final String TEXT_656 = ", new";
674
  protected final String TEXT_657 = ")";
674
  protected final String TEXT_657 = "));";
675
  protected final String TEXT_658 = ").eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ";
675
  protected final String TEXT_658 = NL + "\t\t";
676
  protected final String TEXT_659 = ", null, msgs);" + NL + "\t\t\tif (new";
676
  protected final String TEXT_659 = " ";
677
  protected final String TEXT_660 = " != null)" + NL + "\t\t\t\tmsgs = ((";
677
  protected final String TEXT_660 = " = (";
678
  protected final String TEXT_661 = ")new";
678
  protected final String TEXT_661 = ")eVirtualGet(";
679
  protected final String TEXT_662 = ").eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ";
679
  protected final String TEXT_662 = ");";
680
  protected final String TEXT_663 = ", null, msgs);";
680
  protected final String TEXT_663 = NL + "\t\tif (new";
681
  protected final String TEXT_664 = NL + "\t\t\t\tmsgs = ((";
681
  protected final String TEXT_664 = " != ";
682
  protected final String TEXT_665 = ")";
682
  protected final String TEXT_665 = ")" + NL + "\t\t{" + NL + "\t\t\t";
683
  protected final String TEXT_666 = ").eInverseRemove(this, ";
683
  protected final String TEXT_666 = " msgs = null;" + NL + "\t\t\tif (";
684
  protected final String TEXT_667 = ", ";
684
  protected final String TEXT_667 = " != null)";
685
  protected final String TEXT_668 = ".class, msgs);" + NL + "\t\t\tif (new";
685
  protected final String TEXT_668 = NL + "\t\t\t\tmsgs = ((";
686
  protected final String TEXT_669 = " != null)" + NL + "\t\t\t\tmsgs = ((";
686
  protected final String TEXT_669 = ")";
687
  protected final String TEXT_670 = ")new";
687
  protected final String TEXT_670 = ").eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ";
688
  protected final String TEXT_671 = ").eInverseAdd(this, ";
688
  protected final String TEXT_671 = ", null, msgs);" + NL + "\t\t\tif (new";
689
  protected final String TEXT_672 = ", ";
689
  protected final String TEXT_672 = " != null)" + NL + "\t\t\t\tmsgs = ((";
690
  protected final String TEXT_673 = ".class, msgs);";
690
  protected final String TEXT_673 = ")new";
691
  protected final String TEXT_674 = NL + "\t\t\tmsgs = basicSet";
691
  protected final String TEXT_674 = ").eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ";
692
  protected final String TEXT_675 = "(";
692
  protected final String TEXT_675 = ", null, msgs);";
693
  protected final String TEXT_676 = "new";
693
  protected final String TEXT_676 = NL + "\t\t\t\tmsgs = ((";
694
  protected final String TEXT_677 = ", msgs);" + NL + "\t\t\tif (msgs != null) msgs.dispatch();" + NL + "\t\t}";
694
  protected final String TEXT_677 = ")";
695
  protected final String TEXT_678 = NL + "\t\telse" + NL + "\t\t{";
695
  protected final String TEXT_678 = ").eInverseRemove(this, ";
696
  protected final String TEXT_679 = NL + "\t\t\tboolean old";
696
  protected final String TEXT_679 = ", ";
697
  protected final String TEXT_680 = "ESet = eVirtualIsSet(";
697
  protected final String TEXT_680 = ".class, msgs);" + NL + "\t\t\tif (new";
698
  protected final String TEXT_681 = ");";
698
  protected final String TEXT_681 = " != null)" + NL + "\t\t\t\tmsgs = ((";
699
  protected final String TEXT_682 = NL + "\t\t\tboolean old";
699
  protected final String TEXT_682 = ")new";
700
  protected final String TEXT_683 = "ESet = (";
700
  protected final String TEXT_683 = ").eInverseAdd(this, ";
701
  protected final String TEXT_684 = " & ";
701
  protected final String TEXT_684 = ", ";
702
  protected final String TEXT_685 = "_ESETFLAG) != 0;";
702
  protected final String TEXT_685 = ".class, msgs);";
703
  protected final String TEXT_686 = NL + "\t\t\t";
703
  protected final String TEXT_686 = NL + "\t\t\tmsgs = basicSet";
704
  protected final String TEXT_687 = " |= ";
704
  protected final String TEXT_687 = "(";
705
  protected final String TEXT_688 = "_ESETFLAG;";
705
  protected final String TEXT_688 = "new";
706
  protected final String TEXT_689 = NL + "\t\t\tboolean old";
706
  protected final String TEXT_689 = ", msgs);" + NL + "\t\t\tif (msgs != null) msgs.dispatch();" + NL + "\t\t}";
707
  protected final String TEXT_690 = "ESet = ";
707
  protected final String TEXT_690 = NL + "\t\telse" + NL + "\t\t{";
708
  protected final String TEXT_691 = "ESet;";
708
  protected final String TEXT_691 = NL + "\t\t\tboolean old";
709
  protected final String TEXT_692 = NL + "\t\t\t";
709
  protected final String TEXT_692 = "ESet = eVirtualIsSet(";
710
  protected final String TEXT_693 = "ESet = true;";
710
  protected final String TEXT_693 = ");";
711
  protected final String TEXT_694 = NL + "\t\t\tif (eNotificationRequired())" + NL + "\t\t\t\teNotify(new ";
711
  protected final String TEXT_694 = NL + "\t\t\tboolean old";
712
  protected final String TEXT_695 = "(this, ";
712
  protected final String TEXT_695 = "ESet = (";
713
  protected final String TEXT_696 = ".SET, ";
713
  protected final String TEXT_696 = " & ";
714
  protected final String TEXT_697 = ", new";
714
  protected final String TEXT_697 = "_ESETFLAG) != 0;";
715
  protected final String TEXT_698 = ", new";
715
  protected final String TEXT_698 = NL + "\t\t\t";
716
  protected final String TEXT_699 = ", !old";
716
  protected final String TEXT_699 = " |= ";
717
  protected final String TEXT_700 = "ESet));";
717
  protected final String TEXT_700 = "_ESETFLAG;";
718
  protected final String TEXT_701 = NL + "\t\t}";
718
  protected final String TEXT_701 = NL + "\t\t\tboolean old";
719
  protected final String TEXT_702 = NL + "\t\telse if (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
719
  protected final String TEXT_702 = "ESet = ";
720
  protected final String TEXT_703 = "(this, ";
720
  protected final String TEXT_703 = "ESet;";
721
  protected final String TEXT_704 = ".SET, ";
721
  protected final String TEXT_704 = NL + "\t\t\t";
722
  protected final String TEXT_705 = ", new";
722
  protected final String TEXT_705 = "ESet = true;";
723
  protected final String TEXT_706 = ", new";
723
  protected final String TEXT_706 = NL + "\t\t\tif (eNotificationRequired())" + NL + "\t\t\t\teNotify(new ";
724
  protected final String TEXT_707 = "));";
724
  protected final String TEXT_707 = "(this, ";
725
  protected final String TEXT_708 = NL + "\t\t";
725
  protected final String TEXT_708 = ".SET, ";
726
  protected final String TEXT_709 = " old";
726
  protected final String TEXT_709 = ", new";
727
  protected final String TEXT_710 = " = (";
727
  protected final String TEXT_710 = ", new";
728
  protected final String TEXT_711 = " & ";
728
  protected final String TEXT_711 = ", !old";
729
  protected final String TEXT_712 = "_EFLAG) != 0;";
729
  protected final String TEXT_712 = "ESet));";
730
  protected final String TEXT_713 = NL + "\t\t";
730
  protected final String TEXT_713 = NL + "\t\t}";
731
  protected final String TEXT_714 = " old";
731
  protected final String TEXT_714 = NL + "\t\telse if (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
732
  protected final String TEXT_715 = " = ";
732
  protected final String TEXT_715 = "(this, ";
733
  protected final String TEXT_716 = "_EFLAG_VALUES[(";
733
  protected final String TEXT_716 = ".SET, ";
734
  protected final String TEXT_717 = " & ";
734
  protected final String TEXT_717 = ", new";
735
  protected final String TEXT_718 = "_EFLAG) >>> ";
735
  protected final String TEXT_718 = ", new";
736
  protected final String TEXT_719 = "_EFLAG_OFFSET];";
736
  protected final String TEXT_719 = "));";
737
  protected final String TEXT_720 = NL + "\t\tif (new";
737
  protected final String TEXT_720 = NL + "\t\t";
738
  protected final String TEXT_721 = ") ";
738
  protected final String TEXT_721 = " old";
739
  protected final String TEXT_722 = " |= ";
739
  protected final String TEXT_722 = " = (";
740
  protected final String TEXT_723 = "_EFLAG; else ";
740
  protected final String TEXT_723 = " & ";
741
  protected final String TEXT_724 = " &= ~";
741
  protected final String TEXT_724 = "_EFLAG) != 0;";
742
  protected final String TEXT_725 = "_EFLAG;";
742
  protected final String TEXT_725 = NL + "\t\t";
743
  protected final String TEXT_726 = NL + "\t\tif (new";
743
  protected final String TEXT_726 = " old";
744
  protected final String TEXT_727 = " == null) new";
744
  protected final String TEXT_727 = " = ";
745
  protected final String TEXT_728 = " = ";
745
  protected final String TEXT_728 = "_EFLAG_VALUES[(";
746
  protected final String TEXT_729 = "_EDEFAULT;" + NL + "\t\t";
746
  protected final String TEXT_729 = " & ";
747
  protected final String TEXT_730 = " = ";
747
  protected final String TEXT_730 = "_EFLAG) >>> ";
748
  protected final String TEXT_731 = " & ~";
748
  protected final String TEXT_731 = "_EFLAG_OFFSET];";
749
  protected final String TEXT_732 = "_EFLAG | ";
749
  protected final String TEXT_732 = NL + "\t\tif (new";
750
  protected final String TEXT_733 = "new";
750
  protected final String TEXT_733 = ") ";
751
  protected final String TEXT_734 = ".ordinal()";
751
  protected final String TEXT_734 = " |= ";
752
  protected final String TEXT_735 = ".VALUES.indexOf(new";
752
  protected final String TEXT_735 = "_EFLAG; else ";
753
  protected final String TEXT_736 = ")";
753
  protected final String TEXT_736 = " &= ~";
754
  protected final String TEXT_737 = " << ";
754
  protected final String TEXT_737 = "_EFLAG;";
755
  protected final String TEXT_738 = "_EFLAG_OFFSET;";
755
  protected final String TEXT_738 = NL + "\t\tif (new";
756
  protected final String TEXT_739 = NL + "\t\t";
756
  protected final String TEXT_739 = " == null) new";
757
  protected final String TEXT_740 = " old";
757
  protected final String TEXT_740 = " = ";
758
  protected final String TEXT_741 = " = ";
758
  protected final String TEXT_741 = "_EDEFAULT;" + NL + "\t\t";
759
  protected final String TEXT_742 = ";";
759
  protected final String TEXT_742 = " = ";
760
  protected final String TEXT_743 = NL + "\t\t";
760
  protected final String TEXT_743 = " & ~";
761
  protected final String TEXT_744 = " ";
761
  protected final String TEXT_744 = "_EFLAG | ";
762
  protected final String TEXT_745 = " = new";
762
  protected final String TEXT_745 = "new";
763
  protected final String TEXT_746 = " == null ? ";
763
  protected final String TEXT_746 = ".ordinal()";
764
  protected final String TEXT_747 = " : new";
764
  protected final String TEXT_747 = ".VALUES.indexOf(new";
765
  protected final String TEXT_748 = ";";
765
  protected final String TEXT_748 = ")";
766
  protected final String TEXT_749 = NL + "\t\t";
766
  protected final String TEXT_749 = " << ";
767
  protected final String TEXT_750 = " = new";
767
  protected final String TEXT_750 = "_EFLAG_OFFSET;";
768
  protected final String TEXT_751 = " == null ? ";
768
  protected final String TEXT_751 = NL + "\t\t";
769
  protected final String TEXT_752 = " : new";
769
  protected final String TEXT_752 = " old";
770
  protected final String TEXT_753 = ";";
770
  protected final String TEXT_753 = " = ";
771
  protected final String TEXT_754 = NL + "\t\t";
771
  protected final String TEXT_754 = ";";
772
  protected final String TEXT_755 = " ";
772
  protected final String TEXT_755 = NL + "\t\t";
773
  protected final String TEXT_756 = " = ";
773
  protected final String TEXT_756 = " ";
774
  protected final String TEXT_757 = "new";
774
  protected final String TEXT_757 = " = new";
775
  protected final String TEXT_758 = ";";
775
  protected final String TEXT_758 = " == null ? ";
776
  protected final String TEXT_759 = NL + "\t\t";
776
  protected final String TEXT_759 = " : new";
777
  protected final String TEXT_760 = " = ";
777
  protected final String TEXT_760 = ";";
778
  protected final String TEXT_761 = "new";
778
  protected final String TEXT_761 = NL + "\t\t";
779
  protected final String TEXT_762 = ";";
779
  protected final String TEXT_762 = " = new";
780
  protected final String TEXT_763 = NL + "\t\tObject old";
780
  protected final String TEXT_763 = " == null ? ";
781
  protected final String TEXT_764 = " = eVirtualSet(";
781
  protected final String TEXT_764 = " : new";
782
  protected final String TEXT_765 = ", ";
782
  protected final String TEXT_765 = ";";
783
  protected final String TEXT_766 = ");";
783
  protected final String TEXT_766 = NL + "\t\t";
784
  protected final String TEXT_767 = NL + "\t\tboolean isSetChange = old";
784
  protected final String TEXT_767 = " ";
785
  protected final String TEXT_768 = " == EVIRTUAL_NO_VALUE;";
785
  protected final String TEXT_768 = " = ";
786
  protected final String TEXT_769 = NL + "\t\tboolean old";
786
  protected final String TEXT_769 = "new";
787
  protected final String TEXT_770 = "ESet = (";
787
  protected final String TEXT_770 = ";";
788
  protected final String TEXT_771 = " & ";
788
  protected final String TEXT_771 = NL + "\t\t";
789
  protected final String TEXT_772 = "_ESETFLAG) != 0;";
789
  protected final String TEXT_772 = " = ";
790
  protected final String TEXT_773 = NL + "\t\t";
790
  protected final String TEXT_773 = "new";
791
  protected final String TEXT_774 = " |= ";
791
  protected final String TEXT_774 = ";";
792
  protected final String TEXT_775 = "_ESETFLAG;";
792
  protected final String TEXT_775 = NL + "\t\tObject old";
793
  protected final String TEXT_776 = NL + "\t\tboolean old";
793
  protected final String TEXT_776 = " = eVirtualSet(";
794
  protected final String TEXT_777 = "ESet = ";
794
  protected final String TEXT_777 = ", ";
795
  protected final String TEXT_778 = "ESet;";
795
  protected final String TEXT_778 = ");";
796
  protected final String TEXT_779 = NL + "\t\t";
796
  protected final String TEXT_779 = NL + "\t\tboolean isSetChange = old";
797
  protected final String TEXT_780 = "ESet = true;";
797
  protected final String TEXT_780 = " == EVIRTUAL_NO_VALUE;";
798
  protected final String TEXT_781 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
798
  protected final String TEXT_781 = NL + "\t\tboolean old";
799
  protected final String TEXT_782 = "(this, ";
799
  protected final String TEXT_782 = "ESet = (";
800
  protected final String TEXT_783 = ".SET, ";
800
  protected final String TEXT_783 = " & ";
801
  protected final String TEXT_784 = ", ";
801
  protected final String TEXT_784 = "_ESETFLAG) != 0;";
802
  protected final String TEXT_785 = "isSetChange ? ";
802
  protected final String TEXT_785 = NL + "\t\t";
803
  protected final String TEXT_786 = " : old";
803
  protected final String TEXT_786 = " |= ";
804
  protected final String TEXT_787 = "old";
804
  protected final String TEXT_787 = "_ESETFLAG;";
805
  protected final String TEXT_788 = ", ";
805
  protected final String TEXT_788 = NL + "\t\tboolean old";
806
  protected final String TEXT_789 = "new";
806
  protected final String TEXT_789 = "ESet = ";
807
  protected final String TEXT_790 = ", ";
807
  protected final String TEXT_790 = "ESet;";
808
  protected final String TEXT_791 = "isSetChange";
808
  protected final String TEXT_791 = NL + "\t\t";
809
  protected final String TEXT_792 = "!old";
809
  protected final String TEXT_792 = "ESet = true;";
810
  protected final String TEXT_793 = "ESet";
810
  protected final String TEXT_793 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
811
  protected final String TEXT_794 = "));";
811
  protected final String TEXT_794 = "(this, ";
812
  protected final String TEXT_795 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
812
  protected final String TEXT_795 = ".SET, ";
813
  protected final String TEXT_796 = "(this, ";
813
  protected final String TEXT_796 = ", ";
814
  protected final String TEXT_797 = ".SET, ";
814
  protected final String TEXT_797 = "isSetChange ? ";
815
  protected final String TEXT_798 = ", ";
815
  protected final String TEXT_798 = " : old";
816
  protected final String TEXT_799 = "old";
816
  protected final String TEXT_799 = "old";
817
  protected final String TEXT_800 = " == EVIRTUAL_NO_VALUE ? ";
817
  protected final String TEXT_800 = ", ";
818
  protected final String TEXT_801 = " : old";
818
  protected final String TEXT_801 = "new";
819
  protected final String TEXT_802 = "old";
819
  protected final String TEXT_802 = ", ";
820
  protected final String TEXT_803 = ", ";
820
  protected final String TEXT_803 = "isSetChange";
821
  protected final String TEXT_804 = "new";
821
  protected final String TEXT_804 = "!old";
822
  protected final String TEXT_805 = "));";
822
  protected final String TEXT_805 = "ESet";
823
  protected final String TEXT_806 = NL + "\t\t((";
823
  protected final String TEXT_806 = "));";
824
  protected final String TEXT_807 = ".Internal)((";
824
  protected final String TEXT_807 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
825
  protected final String TEXT_808 = ".Internal.Wrapper)get";
825
  protected final String TEXT_808 = "(this, ";
826
  protected final String TEXT_809 = "()).featureMap()).set(";
826
  protected final String TEXT_809 = ".SET, ";
827
  protected final String TEXT_810 = ", ";
827
  protected final String TEXT_810 = ", ";
828
  protected final String TEXT_811 = "new ";
828
  protected final String TEXT_811 = "old";
829
  protected final String TEXT_812 = "(";
829
  protected final String TEXT_812 = " == EVIRTUAL_NO_VALUE ? ";
830
  protected final String TEXT_813 = "new";
830
  protected final String TEXT_813 = " : old";
831
  protected final String TEXT_814 = ")";
831
  protected final String TEXT_814 = "old";
832
  protected final String TEXT_815 = ");";
832
  protected final String TEXT_815 = ", ";
833
  protected final String TEXT_816 = NL + "\t\t((";
833
  protected final String TEXT_816 = "new";
834
  protected final String TEXT_817 = ".Internal)get";
834
  protected final String TEXT_817 = "));";
835
  protected final String TEXT_818 = "()).set(";
835
  protected final String TEXT_818 = NL + "\t\t((";
836
  protected final String TEXT_819 = ", ";
836
  protected final String TEXT_819 = ".Internal)((";
837
  protected final String TEXT_820 = "new ";
837
  protected final String TEXT_820 = ".Internal.Wrapper)get";
838
  protected final String TEXT_821 = "(";
838
  protected final String TEXT_821 = "()).featureMap()).set(";
839
  protected final String TEXT_822 = "new";
839
  protected final String TEXT_822 = ", ";
840
  protected final String TEXT_823 = ")";
840
  protected final String TEXT_823 = "new ";
841
  protected final String TEXT_824 = ");";
841
  protected final String TEXT_824 = "(";
842
  protected final String TEXT_825 = NL + "\t\t";
842
  protected final String TEXT_825 = "new";
843
  protected final String TEXT_826 = NL + "\t\t// TODO: implement this method to set the '";
843
  protected final String TEXT_826 = ")";
844
  protected final String TEXT_827 = "' ";
844
  protected final String TEXT_827 = ");";
845
  protected final String TEXT_828 = NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
845
  protected final String TEXT_828 = NL + "\t\t((";
846
  protected final String TEXT_829 = NL + "\t}" + NL;
846
  protected final String TEXT_829 = ".Internal)get";
847
  protected final String TEXT_830 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
847
  protected final String TEXT_830 = "()).set(";
848
  protected final String TEXT_831 = NL + "\tpublic ";
848
  protected final String TEXT_831 = ", ";
849
  protected final String TEXT_832 = " basicUnset";
849
  protected final String TEXT_832 = "new ";
850
  protected final String TEXT_833 = "(";
850
  protected final String TEXT_833 = "(";
851
  protected final String TEXT_834 = " msgs)" + NL + "\t{";
851
  protected final String TEXT_834 = "new";
852
  protected final String TEXT_835 = "Object old";
852
  protected final String TEXT_835 = ")";
853
  protected final String TEXT_836 = " = ";
853
  protected final String TEXT_836 = ");";
854
  protected final String TEXT_837 = "eVirtualUnset(";
854
  protected final String TEXT_837 = NL + "\t\t";
855
  protected final String TEXT_838 = ");";
855
  protected final String TEXT_838 = NL + "\t\t// TODO: implement this method to set the '";
856
  protected final String TEXT_839 = NL + "\t\t";
856
  protected final String TEXT_839 = "' ";
857
  protected final String TEXT_840 = " old";
857
  protected final String TEXT_840 = NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
858
  protected final String TEXT_841 = " = ";
858
  protected final String TEXT_841 = NL + "\t}" + NL;
859
  protected final String TEXT_842 = ";";
859
  protected final String TEXT_842 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
860
  protected final String TEXT_843 = NL + "\t\t";
860
  protected final String TEXT_843 = NL + "\tpublic ";
861
  protected final String TEXT_844 = " = null;";
861
  protected final String TEXT_844 = " basicUnset";
862
  protected final String TEXT_845 = NL + "\t\tboolean isSetChange = old";
862
  protected final String TEXT_845 = "(";
863
  protected final String TEXT_846 = " != EVIRTUAL_NO_VALUE;";
863
  protected final String TEXT_846 = " msgs)" + NL + "\t{";
864
  protected final String TEXT_847 = NL + "\t\tboolean old";
864
  protected final String TEXT_847 = NL + "\t\teFireWrite(";
865
  protected final String TEXT_848 = "ESet = (";
865
  protected final String TEXT_848 = ");";
866
  protected final String TEXT_849 = " & ";
866
  protected final String TEXT_849 = "Object old";
867
  protected final String TEXT_850 = "_ESETFLAG) != 0;";
867
  protected final String TEXT_850 = " = ";
868
  protected final String TEXT_851 = NL + "\t\t";
868
  protected final String TEXT_851 = "eVirtualUnset(";
869
  protected final String TEXT_852 = " &= ~";
869
  protected final String TEXT_852 = ");";
870
  protected final String TEXT_853 = "_ESETFLAG;";
870
  protected final String TEXT_853 = NL + "\t\t";
871
  protected final String TEXT_854 = NL + "\t\tboolean old";
871
  protected final String TEXT_854 = " old";
872
  protected final String TEXT_855 = "ESet = ";
872
  protected final String TEXT_855 = " = ";
873
  protected final String TEXT_856 = "ESet;";
873
  protected final String TEXT_856 = ";";
874
  protected final String TEXT_857 = NL + "\t\t";
874
  protected final String TEXT_857 = NL + "\t\t";
875
  protected final String TEXT_858 = "ESet = false;";
875
  protected final String TEXT_858 = " = null;";
876
  protected final String TEXT_859 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t{" + NL + "\t\t\t";
876
  protected final String TEXT_859 = NL + "\t\tboolean isSetChange = old";
877
  protected final String TEXT_860 = " notification = new ";
877
  protected final String TEXT_860 = " != EVIRTUAL_NO_VALUE;";
878
  protected final String TEXT_861 = "(this, ";
878
  protected final String TEXT_861 = NL + "\t\tboolean old";
879
  protected final String TEXT_862 = ".UNSET, ";
879
  protected final String TEXT_862 = "ESet = (";
880
  protected final String TEXT_863 = ", ";
880
  protected final String TEXT_863 = " & ";
881
  protected final String TEXT_864 = "isSetChange ? old";
881
  protected final String TEXT_864 = "_ESETFLAG) != 0;";
882
  protected final String TEXT_865 = " : null";
882
  protected final String TEXT_865 = NL + "\t\t";
883
  protected final String TEXT_866 = "old";
883
  protected final String TEXT_866 = " &= ~";
884
  protected final String TEXT_867 = ", null, ";
884
  protected final String TEXT_867 = "_ESETFLAG;";
885
  protected final String TEXT_868 = "isSetChange";
885
  protected final String TEXT_868 = NL + "\t\tboolean old";
886
  protected final String TEXT_869 = "old";
886
  protected final String TEXT_869 = "ESet = ";
887
  protected final String TEXT_870 = "ESet";
887
  protected final String TEXT_870 = "ESet;";
888
  protected final String TEXT_871 = ");" + NL + "\t\t\tif (msgs == null) msgs = notification; else msgs.add(notification);" + NL + "\t\t}" + NL + "\t\treturn msgs;";
888
  protected final String TEXT_871 = NL + "\t\t";
889
  protected final String TEXT_872 = NL + "\t\t// TODO: implement this method to unset the contained '";
889
  protected final String TEXT_872 = "ESet = false;";
890
  protected final String TEXT_873 = "' ";
890
  protected final String TEXT_873 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t{" + NL + "\t\t\t";
891
  protected final String TEXT_874 = NL + "\t\t// -> this method is automatically invoked to keep the containment relationship in synch" + NL + "\t\t// -> do not modify other features" + NL + "\t\t// -> return msgs, after adding any generated Notification to it (if it is null, a NotificationChain object must be created first)" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
891
  protected final String TEXT_874 = " notification = new ";
892
  protected final String TEXT_875 = NL + "\t}" + NL;
892
  protected final String TEXT_875 = "(this, ";
893
  protected final String TEXT_876 = NL + "\t/**" + NL + "\t * Unsets the value of the '{@link ";
893
  protected final String TEXT_876 = ".UNSET, ";
894
  protected final String TEXT_877 = "#";
894
  protected final String TEXT_877 = ", ";
895
  protected final String TEXT_878 = " <em>";
895
  protected final String TEXT_878 = "isSetChange ? old";
896
  protected final String TEXT_879 = "</em>}' ";
896
  protected final String TEXT_879 = " : null";
897
  protected final String TEXT_880 = ".";
897
  protected final String TEXT_880 = "old";
898
  protected final String TEXT_881 = NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->";
898
  protected final String TEXT_881 = ", null, ";
899
  protected final String TEXT_882 = NL + "\t * @see #isSet";
899
  protected final String TEXT_882 = "isSetChange";
900
  protected final String TEXT_883 = "()";
900
  protected final String TEXT_883 = "old";
901
  protected final String TEXT_884 = NL + "\t * @see #";
901
  protected final String TEXT_884 = "ESet";
902
  protected final String TEXT_885 = "()";
902
  protected final String TEXT_885 = ");" + NL + "\t\t\tif (msgs == null) msgs = notification; else msgs.add(notification);" + NL + "\t\t}" + NL + "\t\treturn msgs;";
903
  protected final String TEXT_886 = NL + "\t * @see #set";
903
  protected final String TEXT_886 = NL + "\t\t// TODO: implement this method to unset the contained '";
904
  protected final String TEXT_887 = "(";
904
  protected final String TEXT_887 = "' ";
905
  protected final String TEXT_888 = ")";
905
  protected final String TEXT_888 = NL + "\t\t// -> this method is automatically invoked to keep the containment relationship in synch" + NL + "\t\t// -> do not modify other features" + NL + "\t\t// -> return msgs, after adding any generated Notification to it (if it is null, a NotificationChain object must be created first)" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
906
  protected final String TEXT_889 = NL + "\t * @generated" + NL + "\t */";
906
  protected final String TEXT_889 = NL + "\t}" + NL;
907
  protected final String TEXT_890 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
907
  protected final String TEXT_890 = NL + "\t/**" + NL + "\t * Unsets the value of the '{@link ";
908
  protected final String TEXT_891 = NL + "\tvoid unset";
908
  protected final String TEXT_891 = "#";
909
  protected final String TEXT_892 = "();" + NL;
909
  protected final String TEXT_892 = " <em>";
910
  protected final String TEXT_893 = NL + "\tpublic void unset";
910
  protected final String TEXT_893 = "</em>}' ";
911
  protected final String TEXT_894 = "_";
911
  protected final String TEXT_894 = ".";
912
  protected final String TEXT_895 = "()" + NL + "\t{";
912
  protected final String TEXT_895 = NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->";
913
  protected final String TEXT_896 = NL + "\t\teDynamicUnset(";
913
  protected final String TEXT_896 = NL + "\t * @see #isSet";
914
  protected final String TEXT_897 = ", ";
914
  protected final String TEXT_897 = "()";
915
  protected final String TEXT_898 = ");";
915
  protected final String TEXT_898 = NL + "\t * @see #";
916
  protected final String TEXT_899 = NL + "\t\teUnset(";
916
  protected final String TEXT_899 = "()";
917
  protected final String TEXT_900 = ");";
917
  protected final String TEXT_900 = NL + "\t * @see #set";
918
  protected final String TEXT_901 = NL + "\t\t";
918
  protected final String TEXT_901 = "(";
919
  protected final String TEXT_902 = " ";
919
  protected final String TEXT_902 = ")";
920
  protected final String TEXT_903 = " = (";
920
  protected final String TEXT_903 = NL + "\t * @generated" + NL + "\t */";
921
  protected final String TEXT_904 = ")eVirtualGet(";
921
  protected final String TEXT_904 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
922
  protected final String TEXT_905 = ");";
922
  protected final String TEXT_905 = NL + "\tvoid unset";
923
  protected final String TEXT_906 = NL + "\t\tif (";
923
  protected final String TEXT_906 = "();" + NL;
924
  protected final String TEXT_907 = " != null) ((";
924
  protected final String TEXT_907 = NL + "\tpublic void unset";
925
  protected final String TEXT_908 = ".Unsettable";
925
  protected final String TEXT_908 = "_";
926
  protected final String TEXT_909 = ")";
926
  protected final String TEXT_909 = "()" + NL + "\t{";
927
  protected final String TEXT_910 = ").unset();";
927
  protected final String TEXT_910 = NL + "\t\teDynamicUnset(";
928
  protected final String TEXT_911 = NL + "\t\t";
928
  protected final String TEXT_911 = ", ";
929
  protected final String TEXT_912 = " ";
929
  protected final String TEXT_912 = ");";
930
  protected final String TEXT_913 = " = (";
930
  protected final String TEXT_913 = NL + "\t\teUnset(";
931
  protected final String TEXT_914 = ")eVirtualGet(";
931
  protected final String TEXT_914 = ");";
932
  protected final String TEXT_915 = ");";
932
  protected final String TEXT_915 = NL + "\t\teFireWrite(";
933
  protected final String TEXT_916 = NL + "\t\tif (";
933
  protected final String TEXT_916 = ");";
934
  protected final String TEXT_917 = " != null)" + NL + "\t\t{" + NL + "\t\t\t";
934
  protected final String TEXT_917 = NL + "\t\t";
935
  protected final String TEXT_918 = " msgs = null;";
935
  protected final String TEXT_918 = " ";
936
  protected final String TEXT_919 = NL + "\t\t\tmsgs = ((";
936
  protected final String TEXT_919 = " = (";
937
  protected final String TEXT_920 = ")";
937
  protected final String TEXT_920 = ")eVirtualGet(";
938
  protected final String TEXT_921 = ").eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ";
938
  protected final String TEXT_921 = ");";
939
  protected final String TEXT_922 = ", null, msgs);";
939
  protected final String TEXT_922 = NL + "\t\tif (";
940
  protected final String TEXT_923 = NL + "\t\t\tmsgs = ((";
940
  protected final String TEXT_923 = " != null) ((";
941
  protected final String TEXT_924 = ")";
941
  protected final String TEXT_924 = ".Unsettable";
942
  protected final String TEXT_925 = ").eInverseRemove(this, ";
942
  protected final String TEXT_925 = ")";
943
  protected final String TEXT_926 = ", ";
943
  protected final String TEXT_926 = ").unset();";
944
  protected final String TEXT_927 = ".class, msgs);";
944
  protected final String TEXT_927 = NL + "\t\t";
945
  protected final String TEXT_928 = NL + "\t\t\tmsgs = basicUnset";
945
  protected final String TEXT_928 = " ";
946
  protected final String TEXT_929 = "(msgs);" + NL + "\t\t\tif (msgs != null) msgs.dispatch();" + NL + "\t\t}" + NL + "\t\telse" + NL + "\t\t{";
946
  protected final String TEXT_929 = " = (";
947
  protected final String TEXT_930 = NL + "\t\t\tboolean old";
947
  protected final String TEXT_930 = ")eVirtualGet(";
948
  protected final String TEXT_931 = "ESet = eVirtualIsSet(";
948
  protected final String TEXT_931 = ");";
949
  protected final String TEXT_932 = ");";
949
  protected final String TEXT_932 = NL + "\t\tif (";
950
  protected final String TEXT_933 = NL + "\t\t\tboolean old";
950
  protected final String TEXT_933 = " != null)" + NL + "\t\t{" + NL + "\t\t\t";
951
  protected final String TEXT_934 = "ESet = (";
951
  protected final String TEXT_934 = " msgs = null;";
952
  protected final String TEXT_935 = " & ";
952
  protected final String TEXT_935 = NL + "\t\t\tmsgs = ((";
953
  protected final String TEXT_936 = "_ESETFLAG) != 0;";
953
  protected final String TEXT_936 = ")";
954
  protected final String TEXT_937 = NL + "\t\t\t";
954
  protected final String TEXT_937 = ").eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ";
955
  protected final String TEXT_938 = " &= ~";
955
  protected final String TEXT_938 = ", null, msgs);";
956
  protected final String TEXT_939 = "_ESETFLAG;";
956
  protected final String TEXT_939 = NL + "\t\t\tmsgs = ((";
957
  protected final String TEXT_940 = NL + "\t\t\tboolean old";
957
  protected final String TEXT_940 = ")";
958
  protected final String TEXT_941 = "ESet = ";
958
  protected final String TEXT_941 = ").eInverseRemove(this, ";
959
  protected final String TEXT_942 = "ESet;";
959
  protected final String TEXT_942 = ", ";
960
  protected final String TEXT_943 = NL + "\t\t\t";
960
  protected final String TEXT_943 = ".class, msgs);";
961
  protected final String TEXT_944 = "ESet = false;";
961
  protected final String TEXT_944 = NL + "\t\t\tmsgs = basicUnset";
962
  protected final String TEXT_945 = NL + "\t\t\tif (eNotificationRequired())" + NL + "\t\t\t\teNotify(new ";
962
  protected final String TEXT_945 = "(msgs);" + NL + "\t\t\tif (msgs != null) msgs.dispatch();" + NL + "\t\t}" + NL + "\t\telse" + NL + "\t\t{";
963
  protected final String TEXT_946 = "(this, ";
963
  protected final String TEXT_946 = NL + "\t\t\tboolean old";
964
  protected final String TEXT_947 = ".UNSET, ";
964
  protected final String TEXT_947 = "ESet = eVirtualIsSet(";
965
  protected final String TEXT_948 = ", null, null, old";
965
  protected final String TEXT_948 = ");";
966
  protected final String TEXT_949 = "ESet));";
966
  protected final String TEXT_949 = NL + "\t\t\tboolean old";
967
  protected final String TEXT_950 = NL + "\t\t}";
967
  protected final String TEXT_950 = "ESet = (";
968
  protected final String TEXT_951 = NL + "\t\t";
968
  protected final String TEXT_951 = " & ";
969
  protected final String TEXT_952 = " old";
969
  protected final String TEXT_952 = "_ESETFLAG) != 0;";
970
  protected final String TEXT_953 = " = (";
970
  protected final String TEXT_953 = NL + "\t\t\t";
971
  protected final String TEXT_954 = " & ";
971
  protected final String TEXT_954 = " &= ~";
972
  protected final String TEXT_955 = "_EFLAG) != 0;";
972
  protected final String TEXT_955 = "_ESETFLAG;";
973
  protected final String TEXT_956 = NL + "\t\t";
973
  protected final String TEXT_956 = NL + "\t\t\tboolean old";
974
  protected final String TEXT_957 = " old";
974
  protected final String TEXT_957 = "ESet = ";
975
  protected final String TEXT_958 = " = ";
975
  protected final String TEXT_958 = "ESet;";
976
  protected final String TEXT_959 = "_EFLAG_VALUES[(";
976
  protected final String TEXT_959 = NL + "\t\t\t";
977
  protected final String TEXT_960 = " & ";
977
  protected final String TEXT_960 = "ESet = false;";
978
  protected final String TEXT_961 = "_EFLAG) >>> ";
978
  protected final String TEXT_961 = NL + "\t\t\tif (eNotificationRequired())" + NL + "\t\t\t\teNotify(new ";
979
  protected final String TEXT_962 = "_EFLAG_OFFSET];";
979
  protected final String TEXT_962 = "(this, ";
980
  protected final String TEXT_963 = NL + "\t\tObject old";
980
  protected final String TEXT_963 = ".UNSET, ";
981
  protected final String TEXT_964 = " = eVirtualUnset(";
981
  protected final String TEXT_964 = ", null, null, old";
982
  protected final String TEXT_965 = ");";
982
  protected final String TEXT_965 = "ESet));";
983
  protected final String TEXT_966 = NL + "\t\t";
983
  protected final String TEXT_966 = NL + "\t\t}";
984
  protected final String TEXT_967 = " old";
984
  protected final String TEXT_967 = NL + "\t\t";
985
  protected final String TEXT_968 = " = ";
985
  protected final String TEXT_968 = " old";
986
  protected final String TEXT_969 = ";";
986
  protected final String TEXT_969 = " = (";
987
  protected final String TEXT_970 = NL + "\t\tboolean isSetChange = old";
987
  protected final String TEXT_970 = " & ";
988
  protected final String TEXT_971 = " != EVIRTUAL_NO_VALUE;";
988
  protected final String TEXT_971 = "_EFLAG) != 0;";
989
  protected final String TEXT_972 = NL + "\t\tboolean old";
989
  protected final String TEXT_972 = NL + "\t\t";
990
  protected final String TEXT_973 = "ESet = (";
990
  protected final String TEXT_973 = " old";
991
  protected final String TEXT_974 = " & ";
991
  protected final String TEXT_974 = " = ";
992
  protected final String TEXT_975 = "_ESETFLAG) != 0;";
992
  protected final String TEXT_975 = "_EFLAG_VALUES[(";
993
  protected final String TEXT_976 = NL + "\t\tboolean old";
993
  protected final String TEXT_976 = " & ";
994
  protected final String TEXT_977 = "ESet = ";
994
  protected final String TEXT_977 = "_EFLAG) >>> ";
995
  protected final String TEXT_978 = "ESet;";
995
  protected final String TEXT_978 = "_EFLAG_OFFSET];";
996
  protected final String TEXT_979 = NL + "\t\t";
996
  protected final String TEXT_979 = NL + "\t\tObject old";
997
  protected final String TEXT_980 = " = null;";
997
  protected final String TEXT_980 = " = eVirtualUnset(";
998
  protected final String TEXT_981 = NL + "\t\t";
998
  protected final String TEXT_981 = ");";
999
  protected final String TEXT_982 = " &= ~";
999
  protected final String TEXT_982 = NL + "\t\t";
1000
  protected final String TEXT_983 = "_ESETFLAG;";
1000
  protected final String TEXT_983 = " old";
1001
  protected final String TEXT_984 = NL + "\t\t";
1001
  protected final String TEXT_984 = " = ";
1002
  protected final String TEXT_985 = "ESet = false;";
1002
  protected final String TEXT_985 = ";";
1003
  protected final String TEXT_986 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
1003
  protected final String TEXT_986 = NL + "\t\tboolean isSetChange = old";
1004
  protected final String TEXT_987 = "(this, ";
1004
  protected final String TEXT_987 = " != EVIRTUAL_NO_VALUE;";
1005
  protected final String TEXT_988 = ".UNSET, ";
1005
  protected final String TEXT_988 = NL + "\t\tboolean old";
1006
  protected final String TEXT_989 = ", ";
1006
  protected final String TEXT_989 = "ESet = (";
1007
  protected final String TEXT_990 = "isSetChange ? old";
1007
  protected final String TEXT_990 = " & ";
1008
  protected final String TEXT_991 = " : null";
1008
  protected final String TEXT_991 = "_ESETFLAG) != 0;";
1009
  protected final String TEXT_992 = "old";
1009
  protected final String TEXT_992 = NL + "\t\tboolean old";
1010
  protected final String TEXT_993 = ", null, ";
1010
  protected final String TEXT_993 = "ESet = ";
1011
  protected final String TEXT_994 = "isSetChange";
1011
  protected final String TEXT_994 = "ESet;";
1012
  protected final String TEXT_995 = "old";
1012
  protected final String TEXT_995 = NL + "\t\t";
1013
  protected final String TEXT_996 = "ESet";
1013
  protected final String TEXT_996 = " = null;";
1014
  protected final String TEXT_997 = "));";
1014
  protected final String TEXT_997 = NL + "\t\t";
1015
  protected final String TEXT_998 = NL + "\t\tif (";
1015
  protected final String TEXT_998 = " &= ~";
1016
  protected final String TEXT_999 = ") ";
1016
  protected final String TEXT_999 = "_ESETFLAG;";
1017
  protected final String TEXT_1000 = " |= ";
1017
  protected final String TEXT_1000 = NL + "\t\t";
1018
  protected final String TEXT_1001 = "_EFLAG; else ";
1018
  protected final String TEXT_1001 = "ESet = false;";
1019
  protected final String TEXT_1002 = " &= ~";
1019
  protected final String TEXT_1002 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
1020
  protected final String TEXT_1003 = "_EFLAG;";
1020
  protected final String TEXT_1003 = "(this, ";
1021
  protected final String TEXT_1004 = NL + "\t\t";
1021
  protected final String TEXT_1004 = ".UNSET, ";
1022
  protected final String TEXT_1005 = " = ";
1022
  protected final String TEXT_1005 = ", ";
1023
  protected final String TEXT_1006 = " & ~";
1023
  protected final String TEXT_1006 = "isSetChange ? old";
1024
  protected final String TEXT_1007 = "_EFLAG | ";
1024
  protected final String TEXT_1007 = " : null";
1025
  protected final String TEXT_1008 = "_EFLAG_DEFAULT;";
1025
  protected final String TEXT_1008 = "old";
1026
  protected final String TEXT_1009 = NL + "\t\t";
1026
  protected final String TEXT_1009 = ", null, ";
1027
  protected final String TEXT_1010 = " = ";
1027
  protected final String TEXT_1010 = "isSetChange";
1028
  protected final String TEXT_1011 = ";";
1028
  protected final String TEXT_1011 = "old";
1029
  protected final String TEXT_1012 = NL + "\t\t";
1029
  protected final String TEXT_1012 = "ESet";
1030
  protected final String TEXT_1013 = " &= ~";
1030
  protected final String TEXT_1013 = "));";
1031
  protected final String TEXT_1014 = "_ESETFLAG;";
1031
  protected final String TEXT_1014 = NL + "\t\tif (";
1032
  protected final String TEXT_1015 = NL + "\t\t";
1032
  protected final String TEXT_1015 = ") ";
1033
  protected final String TEXT_1016 = "ESet = false;";
1033
  protected final String TEXT_1016 = " |= ";
1034
  protected final String TEXT_1017 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
1034
  protected final String TEXT_1017 = "_EFLAG; else ";
1035
  protected final String TEXT_1018 = "(this, ";
1035
  protected final String TEXT_1018 = " &= ~";
1036
  protected final String TEXT_1019 = ".UNSET, ";
1036
  protected final String TEXT_1019 = "_EFLAG;";
1037
  protected final String TEXT_1020 = ", ";
1037
  protected final String TEXT_1020 = NL + "\t\t";
1038
  protected final String TEXT_1021 = "isSetChange ? old";
1038
  protected final String TEXT_1021 = " = ";
1039
  protected final String TEXT_1022 = " : ";
1039
  protected final String TEXT_1022 = " & ~";
1040
  protected final String TEXT_1023 = "old";
1040
  protected final String TEXT_1023 = "_EFLAG | ";
1041
  protected final String TEXT_1024 = ", ";
1041
  protected final String TEXT_1024 = "_EFLAG_DEFAULT;";
1042
  protected final String TEXT_1025 = ", ";
1042
  protected final String TEXT_1025 = NL + "\t\t";
1043
  protected final String TEXT_1026 = "isSetChange";
1043
  protected final String TEXT_1026 = " = ";
1044
  protected final String TEXT_1027 = "old";
1044
  protected final String TEXT_1027 = ";";
1045
  protected final String TEXT_1028 = "ESet";
1045
  protected final String TEXT_1028 = NL + "\t\t";
1046
  protected final String TEXT_1029 = "));";
1046
  protected final String TEXT_1029 = " &= ~";
1047
  protected final String TEXT_1030 = NL + "\t\t((";
1047
  protected final String TEXT_1030 = "_ESETFLAG;";
1048
  protected final String TEXT_1031 = ".Internal)((";
1048
  protected final String TEXT_1031 = NL + "\t\t";
1049
  protected final String TEXT_1032 = ".Internal.Wrapper)get";
1049
  protected final String TEXT_1032 = "ESet = false;";
1050
  protected final String TEXT_1033 = "()).featureMap()).clear(";
1050
  protected final String TEXT_1033 = NL + "\t\tif (eNotificationRequired())" + NL + "\t\t\teNotify(new ";
1051
  protected final String TEXT_1034 = ");";
1051
  protected final String TEXT_1034 = "(this, ";
1052
  protected final String TEXT_1035 = NL + "\t\t((";
1052
  protected final String TEXT_1035 = ".UNSET, ";
1053
  protected final String TEXT_1036 = ".Internal)get";
1053
  protected final String TEXT_1036 = ", ";
1054
  protected final String TEXT_1037 = "()).clear(";
1054
  protected final String TEXT_1037 = "isSetChange ? old";
1055
  protected final String TEXT_1038 = ");";
1055
  protected final String TEXT_1038 = " : ";
1056
  protected final String TEXT_1039 = NL + "\t\t";
1056
  protected final String TEXT_1039 = "old";
1057
  protected final String TEXT_1040 = NL + "\t\t// TODO: implement this method to unset the '";
1057
  protected final String TEXT_1040 = ", ";
1058
  protected final String TEXT_1041 = "' ";
1058
  protected final String TEXT_1041 = ", ";
1059
  protected final String TEXT_1042 = NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
1059
  protected final String TEXT_1042 = "isSetChange";
1060
  protected final String TEXT_1043 = NL + "\t}" + NL;
1060
  protected final String TEXT_1043 = "old";
1061
  protected final String TEXT_1044 = NL + "\t/**" + NL + "\t * Returns whether the value of the '{@link ";
1061
  protected final String TEXT_1044 = "ESet";
1062
  protected final String TEXT_1045 = "#";
1062
  protected final String TEXT_1045 = "));";
1063
  protected final String TEXT_1046 = " <em>";
1063
  protected final String TEXT_1046 = NL + "\t\t((";
1064
  protected final String TEXT_1047 = "</em>}' ";
1064
  protected final String TEXT_1047 = ".Internal)((";
1065
  protected final String TEXT_1048 = " is set.";
1065
  protected final String TEXT_1048 = ".Internal.Wrapper)get";
1066
  protected final String TEXT_1049 = NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @return whether the value of the '<em>";
1066
  protected final String TEXT_1049 = "()).featureMap()).clear(";
1067
  protected final String TEXT_1050 = "</em>' ";
1067
  protected final String TEXT_1050 = ");";
1068
  protected final String TEXT_1051 = " is set.";
1068
  protected final String TEXT_1051 = NL + "\t\t((";
1069
  protected final String TEXT_1052 = NL + "\t * @see #unset";
1069
  protected final String TEXT_1052 = ".Internal)get";
1070
  protected final String TEXT_1053 = "()";
1070
  protected final String TEXT_1053 = "()).clear(";
1071
  protected final String TEXT_1054 = NL + "\t * @see #";
1071
  protected final String TEXT_1054 = ");";
1072
  protected final String TEXT_1055 = "()";
1072
  protected final String TEXT_1055 = NL + "\t\t";
1073
  protected final String TEXT_1056 = NL + "\t * @see #set";
1073
  protected final String TEXT_1056 = NL + "\t\t// TODO: implement this method to unset the '";
1074
  protected final String TEXT_1057 = "(";
1074
  protected final String TEXT_1057 = "' ";
1075
  protected final String TEXT_1058 = ")";
1075
  protected final String TEXT_1058 = NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
1076
  protected final String TEXT_1059 = NL + "\t * @generated" + NL + "\t */";
1076
  protected final String TEXT_1059 = NL + "\t}" + NL;
1077
  protected final String TEXT_1060 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1077
  protected final String TEXT_1060 = NL + "\t/**" + NL + "\t * Returns whether the value of the '{@link ";
1078
  protected final String TEXT_1061 = NL + "\tboolean isSet";
1078
  protected final String TEXT_1061 = "#";
1079
  protected final String TEXT_1062 = "();" + NL;
1079
  protected final String TEXT_1062 = " <em>";
1080
  protected final String TEXT_1063 = NL + "\tpublic boolean isSet";
1080
  protected final String TEXT_1063 = "</em>}' ";
1081
  protected final String TEXT_1064 = "_";
1081
  protected final String TEXT_1064 = " is set.";
1082
  protected final String TEXT_1065 = "()" + NL + "\t{";
1082
  protected final String TEXT_1065 = NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @return whether the value of the '<em>";
1083
  protected final String TEXT_1066 = NL + "\t\treturn eDynamicIsSet(";
1083
  protected final String TEXT_1066 = "</em>' ";
1084
  protected final String TEXT_1067 = ", ";
1084
  protected final String TEXT_1067 = " is set.";
1085
  protected final String TEXT_1068 = ");";
1085
  protected final String TEXT_1068 = NL + "\t * @see #unset";
1086
  protected final String TEXT_1069 = NL + "\t\treturn eIsSet(";
1086
  protected final String TEXT_1069 = "()";
1087
  protected final String TEXT_1070 = ");";
1087
  protected final String TEXT_1070 = NL + "\t * @see #";
1088
  protected final String TEXT_1071 = NL + "\t\t";
1088
  protected final String TEXT_1071 = "()";
1089
  protected final String TEXT_1072 = " ";
1089
  protected final String TEXT_1072 = NL + "\t * @see #set";
1090
  protected final String TEXT_1073 = " = (";
1090
  protected final String TEXT_1073 = "(";
1091
  protected final String TEXT_1074 = ")eVirtualGet(";
1091
  protected final String TEXT_1074 = ")";
1092
  protected final String TEXT_1075 = ");";
1092
  protected final String TEXT_1075 = NL + "\t * @generated" + NL + "\t */";
1093
  protected final String TEXT_1076 = NL + "\t\treturn ";
1093
  protected final String TEXT_1076 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1094
  protected final String TEXT_1077 = " != null && ((";
1094
  protected final String TEXT_1077 = NL + "\tboolean isSet";
1095
  protected final String TEXT_1078 = ".Unsettable";
1095
  protected final String TEXT_1078 = "();" + NL;
1096
  protected final String TEXT_1079 = ")";
1096
  protected final String TEXT_1079 = NL + "\tpublic boolean isSet";
1097
  protected final String TEXT_1080 = ").isSet();";
1097
  protected final String TEXT_1080 = "_";
1098
  protected final String TEXT_1081 = NL + "\t\treturn eVirtualIsSet(";
1098
  protected final String TEXT_1081 = "()" + NL + "\t{";
1099
  protected final String TEXT_1082 = ");";
1099
  protected final String TEXT_1082 = NL + "\t\treturn eDynamicIsSet(";
1100
  protected final String TEXT_1083 = NL + "\t\treturn (";
1100
  protected final String TEXT_1083 = ", ";
1101
  protected final String TEXT_1084 = " & ";
1101
  protected final String TEXT_1084 = ");";
1102
  protected final String TEXT_1085 = "_ESETFLAG) != 0;";
1102
  protected final String TEXT_1085 = NL + "\t\treturn eIsSet(";
1103
  protected final String TEXT_1086 = NL + "\t\treturn ";
1103
  protected final String TEXT_1086 = ");";
1104
  protected final String TEXT_1087 = "ESet;";
1104
  protected final String TEXT_1087 = NL + "\t\t";
1105
  protected final String TEXT_1088 = NL + "\t\treturn !((";
1105
  protected final String TEXT_1088 = " ";
1106
  protected final String TEXT_1089 = ".Internal)((";
1106
  protected final String TEXT_1089 = " = (";
1107
  protected final String TEXT_1090 = ".Internal.Wrapper)get";
1107
  protected final String TEXT_1090 = ")eVirtualGet(";
1108
  protected final String TEXT_1091 = "()).featureMap()).isEmpty(";
1108
  protected final String TEXT_1091 = ");";
1109
  protected final String TEXT_1092 = ");";
1109
  protected final String TEXT_1092 = NL + "\t\treturn ";
1110
  protected final String TEXT_1093 = NL + "\t\treturn !((";
1110
  protected final String TEXT_1093 = " != null && ((";
1111
  protected final String TEXT_1094 = ".Internal)get";
1111
  protected final String TEXT_1094 = ".Unsettable";
1112
  protected final String TEXT_1095 = "()).isEmpty(";
1112
  protected final String TEXT_1095 = ")";
1113
  protected final String TEXT_1096 = ");";
1113
  protected final String TEXT_1096 = ").isSet();";
1114
  protected final String TEXT_1097 = NL + "\t\t";
1114
  protected final String TEXT_1097 = NL + "\t\teFireWrite(";
1115
  protected final String TEXT_1098 = NL + "\t\t// TODO: implement this method to return whether the '";
1115
  protected final String TEXT_1098 = ");";
1116
  protected final String TEXT_1099 = "' ";
1116
  protected final String TEXT_1099 = NL + "\t\treturn eVirtualIsSet(";
1117
  protected final String TEXT_1100 = " is set" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
1117
  protected final String TEXT_1100 = ");";
1118
  protected final String TEXT_1101 = NL + "\t}" + NL;
1118
  protected final String TEXT_1101 = NL + "\t\treturn (";
1119
  protected final String TEXT_1102 = NL + "\t/**";
1119
  protected final String TEXT_1102 = " & ";
1120
  protected final String TEXT_1103 = NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->";
1120
  protected final String TEXT_1103 = "_ESETFLAG) != 0;";
1121
  protected final String TEXT_1104 = NL + "\t * <!-- begin-model-doc -->";
1121
  protected final String TEXT_1104 = NL + "\t\treturn ";
1122
  protected final String TEXT_1105 = NL + "\t * ";
1122
  protected final String TEXT_1105 = "ESet;";
1123
  protected final String TEXT_1106 = NL + "\t * @param ";
1123
  protected final String TEXT_1106 = NL + "\t\treturn !((";
1124
  protected final String TEXT_1107 = NL + "\t *   ";
1124
  protected final String TEXT_1107 = ".Internal)((";
1125
  protected final String TEXT_1108 = NL + "\t * @param ";
1125
  protected final String TEXT_1108 = ".Internal.Wrapper)get";
1126
  protected final String TEXT_1109 = " ";
1126
  protected final String TEXT_1109 = "()).featureMap()).isEmpty(";
1127
  protected final String TEXT_1110 = NL + "\t * <!-- end-model-doc -->";
1127
  protected final String TEXT_1110 = ");";
1128
  protected final String TEXT_1111 = NL + "\t * @model ";
1128
  protected final String TEXT_1111 = NL + "\t\treturn !((";
1129
  protected final String TEXT_1112 = NL + "\t *        ";
1129
  protected final String TEXT_1112 = ".Internal)get";
1130
  protected final String TEXT_1113 = NL + "\t * @model";
1130
  protected final String TEXT_1113 = "()).isEmpty(";
1131
  protected final String TEXT_1114 = NL + "\t * @generated" + NL + "\t */";
1131
  protected final String TEXT_1114 = ");";
1132
  protected final String TEXT_1115 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1132
  protected final String TEXT_1115 = NL + "\t\t";
1133
  protected final String TEXT_1116 = NL + "\t";
1133
  protected final String TEXT_1116 = NL + "\t\t// TODO: implement this method to return whether the '";
1134
  protected final String TEXT_1117 = " ";
1134
  protected final String TEXT_1117 = "' ";
1135
  protected final String TEXT_1118 = "(";
1135
  protected final String TEXT_1118 = " is set" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
1136
  protected final String TEXT_1119 = ")";
1136
  protected final String TEXT_1119 = NL + "\t}" + NL;
1137
  protected final String TEXT_1120 = ";" + NL;
1137
  protected final String TEXT_1120 = NL + "\t/**";
1138
  protected final String TEXT_1121 = NL + "\tpublic ";
1138
  protected final String TEXT_1121 = NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->";
1139
  protected final String TEXT_1122 = " ";
1139
  protected final String TEXT_1122 = NL + "\t * <!-- begin-model-doc -->";
1140
  protected final String TEXT_1123 = "(";
1140
  protected final String TEXT_1123 = NL + "\t * ";
1141
  protected final String TEXT_1124 = ")";
1141
  protected final String TEXT_1124 = NL + "\t * @param ";
1142
  protected final String TEXT_1125 = NL + "\t{";
1142
  protected final String TEXT_1125 = NL + "\t *   ";
1143
  protected final String TEXT_1126 = NL + "\t\t";
1143
  protected final String TEXT_1126 = NL + "\t * @param ";
1144
  protected final String TEXT_1127 = NL + "\t\t// TODO: implement this method" + NL + "\t\t// -> specify the condition that violates the invariant" + NL + "\t\t// -> verify the details of the diagnostic, including severity and message" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tif (false)" + NL + "\t\t{" + NL + "\t\t\tif (";
1144
  protected final String TEXT_1127 = " ";
1145
  protected final String TEXT_1128 = " != null)" + NL + "\t\t\t{" + NL + "\t\t\t\t";
1145
  protected final String TEXT_1128 = NL + "\t * <!-- end-model-doc -->";
1146
  protected final String TEXT_1129 = ".add" + NL + "\t\t\t\t\t(new ";
1146
  protected final String TEXT_1129 = NL + "\t * @model ";
1147
  protected final String TEXT_1130 = NL + "\t\t\t\t\t\t(";
1147
  protected final String TEXT_1130 = NL + "\t *        ";
1148
  protected final String TEXT_1131 = ".ERROR," + NL + "\t\t\t\t\t\t ";
1148
  protected final String TEXT_1131 = NL + "\t * @model";
1149
  protected final String TEXT_1132 = ".DIAGNOSTIC_SOURCE," + NL + "\t\t\t\t\t\t ";
1149
  protected final String TEXT_1132 = NL + "\t * @generated" + NL + "\t */";
1150
  protected final String TEXT_1133 = ".";
1150
  protected final String TEXT_1133 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1151
  protected final String TEXT_1134 = "," + NL + "\t\t\t\t\t\t ";
1151
  protected final String TEXT_1134 = NL + "\t";
1152
  protected final String TEXT_1135 = ".INSTANCE.getString(\"_UI_GenericInvariant_diagnostic\", new Object[] { \"";
1152
  protected final String TEXT_1135 = " ";
1153
  protected final String TEXT_1136 = "\", ";
1153
  protected final String TEXT_1136 = "(";
1154
  protected final String TEXT_1137 = ".getObjectLabel(this, ";
1154
  protected final String TEXT_1137 = ")";
1155
  protected final String TEXT_1138 = ") }),";
1155
  protected final String TEXT_1138 = ";" + NL;
1156
  protected final String TEXT_1139 = NL + "\t\t\t\t\t\t new Object [] { this }));" + NL + "\t\t\t}" + NL + "\t\t\treturn false;" + NL + "\t\t}" + NL + "\t\treturn true;";
1156
  protected final String TEXT_1139 = NL + "\tpublic ";
1157
  protected final String TEXT_1140 = NL + "\t\t// TODO: implement this method" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
1157
  protected final String TEXT_1140 = " ";
1158
  protected final String TEXT_1141 = NL + "\t}" + NL;
1158
  protected final String TEXT_1141 = "(";
1159
  protected final String TEXT_1142 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1159
  protected final String TEXT_1142 = ")";
1160
  protected final String TEXT_1143 = NL + "\t@SuppressWarnings(\"unchecked\")";
1160
  protected final String TEXT_1143 = NL + "\t{";
1161
  protected final String TEXT_1144 = NL + "\t@Override";
1161
  protected final String TEXT_1144 = NL + "\t\t";
1162
  protected final String TEXT_1145 = NL + "\tpublic ";
1162
  protected final String TEXT_1145 = NL + "\t\t// TODO: implement this method" + NL + "\t\t// -> specify the condition that violates the invariant" + NL + "\t\t// -> verify the details of the diagnostic, including severity and message" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tif (false)" + NL + "\t\t{" + NL + "\t\t\tif (";
1163
  protected final String TEXT_1146 = " eInverseAdd(";
1163
  protected final String TEXT_1146 = " != null)" + NL + "\t\t\t{" + NL + "\t\t\t\t";
1164
  protected final String TEXT_1147 = " otherEnd, int featureID, ";
1164
  protected final String TEXT_1147 = ".add" + NL + "\t\t\t\t\t(new ";
1165
  protected final String TEXT_1148 = " msgs)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1165
  protected final String TEXT_1148 = NL + "\t\t\t\t\t\t(";
1166
  protected final String TEXT_1149 = ")" + NL + "\t\t{";
1166
  protected final String TEXT_1149 = ".ERROR," + NL + "\t\t\t\t\t\t ";
1167
  protected final String TEXT_1150 = NL + "\t\t\tcase ";
1167
  protected final String TEXT_1150 = ".DIAGNOSTIC_SOURCE," + NL + "\t\t\t\t\t\t ";
1168
  protected final String TEXT_1151 = ":";
1168
  protected final String TEXT_1151 = ".";
1169
  protected final String TEXT_1152 = NL + "\t\t\t\treturn ((";
1169
  protected final String TEXT_1152 = "," + NL + "\t\t\t\t\t\t ";
1170
  protected final String TEXT_1153 = "(";
1170
  protected final String TEXT_1153 = ".INSTANCE.getString(\"_UI_GenericInvariant_diagnostic\", new Object[] { \"";
1171
  protected final String TEXT_1154 = ".InternalMapView";
1171
  protected final String TEXT_1154 = "\", ";
1172
  protected final String TEXT_1155 = ")";
1172
  protected final String TEXT_1155 = ".getObjectLabel(this, ";
1173
  protected final String TEXT_1156 = "()).eMap()).basicAdd(otherEnd, msgs);";
1173
  protected final String TEXT_1156 = ") }),";
1174
  protected final String TEXT_1157 = NL + "\t\t\t\treturn (";
1174
  protected final String TEXT_1157 = NL + "\t\t\t\t\t\t new Object [] { this }));" + NL + "\t\t\t}" + NL + "\t\t\treturn false;" + NL + "\t\t}" + NL + "\t\treturn true;";
1175
  protected final String TEXT_1158 = "()).basicAdd(otherEnd, msgs);";
1175
  protected final String TEXT_1158 = NL + "\t\t// TODO: implement this method" + NL + "\t\t// Ensure that you remove @generated or mark it @generated NOT" + NL + "\t\tthrow new UnsupportedOperationException();";
1176
  protected final String TEXT_1159 = NL + "\t\t\t\tif (eInternalContainer() != null)" + NL + "\t\t\t\t\tmsgs = eBasicRemoveFromContainer(msgs);";
1176
  protected final String TEXT_1159 = NL + "\t}" + NL;
1177
  protected final String TEXT_1160 = NL + "\t\t\t\treturn basicSet";
1177
  protected final String TEXT_1160 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1178
  protected final String TEXT_1161 = "((";
1178
  protected final String TEXT_1161 = NL + "\t@SuppressWarnings(\"unchecked\")";
1179
  protected final String TEXT_1162 = ")otherEnd, msgs);";
1179
  protected final String TEXT_1162 = NL + "\t@Override";
1180
  protected final String TEXT_1163 = NL + "\t\t\t\treturn eBasicSetContainer(otherEnd, ";
1180
  protected final String TEXT_1163 = NL + "\tpublic ";
1181
  protected final String TEXT_1164 = ", msgs);";
1181
  protected final String TEXT_1164 = " eInverseAdd(";
1182
  protected final String TEXT_1165 = NL + "\t\t\t\t";
1182
  protected final String TEXT_1165 = " otherEnd, int featureID, ";
1183
  protected final String TEXT_1166 = " ";
1183
  protected final String TEXT_1166 = " msgs)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1184
  protected final String TEXT_1167 = " = (";
1184
  protected final String TEXT_1167 = ")" + NL + "\t\t{";
1185
  protected final String TEXT_1168 = ")eVirtualGet(";
1185
  protected final String TEXT_1168 = NL + "\t\t\tcase ";
1186
  protected final String TEXT_1169 = ");";
1186
  protected final String TEXT_1169 = ":";
1187
  protected final String TEXT_1170 = NL + "\t\t\t\t";
1187
  protected final String TEXT_1170 = NL + "\t\t\t\treturn ((";
1188
  protected final String TEXT_1171 = " ";
1188
  protected final String TEXT_1171 = "(";
1189
  protected final String TEXT_1172 = " = ";
1189
  protected final String TEXT_1172 = ".InternalMapView";
1190
  protected final String TEXT_1173 = "basicGet";
1190
  protected final String TEXT_1173 = ")";
1191
  protected final String TEXT_1174 = "();";
1191
  protected final String TEXT_1174 = "()).eMap()).basicAdd(otherEnd, msgs);";
1192
  protected final String TEXT_1175 = NL + "\t\t\t\tif (";
1192
  protected final String TEXT_1175 = NL + "\t\t\t\treturn (";
1193
  protected final String TEXT_1176 = " != null)";
1193
  protected final String TEXT_1176 = "()).basicAdd(otherEnd, msgs);";
1194
  protected final String TEXT_1177 = NL + "\t\t\t\t\tmsgs = ((";
1194
  protected final String TEXT_1177 = NL + "\t\t\t\tif (eInternalContainer() != null)" + NL + "\t\t\t\t\tmsgs = eBasicRemoveFromContainer(msgs);";
1195
  protected final String TEXT_1178 = ")";
1195
  protected final String TEXT_1178 = NL + "\t\t\t\treturn basicSet";
1196
  protected final String TEXT_1179 = ").eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ";
1196
  protected final String TEXT_1179 = "((";
1197
  protected final String TEXT_1180 = ", null, msgs);";
1197
  protected final String TEXT_1180 = ")otherEnd, msgs);";
1198
  protected final String TEXT_1181 = NL + "\t\t\t\t\tmsgs = ((";
1198
  protected final String TEXT_1181 = NL + "\t\t\t\treturn eBasicSetContainer(otherEnd, ";
1199
  protected final String TEXT_1182 = ")";
1199
  protected final String TEXT_1182 = ", msgs);";
1200
  protected final String TEXT_1183 = ").eInverseRemove(this, ";
1200
  protected final String TEXT_1183 = NL + "\t\t\t\t";
1201
  protected final String TEXT_1184 = ", ";
1201
  protected final String TEXT_1184 = " ";
1202
  protected final String TEXT_1185 = ".class, msgs);";
1202
  protected final String TEXT_1185 = " = (";
1203
  protected final String TEXT_1186 = NL + "\t\t\t\treturn basicSet";
1203
  protected final String TEXT_1186 = ")eVirtualGet(";
1204
  protected final String TEXT_1187 = "((";
1204
  protected final String TEXT_1187 = ");";
1205
  protected final String TEXT_1188 = ")otherEnd, msgs);";
1205
  protected final String TEXT_1188 = NL + "\t\t\t\t";
1206
  protected final String TEXT_1189 = NL + "\t\t}";
1206
  protected final String TEXT_1189 = " ";
1207
  protected final String TEXT_1190 = NL + "\t\treturn super.eInverseAdd(otherEnd, featureID, msgs);";
1207
  protected final String TEXT_1190 = " = ";
1208
  protected final String TEXT_1191 = NL + "\t\treturn eDynamicInverseAdd(otherEnd, featureID, msgs);";
1208
  protected final String TEXT_1191 = "basicGet";
1209
  protected final String TEXT_1192 = NL + "\t}" + NL;
1209
  protected final String TEXT_1192 = "();";
1210
  protected final String TEXT_1193 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1210
  protected final String TEXT_1193 = NL + "\t\t\t\tif (";
1211
  protected final String TEXT_1194 = NL + "\t@Override";
1211
  protected final String TEXT_1194 = " != null)";
1212
  protected final String TEXT_1195 = NL + "\tpublic ";
1212
  protected final String TEXT_1195 = NL + "\t\t\t\t\tmsgs = ((";
1213
  protected final String TEXT_1196 = " eInverseRemove(";
1213
  protected final String TEXT_1196 = ")";
1214
  protected final String TEXT_1197 = " otherEnd, int featureID, ";
1214
  protected final String TEXT_1197 = ").eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ";
1215
  protected final String TEXT_1198 = " msgs)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1215
  protected final String TEXT_1198 = ", null, msgs);";
1216
  protected final String TEXT_1199 = ")" + NL + "\t\t{";
1216
  protected final String TEXT_1199 = NL + "\t\t\t\t\tmsgs = ((";
1217
  protected final String TEXT_1200 = NL + "\t\t\tcase ";
1217
  protected final String TEXT_1200 = ")";
1218
  protected final String TEXT_1201 = ":";
1218
  protected final String TEXT_1201 = ").eInverseRemove(this, ";
1219
  protected final String TEXT_1202 = NL + "\t\t\t\treturn ((";
1219
  protected final String TEXT_1202 = ", ";
1220
  protected final String TEXT_1203 = ")((";
1220
  protected final String TEXT_1203 = ".class, msgs);";
1221
  protected final String TEXT_1204 = ".InternalMapView";
1221
  protected final String TEXT_1204 = NL + "\t\t\t\treturn basicSet";
1222
  protected final String TEXT_1205 = ")";
1222
  protected final String TEXT_1205 = "((";
1223
  protected final String TEXT_1206 = "()).eMap()).basicRemove(otherEnd, msgs);";
1223
  protected final String TEXT_1206 = ")otherEnd, msgs);";
1224
  protected final String TEXT_1207 = NL + "\t\t\t\treturn ((";
1224
  protected final String TEXT_1207 = NL + "\t\t}";
1225
  protected final String TEXT_1208 = ")((";
1225
  protected final String TEXT_1208 = NL + "\t\treturn super.eInverseAdd(otherEnd, featureID, msgs);";
1226
  protected final String TEXT_1209 = ".Internal.Wrapper)";
1226
  protected final String TEXT_1209 = NL + "\t\treturn eDynamicInverseAdd(otherEnd, featureID, msgs);";
1227
  protected final String TEXT_1210 = "()).featureMap()).basicRemove(otherEnd, msgs);";
1227
  protected final String TEXT_1210 = NL + "\t}" + NL;
1228
  protected final String TEXT_1211 = NL + "\t\t\t\treturn ((";
1228
  protected final String TEXT_1211 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1229
  protected final String TEXT_1212 = ")";
1229
  protected final String TEXT_1212 = NL + "\t@Override";
1230
  protected final String TEXT_1213 = "()).basicRemove(otherEnd, msgs);";
1230
  protected final String TEXT_1213 = NL + "\tpublic ";
1231
  protected final String TEXT_1214 = NL + "\t\t\t\treturn eBasicSetContainer(null, ";
1231
  protected final String TEXT_1214 = " eInverseRemove(";
1232
  protected final String TEXT_1215 = ", msgs);";
1232
  protected final String TEXT_1215 = " otherEnd, int featureID, ";
1233
  protected final String TEXT_1216 = NL + "\t\t\t\treturn basicUnset";
1233
  protected final String TEXT_1216 = " msgs)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1234
  protected final String TEXT_1217 = "(msgs);";
1234
  protected final String TEXT_1217 = ")" + NL + "\t\t{";
1235
  protected final String TEXT_1218 = NL + "\t\t\t\treturn basicSet";
1235
  protected final String TEXT_1218 = NL + "\t\t\tcase ";
1236
  protected final String TEXT_1219 = "(null, msgs);";
1236
  protected final String TEXT_1219 = ":";
1237
  protected final String TEXT_1220 = NL + "\t\t}";
1237
  protected final String TEXT_1220 = NL + "\t\t\t\treturn ((";
1238
  protected final String TEXT_1221 = NL + "\t\treturn super.eInverseRemove(otherEnd, featureID, msgs);";
1238
  protected final String TEXT_1221 = ")((";
1239
  protected final String TEXT_1222 = NL + "\t\treturn eDynamicInverseRemove(otherEnd, featureID, msgs);";
1239
  protected final String TEXT_1222 = ".InternalMapView";
1240
  protected final String TEXT_1223 = NL + "\t}" + NL;
1240
  protected final String TEXT_1223 = ")";
1241
  protected final String TEXT_1224 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1241
  protected final String TEXT_1224 = "()).eMap()).basicRemove(otherEnd, msgs);";
1242
  protected final String TEXT_1225 = NL + "\t@Override";
1242
  protected final String TEXT_1225 = NL + "\t\t\t\treturn ((";
1243
  protected final String TEXT_1226 = NL + "\tpublic ";
1243
  protected final String TEXT_1226 = ")((";
1244
  protected final String TEXT_1227 = " eBasicRemoveFromContainerFeature(";
1244
  protected final String TEXT_1227 = ".Internal.Wrapper)";
1245
  protected final String TEXT_1228 = " msgs)" + NL + "\t{" + NL + "\t\tswitch (eContainerFeatureID";
1245
  protected final String TEXT_1228 = "()).featureMap()).basicRemove(otherEnd, msgs);";
1246
  protected final String TEXT_1229 = ")" + NL + "\t\t{";
1246
  protected final String TEXT_1229 = NL + "\t\t\t\treturn ((";
1247
  protected final String TEXT_1230 = NL + "\t\t\tcase ";
1247
  protected final String TEXT_1230 = ")";
1248
  protected final String TEXT_1231 = ":" + NL + "\t\t\t\treturn eInternalContainer().eInverseRemove(this, ";
1248
  protected final String TEXT_1231 = "()).basicRemove(otherEnd, msgs);";
1249
  protected final String TEXT_1232 = ", ";
1249
  protected final String TEXT_1232 = NL + "\t\t\t\treturn eBasicSetContainer(null, ";
1250
  protected final String TEXT_1233 = ".class, msgs);";
1250
  protected final String TEXT_1233 = ", msgs);";
1251
  protected final String TEXT_1234 = NL + "\t\t}";
1251
  protected final String TEXT_1234 = NL + "\t\t\t\treturn basicUnset";
1252
  protected final String TEXT_1235 = NL + "\t\treturn super.eBasicRemoveFromContainerFeature(msgs);";
1252
  protected final String TEXT_1235 = "(msgs);";
1253
  protected final String TEXT_1236 = NL + "\t\treturn eDynamicBasicRemoveFromContainer(msgs);";
1253
  protected final String TEXT_1236 = NL + "\t\t\t\treturn basicSet";
1254
  protected final String TEXT_1237 = NL + "\t}" + NL;
1254
  protected final String TEXT_1237 = "(null, msgs);";
1255
  protected final String TEXT_1238 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1255
  protected final String TEXT_1238 = NL + "\t\t}";
1256
  protected final String TEXT_1239 = NL + "\t@Override";
1256
  protected final String TEXT_1239 = NL + "\t\treturn super.eInverseRemove(otherEnd, featureID, msgs);";
1257
  protected final String TEXT_1240 = NL + "\tpublic Object eGet(int featureID, boolean resolve, boolean coreType)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1257
  protected final String TEXT_1240 = NL + "\t\treturn eDynamicInverseRemove(otherEnd, featureID, msgs);";
1258
  protected final String TEXT_1241 = ")" + NL + "\t\t{";
1258
  protected final String TEXT_1241 = NL + "\t}" + NL;
1259
  protected final String TEXT_1242 = NL + "\t\t\tcase ";
1259
  protected final String TEXT_1242 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1260
  protected final String TEXT_1243 = ":";
1260
  protected final String TEXT_1243 = NL + "\t@Override";
1261
  protected final String TEXT_1244 = NL + "\t\t\t\treturn ";
1261
  protected final String TEXT_1244 = NL + "\tpublic ";
1262
  protected final String TEXT_1245 = "() ? Boolean.TRUE : Boolean.FALSE;";
1262
  protected final String TEXT_1245 = " eBasicRemoveFromContainerFeature(";
1263
  protected final String TEXT_1246 = NL + "\t\t\t\treturn new ";
1263
  protected final String TEXT_1246 = " msgs)" + NL + "\t{" + NL + "\t\tswitch (eContainerFeatureID";
1264
  protected final String TEXT_1247 = "(";
1264
  protected final String TEXT_1247 = ")" + NL + "\t\t{";
1265
  protected final String TEXT_1248 = "());";
1265
  protected final String TEXT_1248 = NL + "\t\t\tcase ";
1266
  protected final String TEXT_1249 = NL + "\t\t\t\tif (resolve) return ";
1266
  protected final String TEXT_1249 = ":" + NL + "\t\t\t\treturn eInternalContainer().eInverseRemove(this, ";
1267
  protected final String TEXT_1250 = "();" + NL + "\t\t\t\treturn basicGet";
1267
  protected final String TEXT_1250 = ", ";
1268
  protected final String TEXT_1251 = "();";
1268
  protected final String TEXT_1251 = ".class, msgs);";
1269
  protected final String TEXT_1252 = NL + "\t\t\t\tif (coreType) return ((";
1269
  protected final String TEXT_1252 = NL + "\t\t}";
1270
  protected final String TEXT_1253 = ".InternalMapView";
1270
  protected final String TEXT_1253 = NL + "\t\treturn super.eBasicRemoveFromContainerFeature(msgs);";
1271
  protected final String TEXT_1254 = ")";
1271
  protected final String TEXT_1254 = NL + "\t\treturn eDynamicBasicRemoveFromContainer(msgs);";
1272
  protected final String TEXT_1255 = "()).eMap();" + NL + "\t\t\t\telse return ";
1272
  protected final String TEXT_1255 = NL + "\t}" + NL;
1273
  protected final String TEXT_1256 = "();";
1273
  protected final String TEXT_1256 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1274
  protected final String TEXT_1257 = NL + "\t\t\t\tif (coreType) return ";
1274
  protected final String TEXT_1257 = NL + "\t@Override";
1275
  protected final String TEXT_1258 = "();" + NL + "\t\t\t\telse return ";
1275
  protected final String TEXT_1258 = NL + "\tpublic Object eGet(int featureID, boolean resolve, boolean coreType)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1276
  protected final String TEXT_1259 = "().map();";
1276
  protected final String TEXT_1259 = ")" + NL + "\t\t{";
1277
  protected final String TEXT_1260 = NL + "\t\t\t\tif (coreType) return ((";
1277
  protected final String TEXT_1260 = NL + "\t\t\tcase ";
1278
  protected final String TEXT_1261 = ".Internal.Wrapper)";
1278
  protected final String TEXT_1261 = ":";
1279
  protected final String TEXT_1262 = "()).featureMap();" + NL + "\t\t\t\treturn ";
1279
  protected final String TEXT_1262 = NL + "\t\t\t\treturn ";
1280
  protected final String TEXT_1263 = "();";
1280
  protected final String TEXT_1263 = "() ? Boolean.TRUE : Boolean.FALSE;";
1281
  protected final String TEXT_1264 = NL + "\t\t\t\tif (coreType) return ";
1281
  protected final String TEXT_1264 = NL + "\t\t\t\treturn new ";
1282
  protected final String TEXT_1265 = "();" + NL + "\t\t\t\treturn ((";
1282
  protected final String TEXT_1265 = "(";
1283
  protected final String TEXT_1266 = ".Internal)";
1283
  protected final String TEXT_1266 = "());";
1284
  protected final String TEXT_1267 = "()).getWrapper();";
1284
  protected final String TEXT_1267 = NL + "\t\t\t\tif (resolve) return ";
1285
  protected final String TEXT_1268 = NL + "\t\t\t\treturn ";
1285
  protected final String TEXT_1268 = "();" + NL + "\t\t\t\treturn basicGet";
1286
  protected final String TEXT_1269 = "();";
1286
  protected final String TEXT_1269 = "();";
1287
  protected final String TEXT_1270 = NL + "\t\t}";
1287
  protected final String TEXT_1270 = NL + "\t\t\t\tif (coreType) return ((";
1288
  protected final String TEXT_1271 = NL + "\t\treturn super.eGet(featureID, resolve, coreType);";
1288
  protected final String TEXT_1271 = ".InternalMapView";
1289
  protected final String TEXT_1272 = NL + "\t\treturn eDynamicGet(featureID, resolve, coreType);";
1289
  protected final String TEXT_1272 = ")";
1290
  protected final String TEXT_1273 = NL + "\t}" + NL;
1290
  protected final String TEXT_1273 = "()).eMap();" + NL + "\t\t\t\telse return ";
1291
  protected final String TEXT_1274 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1291
  protected final String TEXT_1274 = "();";
1292
  protected final String TEXT_1275 = NL + "\t@SuppressWarnings(\"unchecked\")";
1292
  protected final String TEXT_1275 = NL + "\t\t\t\tif (coreType) return ";
1293
  protected final String TEXT_1276 = NL + "\t@Override";
1293
  protected final String TEXT_1276 = "();" + NL + "\t\t\t\telse return ";
1294
  protected final String TEXT_1277 = NL + "\tpublic void eSet(int featureID, Object newValue)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1294
  protected final String TEXT_1277 = "().map();";
1295
  protected final String TEXT_1278 = ")" + NL + "\t\t{";
1295
  protected final String TEXT_1278 = NL + "\t\t\t\tif (coreType) return ((";
1296
  protected final String TEXT_1279 = NL + "\t\t\tcase ";
1296
  protected final String TEXT_1279 = ".Internal.Wrapper)";
1297
  protected final String TEXT_1280 = ":";
1297
  protected final String TEXT_1280 = "()).featureMap();" + NL + "\t\t\t\treturn ";
1298
  protected final String TEXT_1281 = NL + "\t\t\t\t((";
1298
  protected final String TEXT_1281 = "();";
1299
  protected final String TEXT_1282 = ".Internal)((";
1299
  protected final String TEXT_1282 = NL + "\t\t\t\tif (coreType) return ";
1300
  protected final String TEXT_1283 = ".Internal.Wrapper)";
1300
  protected final String TEXT_1283 = "();" + NL + "\t\t\t\treturn ((";
1301
  protected final String TEXT_1284 = "()).featureMap()).set(newValue);";
1301
  protected final String TEXT_1284 = ".Internal)";
1302
  protected final String TEXT_1285 = NL + "\t\t\t\t((";
1302
  protected final String TEXT_1285 = "()).getWrapper();";
1303
  protected final String TEXT_1286 = ".Internal)";
1303
  protected final String TEXT_1286 = NL + "\t\t\t\treturn ";
1304
  protected final String TEXT_1287 = "()).set(newValue);";
1304
  protected final String TEXT_1287 = "();";
1305
  protected final String TEXT_1288 = NL + "\t\t\t\t((";
1305
  protected final String TEXT_1288 = NL + "\t\t}";
1306
  protected final String TEXT_1289 = ".Setting)((";
1306
  protected final String TEXT_1289 = NL + "\t\treturn super.eGet(featureID, resolve, coreType);";
1307
  protected final String TEXT_1290 = ".InternalMapView";
1307
  protected final String TEXT_1290 = NL + "\t\treturn eDynamicGet(featureID, resolve, coreType);";
1308
  protected final String TEXT_1291 = ")";
1308
  protected final String TEXT_1291 = NL + "\t}" + NL;
1309
  protected final String TEXT_1292 = "()).eMap()).set(newValue);";
1309
  protected final String TEXT_1292 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1310
  protected final String TEXT_1293 = NL + "\t\t\t\t((";
1310
  protected final String TEXT_1293 = NL + "\t@SuppressWarnings(\"unchecked\")";
1311
  protected final String TEXT_1294 = ".Setting)";
1311
  protected final String TEXT_1294 = NL + "\t@Override";
1312
  protected final String TEXT_1295 = "()).set(newValue);";
1312
  protected final String TEXT_1295 = NL + "\tpublic void eSet(int featureID, Object newValue)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1313
  protected final String TEXT_1296 = NL + "\t\t\t\t";
1313
  protected final String TEXT_1296 = ")" + NL + "\t\t{";
1314
  protected final String TEXT_1297 = "().clear();" + NL + "\t\t\t\t";
1314
  protected final String TEXT_1297 = NL + "\t\t\tcase ";
1315
  protected final String TEXT_1298 = "().addAll((";
1315
  protected final String TEXT_1298 = ":";
1316
  protected final String TEXT_1299 = "<? extends ";
1316
  protected final String TEXT_1299 = NL + "\t\t\t\t((";
1317
  protected final String TEXT_1300 = ">";
1317
  protected final String TEXT_1300 = ".Internal)((";
1318
  protected final String TEXT_1301 = ")newValue);";
1318
  protected final String TEXT_1301 = ".Internal.Wrapper)";
1319
  protected final String TEXT_1302 = NL + "\t\t\t\tset";
1319
  protected final String TEXT_1302 = "()).featureMap()).set(newValue);";
1320
  protected final String TEXT_1303 = "(((";
1320
  protected final String TEXT_1303 = NL + "\t\t\t\t((";
1321
  protected final String TEXT_1304 = ")newValue).";
1321
  protected final String TEXT_1304 = ".Internal)";
1322
  protected final String TEXT_1305 = "());";
1322
  protected final String TEXT_1305 = "()).set(newValue);";
1323
  protected final String TEXT_1306 = NL + "\t\t\t\tset";
1323
  protected final String TEXT_1306 = NL + "\t\t\t\t((";
1324
  protected final String TEXT_1307 = "(";
1324
  protected final String TEXT_1307 = ".Setting)((";
1325
  protected final String TEXT_1308 = "(";
1325
  protected final String TEXT_1308 = ".InternalMapView";
1326
  protected final String TEXT_1309 = ")";
1326
  protected final String TEXT_1309 = ")";
1327
  protected final String TEXT_1310 = "newValue);";
1327
  protected final String TEXT_1310 = "()).eMap()).set(newValue);";
1328
  protected final String TEXT_1311 = NL + "\t\t\t\treturn;";
1328
  protected final String TEXT_1311 = NL + "\t\t\t\t((";
1329
  protected final String TEXT_1312 = NL + "\t\t}";
1329
  protected final String TEXT_1312 = ".Setting)";
1330
  protected final String TEXT_1313 = NL + "\t\tsuper.eSet(featureID, newValue);";
1330
  protected final String TEXT_1313 = "()).set(newValue);";
1331
  protected final String TEXT_1314 = NL + "\t\teDynamicSet(featureID, newValue);";
1331
  protected final String TEXT_1314 = NL + "\t\t\t\t";
1332
  protected final String TEXT_1315 = NL + "\t}" + NL;
1332
  protected final String TEXT_1315 = "().clear();" + NL + "\t\t\t\t";
1333
  protected final String TEXT_1316 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1333
  protected final String TEXT_1316 = "().addAll((";
1334
  protected final String TEXT_1317 = NL + "\t@Override";
1334
  protected final String TEXT_1317 = "<? extends ";
1335
  protected final String TEXT_1318 = NL + "\tpublic void eUnset(int featureID)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1335
  protected final String TEXT_1318 = ">";
1336
  protected final String TEXT_1319 = ")" + NL + "\t\t{";
1336
  protected final String TEXT_1319 = ")newValue);";
1337
  protected final String TEXT_1320 = NL + "\t\t\tcase ";
1337
  protected final String TEXT_1320 = NL + "\t\t\t\tset";
1338
  protected final String TEXT_1321 = ":";
1338
  protected final String TEXT_1321 = "(((";
1339
  protected final String TEXT_1322 = NL + "\t\t\t\t((";
1339
  protected final String TEXT_1322 = ")newValue).";
1340
  protected final String TEXT_1323 = ".Internal.Wrapper)";
1340
  protected final String TEXT_1323 = "());";
1341
  protected final String TEXT_1324 = "()).featureMap().clear();";
1341
  protected final String TEXT_1324 = NL + "\t\t\t\tset";
1342
  protected final String TEXT_1325 = NL + "\t\t\t\t";
1342
  protected final String TEXT_1325 = "(";
1343
  protected final String TEXT_1326 = "().clear();";
1343
  protected final String TEXT_1326 = "(";
1344
  protected final String TEXT_1327 = NL + "\t\t\t\tunset";
1344
  protected final String TEXT_1327 = ")";
1345
  protected final String TEXT_1328 = "();";
1345
  protected final String TEXT_1328 = "newValue);";
1346
  protected final String TEXT_1329 = NL + "\t\t\t\tset";
1346
  protected final String TEXT_1329 = NL + "\t\t\t\treturn;";
1347
  protected final String TEXT_1330 = "((";
1347
  protected final String TEXT_1330 = NL + "\t\t}";
1348
  protected final String TEXT_1331 = ")null);";
1348
  protected final String TEXT_1331 = NL + "\t\tsuper.eSet(featureID, newValue);";
1349
  protected final String TEXT_1332 = NL + "\t\t\t\tset";
1349
  protected final String TEXT_1332 = NL + "\t\teDynamicSet(featureID, newValue);";
1350
  protected final String TEXT_1333 = "(";
1350
  protected final String TEXT_1333 = NL + "\t}" + NL;
1351
  protected final String TEXT_1334 = ");";
1351
  protected final String TEXT_1334 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1352
  protected final String TEXT_1335 = NL + "\t\t\t\treturn;";
1352
  protected final String TEXT_1335 = NL + "\t@Override";
1353
  protected final String TEXT_1336 = NL + "\t\t}";
1353
  protected final String TEXT_1336 = NL + "\tpublic void eUnset(int featureID)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1354
  protected final String TEXT_1337 = NL + "\t\tsuper.eUnset(featureID);";
1354
  protected final String TEXT_1337 = ")" + NL + "\t\t{";
1355
  protected final String TEXT_1338 = NL + "\t\teDynamicUnset(featureID);";
1355
  protected final String TEXT_1338 = NL + "\t\t\tcase ";
1356
  protected final String TEXT_1339 = NL + "\t}" + NL;
1356
  protected final String TEXT_1339 = ":";
1357
  protected final String TEXT_1340 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1357
  protected final String TEXT_1340 = NL + "\t\t\t\t((";
1358
  protected final String TEXT_1341 = NL + "\t@SuppressWarnings(\"unchecked\")";
1358
  protected final String TEXT_1341 = ".Internal.Wrapper)";
1359
  protected final String TEXT_1342 = NL + "\t@Override";
1359
  protected final String TEXT_1342 = "()).featureMap().clear();";
1360
  protected final String TEXT_1343 = NL + "\tpublic boolean eIsSet(int featureID)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1360
  protected final String TEXT_1343 = NL + "\t\t\t\t";
1361
  protected final String TEXT_1344 = ")" + NL + "\t\t{";
1361
  protected final String TEXT_1344 = "().clear();";
1362
  protected final String TEXT_1345 = NL + "\t\t\tcase ";
1362
  protected final String TEXT_1345 = NL + "\t\t\t\tunset";
1363
  protected final String TEXT_1346 = ":";
1363
  protected final String TEXT_1346 = "();";
1364
  protected final String TEXT_1347 = NL + "\t\t\t\treturn !((";
1364
  protected final String TEXT_1347 = NL + "\t\t\t\tset";
1365
  protected final String TEXT_1348 = ".Internal.Wrapper)";
1365
  protected final String TEXT_1348 = "((";
1366
  protected final String TEXT_1349 = "()).featureMap().isEmpty();";
1366
  protected final String TEXT_1349 = ")null);";
1367
  protected final String TEXT_1350 = NL + "\t\t\t\treturn ";
1367
  protected final String TEXT_1350 = NL + "\t\t\t\tset";
1368
  protected final String TEXT_1351 = " != null && !";
1368
  protected final String TEXT_1351 = "(";
1369
  protected final String TEXT_1352 = ".featureMap().isEmpty();";
1369
  protected final String TEXT_1352 = ");";
1370
  protected final String TEXT_1353 = NL + "\t\t\t\treturn ";
1370
  protected final String TEXT_1353 = NL + "\t\t\t\treturn;";
1371
  protected final String TEXT_1354 = " != null && !";
1371
  protected final String TEXT_1354 = NL + "\t\t}";
1372
  protected final String TEXT_1355 = ".isEmpty();";
1372
  protected final String TEXT_1355 = NL + "\t\tsuper.eUnset(featureID);";
1373
  protected final String TEXT_1356 = NL + "\t\t\t\t";
1373
  protected final String TEXT_1356 = NL + "\t\teDynamicUnset(featureID);";
1374
  protected final String TEXT_1357 = " ";
1374
  protected final String TEXT_1357 = NL + "\t}" + NL;
1375
  protected final String TEXT_1358 = " = (";
1375
  protected final String TEXT_1358 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1376
  protected final String TEXT_1359 = ")eVirtualGet(";
1376
  protected final String TEXT_1359 = NL + "\t@SuppressWarnings(\"unchecked\")";
1377
  protected final String TEXT_1360 = ");" + NL + "\t\t\t\treturn ";
1377
  protected final String TEXT_1360 = NL + "\t@Override";
1378
  protected final String TEXT_1361 = " != null && !";
1378
  protected final String TEXT_1361 = NL + "\tpublic boolean eIsSet(int featureID)" + NL + "\t{" + NL + "\t\tswitch (featureID";
1379
  protected final String TEXT_1362 = ".isEmpty();";
1379
  protected final String TEXT_1362 = ")" + NL + "\t\t{";
1380
  protected final String TEXT_1363 = NL + "\t\t\t\treturn !";
1380
  protected final String TEXT_1363 = NL + "\t\t\tcase ";
1381
  protected final String TEXT_1364 = "().isEmpty();";
1381
  protected final String TEXT_1364 = ":";
1382
  protected final String TEXT_1365 = NL + "\t\t\t\treturn isSet";
1382
  protected final String TEXT_1365 = NL + "\t\t\t\treturn !((";
1383
  protected final String TEXT_1366 = "();";
1383
  protected final String TEXT_1366 = ".Internal.Wrapper)";
1384
  protected final String TEXT_1367 = NL + "\t\t\t\treturn ";
1384
  protected final String TEXT_1367 = "()).featureMap().isEmpty();";
1385
  protected final String TEXT_1368 = " != null;";
1385
  protected final String TEXT_1368 = NL + "\t\t\t\treturn ";
1386
  protected final String TEXT_1369 = NL + "\t\t\t\treturn eVirtualGet(";
1386
  protected final String TEXT_1369 = " != null && !";
1387
  protected final String TEXT_1370 = ") != null;";
1387
  protected final String TEXT_1370 = ".featureMap().isEmpty();";
1388
  protected final String TEXT_1371 = NL + "\t\t\t\treturn basicGet";
1388
  protected final String TEXT_1371 = NL + "\t\t\t\treturn ";
1389
  protected final String TEXT_1372 = "() != null;";
1389
  protected final String TEXT_1372 = " != null && !";
1390
  protected final String TEXT_1373 = NL + "\t\t\t\treturn ";
1390
  protected final String TEXT_1373 = ".isEmpty();";
1391
  protected final String TEXT_1374 = " != null;";
1391
  protected final String TEXT_1374 = NL + "\t\t\t\t";
1392
  protected final String TEXT_1375 = NL + "\t\t\t\treturn eVirtualGet(";
1392
  protected final String TEXT_1375 = " ";
1393
  protected final String TEXT_1376 = ") != null;";
1393
  protected final String TEXT_1376 = " = (";
1394
  protected final String TEXT_1377 = NL + "\t\t\t\treturn ";
1394
  protected final String TEXT_1377 = ")eVirtualGet(";
1395
  protected final String TEXT_1378 = "() != null;";
1395
  protected final String TEXT_1378 = ");" + NL + "\t\t\t\treturn ";
1396
  protected final String TEXT_1379 = NL + "\t\t\t\treturn ((";
1396
  protected final String TEXT_1379 = " != null && !";
1397
  protected final String TEXT_1380 = " & ";
1397
  protected final String TEXT_1380 = ".isEmpty();";
1398
  protected final String TEXT_1381 = "_EFLAG) != 0) != ";
1398
  protected final String TEXT_1381 = NL + "\t\t\t\treturn !";
1399
  protected final String TEXT_1382 = ";";
1399
  protected final String TEXT_1382 = "().isEmpty();";
1400
  protected final String TEXT_1383 = NL + "\t\t\t\treturn (";
1400
  protected final String TEXT_1383 = NL + "\t\t\t\treturn isSet";
1401
  protected final String TEXT_1384 = " & ";
1401
  protected final String TEXT_1384 = "();";
1402
  protected final String TEXT_1385 = "_EFLAG) != ";
1402
  protected final String TEXT_1385 = NL + "\t\t\t\treturn ";
1403
  protected final String TEXT_1386 = "_EFLAG_DEFAULT;";
1403
  protected final String TEXT_1386 = " != null;";
1404
  protected final String TEXT_1387 = NL + "\t\t\t\treturn ";
1404
  protected final String TEXT_1387 = NL + "\t\t\t\treturn eVirtualGet(";
1405
  protected final String TEXT_1388 = " != ";
1405
  protected final String TEXT_1388 = ") != null;";
1406
  protected final String TEXT_1389 = ";";
1406
  protected final String TEXT_1389 = NL + "\t\t\t\treturn basicGet";
1407
  protected final String TEXT_1390 = NL + "\t\t\t\treturn eVirtualGet(";
1407
  protected final String TEXT_1390 = "() != null;";
1408
  protected final String TEXT_1391 = ", ";
1408
  protected final String TEXT_1391 = NL + "\t\t\t\treturn ";
1409
  protected final String TEXT_1392 = ") != ";
1409
  protected final String TEXT_1392 = " != null;";
1410
  protected final String TEXT_1393 = ";";
1410
  protected final String TEXT_1393 = NL + "\t\t\t\treturn eVirtualGet(";
1411
  protected final String TEXT_1394 = NL + "\t\t\t\treturn ";
1411
  protected final String TEXT_1394 = ") != null;";
1412
  protected final String TEXT_1395 = "() != ";
1412
  protected final String TEXT_1395 = NL + "\t\t\t\treturn ";
1413
  protected final String TEXT_1396 = ";";
1413
  protected final String TEXT_1396 = "() != null;";
1414
  protected final String TEXT_1397 = NL + "\t\t\t\treturn ";
1414
  protected final String TEXT_1397 = NL + "\t\t\t\treturn ((";
1415
  protected final String TEXT_1398 = " == null ? ";
1415
  protected final String TEXT_1398 = " & ";
1416
  protected final String TEXT_1399 = " != null : !";
1416
  protected final String TEXT_1399 = "_EFLAG) != 0) != ";
1417
  protected final String TEXT_1400 = ".equals(";
1417
  protected final String TEXT_1400 = ";";
1418
  protected final String TEXT_1401 = ");";
1418
  protected final String TEXT_1401 = NL + "\t\t\t\treturn (";
1419
  protected final String TEXT_1402 = NL + "\t\t\t\t";
1419
  protected final String TEXT_1402 = " & ";
1420
  protected final String TEXT_1403 = " ";
1420
  protected final String TEXT_1403 = "_EFLAG) != ";
1421
  protected final String TEXT_1404 = " = (";
1421
  protected final String TEXT_1404 = "_EFLAG_DEFAULT;";
1422
  protected final String TEXT_1405 = ")eVirtualGet(";
1422
  protected final String TEXT_1405 = NL + "\t\t\t\treturn ";
1423
  protected final String TEXT_1406 = ", ";
1423
  protected final String TEXT_1406 = " != ";
1424
  protected final String TEXT_1407 = ");" + NL + "\t\t\t\treturn ";
1424
  protected final String TEXT_1407 = ";";
1425
  protected final String TEXT_1408 = " == null ? ";
1425
  protected final String TEXT_1408 = NL + "\t\t\t\treturn eVirtualGet(";
1426
  protected final String TEXT_1409 = " != null : !";
1426
  protected final String TEXT_1409 = ", ";
1427
  protected final String TEXT_1410 = ".equals(";
1427
  protected final String TEXT_1410 = ") != ";
1428
  protected final String TEXT_1411 = ");";
1428
  protected final String TEXT_1411 = ";";
1429
  protected final String TEXT_1412 = NL + "\t\t\t\treturn ";
1429
  protected final String TEXT_1412 = NL + "\t\t\t\treturn ";
1430
  protected final String TEXT_1413 = " == null ? ";
1430
  protected final String TEXT_1413 = "() != ";
1431
  protected final String TEXT_1414 = "() != null : !";
1431
  protected final String TEXT_1414 = ";";
1432
  protected final String TEXT_1415 = ".equals(";
1432
  protected final String TEXT_1415 = NL + "\t\t\t\treturn ";
1433
  protected final String TEXT_1416 = "());";
1433
  protected final String TEXT_1416 = " == null ? ";
1434
  protected final String TEXT_1417 = NL + "\t\t}";
1434
  protected final String TEXT_1417 = " != null : !";
1435
  protected final String TEXT_1418 = NL + "\t\treturn super.eIsSet(featureID);";
1435
  protected final String TEXT_1418 = ".equals(";
1436
  protected final String TEXT_1419 = NL + "\t\treturn eDynamicIsSet(featureID);";
1436
  protected final String TEXT_1419 = ");";
1437
  protected final String TEXT_1420 = NL + "\t}" + NL;
1437
  protected final String TEXT_1420 = NL + "\t\t\t\t";
1438
  protected final String TEXT_1421 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1438
  protected final String TEXT_1421 = " ";
1439
  protected final String TEXT_1422 = NL + "\t@Override";
1439
  protected final String TEXT_1422 = " = (";
1440
  protected final String TEXT_1423 = NL + "\tpublic int eBaseStructuralFeatureID(int derivedFeatureID, Class";
1440
  protected final String TEXT_1423 = ")eVirtualGet(";
1441
  protected final String TEXT_1424 = " baseClass)" + NL + "\t{";
1441
  protected final String TEXT_1424 = ", ";
1442
  protected final String TEXT_1425 = NL + "\t\tif (baseClass == ";
1442
  protected final String TEXT_1425 = ");" + NL + "\t\t\t\treturn ";
1443
  protected final String TEXT_1426 = ".class)" + NL + "\t\t{" + NL + "\t\t\tswitch (derivedFeatureID";
1443
  protected final String TEXT_1426 = " == null ? ";
1444
  protected final String TEXT_1427 = ")" + NL + "\t\t\t{";
1444
  protected final String TEXT_1427 = " != null : !";
1445
  protected final String TEXT_1428 = NL + "\t\t\t\tcase ";
1445
  protected final String TEXT_1428 = ".equals(";
1446
  protected final String TEXT_1429 = ": return ";
1446
  protected final String TEXT_1429 = ");";
1447
  protected final String TEXT_1430 = ";";
1447
  protected final String TEXT_1430 = NL + "\t\t\t\treturn ";
1448
  protected final String TEXT_1431 = NL + "\t\t\t\tdefault: return -1;" + NL + "\t\t\t}" + NL + "\t\t}";
1448
  protected final String TEXT_1431 = " == null ? ";
1449
  protected final String TEXT_1432 = NL + "\t\treturn super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);" + NL + "\t}";
1449
  protected final String TEXT_1432 = "() != null : !";
1450
  protected final String TEXT_1433 = NL + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1450
  protected final String TEXT_1433 = ".equals(";
1451
  protected final String TEXT_1434 = NL + "\t@Override";
1451
  protected final String TEXT_1434 = "());";
1452
  protected final String TEXT_1435 = NL + "\tpublic int eDerivedStructuralFeatureID(int baseFeatureID, Class";
1452
  protected final String TEXT_1435 = NL + "\t\t}";
1453
  protected final String TEXT_1436 = " baseClass)" + NL + "\t{";
1453
  protected final String TEXT_1436 = NL + "\t\treturn super.eIsSet(featureID);";
1454
  protected final String TEXT_1437 = NL + "\t\tif (baseClass == ";
1454
  protected final String TEXT_1437 = NL + "\t\treturn eDynamicIsSet(featureID);";
1455
  protected final String TEXT_1438 = ".class)" + NL + "\t\t{" + NL + "\t\t\tswitch (baseFeatureID)" + NL + "\t\t\t{";
1455
  protected final String TEXT_1438 = NL + "\t}" + NL;
1456
  protected final String TEXT_1439 = NL + "\t\t\t\tcase ";
1456
  protected final String TEXT_1439 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1457
  protected final String TEXT_1440 = ": return ";
1457
  protected final String TEXT_1440 = NL + "\t@Override";
1458
  protected final String TEXT_1441 = ";";
1458
  protected final String TEXT_1441 = NL + "\tpublic int eBaseStructuralFeatureID(int derivedFeatureID, Class";
1459
  protected final String TEXT_1442 = NL + "\t\t\t\tdefault: return -1;" + NL + "\t\t\t}" + NL + "\t\t}";
1459
  protected final String TEXT_1442 = " baseClass)" + NL + "\t{";
1460
  protected final String TEXT_1443 = NL + "\t\tif (baseClass == ";
1460
  protected final String TEXT_1443 = NL + "\t\tif (baseClass == ";
1461
  protected final String TEXT_1444 = ".class)" + NL + "\t\t{" + NL + "\t\t\tswitch (baseFeatureID";
1461
  protected final String TEXT_1444 = ".class)" + NL + "\t\t{" + NL + "\t\t\tswitch (derivedFeatureID";
1462
  protected final String TEXT_1445 = ")" + NL + "\t\t\t{";
1462
  protected final String TEXT_1445 = ")" + NL + "\t\t\t{";
1463
  protected final String TEXT_1446 = NL + "\t\t\t\tcase ";
1463
  protected final String TEXT_1446 = NL + "\t\t\t\tcase ";
1464
  protected final String TEXT_1447 = ": return ";
1464
  protected final String TEXT_1447 = ": return ";
1465
  protected final String TEXT_1448 = ";";
1465
  protected final String TEXT_1448 = ";";
1466
  protected final String TEXT_1449 = NL + "\t\t\t\tdefault: return -1;" + NL + "\t\t\t}" + NL + "\t\t}";
1466
  protected final String TEXT_1449 = NL + "\t\t\t\tdefault: return -1;" + NL + "\t\t\t}" + NL + "\t\t}";
1467
  protected final String TEXT_1450 = NL + "\t\treturn super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);" + NL + "\t}" + NL;
1467
  protected final String TEXT_1450 = NL + "\t\treturn super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);" + NL + "\t}";
1468
  protected final String TEXT_1451 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1468
  protected final String TEXT_1451 = NL + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1469
  protected final String TEXT_1452 = NL + "\t@Override";
1469
  protected final String TEXT_1452 = NL + "\t@Override";
1470
  protected final String TEXT_1453 = NL + "\tprotected Object[] eVirtualValues()" + NL + "\t{" + NL + "\t\treturn ";
1470
  protected final String TEXT_1453 = NL + "\tpublic int eDerivedStructuralFeatureID(int baseFeatureID, Class";
1471
  protected final String TEXT_1454 = ";" + NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1471
  protected final String TEXT_1454 = " baseClass)" + NL + "\t{";
1472
  protected final String TEXT_1455 = NL + "\t@Override";
1472
  protected final String TEXT_1455 = NL + "\t\tif (baseClass == ";
1473
  protected final String TEXT_1456 = NL + "\tprotected void eSetVirtualValues(Object[] newValues)" + NL + "\t{" + NL + "\t\t";
1473
  protected final String TEXT_1456 = ".class)" + NL + "\t\t{" + NL + "\t\t\tswitch (baseFeatureID)" + NL + "\t\t\t{";
1474
  protected final String TEXT_1457 = " = newValues;" + NL + "\t}" + NL;
1474
  protected final String TEXT_1457 = NL + "\t\t\t\tcase ";
1475
  protected final String TEXT_1458 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1475
  protected final String TEXT_1458 = ": return ";
1476
  protected final String TEXT_1459 = NL + "\t@Override";
1476
  protected final String TEXT_1459 = ";";
1477
  protected final String TEXT_1460 = NL + "\tprotected int eVirtualIndexBits(int offset)" + NL + "\t{" + NL + "\t\tswitch (offset)" + NL + "\t\t{";
1477
  protected final String TEXT_1460 = NL + "\t\t\t\tdefault: return -1;" + NL + "\t\t\t}" + NL + "\t\t}";
1478
  protected final String TEXT_1461 = NL + "\t\t\tcase ";
1478
  protected final String TEXT_1461 = NL + "\t\tif (baseClass == ";
1479
  protected final String TEXT_1462 = " :" + NL + "\t\t\t\treturn ";
1479
  protected final String TEXT_1462 = ".class)" + NL + "\t\t{" + NL + "\t\t\tswitch (baseFeatureID";
1480
  protected final String TEXT_1463 = ";";
1480
  protected final String TEXT_1463 = ")" + NL + "\t\t\t{";
1481
  protected final String TEXT_1464 = NL + "\t\t\tdefault :" + NL + "\t\t\t\tthrow new IndexOutOfBoundsException();" + NL + "\t\t}" + NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1481
  protected final String TEXT_1464 = NL + "\t\t\t\tcase ";
1482
  protected final String TEXT_1465 = NL + "\t@Override";
1482
  protected final String TEXT_1465 = ": return ";
1483
  protected final String TEXT_1466 = NL + "\tprotected void eSetVirtualIndexBits(int offset, int newIndexBits)" + NL + "\t{" + NL + "\t\tswitch (offset)" + NL + "\t\t{";
1483
  protected final String TEXT_1466 = ";";
1484
  protected final String TEXT_1467 = NL + "\t\t\tcase ";
1484
  protected final String TEXT_1467 = NL + "\t\t\t\tdefault: return -1;" + NL + "\t\t\t}" + NL + "\t\t}";
1485
  protected final String TEXT_1468 = " :" + NL + "\t\t\t\t";
1485
  protected final String TEXT_1468 = NL + "\t\treturn super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);" + NL + "\t}" + NL;
1486
  protected final String TEXT_1469 = " = newIndexBits;" + NL + "\t\t\t\tbreak;";
1486
  protected final String TEXT_1469 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1487
  protected final String TEXT_1470 = NL + "\t\t\tdefault :" + NL + "\t\t\t\tthrow new IndexOutOfBoundsException();" + NL + "\t\t}" + NL + "\t}" + NL;
1487
  protected final String TEXT_1470 = NL + "\t@Override";
1488
  protected final String TEXT_1471 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1488
  protected final String TEXT_1471 = NL + "\tprotected Object[] eVirtualValues()" + NL + "\t{" + NL + "\t\treturn ";
1489
  protected final String TEXT_1472 = NL + "\t@Override";
1489
  protected final String TEXT_1472 = ";" + NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1490
  protected final String TEXT_1473 = NL + "\tpublic String toString()" + NL + "\t{" + NL + "\t\tif (eIsProxy()) return super.toString();" + NL + "" + NL + "\t\tStringBuffer result = new StringBuffer(super.toString());";
1490
  protected final String TEXT_1473 = NL + "\t@Override";
1491
  protected final String TEXT_1474 = NL + "\t\tresult.append(\" (";
1491
  protected final String TEXT_1474 = NL + "\tprotected void eSetVirtualValues(Object[] newValues)" + NL + "\t{" + NL + "\t\t";
1492
  protected final String TEXT_1475 = ": \");";
1492
  protected final String TEXT_1475 = " = newValues;" + NL + "\t}" + NL;
1493
  protected final String TEXT_1476 = NL + "\t\tresult.append(\", ";
1493
  protected final String TEXT_1476 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1494
  protected final String TEXT_1477 = ": \");";
1494
  protected final String TEXT_1477 = NL + "\t@Override";
1495
  protected final String TEXT_1478 = NL + "\t\tif (eVirtualIsSet(";
1495
  protected final String TEXT_1478 = NL + "\tprotected int eVirtualIndexBits(int offset)" + NL + "\t{" + NL + "\t\tswitch (offset)" + NL + "\t\t{";
1496
  protected final String TEXT_1479 = ")) result.append(eVirtualGet(";
1496
  protected final String TEXT_1479 = NL + "\t\t\tcase ";
1497
  protected final String TEXT_1480 = ")); else result.append(\"<unset>\");";
1497
  protected final String TEXT_1480 = " :" + NL + "\t\t\t\treturn ";
1498
  protected final String TEXT_1481 = NL + "\t\tif (";
1498
  protected final String TEXT_1481 = ";";
1499
  protected final String TEXT_1482 = "(";
1499
  protected final String TEXT_1482 = NL + "\t\t\tdefault :" + NL + "\t\t\t\tthrow new IndexOutOfBoundsException();" + NL + "\t\t}" + NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1500
  protected final String TEXT_1483 = " & ";
1500
  protected final String TEXT_1483 = NL + "\t@Override";
1501
  protected final String TEXT_1484 = "_ESETFLAG) != 0";
1501
  protected final String TEXT_1484 = NL + "\tprotected void eSetVirtualIndexBits(int offset, int newIndexBits)" + NL + "\t{" + NL + "\t\tswitch (offset)" + NL + "\t\t{";
1502
  protected final String TEXT_1485 = "ESet";
1502
  protected final String TEXT_1485 = NL + "\t\t\tcase ";
1503
  protected final String TEXT_1486 = ") result.append((";
1503
  protected final String TEXT_1486 = " :" + NL + "\t\t\t\t";
1504
  protected final String TEXT_1487 = " & ";
1504
  protected final String TEXT_1487 = " = newIndexBits;" + NL + "\t\t\t\tbreak;";
1505
  protected final String TEXT_1488 = "_EFLAG) != 0); else result.append(\"<unset>\");";
1505
  protected final String TEXT_1488 = NL + "\t\t\tdefault :" + NL + "\t\t\t\tthrow new IndexOutOfBoundsException();" + NL + "\t\t}" + NL + "\t}" + NL;
1506
  protected final String TEXT_1489 = NL + "\t\tif (";
1506
  protected final String TEXT_1489 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1507
  protected final String TEXT_1490 = "(";
1507
  protected final String TEXT_1490 = NL + "\t@Override";
1508
  protected final String TEXT_1491 = " & ";
1508
  protected final String TEXT_1491 = NL + "\tpublic String toString()" + NL + "\t{" + NL + "\t\tif (eIsProxy()) return super.toString();" + NL + "" + NL + "\t\tStringBuffer result = new StringBuffer(super.toString());";
1509
  protected final String TEXT_1492 = "_ESETFLAG) != 0";
1509
  protected final String TEXT_1492 = NL + "\t\tresult.append(\" (";
1510
  protected final String TEXT_1493 = "ESet";
1510
  protected final String TEXT_1493 = ": \");";
1511
  protected final String TEXT_1494 = ") result.append(";
1511
  protected final String TEXT_1494 = NL + "\t\tresult.append(\", ";
1512
  protected final String TEXT_1495 = "_EFLAG_VALUES[(";
1512
  protected final String TEXT_1495 = ": \");";
1513
  protected final String TEXT_1496 = " & ";
1513
  protected final String TEXT_1496 = NL + "\t\tif (eVirtualIsSet(";
1514
  protected final String TEXT_1497 = "_EFLAG) >>> ";
1514
  protected final String TEXT_1497 = ")) result.append(eVirtualGet(";
1515
  protected final String TEXT_1498 = "_EFLAG_OFFSET]); else result.append(\"<unset>\");";
1515
  protected final String TEXT_1498 = ")); else result.append(\"<unset>\");";
1516
  protected final String TEXT_1499 = NL + "\t\tif (";
1516
  protected final String TEXT_1499 = NL + "\t\tif (";
1517
  protected final String TEXT_1500 = "(";
1517
  protected final String TEXT_1500 = "(";
1518
  protected final String TEXT_1501 = " & ";
1518
  protected final String TEXT_1501 = " & ";
1519
  protected final String TEXT_1502 = "_ESETFLAG) != 0";
1519
  protected final String TEXT_1502 = "_ESETFLAG) != 0";
1520
  protected final String TEXT_1503 = "ESet";
1520
  protected final String TEXT_1503 = "ESet";
1521
  protected final String TEXT_1504 = ") result.append(";
1521
  protected final String TEXT_1504 = ") result.append((";
1522
  protected final String TEXT_1505 = "); else result.append(\"<unset>\");";
1522
  protected final String TEXT_1505 = " & ";
1523
  protected final String TEXT_1506 = NL + "\t\tresult.append(eVirtualGet(";
1523
  protected final String TEXT_1506 = "_EFLAG) != 0); else result.append(\"<unset>\");";
1524
  protected final String TEXT_1507 = ", ";
1524
  protected final String TEXT_1507 = NL + "\t\tif (";
1525
  protected final String TEXT_1508 = "));";
1525
  protected final String TEXT_1508 = "(";
1526
  protected final String TEXT_1509 = NL + "\t\tresult.append((";
1526
  protected final String TEXT_1509 = " & ";
1527
  protected final String TEXT_1510 = " & ";
1527
  protected final String TEXT_1510 = "_ESETFLAG) != 0";
1528
  protected final String TEXT_1511 = "_EFLAG) != 0);";
1528
  protected final String TEXT_1511 = "ESet";
1529
  protected final String TEXT_1512 = NL + "\t\tresult.append(";
1529
  protected final String TEXT_1512 = ") result.append(";
1530
  protected final String TEXT_1513 = "_EFLAG_VALUES[(";
1530
  protected final String TEXT_1513 = "_EFLAG_VALUES[(";
1531
  protected final String TEXT_1514 = " & ";
1531
  protected final String TEXT_1514 = " & ";
1532
  protected final String TEXT_1515 = "_EFLAG) >>> ";
1532
  protected final String TEXT_1515 = "_EFLAG) >>> ";
1533
  protected final String TEXT_1516 = "_EFLAG_OFFSET]);";
1533
  protected final String TEXT_1516 = "_EFLAG_OFFSET]); else result.append(\"<unset>\");";
1534
  protected final String TEXT_1517 = NL + "\t\tresult.append(";
1534
  protected final String TEXT_1517 = NL + "\t\tif (";
1535
  protected final String TEXT_1518 = ");";
1535
  protected final String TEXT_1518 = "(";
1536
  protected final String TEXT_1519 = NL + "\t\tresult.append(')');" + NL + "\t\treturn result.toString();" + NL + "\t}" + NL;
1536
  protected final String TEXT_1519 = " & ";
1537
  protected final String TEXT_1520 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tprotected int hash = -1;" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic int getHash()" + NL + "\t{" + NL + "\t\tif (hash == -1)" + NL + "\t\t{" + NL + "\t\t\t";
1537
  protected final String TEXT_1520 = "_ESETFLAG) != 0";
1538
  protected final String TEXT_1521 = " theKey = getKey();" + NL + "\t\t\thash = (theKey == null ? 0 : theKey.hashCode());" + NL + "\t\t}" + NL + "\t\treturn hash;" + NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic void setHash(int hash)" + NL + "\t{" + NL + "\t\tthis.hash = hash;" + NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic ";
1538
  protected final String TEXT_1521 = "ESet";
1539
  protected final String TEXT_1522 = " getKey()" + NL + "\t{";
1539
  protected final String TEXT_1522 = ") result.append(";
1540
  protected final String TEXT_1523 = NL + "\t\treturn new ";
1540
  protected final String TEXT_1523 = "); else result.append(\"<unset>\");";
1541
  protected final String TEXT_1524 = "(getTypedKey());";
1541
  protected final String TEXT_1524 = NL + "\t\tresult.append(eVirtualGet(";
1542
  protected final String TEXT_1525 = NL + "\t\treturn getTypedKey();";
1542
  protected final String TEXT_1525 = ", ";
1543
  protected final String TEXT_1526 = NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic void setKey(";
1543
  protected final String TEXT_1526 = "));";
1544
  protected final String TEXT_1527 = " key)" + NL + "\t{";
1544
  protected final String TEXT_1527 = NL + "\t\tresult.append((";
1545
  protected final String TEXT_1528 = NL + "\t\tgetTypedKey().addAll(";
1545
  protected final String TEXT_1528 = " & ";
1546
  protected final String TEXT_1529 = "(";
1546
  protected final String TEXT_1529 = "_EFLAG) != 0);";
1547
  protected final String TEXT_1530 = ")";
1547
  protected final String TEXT_1530 = NL + "\t\tresult.append(";
1548
  protected final String TEXT_1531 = "key);";
1548
  protected final String TEXT_1531 = "_EFLAG_VALUES[(";
1549
  protected final String TEXT_1532 = NL + "\t\tsetTypedKey(key);";
1549
  protected final String TEXT_1532 = " & ";
1550
  protected final String TEXT_1533 = NL + "\t\tsetTypedKey(((";
1550
  protected final String TEXT_1533 = "_EFLAG) >>> ";
1551
  protected final String TEXT_1534 = ")key).";
1551
  protected final String TEXT_1534 = "_EFLAG_OFFSET]);";
1552
  protected final String TEXT_1535 = "());";
1552
  protected final String TEXT_1535 = NL + "\t\tresult.append(";
1553
  protected final String TEXT_1536 = NL + "\t\tsetTypedKey((";
1553
  protected final String TEXT_1536 = ");";
1554
  protected final String TEXT_1537 = ")key);";
1554
  protected final String TEXT_1537 = NL + "\t\tresult.append(')');" + NL + "\t\treturn result.toString();" + NL + "\t}" + NL;
1555
  protected final String TEXT_1538 = NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic ";
1555
  protected final String TEXT_1538 = NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tprotected int hash = -1;" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic int getHash()" + NL + "\t{" + NL + "\t\tif (hash == -1)" + NL + "\t\t{" + NL + "\t\t\t";
1556
  protected final String TEXT_1539 = " getValue()" + NL + "\t{";
1556
  protected final String TEXT_1539 = " theKey = getKey();" + NL + "\t\t\thash = (theKey == null ? 0 : theKey.hashCode());" + NL + "\t\t}" + NL + "\t\treturn hash;" + NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic void setHash(int hash)" + NL + "\t{" + NL + "\t\tthis.hash = hash;" + NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic ";
1557
  protected final String TEXT_1540 = NL + "\t\treturn new ";
1557
  protected final String TEXT_1540 = " getKey()" + NL + "\t{";
1558
  protected final String TEXT_1541 = "(getTypedValue());";
1558
  protected final String TEXT_1541 = NL + "\t\treturn new ";
1559
  protected final String TEXT_1542 = NL + "\t\treturn getTypedValue();";
1559
  protected final String TEXT_1542 = "(getTypedKey());";
1560
  protected final String TEXT_1543 = NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic ";
1560
  protected final String TEXT_1543 = NL + "\t\treturn getTypedKey();";
1561
  protected final String TEXT_1544 = " setValue(";
1561
  protected final String TEXT_1544 = NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic void setKey(";
1562
  protected final String TEXT_1545 = " value)" + NL + "\t{" + NL + "\t\t";
1562
  protected final String TEXT_1545 = " key)" + NL + "\t{";
1563
  protected final String TEXT_1546 = " oldValue = getValue();";
1563
  protected final String TEXT_1546 = NL + "\t\tgetTypedKey().addAll(";
1564
  protected final String TEXT_1547 = NL + "\t\tgetTypedValue().clear();" + NL + "\t\tgetTypedValue().addAll(";
1564
  protected final String TEXT_1547 = "(";
1565
  protected final String TEXT_1548 = "(";
1565
  protected final String TEXT_1548 = ")";
1566
  protected final String TEXT_1549 = ")";
1566
  protected final String TEXT_1549 = "key);";
1567
  protected final String TEXT_1550 = "value);";
1567
  protected final String TEXT_1550 = NL + "\t\tsetTypedKey(key);";
1568
  protected final String TEXT_1551 = NL + "\t\tsetTypedValue(value);";
1568
  protected final String TEXT_1551 = NL + "\t\tsetTypedKey(((";
1569
  protected final String TEXT_1552 = NL + "\t\tsetTypedValue(((";
1569
  protected final String TEXT_1552 = ")key).";
1570
  protected final String TEXT_1553 = ")value).";
1570
  protected final String TEXT_1553 = "());";
1571
  protected final String TEXT_1554 = "());";
1571
  protected final String TEXT_1554 = NL + "\t\tsetTypedKey((";
1572
  protected final String TEXT_1555 = NL + "\t\tsetTypedValue((";
1572
  protected final String TEXT_1555 = ")key);";
1573
  protected final String TEXT_1556 = ")value);";
1573
  protected final String TEXT_1556 = NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic ";
1574
  protected final String TEXT_1557 = NL + "\t\treturn oldValue;" + NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1574
  protected final String TEXT_1557 = " getValue()" + NL + "\t{";
1575
  protected final String TEXT_1558 = NL + "\t@SuppressWarnings(\"unchecked\")";
1575
  protected final String TEXT_1558 = NL + "\t\treturn new ";
1576
  protected final String TEXT_1559 = NL + "\tpublic ";
1576
  protected final String TEXT_1559 = "(getTypedValue());";
1577
  protected final String TEXT_1560 = " getEMap()" + NL + "\t{" + NL + "\t\t";
1577
  protected final String TEXT_1560 = NL + "\t\treturn getTypedValue();";
1578
  protected final String TEXT_1561 = " container = eContainer();" + NL + "\t\treturn container == null ? null : (";
1578
  protected final String TEXT_1561 = NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */" + NL + "\tpublic ";
1579
  protected final String TEXT_1562 = ")container.eGet(eContainmentFeature());" + NL + "\t}" + NL;
1579
  protected final String TEXT_1562 = " setValue(";
1580
  protected final String TEXT_1563 = NL + "} //";
1580
  protected final String TEXT_1563 = " value)" + NL + "\t{" + NL + "\t\t";
1581
  protected final String TEXT_1564 = NL;
1581
  protected final String TEXT_1564 = " oldValue = getValue();";
1582
  protected final String TEXT_1565 = NL + "\t\tgetTypedValue().clear();" + NL + "\t\tgetTypedValue().addAll(";
1583
  protected final String TEXT_1566 = "(";
1584
  protected final String TEXT_1567 = ")";
1585
  protected final String TEXT_1568 = "value);";
1586
  protected final String TEXT_1569 = NL + "\t\tsetTypedValue(value);";
1587
  protected final String TEXT_1570 = NL + "\t\tsetTypedValue(((";
1588
  protected final String TEXT_1571 = ")value).";
1589
  protected final String TEXT_1572 = "());";
1590
  protected final String TEXT_1573 = NL + "\t\tsetTypedValue((";
1591
  protected final String TEXT_1574 = ")value);";
1592
  protected final String TEXT_1575 = NL + "\t\treturn oldValue;" + NL + "\t}" + NL + "" + NL + "\t/**" + NL + "\t * <!-- begin-user-doc -->" + NL + "\t * <!-- end-user-doc -->" + NL + "\t * @generated" + NL + "\t */";
1593
  protected final String TEXT_1576 = NL + "\t@SuppressWarnings(\"unchecked\")";
1594
  protected final String TEXT_1577 = NL + "\tpublic ";
1595
  protected final String TEXT_1578 = " getEMap()" + NL + "\t{" + NL + "\t\t";
1596
  protected final String TEXT_1579 = " container = eContainer();" + NL + "\t\treturn container == null ? null : (";
1597
  protected final String TEXT_1580 = ")container.eGet(eContainmentFeature());" + NL + "\t}" + NL;
1598
  protected final String TEXT_1581 = NL + "} //";
1599
  protected final String TEXT_1582 = NL;
1582
1600
1583
  public String generate(Object argument)
1601
  public String generate(Object argument)
1584
  {
1602
  {
Lines 2402-4166 Link Here
2402
    } else if (genFeature.isContainer()) {
2420
    } else if (genFeature.isContainer()) {
2403
    stringBuffer.append(TEXT_341);
2421
    stringBuffer.append(TEXT_341);
2404
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2422
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2405
    stringBuffer.append(positiveOffsetCorrection);
2406
    stringBuffer.append(TEXT_342);
2423
    stringBuffer.append(TEXT_342);
2407
    stringBuffer.append(genFeature.getImportedType(genClass));
2424
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2425
    stringBuffer.append(positiveOffsetCorrection);
2408
    stringBuffer.append(TEXT_343);
2426
    stringBuffer.append(TEXT_343);
2427
    stringBuffer.append(genFeature.getImportedType(genClass));
2428
    stringBuffer.append(TEXT_344);
2409
    } else {
2429
    } else {
2430
    stringBuffer.append(TEXT_345);
2431
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2432
    stringBuffer.append(TEXT_346);
2410
    if (genFeature.isResolveProxies()) {
2433
    if (genFeature.isResolveProxies()) {
2411
    if (genModel.isVirtualDelegation()) {
2434
    if (genModel.isVirtualDelegation()) {
2412
    stringBuffer.append(TEXT_344);
2435
    stringBuffer.append(TEXT_347);
2413
    stringBuffer.append(genFeature.getImportedType(genClass));
2436
    stringBuffer.append(genFeature.getImportedType(genClass));
2414
    stringBuffer.append(TEXT_345);
2437
    stringBuffer.append(TEXT_348);
2415
    stringBuffer.append(genFeature.getSafeName());
2438
    stringBuffer.append(genFeature.getSafeName());
2416
    stringBuffer.append(TEXT_346);
2439
    stringBuffer.append(TEXT_349);
2417
    stringBuffer.append(genFeature.getImportedType(genClass));
2440
    stringBuffer.append(genFeature.getImportedType(genClass));
2418
    stringBuffer.append(TEXT_347);
2441
    stringBuffer.append(TEXT_350);
2419
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2442
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2420
    stringBuffer.append(positiveOffsetCorrection);
2443
    stringBuffer.append(positiveOffsetCorrection);
2421
    if (genFeature.hasEDefault()) {
2444
    if (genFeature.hasEDefault()) {
2422
    stringBuffer.append(TEXT_348);
2445
    stringBuffer.append(TEXT_351);
2423
    stringBuffer.append(genFeature.getEDefault());
2446
    stringBuffer.append(genFeature.getEDefault());
2424
    }
2447
    }
2425
    stringBuffer.append(TEXT_349);
2426
    }
2427
    stringBuffer.append(TEXT_350);
2428
    stringBuffer.append(genFeature.getSafeName());
2429
    stringBuffer.append(TEXT_351);
2430
    stringBuffer.append(genFeature.getSafeNameAsEObject());
2431
    stringBuffer.append(TEXT_352);
2448
    stringBuffer.append(TEXT_352);
2432
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2449
    }
2433
    stringBuffer.append(TEXT_353);
2450
    stringBuffer.append(TEXT_353);
2434
    stringBuffer.append(genFeature.getCapName());
2451
    stringBuffer.append(genFeature.getSafeName());
2435
    stringBuffer.append(TEXT_354);
2452
    stringBuffer.append(TEXT_354);
2436
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2453
    stringBuffer.append(genFeature.getSafeNameAsEObject());
2437
    stringBuffer.append(TEXT_355);
2454
    stringBuffer.append(TEXT_355);
2438
    stringBuffer.append(genFeature.getSafeName());
2455
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2439
    stringBuffer.append(TEXT_356);
2456
    stringBuffer.append(TEXT_356);
2440
    stringBuffer.append(genFeature.getSafeName());
2457
    stringBuffer.append(genFeature.getCapName());
2441
    stringBuffer.append(TEXT_357);
2458
    stringBuffer.append(TEXT_357);
2442
    stringBuffer.append(genFeature.getNonEObjectInternalTypeCast(genClass));
2459
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2443
    stringBuffer.append(TEXT_358);
2460
    stringBuffer.append(TEXT_358);
2444
    stringBuffer.append(genFeature.getCapName());
2461
    stringBuffer.append(genFeature.getSafeName());
2445
    stringBuffer.append(TEXT_359);
2462
    stringBuffer.append(TEXT_359);
2446
    stringBuffer.append(genFeature.getSafeName());
2463
    stringBuffer.append(genFeature.getSafeName());
2447
    stringBuffer.append(TEXT_360);
2464
    stringBuffer.append(TEXT_360);
2448
    stringBuffer.append(genFeature.getCapName());
2465
    stringBuffer.append(genFeature.getNonEObjectInternalTypeCast(genClass));
2449
    stringBuffer.append(TEXT_361);
2466
    stringBuffer.append(TEXT_361);
2450
    if (genFeature.isEffectiveContains()) {
2467
    stringBuffer.append(genFeature.getCapName());
2451
    stringBuffer.append(TEXT_362);
2468
    stringBuffer.append(TEXT_362);
2452
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2469
    stringBuffer.append(genFeature.getSafeName());
2453
    stringBuffer.append(TEXT_363);
2470
    stringBuffer.append(TEXT_363);
2454
    stringBuffer.append(genFeature.getCapName());
2471
    stringBuffer.append(genFeature.getCapName());
2455
    stringBuffer.append(TEXT_364);
2472
    stringBuffer.append(TEXT_364);
2456
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2473
    if (genFeature.isEffectiveContains()) {
2457
    stringBuffer.append(TEXT_365);
2474
    stringBuffer.append(TEXT_365);
2458
    stringBuffer.append(genFeature.getSafeName());
2475
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2459
    stringBuffer.append(TEXT_366);
2476
    stringBuffer.append(TEXT_366);
2460
    if (!genFeature.isBidirectional()) {
2477
    stringBuffer.append(genFeature.getCapName());
2461
    stringBuffer.append(TEXT_367);
2478
    stringBuffer.append(TEXT_367);
2462
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
2479
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2463
    stringBuffer.append(TEXT_368);
2480
    stringBuffer.append(TEXT_368);
2464
    stringBuffer.append(genFeature.getCapName());
2481
    stringBuffer.append(genFeature.getSafeName());
2465
    stringBuffer.append(TEXT_369);
2482
    stringBuffer.append(TEXT_369);
2483
    if (!genFeature.isBidirectional()) {
2484
    stringBuffer.append(TEXT_370);
2485
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
2486
    stringBuffer.append(TEXT_371);
2487
    stringBuffer.append(genFeature.getCapName());
2488
    stringBuffer.append(TEXT_372);
2466
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2489
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2467
    stringBuffer.append(negativeOffsetCorrection);
2490
    stringBuffer.append(negativeOffsetCorrection);
2468
    stringBuffer.append(TEXT_370);
2491
    stringBuffer.append(TEXT_373);
2469
    } else { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
2492
    } else { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
2470
    stringBuffer.append(TEXT_371);
2493
    stringBuffer.append(TEXT_374);
2471
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
2494
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
2472
    stringBuffer.append(TEXT_372);
2495
    stringBuffer.append(TEXT_375);
2473
    stringBuffer.append(genFeature.getCapName());
2496
    stringBuffer.append(genFeature.getCapName());
2474
    stringBuffer.append(TEXT_373);
2497
    stringBuffer.append(TEXT_376);
2475
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
2498
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
2476
    stringBuffer.append(reverseOffsetCorrection);
2499
    stringBuffer.append(reverseOffsetCorrection);
2477
    stringBuffer.append(TEXT_374);
2500
    stringBuffer.append(TEXT_377);
2478
    stringBuffer.append(targetClass.getImportedInterfaceName());
2501
    stringBuffer.append(targetClass.getImportedInterfaceName());
2479
    stringBuffer.append(TEXT_375);
2502
    stringBuffer.append(TEXT_378);
2480
    }
2503
    }
2481
    stringBuffer.append(TEXT_376);
2504
    stringBuffer.append(TEXT_379);
2482
    stringBuffer.append(genFeature.getCapName());
2505
    stringBuffer.append(genFeature.getCapName());
2483
    stringBuffer.append(TEXT_377);
2506
    stringBuffer.append(TEXT_380);
2484
    if (!genFeature.isBidirectional()) {
2507
    if (!genFeature.isBidirectional()) {
2485
    stringBuffer.append(TEXT_378);
2508
    stringBuffer.append(TEXT_381);
2486
    stringBuffer.append(genFeature.getCapName());
2509
    stringBuffer.append(genFeature.getCapName());
2487
    stringBuffer.append(TEXT_379);
2510
    stringBuffer.append(TEXT_382);
2488
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2511
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2489
    stringBuffer.append(negativeOffsetCorrection);
2512
    stringBuffer.append(negativeOffsetCorrection);
2490
    stringBuffer.append(TEXT_380);
2513
    stringBuffer.append(TEXT_383);
2491
    } else { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
2514
    } else { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
2492
    stringBuffer.append(TEXT_381);
2515
    stringBuffer.append(TEXT_384);
2493
    stringBuffer.append(genFeature.getCapName());
2516
    stringBuffer.append(genFeature.getCapName());
2494
    stringBuffer.append(TEXT_382);
2517
    stringBuffer.append(TEXT_385);
2495
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
2518
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
2496
    stringBuffer.append(reverseOffsetCorrection);
2519
    stringBuffer.append(reverseOffsetCorrection);
2497
    stringBuffer.append(TEXT_383);
2520
    stringBuffer.append(TEXT_386);
2498
    stringBuffer.append(targetClass.getImportedInterfaceName());
2521
    stringBuffer.append(targetClass.getImportedInterfaceName());
2499
    stringBuffer.append(TEXT_384);
2522
    stringBuffer.append(TEXT_387);
2500
    }
2523
    }
2501
    stringBuffer.append(TEXT_385);
2524
    stringBuffer.append(TEXT_388);
2502
    } else if (genModel.isVirtualDelegation()) {
2525
    } else if (genModel.isVirtualDelegation()) {
2503
    stringBuffer.append(TEXT_386);
2526
    stringBuffer.append(TEXT_389);
2504
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2527
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2505
    stringBuffer.append(positiveOffsetCorrection);
2528
    stringBuffer.append(positiveOffsetCorrection);
2506
    stringBuffer.append(TEXT_387);
2529
    stringBuffer.append(TEXT_390);
2507
    stringBuffer.append(genFeature.getSafeName());
2530
    stringBuffer.append(genFeature.getSafeName());
2508
    stringBuffer.append(TEXT_388);
2531
    stringBuffer.append(TEXT_391);
2509
    }
2532
    }
2510
    if (!genModel.isSuppressNotification()) {
2533
    if (!genModel.isSuppressNotification()) {
2511
    stringBuffer.append(TEXT_389);
2534
    stringBuffer.append(TEXT_392);
2512
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
2535
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
2513
    stringBuffer.append(TEXT_390);
2536
    stringBuffer.append(TEXT_393);
2514
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
2537
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
2515
    stringBuffer.append(TEXT_391);
2538
    stringBuffer.append(TEXT_394);
2516
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2539
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2517
    stringBuffer.append(positiveOffsetCorrection);
2540
    stringBuffer.append(positiveOffsetCorrection);
2518
    stringBuffer.append(TEXT_392);
2541
    stringBuffer.append(TEXT_395);
2519
    stringBuffer.append(genFeature.getCapName());
2542
    stringBuffer.append(genFeature.getCapName());
2520
    stringBuffer.append(TEXT_393);
2543
    stringBuffer.append(TEXT_396);
2521
    stringBuffer.append(genFeature.getSafeName());
2544
    stringBuffer.append(genFeature.getSafeName());
2522
    stringBuffer.append(TEXT_394);
2545
    stringBuffer.append(TEXT_397);
2523
    }
2546
    }
2524
    stringBuffer.append(TEXT_395);
2547
    stringBuffer.append(TEXT_398);
2525
    }
2548
    }
2526
    if (!genFeature.isResolveProxies() && genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
2549
    if (!genFeature.isResolveProxies() && genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
2527
    stringBuffer.append(TEXT_396);
2550
    stringBuffer.append(TEXT_399);
2528
    stringBuffer.append(genFeature.getImportedType(genClass));
2551
    stringBuffer.append(genFeature.getImportedType(genClass));
2529
    stringBuffer.append(TEXT_397);
2552
    stringBuffer.append(TEXT_400);
2530
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2553
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2531
    stringBuffer.append(positiveOffsetCorrection);
2554
    stringBuffer.append(positiveOffsetCorrection);
2532
    if (genFeature.hasEDefault()) {
2555
    if (genFeature.hasEDefault()) {
2533
    stringBuffer.append(TEXT_398);
2556
    stringBuffer.append(TEXT_401);
2534
    stringBuffer.append(genFeature.getEDefault());
2557
    stringBuffer.append(genFeature.getEDefault());
2535
    }
2558
    }
2536
    stringBuffer.append(TEXT_399);
2559
    stringBuffer.append(TEXT_402);
2537
    } else if (genClass.isFlag(genFeature)) {
2560
    } else if (genClass.isFlag(genFeature)) {
2538
    if (genFeature.isBooleanType()) {
2561
    if (genFeature.isBooleanType()) {
2539
    stringBuffer.append(TEXT_400);
2562
    stringBuffer.append(TEXT_403);
2540
    stringBuffer.append(genClass.getFlagsField(genFeature));
2563
    stringBuffer.append(genClass.getFlagsField(genFeature));
2541
    stringBuffer.append(TEXT_401);
2564
    stringBuffer.append(TEXT_404);
2542
    stringBuffer.append(genFeature.getUpperName());
2565
    stringBuffer.append(genFeature.getUpperName());
2543
    stringBuffer.append(TEXT_402);
2566
    stringBuffer.append(TEXT_405);
2544
    } else {
2567
    } else {
2545
    stringBuffer.append(TEXT_403);
2568
    stringBuffer.append(TEXT_406);
2546
    stringBuffer.append(genFeature.getUpperName());
2569
    stringBuffer.append(genFeature.getUpperName());
2547
    stringBuffer.append(TEXT_404);
2570
    stringBuffer.append(TEXT_407);
2548
    stringBuffer.append(genClass.getFlagsField(genFeature));
2571
    stringBuffer.append(genClass.getFlagsField(genFeature));
2549
    stringBuffer.append(TEXT_405);
2572
    stringBuffer.append(TEXT_408);
2550
    stringBuffer.append(genFeature.getUpperName());
2573
    stringBuffer.append(genFeature.getUpperName());
2551
    stringBuffer.append(TEXT_406);
2574
    stringBuffer.append(TEXT_409);
2552
    stringBuffer.append(genFeature.getUpperName());
2575
    stringBuffer.append(genFeature.getUpperName());
2553
    stringBuffer.append(TEXT_407);
2576
    stringBuffer.append(TEXT_410);
2554
    }
2577
    }
2555
    } else {
2578
    } else {
2556
    stringBuffer.append(TEXT_408);
2579
    stringBuffer.append(TEXT_411);
2557
    stringBuffer.append(genFeature.getSafeName());
2580
    stringBuffer.append(genFeature.getSafeName());
2558
    stringBuffer.append(TEXT_409);
2581
    stringBuffer.append(TEXT_412);
2559
    }
2582
    }
2560
    }
2583
    }
2561
    } else {//volatile
2584
    } else {//volatile
2562
    if (genFeature.isResolveProxies() && !genFeature.isListType()) {
2585
    if (genFeature.isResolveProxies() && !genFeature.isListType()) {
2563
    stringBuffer.append(TEXT_410);
2586
    stringBuffer.append(TEXT_413);
2564
    stringBuffer.append(genFeature.getImportedType(genClass));
2587
    stringBuffer.append(genFeature.getImportedType(genClass));
2565
    stringBuffer.append(TEXT_411);
2588
    stringBuffer.append(TEXT_414);
2566
    stringBuffer.append(genFeature.getSafeName());
2589
    stringBuffer.append(genFeature.getSafeName());
2567
    stringBuffer.append(TEXT_412);
2590
    stringBuffer.append(TEXT_415);
2568
    stringBuffer.append(genFeature.getAccessorName());
2591
    stringBuffer.append(genFeature.getAccessorName());
2569
    stringBuffer.append(TEXT_413);
2592
    stringBuffer.append(TEXT_416);
2570
    stringBuffer.append(genFeature.getSafeName());
2593
    stringBuffer.append(genFeature.getSafeName());
2571
    stringBuffer.append(TEXT_414);
2594
    stringBuffer.append(TEXT_417);
2572
    stringBuffer.append(genFeature.getSafeNameAsEObject());
2595
    stringBuffer.append(genFeature.getSafeNameAsEObject());
2573
    stringBuffer.append(TEXT_415);
2596
    stringBuffer.append(TEXT_418);
2574
    stringBuffer.append(genFeature.getNonEObjectInternalTypeCast(genClass));
2597
    stringBuffer.append(genFeature.getNonEObjectInternalTypeCast(genClass));
2575
    stringBuffer.append(TEXT_416);
2598
    stringBuffer.append(TEXT_419);
2576
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2599
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2577
    stringBuffer.append(TEXT_417);
2600
    stringBuffer.append(TEXT_420);
2578
    stringBuffer.append(genFeature.getSafeName());
2601
    stringBuffer.append(genFeature.getSafeName());
2579
    stringBuffer.append(TEXT_418);
2602
    stringBuffer.append(TEXT_421);
2580
    stringBuffer.append(genFeature.getSafeName());
2603
    stringBuffer.append(genFeature.getSafeName());
2581
    stringBuffer.append(TEXT_419);
2604
    stringBuffer.append(TEXT_422);
2582
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
2605
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
2583
    if (genFeature.isFeatureMapType()) {
2606
    if (genFeature.isFeatureMapType()) {
2584
    String featureMapEntryTemplateArgument = genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50 ? "<" + genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap") + ".Entry>" : "";
2607
    String featureMapEntryTemplateArgument = genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50 ? "<" + genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap") + ".Entry>" : "";
2585
    if (delegateFeature.isWrappedFeatureMapType()) {
2608
    if (delegateFeature.isWrappedFeatureMapType()) {
2586
    stringBuffer.append(TEXT_420);
2609
    stringBuffer.append(TEXT_423);
2587
    stringBuffer.append(genFeature.getImportedEffectiveFeatureMapWrapperClass());
2610
    stringBuffer.append(genFeature.getImportedEffectiveFeatureMapWrapperClass());
2588
    stringBuffer.append(TEXT_421);
2611
    stringBuffer.append(TEXT_424);
2589
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2612
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2590
    stringBuffer.append(TEXT_422);
2613
    stringBuffer.append(TEXT_425);
2591
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2614
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2592
    stringBuffer.append(TEXT_423);
2615
    stringBuffer.append(TEXT_426);
2593
    stringBuffer.append(delegateFeature.getAccessorName());
2616
    stringBuffer.append(delegateFeature.getAccessorName());
2594
    stringBuffer.append(TEXT_424);
2617
    stringBuffer.append(TEXT_427);
2595
    stringBuffer.append(featureMapEntryTemplateArgument);
2618
    stringBuffer.append(featureMapEntryTemplateArgument);
2596
    stringBuffer.append(TEXT_425);
2619
    stringBuffer.append(TEXT_428);
2597
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2620
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2598
    stringBuffer.append(TEXT_426);
2621
    stringBuffer.append(TEXT_429);
2599
    } else {
2622
    } else {
2600
    stringBuffer.append(TEXT_427);
2623
    stringBuffer.append(TEXT_430);
2601
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2624
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2602
    stringBuffer.append(TEXT_428);
2625
    stringBuffer.append(TEXT_431);
2603
    stringBuffer.append(delegateFeature.getAccessorName());
2626
    stringBuffer.append(delegateFeature.getAccessorName());
2604
    stringBuffer.append(TEXT_429);
2627
    stringBuffer.append(TEXT_432);
2605
    stringBuffer.append(featureMapEntryTemplateArgument);
2628
    stringBuffer.append(featureMapEntryTemplateArgument);
2606
    stringBuffer.append(TEXT_430);
2629
    stringBuffer.append(TEXT_433);
2607
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2630
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2608
    stringBuffer.append(TEXT_431);
2631
    stringBuffer.append(TEXT_434);
2609
    }
2632
    }
2610
    } else if (genFeature.isListType()) {
2633
    } else if (genFeature.isListType()) {
2611
    if (delegateFeature.isWrappedFeatureMapType()) {
2634
    if (delegateFeature.isWrappedFeatureMapType()) {
2612
    stringBuffer.append(TEXT_432);
2613
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2614
    stringBuffer.append(TEXT_433);
2615
    stringBuffer.append(delegateFeature.getAccessorName());
2616
    stringBuffer.append(TEXT_434);
2617
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2618
    stringBuffer.append(TEXT_435);
2635
    stringBuffer.append(TEXT_435);
2619
    } else {
2636
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2620
    stringBuffer.append(TEXT_436);
2637
    stringBuffer.append(TEXT_436);
2621
    stringBuffer.append(delegateFeature.getAccessorName());
2638
    stringBuffer.append(delegateFeature.getAccessorName());
2622
    stringBuffer.append(TEXT_437);
2639
    stringBuffer.append(TEXT_437);
2623
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2640
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2624
    stringBuffer.append(TEXT_438);
2641
    stringBuffer.append(TEXT_438);
2642
    } else {
2643
    stringBuffer.append(TEXT_439);
2644
    stringBuffer.append(delegateFeature.getAccessorName());
2645
    stringBuffer.append(TEXT_440);
2646
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2647
    stringBuffer.append(TEXT_441);
2625
    }
2648
    }
2626
    } else {
2649
    } else {
2627
    if (delegateFeature.isWrappedFeatureMapType()) {
2650
    if (delegateFeature.isWrappedFeatureMapType()) {
2628
    stringBuffer.append(TEXT_439);
2651
    stringBuffer.append(TEXT_442);
2629
    if (genFeature.isPrimitiveType()) {
2652
    if (genFeature.isPrimitiveType()) {
2630
    stringBuffer.append(TEXT_440);
2653
    stringBuffer.append(TEXT_443);
2631
    }
2654
    }
2632
    if (genFeature.getTypeGenDataType() == null || !genFeature.getTypeGenDataType().isObjectType()) {
2655
    if (genFeature.getTypeGenDataType() == null || !genFeature.getTypeGenDataType().isObjectType()) {
2633
    stringBuffer.append(TEXT_441);
2656
    stringBuffer.append(TEXT_444);
2634
    stringBuffer.append(genFeature.getObjectType(genClass));
2657
    stringBuffer.append(genFeature.getObjectType(genClass));
2635
    stringBuffer.append(TEXT_442);
2658
    stringBuffer.append(TEXT_445);
2636
    }
2659
    }
2637
    stringBuffer.append(TEXT_443);
2660
    stringBuffer.append(TEXT_446);
2638
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2661
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2639
    stringBuffer.append(TEXT_444);
2662
    stringBuffer.append(TEXT_447);
2640
    stringBuffer.append(delegateFeature.getAccessorName());
2663
    stringBuffer.append(delegateFeature.getAccessorName());
2641
    stringBuffer.append(TEXT_445);
2664
    stringBuffer.append(TEXT_448);
2642
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2665
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2643
    stringBuffer.append(TEXT_446);
2666
    stringBuffer.append(TEXT_449);
2644
    if (genFeature.isPrimitiveType()) {
2667
    if (genFeature.isPrimitiveType()) {
2645
    stringBuffer.append(TEXT_447);
2668
    stringBuffer.append(TEXT_450);
2646
    stringBuffer.append(genFeature.getPrimitiveValueFunction());
2669
    stringBuffer.append(genFeature.getPrimitiveValueFunction());
2647
    stringBuffer.append(TEXT_448);
2670
    stringBuffer.append(TEXT_451);
2648
    }
2671
    }
2649
    stringBuffer.append(TEXT_449);
2672
    stringBuffer.append(TEXT_452);
2650
    } else {
2673
    } else {
2651
    stringBuffer.append(TEXT_450);
2674
    stringBuffer.append(TEXT_453);
2652
    if (genFeature.isPrimitiveType()) {
2675
    if (genFeature.isPrimitiveType()) {
2653
    stringBuffer.append(TEXT_451);
2676
    stringBuffer.append(TEXT_454);
2654
    }
2677
    }
2655
    if (genFeature.getTypeGenDataType() == null || !genFeature.getTypeGenDataType().isObjectType()) {
2678
    if (genFeature.getTypeGenDataType() == null || !genFeature.getTypeGenDataType().isObjectType()) {
2656
    stringBuffer.append(TEXT_452);
2679
    stringBuffer.append(TEXT_455);
2657
    stringBuffer.append(genFeature.getObjectType(genClass));
2680
    stringBuffer.append(genFeature.getObjectType(genClass));
2658
    stringBuffer.append(TEXT_453);
2681
    stringBuffer.append(TEXT_456);
2659
    }
2682
    }
2660
    stringBuffer.append(TEXT_454);
2683
    stringBuffer.append(TEXT_457);
2661
    stringBuffer.append(delegateFeature.getAccessorName());
2684
    stringBuffer.append(delegateFeature.getAccessorName());
2662
    stringBuffer.append(TEXT_455);
2685
    stringBuffer.append(TEXT_458);
2663
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2686
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2664
    stringBuffer.append(TEXT_456);
2687
    stringBuffer.append(TEXT_459);
2665
    if (genFeature.isPrimitiveType()) {
2688
    if (genFeature.isPrimitiveType()) {
2666
    stringBuffer.append(TEXT_457);
2689
    stringBuffer.append(TEXT_460);
2667
    stringBuffer.append(genFeature.getPrimitiveValueFunction());
2690
    stringBuffer.append(genFeature.getPrimitiveValueFunction());
2668
    stringBuffer.append(TEXT_458);
2691
    stringBuffer.append(TEXT_461);
2669
    }
2692
    }
2670
    stringBuffer.append(TEXT_459);
2693
    stringBuffer.append(TEXT_462);
2671
    }
2694
    }
2672
    }
2695
    }
2673
    } else if (genClass.getGetAccessorOperation(genFeature) != null) {
2696
    } else if (genClass.getGetAccessorOperation(genFeature) != null) {
2674
    stringBuffer.append(TEXT_460);
2697
    stringBuffer.append(TEXT_463);
2675
    stringBuffer.append(genClass.getGetAccessorOperation(genFeature).getBody(genModel.getIndentation(stringBuffer)));
2698
    stringBuffer.append(genClass.getGetAccessorOperation(genFeature).getBody(genModel.getIndentation(stringBuffer)));
2676
    } else {
2699
    } else {
2677
    stringBuffer.append(TEXT_461);
2700
    stringBuffer.append(TEXT_464);
2678
    stringBuffer.append(genFeature.getFormattedName());
2701
    stringBuffer.append(genFeature.getFormattedName());
2679
    stringBuffer.append(TEXT_462);
2702
    stringBuffer.append(TEXT_465);
2680
    stringBuffer.append(genFeature.getFeatureKind());
2703
    stringBuffer.append(genFeature.getFeatureKind());
2681
    stringBuffer.append(TEXT_463);
2704
    stringBuffer.append(TEXT_466);
2682
    if (genFeature.isListType()) {
2705
    if (genFeature.isListType()) {
2683
    stringBuffer.append(TEXT_464);
2706
    stringBuffer.append(TEXT_467);
2684
    if (genFeature.isMapType()) {
2707
    if (genFeature.isMapType()) {
2685
    stringBuffer.append(TEXT_465);
2708
    stringBuffer.append(TEXT_468);
2686
    } else if (genFeature.isFeatureMapType()) {
2709
    } else if (genFeature.isFeatureMapType()) {
2687
    stringBuffer.append(TEXT_466);
2710
    stringBuffer.append(TEXT_469);
2688
    } else {
2711
    } else {
2689
    stringBuffer.append(TEXT_467);
2712
    stringBuffer.append(TEXT_470);
2690
    }
2713
    }
2691
    stringBuffer.append(TEXT_468);
2714
    stringBuffer.append(TEXT_471);
2692
    }
2715
    }
2693
    stringBuffer.append(TEXT_469);
2716
    stringBuffer.append(TEXT_472);
2694
    //Class/getGenFeature.todo.override.javajetinc
2717
    //Class/getGenFeature.todo.override.javajetinc
2695
    }
2718
    }
2696
    }
2719
    }
2697
    stringBuffer.append(TEXT_470);
2720
    stringBuffer.append(TEXT_473);
2698
    }
2721
    }
2699
    //Class/getGenFeature.override.javajetinc
2722
    //Class/getGenFeature.override.javajetinc
2700
    }
2723
    }
2701
    if (isImplementation && !genModel.isReflectiveDelegation() && genFeature.isBasicGet()) {
2724
    if (isImplementation && !genModel.isReflectiveDelegation() && genFeature.isBasicGet()) {
2702
    stringBuffer.append(TEXT_471);
2725
    stringBuffer.append(TEXT_474);
2703
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/basicGetGenFeature.annotations.insert.javajetinc
2726
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/basicGetGenFeature.annotations.insert.javajetinc
2704
    }
2727
    }
2705
    stringBuffer.append(TEXT_472);
2728
    stringBuffer.append(TEXT_475);
2706
    stringBuffer.append(genFeature.getImportedType(genClass));
2729
    stringBuffer.append(genFeature.getImportedType(genClass));
2707
    stringBuffer.append(TEXT_473);
2730
    stringBuffer.append(TEXT_476);
2708
    stringBuffer.append(genFeature.getAccessorName());
2731
    stringBuffer.append(genFeature.getAccessorName());
2709
    stringBuffer.append(TEXT_474);
2732
    stringBuffer.append(TEXT_477);
2710
    if (genModel.isDynamicDelegation()) {
2733
    if (genModel.isDynamicDelegation()) {
2711
    stringBuffer.append(TEXT_475);
2734
    stringBuffer.append(TEXT_478);
2712
    stringBuffer.append(genFeature.getImportedType(genClass));
2735
    stringBuffer.append(genFeature.getImportedType(genClass));
2713
    stringBuffer.append(TEXT_476);
2736
    stringBuffer.append(TEXT_479);
2714
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2737
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2715
    stringBuffer.append(TEXT_477);
2738
    stringBuffer.append(TEXT_480);
2716
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2739
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2717
    stringBuffer.append(TEXT_478);
2740
    stringBuffer.append(TEXT_481);
2718
    stringBuffer.append(!genFeature.isEffectiveSuppressEMFTypes());
2741
    stringBuffer.append(!genFeature.isEffectiveSuppressEMFTypes());
2719
    stringBuffer.append(TEXT_479);
2742
    stringBuffer.append(TEXT_482);
2720
    } else if (genFeature.isContainer()) {
2743
    } else if (genFeature.isContainer()) {
2721
    stringBuffer.append(TEXT_480);
2744
    stringBuffer.append(TEXT_483);
2745
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2746
    stringBuffer.append(TEXT_484);
2722
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2747
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2723
    stringBuffer.append(positiveOffsetCorrection);
2748
    stringBuffer.append(positiveOffsetCorrection);
2724
    stringBuffer.append(TEXT_481);
2749
    stringBuffer.append(TEXT_485);
2725
    stringBuffer.append(genFeature.getImportedType(genClass));
2750
    stringBuffer.append(genFeature.getImportedType(genClass));
2726
    stringBuffer.append(TEXT_482);
2751
    stringBuffer.append(TEXT_486);
2727
    } else if (!genFeature.isVolatile()) {
2752
    } else if (!genFeature.isVolatile()) {
2753
    stringBuffer.append(TEXT_487);
2754
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2755
    stringBuffer.append(TEXT_488);
2728
    if (genModel.isVirtualDelegation()) {
2756
    if (genModel.isVirtualDelegation()) {
2729
    stringBuffer.append(TEXT_483);
2757
    stringBuffer.append(TEXT_489);
2730
    stringBuffer.append(genFeature.getImportedType(genClass));
2758
    stringBuffer.append(genFeature.getImportedType(genClass));
2731
    stringBuffer.append(TEXT_484);
2759
    stringBuffer.append(TEXT_490);
2732
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2760
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2733
    stringBuffer.append(positiveOffsetCorrection);
2761
    stringBuffer.append(positiveOffsetCorrection);
2734
    stringBuffer.append(TEXT_485);
2762
    stringBuffer.append(TEXT_491);
2735
    } else {
2763
    } else {
2736
    stringBuffer.append(TEXT_486);
2764
    stringBuffer.append(TEXT_492);
2737
    stringBuffer.append(genFeature.getSafeName());
2765
    stringBuffer.append(genFeature.getSafeName());
2738
    stringBuffer.append(TEXT_487);
2766
    stringBuffer.append(TEXT_493);
2739
    }
2767
    }
2740
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
2768
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
2741
    if (delegateFeature.isWrappedFeatureMapType()) {
2769
    if (delegateFeature.isWrappedFeatureMapType()) {
2742
    stringBuffer.append(TEXT_488);
2770
    stringBuffer.append(TEXT_494);
2743
    stringBuffer.append(genFeature.getImportedType(genClass));
2771
    stringBuffer.append(genFeature.getImportedType(genClass));
2744
    stringBuffer.append(TEXT_489);
2772
    stringBuffer.append(TEXT_495);
2745
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2773
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2746
    stringBuffer.append(TEXT_490);
2774
    stringBuffer.append(TEXT_496);
2747
    stringBuffer.append(delegateFeature.getAccessorName());
2775
    stringBuffer.append(delegateFeature.getAccessorName());
2748
    stringBuffer.append(TEXT_491);
2776
    stringBuffer.append(TEXT_497);
2749
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2777
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2750
    stringBuffer.append(TEXT_492);
2778
    stringBuffer.append(TEXT_498);
2751
    } else {
2779
    } else {
2752
    stringBuffer.append(TEXT_493);
2780
    stringBuffer.append(TEXT_499);
2753
    stringBuffer.append(genFeature.getImportedType(genClass));
2781
    stringBuffer.append(genFeature.getImportedType(genClass));
2754
    stringBuffer.append(TEXT_494);
2782
    stringBuffer.append(TEXT_500);
2755
    stringBuffer.append(delegateFeature.getAccessorName());
2783
    stringBuffer.append(delegateFeature.getAccessorName());
2756
    stringBuffer.append(TEXT_495);
2784
    stringBuffer.append(TEXT_501);
2757
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2785
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2758
    stringBuffer.append(TEXT_496);
2786
    stringBuffer.append(TEXT_502);
2759
    }
2787
    }
2760
    } else {
2788
    } else {
2761
    stringBuffer.append(TEXT_497);
2789
    stringBuffer.append(TEXT_503);
2762
    stringBuffer.append(genFeature.getFormattedName());
2790
    stringBuffer.append(genFeature.getFormattedName());
2763
    stringBuffer.append(TEXT_498);
2791
    stringBuffer.append(TEXT_504);
2764
    stringBuffer.append(genFeature.getFeatureKind());
2792
    stringBuffer.append(genFeature.getFeatureKind());
2765
    stringBuffer.append(TEXT_499);
2793
    stringBuffer.append(TEXT_505);
2766
    //Class/basicGetGenFeature.todo.override.javajetinc
2794
    //Class/basicGetGenFeature.todo.override.javajetinc
2767
    }
2795
    }
2768
    stringBuffer.append(TEXT_500);
2796
    stringBuffer.append(TEXT_506);
2769
    //Class/basicGetGenFeature.override.javajetinc
2797
    //Class/basicGetGenFeature.override.javajetinc
2770
    }
2798
    }
2771
    if (isImplementation && !genModel.isReflectiveDelegation() && genFeature.isBasicSet()) {
2799
    if (isImplementation && !genModel.isReflectiveDelegation() && genFeature.isBasicSet()) {
2772
    stringBuffer.append(TEXT_501);
2800
    stringBuffer.append(TEXT_507);
2773
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/basicSetGenFeature.annotations.insert.javajetinc
2801
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/basicSetGenFeature.annotations.insert.javajetinc
2774
    }
2802
    }
2775
    stringBuffer.append(TEXT_502);
2803
    stringBuffer.append(TEXT_508);
2776
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
2804
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
2777
    stringBuffer.append(TEXT_503);
2805
    stringBuffer.append(TEXT_509);
2778
    stringBuffer.append(genFeature.getAccessorName());
2806
    stringBuffer.append(genFeature.getAccessorName());
2779
    stringBuffer.append(TEXT_504);
2807
    stringBuffer.append(TEXT_510);
2780
    stringBuffer.append(genFeature.getImportedInternalType(genClass));
2808
    stringBuffer.append(genFeature.getImportedInternalType(genClass));
2781
    stringBuffer.append(TEXT_505);
2809
    stringBuffer.append(TEXT_511);
2782
    stringBuffer.append(genFeature.getCapName());
2810
    stringBuffer.append(genFeature.getCapName());
2783
    stringBuffer.append(TEXT_506);
2811
    stringBuffer.append(TEXT_512);
2784
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
2812
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
2785
    stringBuffer.append(TEXT_507);
2813
    stringBuffer.append(TEXT_513);
2786
    if (genFeature.isContainer()) {
2814
    if (genFeature.isContainer()) {
2787
    stringBuffer.append(TEXT_508);
2815
    stringBuffer.append(TEXT_514);
2816
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2817
    stringBuffer.append(TEXT_515);
2818
    stringBuffer.append(TEXT_516);
2788
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2819
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2789
    stringBuffer.append(TEXT_509);
2820
    stringBuffer.append(TEXT_517);
2790
    stringBuffer.append(genFeature.getCapName());
2821
    stringBuffer.append(genFeature.getCapName());
2791
    stringBuffer.append(TEXT_510);
2822
    stringBuffer.append(TEXT_518);
2792
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2823
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2793
    stringBuffer.append(positiveOffsetCorrection);
2824
    stringBuffer.append(positiveOffsetCorrection);
2794
    stringBuffer.append(TEXT_511);
2825
    stringBuffer.append(TEXT_519);
2795
    stringBuffer.append(TEXT_512);
2826
    stringBuffer.append(TEXT_520);
2796
    } else if (genModel.isDynamicDelegation()) {
2827
    } else if (genModel.isDynamicDelegation()) {
2797
    stringBuffer.append(TEXT_513);
2828
    stringBuffer.append(TEXT_521);
2798
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2829
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
2799
    stringBuffer.append(TEXT_514);
2830
    stringBuffer.append(TEXT_522);
2800
    stringBuffer.append(genFeature.getCapName());
2831
    stringBuffer.append(genFeature.getCapName());
2801
    stringBuffer.append(TEXT_515);
2832
    stringBuffer.append(TEXT_523);
2802
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2833
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2803
    stringBuffer.append(positiveOffsetCorrection);
2834
    stringBuffer.append(positiveOffsetCorrection);
2804
    stringBuffer.append(TEXT_516);
2835
    stringBuffer.append(TEXT_524);
2805
    stringBuffer.append(TEXT_517);
2836
    stringBuffer.append(TEXT_525);
2806
    } else if (!genFeature.isVolatile()) {
2837
    } else if (!genFeature.isVolatile()) {
2838
    stringBuffer.append(TEXT_526);
2839
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2840
    stringBuffer.append(TEXT_527);
2807
    if (genModel.isVirtualDelegation()) {
2841
    if (genModel.isVirtualDelegation()) {
2808
    stringBuffer.append(TEXT_518);
2842
    stringBuffer.append(TEXT_528);
2809
    stringBuffer.append(genFeature.getCapName());
2843
    stringBuffer.append(genFeature.getCapName());
2810
    stringBuffer.append(TEXT_519);
2844
    stringBuffer.append(TEXT_529);
2811
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2845
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2812
    stringBuffer.append(positiveOffsetCorrection);
2846
    stringBuffer.append(positiveOffsetCorrection);
2813
    stringBuffer.append(TEXT_520);
2847
    stringBuffer.append(TEXT_530);
2814
    stringBuffer.append(genFeature.getCapName());
2848
    stringBuffer.append(genFeature.getCapName());
2815
    stringBuffer.append(TEXT_521);
2849
    stringBuffer.append(TEXT_531);
2816
    } else {
2850
    } else {
2817
    stringBuffer.append(TEXT_522);
2851
    stringBuffer.append(TEXT_532);
2818
    stringBuffer.append(genFeature.getImportedType(genClass));
2852
    stringBuffer.append(genFeature.getImportedType(genClass));
2819
    stringBuffer.append(TEXT_523);
2853
    stringBuffer.append(TEXT_533);
2820
    stringBuffer.append(genFeature.getCapName());
2854
    stringBuffer.append(genFeature.getCapName());
2821
    stringBuffer.append(TEXT_524);
2855
    stringBuffer.append(TEXT_534);
2822
    stringBuffer.append(genFeature.getSafeName());
2856
    stringBuffer.append(genFeature.getSafeName());
2823
    stringBuffer.append(TEXT_525);
2857
    stringBuffer.append(TEXT_535);
2824
    stringBuffer.append(genFeature.getSafeName());
2858
    stringBuffer.append(genFeature.getSafeName());
2825
    stringBuffer.append(TEXT_526);
2859
    stringBuffer.append(TEXT_536);
2826
    stringBuffer.append(genFeature.getCapName());
2860
    stringBuffer.append(genFeature.getCapName());
2827
    stringBuffer.append(TEXT_527);
2861
    stringBuffer.append(TEXT_537);
2828
    }
2862
    }
2829
    if (genFeature.isUnsettable()) {
2863
    if (genFeature.isUnsettable()) {
2830
    if (genModel.isVirtualDelegation()) {
2864
    if (genModel.isVirtualDelegation()) {
2831
    if (!genModel.isSuppressNotification()) {
2865
    if (!genModel.isSuppressNotification()) {
2832
    stringBuffer.append(TEXT_528);
2866
    stringBuffer.append(TEXT_538);
2833
    stringBuffer.append(genFeature.getCapName());
2867
    stringBuffer.append(genFeature.getCapName());
2834
    stringBuffer.append(TEXT_529);
2868
    stringBuffer.append(TEXT_539);
2835
    }
2869
    }
2836
    } else if (genClass.isESetFlag(genFeature)) {
2870
    } else if (genClass.isESetFlag(genFeature)) {
2837
    stringBuffer.append(TEXT_530);
2871
    stringBuffer.append(TEXT_540);
2838
    stringBuffer.append(genFeature.getCapName());
2872
    stringBuffer.append(genFeature.getCapName());
2839
    stringBuffer.append(TEXT_531);
2873
    stringBuffer.append(TEXT_541);
2840
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
2874
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
2841
    stringBuffer.append(TEXT_532);
2875
    stringBuffer.append(TEXT_542);
2842
    stringBuffer.append(genFeature.getUpperName());
2876
    stringBuffer.append(genFeature.getUpperName());
2843
    stringBuffer.append(TEXT_533);
2877
    stringBuffer.append(TEXT_543);
2844
    if (!genModel.isSuppressNotification()) {
2878
    if (!genModel.isSuppressNotification()) {
2845
    stringBuffer.append(TEXT_534);
2879
    stringBuffer.append(TEXT_544);
2846
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
2880
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
2847
    stringBuffer.append(TEXT_535);
2881
    stringBuffer.append(TEXT_545);
2848
    stringBuffer.append(genFeature.getUpperName());
2882
    stringBuffer.append(genFeature.getUpperName());
2849
    stringBuffer.append(TEXT_536);
2883
    stringBuffer.append(TEXT_546);
2850
    }
2884
    }
2851
    } else {
2885
    } else {
2852
    if (!genModel.isSuppressNotification()) {
2886
    if (!genModel.isSuppressNotification()) {
2853
    stringBuffer.append(TEXT_537);
2887
    stringBuffer.append(TEXT_547);
2854
    stringBuffer.append(genFeature.getCapName());
2888
    stringBuffer.append(genFeature.getCapName());
2855
    stringBuffer.append(TEXT_538);
2889
    stringBuffer.append(TEXT_548);
2856
    stringBuffer.append(genFeature.getUncapName());
2890
    stringBuffer.append(genFeature.getUncapName());
2857
    stringBuffer.append(TEXT_539);
2891
    stringBuffer.append(TEXT_549);
2858
    }
2892
    }
2859
    stringBuffer.append(TEXT_540);
2893
    stringBuffer.append(TEXT_550);
2860
    stringBuffer.append(genFeature.getUncapName());
2894
    stringBuffer.append(genFeature.getUncapName());
2861
    stringBuffer.append(TEXT_541);
2895
    stringBuffer.append(TEXT_551);
2862
    }
2896
    }
2863
    }
2897
    }
2864
    if (!genModel.isSuppressNotification()) {
2898
    if (!genModel.isSuppressNotification()) {
2865
    stringBuffer.append(TEXT_542);
2899
    stringBuffer.append(TEXT_552);
2866
    if (genFeature.isUnsettable()) {
2900
    if (genFeature.isUnsettable()) {
2867
    stringBuffer.append(TEXT_543);
2901
    stringBuffer.append(TEXT_553);
2868
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
2902
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
2869
    stringBuffer.append(TEXT_544);
2903
    stringBuffer.append(TEXT_554);
2870
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
2904
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
2871
    stringBuffer.append(TEXT_545);
2905
    stringBuffer.append(TEXT_555);
2872
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
2906
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
2873
    stringBuffer.append(TEXT_546);
2907
    stringBuffer.append(TEXT_556);
2874
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2908
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2875
    stringBuffer.append(positiveOffsetCorrection);
2909
    stringBuffer.append(positiveOffsetCorrection);
2876
    stringBuffer.append(TEXT_547);
2910
    stringBuffer.append(TEXT_557);
2877
    if (genModel.isVirtualDelegation()) {
2911
    if (genModel.isVirtualDelegation()) {
2878
    stringBuffer.append(TEXT_548);
2912
    stringBuffer.append(TEXT_558);
2879
    stringBuffer.append(genFeature.getCapName());
2913
    stringBuffer.append(genFeature.getCapName());
2880
    } else {
2914
    } else {
2881
    stringBuffer.append(TEXT_549);
2915
    stringBuffer.append(TEXT_559);
2882
    stringBuffer.append(genFeature.getCapName());
2916
    stringBuffer.append(genFeature.getCapName());
2883
    }
2917
    }
2884
    stringBuffer.append(TEXT_550);
2918
    stringBuffer.append(TEXT_560);
2885
    stringBuffer.append(genFeature.getCapName());
2919
    stringBuffer.append(genFeature.getCapName());
2886
    stringBuffer.append(TEXT_551);
2920
    stringBuffer.append(TEXT_561);
2887
    if (genModel.isVirtualDelegation()) {
2921
    if (genModel.isVirtualDelegation()) {
2888
    stringBuffer.append(TEXT_552);
2922
    stringBuffer.append(TEXT_562);
2889
    } else {
2923
    } else {
2890
    stringBuffer.append(TEXT_553);
2924
    stringBuffer.append(TEXT_563);
2891
    stringBuffer.append(genFeature.getCapName());
2925
    stringBuffer.append(genFeature.getCapName());
2892
    stringBuffer.append(TEXT_554);
2926
    stringBuffer.append(TEXT_564);
2893
    }
2927
    }
2894
    stringBuffer.append(TEXT_555);
2928
    stringBuffer.append(TEXT_565);
2895
    } else {
2929
    } else {
2896
    stringBuffer.append(TEXT_556);
2930
    stringBuffer.append(TEXT_566);
2897
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
2931
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
2898
    stringBuffer.append(TEXT_557);
2932
    stringBuffer.append(TEXT_567);
2899
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
2933
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
2900
    stringBuffer.append(TEXT_558);
2934
    stringBuffer.append(TEXT_568);
2901
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
2935
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
2902
    stringBuffer.append(TEXT_559);
2936
    stringBuffer.append(TEXT_569);
2903
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2937
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
2904
    stringBuffer.append(positiveOffsetCorrection);
2938
    stringBuffer.append(positiveOffsetCorrection);
2905
    stringBuffer.append(TEXT_560);
2939
    stringBuffer.append(TEXT_570);
2906
    if (genModel.isVirtualDelegation()) {
2940
    if (genModel.isVirtualDelegation()) {
2907
    stringBuffer.append(TEXT_561);
2941
    stringBuffer.append(TEXT_571);
2908
    stringBuffer.append(genFeature.getCapName());
2942
    stringBuffer.append(genFeature.getCapName());
2909
    stringBuffer.append(TEXT_562);
2943
    stringBuffer.append(TEXT_572);
2910
    stringBuffer.append(genFeature.getCapName());
2944
    stringBuffer.append(genFeature.getCapName());
2911
    } else {
2945
    } else {
2912
    stringBuffer.append(TEXT_563);
2946
    stringBuffer.append(TEXT_573);
2913
    stringBuffer.append(genFeature.getCapName());
2947
    stringBuffer.append(genFeature.getCapName());
2914
    }
2948
    }
2915
    stringBuffer.append(TEXT_564);
2949
    stringBuffer.append(TEXT_574);
2916
    stringBuffer.append(genFeature.getCapName());
2950
    stringBuffer.append(genFeature.getCapName());
2917
    stringBuffer.append(TEXT_565);
2951
    stringBuffer.append(TEXT_575);
2918
    }
2952
    }
2919
    stringBuffer.append(TEXT_566);
2953
    stringBuffer.append(TEXT_576);
2920
    }
2954
    }
2921
    stringBuffer.append(TEXT_567);
2955
    stringBuffer.append(TEXT_577);
2922
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
2956
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
2923
    if (delegateFeature.isWrappedFeatureMapType()) {
2957
    if (delegateFeature.isWrappedFeatureMapType()) {
2924
    stringBuffer.append(TEXT_568);
2958
    stringBuffer.append(TEXT_578);
2925
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2959
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2926
    stringBuffer.append(TEXT_569);
2960
    stringBuffer.append(TEXT_579);
2927
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2961
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2928
    stringBuffer.append(TEXT_570);
2962
    stringBuffer.append(TEXT_580);
2929
    stringBuffer.append(delegateFeature.getAccessorName());
2963
    stringBuffer.append(delegateFeature.getAccessorName());
2930
    stringBuffer.append(TEXT_571);
2964
    stringBuffer.append(TEXT_581);
2931
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2965
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2932
    stringBuffer.append(TEXT_572);
2966
    stringBuffer.append(TEXT_582);
2933
    stringBuffer.append(genFeature.getCapName());
2967
    stringBuffer.append(genFeature.getCapName());
2934
    stringBuffer.append(TEXT_573);
2968
    stringBuffer.append(TEXT_583);
2935
    } else {
2969
    } else {
2936
    stringBuffer.append(TEXT_574);
2970
    stringBuffer.append(TEXT_584);
2937
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2971
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
2938
    stringBuffer.append(TEXT_575);
2972
    stringBuffer.append(TEXT_585);
2939
    stringBuffer.append(delegateFeature.getAccessorName());
2973
    stringBuffer.append(delegateFeature.getAccessorName());
2940
    stringBuffer.append(TEXT_576);
2974
    stringBuffer.append(TEXT_586);
2941
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2975
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
2942
    stringBuffer.append(TEXT_577);
2976
    stringBuffer.append(TEXT_587);
2943
    stringBuffer.append(genFeature.getCapName());
2977
    stringBuffer.append(genFeature.getCapName());
2944
    stringBuffer.append(TEXT_578);
2978
    stringBuffer.append(TEXT_588);
2945
    }
2979
    }
2946
    } else {
2980
    } else {
2947
    stringBuffer.append(TEXT_579);
2981
    stringBuffer.append(TEXT_589);
2948
    stringBuffer.append(genFeature.getFormattedName());
2982
    stringBuffer.append(genFeature.getFormattedName());
2949
    stringBuffer.append(TEXT_580);
2983
    stringBuffer.append(TEXT_590);
2950
    stringBuffer.append(genFeature.getFeatureKind());
2984
    stringBuffer.append(genFeature.getFeatureKind());
2951
    stringBuffer.append(TEXT_581);
2985
    stringBuffer.append(TEXT_591);
2952
    //Class/basicSetGenFeature.todo.override.javajetinc
2986
    //Class/basicSetGenFeature.todo.override.javajetinc
2953
    }
2987
    }
2954
    stringBuffer.append(TEXT_582);
2988
    stringBuffer.append(TEXT_592);
2955
    //Class/basicSetGenFeature.override.javajetinc
2989
    //Class/basicSetGenFeature.override.javajetinc
2956
    }
2990
    }
2957
    if (genFeature.isSet() && (isImplementation || !genFeature.isSuppressedSetVisibility())) {
2991
    if (genFeature.isSet() && (isImplementation || !genFeature.isSuppressedSetVisibility())) {
2958
    if (isInterface) { 
2992
    if (isInterface) { 
2959
    stringBuffer.append(TEXT_583);
2993
    stringBuffer.append(TEXT_593);
2960
    stringBuffer.append(genClass.getQualifiedInterfaceName());
2994
    stringBuffer.append(genClass.getQualifiedInterfaceName());
2961
    stringBuffer.append(TEXT_584);
2995
    stringBuffer.append(TEXT_594);
2962
    stringBuffer.append(genFeature.getGetAccessor());
2996
    stringBuffer.append(genFeature.getGetAccessor());
2963
    stringBuffer.append(TEXT_585);
2997
    stringBuffer.append(TEXT_595);
2964
    stringBuffer.append(genFeature.getFormattedName());
2998
    stringBuffer.append(genFeature.getFormattedName());
2965
    stringBuffer.append(TEXT_586);
2999
    stringBuffer.append(TEXT_596);
2966
    stringBuffer.append(genFeature.getFeatureKind());
3000
    stringBuffer.append(genFeature.getFeatureKind());
2967
    stringBuffer.append(TEXT_587);
3001
    stringBuffer.append(TEXT_597);
2968
    stringBuffer.append(TEXT_588);
3002
    stringBuffer.append(TEXT_598);
2969
    stringBuffer.append(genFeature.getFormattedName());
3003
    stringBuffer.append(genFeature.getFormattedName());
2970
    stringBuffer.append(TEXT_589);
3004
    stringBuffer.append(TEXT_599);
2971
    stringBuffer.append(genFeature.getFeatureKind());
3005
    stringBuffer.append(genFeature.getFeatureKind());
2972
    stringBuffer.append(TEXT_590);
3006
    stringBuffer.append(TEXT_600);
2973
    if (genFeature.isEnumType()) {
3007
    if (genFeature.isEnumType()) {
2974
    stringBuffer.append(TEXT_591);
3008
    stringBuffer.append(TEXT_601);
2975
    stringBuffer.append(genFeature.getTypeGenEnum().getQualifiedName());
3009
    stringBuffer.append(genFeature.getTypeGenEnum().getQualifiedName());
2976
    }
3010
    }
2977
    if (genFeature.isUnsettable()) {
3011
    if (genFeature.isUnsettable()) {
2978
    if (!genFeature.isSuppressedIsSetVisibility()) {
3012
    if (!genFeature.isSuppressedIsSetVisibility()) {
2979
    stringBuffer.append(TEXT_592);
3013
    stringBuffer.append(TEXT_602);
2980
    stringBuffer.append(genFeature.getAccessorName());
3014
    stringBuffer.append(genFeature.getAccessorName());
2981
    stringBuffer.append(TEXT_593);
3015
    stringBuffer.append(TEXT_603);
2982
    }
3016
    }
2983
    if (!genFeature.isSuppressedUnsetVisibility()) {
3017
    if (!genFeature.isSuppressedUnsetVisibility()) {
2984
    stringBuffer.append(TEXT_594);
3018
    stringBuffer.append(TEXT_604);
2985
    stringBuffer.append(genFeature.getAccessorName());
3019
    stringBuffer.append(genFeature.getAccessorName());
2986
    stringBuffer.append(TEXT_595);
3020
    stringBuffer.append(TEXT_605);
2987
    }
3021
    }
2988
    }
3022
    }
2989
    stringBuffer.append(TEXT_596);
3023
    stringBuffer.append(TEXT_606);
2990
    stringBuffer.append(genFeature.getGetAccessor());
3024
    stringBuffer.append(genFeature.getGetAccessor());
2991
    stringBuffer.append(TEXT_597);
3025
    stringBuffer.append(TEXT_607);
2992
    //Class/setGenFeature.javadoc.override.javajetinc
3026
    //Class/setGenFeature.javadoc.override.javajetinc
2993
    } else {
3027
    } else {
2994
    stringBuffer.append(TEXT_598);
3028
    stringBuffer.append(TEXT_608);
2995
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/setGenFeature.annotations.insert.javajetinc
3029
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/setGenFeature.annotations.insert.javajetinc
2996
    }
3030
    }
2997
    }
3031
    }
2998
    if (!isImplementation) { 
3032
    if (!isImplementation) { 
2999
    stringBuffer.append(TEXT_599);
3033
    stringBuffer.append(TEXT_609);
3000
    stringBuffer.append(genFeature.getAccessorName());
3034
    stringBuffer.append(genFeature.getAccessorName());
3001
    stringBuffer.append(TEXT_600);
3035
    stringBuffer.append(TEXT_610);
3002
    stringBuffer.append(genFeature.getImportedType(genClass));
3036
    stringBuffer.append(genFeature.getImportedType(genClass));
3003
    stringBuffer.append(TEXT_601);
3037
    stringBuffer.append(TEXT_611);
3004
    } else { GenOperation setAccessorOperation = genClass.getSetAccessorOperation(genFeature);
3038
    } else { GenOperation setAccessorOperation = genClass.getSetAccessorOperation(genFeature);
3005
    stringBuffer.append(TEXT_602);
3039
    stringBuffer.append(TEXT_612);
3006
    stringBuffer.append(genFeature.getAccessorName());
3040
    stringBuffer.append(genFeature.getAccessorName());
3007
    if (genClass.hasCollidingSetAccessorOperation(genFeature)) {
3041
    if (genClass.hasCollidingSetAccessorOperation(genFeature)) {
3008
    stringBuffer.append(TEXT_603);
3042
    stringBuffer.append(TEXT_613);
3009
    }
3043
    }
3010
    stringBuffer.append(TEXT_604);
3044
    stringBuffer.append(TEXT_614);
3011
    stringBuffer.append(genFeature.getImportedType(genClass));
3045
    stringBuffer.append(genFeature.getImportedType(genClass));
3012
    stringBuffer.append(TEXT_605);
3046
    stringBuffer.append(TEXT_615);
3013
    stringBuffer.append(setAccessorOperation == null ? "new" + genFeature.getCapName() : setAccessorOperation.getGenParameters().get(0).getName());
3047
    stringBuffer.append(setAccessorOperation == null ? "new" + genFeature.getCapName() : setAccessorOperation.getGenParameters().get(0).getName());
3014
    stringBuffer.append(TEXT_606);
3048
    stringBuffer.append(TEXT_616);
3015
    if (genModel.isDynamicDelegation()) {
3049
    if (genModel.isDynamicDelegation()) {
3016
    stringBuffer.append(TEXT_607);
3050
    stringBuffer.append(TEXT_617);
3017
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3051
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3018
    stringBuffer.append(TEXT_608);
3052
    stringBuffer.append(TEXT_618);
3019
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3053
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3020
    stringBuffer.append(TEXT_609);
3054
    stringBuffer.append(TEXT_619);
3021
    if (genFeature.isPrimitiveType()) {
3055
    if (genFeature.isPrimitiveType()) {
3022
    stringBuffer.append(TEXT_610);
3056
    stringBuffer.append(TEXT_620);
3023
    stringBuffer.append(genFeature.getObjectType(genClass));
3057
    stringBuffer.append(genFeature.getObjectType(genClass));
3024
    stringBuffer.append(TEXT_611);
3058
    stringBuffer.append(TEXT_621);
3025
    }
3059
    }
3026
    stringBuffer.append(TEXT_612);
3060
    stringBuffer.append(TEXT_622);
3027
    stringBuffer.append(genFeature.getCapName());
3061
    stringBuffer.append(genFeature.getCapName());
3028
    if (genFeature.isPrimitiveType()) {
3062
    if (genFeature.isPrimitiveType()) {
3029
    stringBuffer.append(TEXT_613);
3063
    stringBuffer.append(TEXT_623);
3030
    }
3064
    }
3031
    stringBuffer.append(TEXT_614);
3065
    stringBuffer.append(TEXT_624);
3032
    } else if (genModel.isReflectiveDelegation()) {
3066
    } else if (genModel.isReflectiveDelegation()) {
3033
    stringBuffer.append(TEXT_615);
3067
    stringBuffer.append(TEXT_625);
3034
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3068
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3035
    stringBuffer.append(TEXT_616);
3069
    stringBuffer.append(TEXT_626);
3036
    if (genFeature.isPrimitiveType()) {
3070
    if (genFeature.isPrimitiveType()) {
3037
    stringBuffer.append(TEXT_617);
3071
    stringBuffer.append(TEXT_627);
3038
    stringBuffer.append(genFeature.getObjectType(genClass));
3072
    stringBuffer.append(genFeature.getObjectType(genClass));
3039
    stringBuffer.append(TEXT_618);
3073
    stringBuffer.append(TEXT_628);
3040
    }
3074
    }
3041
    stringBuffer.append(TEXT_619);
3075
    stringBuffer.append(TEXT_629);
3042
    stringBuffer.append(genFeature.getCapName());
3076
    stringBuffer.append(genFeature.getCapName());
3043
    if (genFeature.isPrimitiveType()) {
3077
    if (genFeature.isPrimitiveType()) {
3044
    stringBuffer.append(TEXT_620);
3078
    stringBuffer.append(TEXT_630);
3045
    }
3079
    }
3046
    stringBuffer.append(TEXT_621);
3080
    stringBuffer.append(TEXT_631);
3047
    } else if (!genFeature.isVolatile()) {
3081
    } else if (!genFeature.isVolatile()) {
3082
    stringBuffer.append(TEXT_632);
3083
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3084
    stringBuffer.append(TEXT_633);
3048
    if (genFeature.isContainer()) { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
3085
    if (genFeature.isContainer()) { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
3049
    stringBuffer.append(TEXT_622);
3086
    stringBuffer.append(TEXT_634);
3050
    stringBuffer.append(genFeature.getCapName());
3087
    stringBuffer.append(genFeature.getCapName());
3051
    stringBuffer.append(TEXT_623);
3088
    stringBuffer.append(TEXT_635);
3052
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3089
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3053
    stringBuffer.append(positiveOffsetCorrection);
3090
    stringBuffer.append(positiveOffsetCorrection);
3054
    stringBuffer.append(TEXT_624);
3091
    stringBuffer.append(TEXT_636);
3055
    stringBuffer.append(genFeature.getCapName());
3092
    stringBuffer.append(genFeature.getCapName());
3056
    stringBuffer.append(TEXT_625);
3093
    stringBuffer.append(TEXT_637);
3057
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.EcoreUtil"));
3094
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.EcoreUtil"));
3058
    stringBuffer.append(TEXT_626);
3095
    stringBuffer.append(TEXT_638);
3059
    stringBuffer.append(genFeature.getEObjectCast());
3096
    stringBuffer.append(genFeature.getEObjectCast());
3060
    stringBuffer.append(TEXT_627);
3097
    stringBuffer.append(TEXT_639);
3061
    stringBuffer.append(genFeature.getCapName());
3098
    stringBuffer.append(genFeature.getCapName());
3062
    stringBuffer.append(TEXT_628);
3099
    stringBuffer.append(TEXT_640);
3063
    stringBuffer.append(genModel.getImportedName("java.lang.IllegalArgumentException"));
3100
    stringBuffer.append(genModel.getImportedName("java.lang.IllegalArgumentException"));
3064
    stringBuffer.append(TEXT_629);
3101
    stringBuffer.append(TEXT_641);
3065
    stringBuffer.append(genModel.getNonNLS());
3102
    stringBuffer.append(genModel.getNonNLS());
3066
    stringBuffer.append(TEXT_630);
3103
    stringBuffer.append(TEXT_642);
3067
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
3104
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
3068
    stringBuffer.append(TEXT_631);
3105
    stringBuffer.append(TEXT_643);
3069
    stringBuffer.append(genFeature.getCapName());
3106
    stringBuffer.append(genFeature.getCapName());
3070
    stringBuffer.append(TEXT_632);
3107
    stringBuffer.append(TEXT_644);
3071
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3108
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3072
    stringBuffer.append(TEXT_633);
3109
    stringBuffer.append(TEXT_645);
3073
    stringBuffer.append(genFeature.getCapName());
3110
    stringBuffer.append(genFeature.getCapName());
3074
    stringBuffer.append(TEXT_634);
3111
    stringBuffer.append(TEXT_646);
3075
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
3112
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
3076
    stringBuffer.append(reverseOffsetCorrection);
3113
    stringBuffer.append(reverseOffsetCorrection);
3077
    stringBuffer.append(TEXT_635);
3114
    stringBuffer.append(TEXT_647);
3078
    stringBuffer.append(targetClass.getImportedInterfaceName());
3115
    stringBuffer.append(targetClass.getImportedInterfaceName());
3079
    stringBuffer.append(TEXT_636);
3116
    stringBuffer.append(TEXT_648);
3080
    stringBuffer.append(genFeature.getAccessorName());
3117
    stringBuffer.append(genFeature.getAccessorName());
3081
    stringBuffer.append(TEXT_637);
3118
    stringBuffer.append(TEXT_649);
3082
    stringBuffer.append(genFeature.getInternalTypeCast());
3119
    stringBuffer.append(genFeature.getInternalTypeCast());
3083
    stringBuffer.append(TEXT_638);
3120
    stringBuffer.append(TEXT_650);
3084
    stringBuffer.append(genFeature.getCapName());
3121
    stringBuffer.append(genFeature.getCapName());
3085
    stringBuffer.append(TEXT_639);
3122
    stringBuffer.append(TEXT_651);
3086
    if (!genModel.isSuppressNotification()) {
3123
    if (!genModel.isSuppressNotification()) {
3087
    stringBuffer.append(TEXT_640);
3124
    stringBuffer.append(TEXT_652);
3088
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3125
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3089
    stringBuffer.append(TEXT_641);
3126
    stringBuffer.append(TEXT_653);
3090
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3127
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3091
    stringBuffer.append(TEXT_642);
3128
    stringBuffer.append(TEXT_654);
3092
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3129
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3093
    stringBuffer.append(positiveOffsetCorrection);
3130
    stringBuffer.append(positiveOffsetCorrection);
3094
    stringBuffer.append(TEXT_643);
3131
    stringBuffer.append(TEXT_655);
3095
    stringBuffer.append(genFeature.getCapName());
3132
    stringBuffer.append(genFeature.getCapName());
3096
    stringBuffer.append(TEXT_644);
3133
    stringBuffer.append(TEXT_656);
3097
    stringBuffer.append(genFeature.getCapName());
3134
    stringBuffer.append(genFeature.getCapName());
3098
    stringBuffer.append(TEXT_645);
3135
    stringBuffer.append(TEXT_657);
3099
    }
3136
    }
3100
    } else if (genFeature.isBidirectional() || genFeature.isEffectiveContains()) {
3137
    } else if (genFeature.isBidirectional() || genFeature.isEffectiveContains()) {
3101
    if (genModel.isVirtualDelegation()) {
3138
    if (genModel.isVirtualDelegation()) {
3102
    stringBuffer.append(TEXT_646);
3139
    stringBuffer.append(TEXT_658);
3103
    stringBuffer.append(genFeature.getImportedType(genClass));
3140
    stringBuffer.append(genFeature.getImportedType(genClass));
3104
    stringBuffer.append(TEXT_647);
3141
    stringBuffer.append(TEXT_659);
3105
    stringBuffer.append(genFeature.getSafeName());
3142
    stringBuffer.append(genFeature.getSafeName());
3106
    stringBuffer.append(TEXT_648);
3143
    stringBuffer.append(TEXT_660);
3107
    stringBuffer.append(genFeature.getImportedType(genClass));
3144
    stringBuffer.append(genFeature.getImportedType(genClass));
3108
    stringBuffer.append(TEXT_649);
3145
    stringBuffer.append(TEXT_661);
3109
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3146
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3110
    stringBuffer.append(positiveOffsetCorrection);
3147
    stringBuffer.append(positiveOffsetCorrection);
3111
    stringBuffer.append(TEXT_650);
3148
    stringBuffer.append(TEXT_662);
3112
    }
3149
    }
3113
    stringBuffer.append(TEXT_651);
3150
    stringBuffer.append(TEXT_663);
3114
    stringBuffer.append(genFeature.getCapName());
3151
    stringBuffer.append(genFeature.getCapName());
3115
    stringBuffer.append(TEXT_652);
3152
    stringBuffer.append(TEXT_664);
3116
    stringBuffer.append(genFeature.getSafeName());
3153
    stringBuffer.append(genFeature.getSafeName());
3117
    stringBuffer.append(TEXT_653);
3154
    stringBuffer.append(TEXT_665);
3118
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
3155
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
3119
    stringBuffer.append(TEXT_654);
3156
    stringBuffer.append(TEXT_666);
3120
    stringBuffer.append(genFeature.getSafeName());
3157
    stringBuffer.append(genFeature.getSafeName());
3121
    stringBuffer.append(TEXT_655);
3158
    stringBuffer.append(TEXT_667);
3122
    if (!genFeature.isBidirectional()) {
3159
    if (!genFeature.isBidirectional()) {
3123
    stringBuffer.append(TEXT_656);
3160
    stringBuffer.append(TEXT_668);
3124
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3161
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3125
    stringBuffer.append(TEXT_657);
3162
    stringBuffer.append(TEXT_669);
3126
    stringBuffer.append(genFeature.getSafeName());
3163
    stringBuffer.append(genFeature.getSafeName());
3127
    stringBuffer.append(TEXT_658);
3164
    stringBuffer.append(TEXT_670);
3128
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3165
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3129
    stringBuffer.append(negativeOffsetCorrection);
3166
    stringBuffer.append(negativeOffsetCorrection);
3130
    stringBuffer.append(TEXT_659);
3167
    stringBuffer.append(TEXT_671);
3131
    stringBuffer.append(genFeature.getCapName());
3168
    stringBuffer.append(genFeature.getCapName());
3132
    stringBuffer.append(TEXT_660);
3169
    stringBuffer.append(TEXT_672);
3133
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3170
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3134
    stringBuffer.append(TEXT_661);
3171
    stringBuffer.append(TEXT_673);
3135
    stringBuffer.append(genFeature.getCapName());
3172
    stringBuffer.append(genFeature.getCapName());
3136
    stringBuffer.append(TEXT_662);
3173
    stringBuffer.append(TEXT_674);
3137
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3174
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3138
    stringBuffer.append(negativeOffsetCorrection);
3175
    stringBuffer.append(negativeOffsetCorrection);
3139
    stringBuffer.append(TEXT_663);
3176
    stringBuffer.append(TEXT_675);
3140
    } else { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
3177
    } else { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
3141
    stringBuffer.append(TEXT_664);
3178
    stringBuffer.append(TEXT_676);
3142
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3179
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3143
    stringBuffer.append(TEXT_665);
3180
    stringBuffer.append(TEXT_677);
3144
    stringBuffer.append(genFeature.getSafeName());
3181
    stringBuffer.append(genFeature.getSafeName());
3145
    stringBuffer.append(TEXT_666);
3182
    stringBuffer.append(TEXT_678);
3146
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
3183
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
3147
    stringBuffer.append(reverseOffsetCorrection);
3184
    stringBuffer.append(reverseOffsetCorrection);
3148
    stringBuffer.append(TEXT_667);
3185
    stringBuffer.append(TEXT_679);
3149
    stringBuffer.append(targetClass.getImportedInterfaceName());
3186
    stringBuffer.append(targetClass.getImportedInterfaceName());
3150
    stringBuffer.append(TEXT_668);
3187
    stringBuffer.append(TEXT_680);
3151
    stringBuffer.append(genFeature.getCapName());
3188
    stringBuffer.append(genFeature.getCapName());
3152
    stringBuffer.append(TEXT_669);
3189
    stringBuffer.append(TEXT_681);
3153
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3190
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3154
    stringBuffer.append(TEXT_670);
3191
    stringBuffer.append(TEXT_682);
3155
    stringBuffer.append(genFeature.getCapName());
3192
    stringBuffer.append(genFeature.getCapName());
3156
    stringBuffer.append(TEXT_671);
3193
    stringBuffer.append(TEXT_683);
3157
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
3194
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
3158
    stringBuffer.append(reverseOffsetCorrection);
3195
    stringBuffer.append(reverseOffsetCorrection);
3159
    stringBuffer.append(TEXT_672);
3196
    stringBuffer.append(TEXT_684);
3160
    stringBuffer.append(targetClass.getImportedInterfaceName());
3197
    stringBuffer.append(targetClass.getImportedInterfaceName());
3161
    stringBuffer.append(TEXT_673);
3198
    stringBuffer.append(TEXT_685);
3162
    }
3199
    }
3163
    stringBuffer.append(TEXT_674);
3200
    stringBuffer.append(TEXT_686);
3164
    stringBuffer.append(genFeature.getAccessorName());
3201
    stringBuffer.append(genFeature.getAccessorName());
3165
    stringBuffer.append(TEXT_675);
3202
    stringBuffer.append(TEXT_687);
3166
    stringBuffer.append(genFeature.getInternalTypeCast());
3203
    stringBuffer.append(genFeature.getInternalTypeCast());
3167
    stringBuffer.append(TEXT_676);
3204
    stringBuffer.append(TEXT_688);
3168
    stringBuffer.append(genFeature.getCapName());
3205
    stringBuffer.append(genFeature.getCapName());
3169
    stringBuffer.append(TEXT_677);
3206
    stringBuffer.append(TEXT_689);
3170
    if (genFeature.isUnsettable()) {
3207
    if (genFeature.isUnsettable()) {
3171
    stringBuffer.append(TEXT_678);
3208
    stringBuffer.append(TEXT_690);
3172
    if (genModel.isVirtualDelegation()) {
3209
    if (genModel.isVirtualDelegation()) {
3173
    stringBuffer.append(TEXT_679);
3210
    stringBuffer.append(TEXT_691);
3174
    stringBuffer.append(genFeature.getCapName());
3211
    stringBuffer.append(genFeature.getCapName());
3175
    stringBuffer.append(TEXT_680);
3212
    stringBuffer.append(TEXT_692);
3176
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3213
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3177
    stringBuffer.append(positiveOffsetCorrection);
3214
    stringBuffer.append(positiveOffsetCorrection);
3178
    stringBuffer.append(TEXT_681);
3215
    stringBuffer.append(TEXT_693);
3179
    } else if (genClass.isESetFlag(genFeature)) {
3216
    } else if (genClass.isESetFlag(genFeature)) {
3180
    if (!genModel.isSuppressNotification()) {
3217
    if (!genModel.isSuppressNotification()) {
3181
    stringBuffer.append(TEXT_682);
3218
    stringBuffer.append(TEXT_694);
3182
    stringBuffer.append(genFeature.getCapName());
3219
    stringBuffer.append(genFeature.getCapName());
3183
    stringBuffer.append(TEXT_683);
3220
    stringBuffer.append(TEXT_695);
3184
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3221
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3185
    stringBuffer.append(TEXT_684);
3222
    stringBuffer.append(TEXT_696);
3186
    stringBuffer.append(genFeature.getUpperName());
3223
    stringBuffer.append(genFeature.getUpperName());
3187
    stringBuffer.append(TEXT_685);
3224
    stringBuffer.append(TEXT_697);
3188
    }
3225
    }
3189
    stringBuffer.append(TEXT_686);
3226
    stringBuffer.append(TEXT_698);
3190
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3227
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3191
    stringBuffer.append(TEXT_687);
3228
    stringBuffer.append(TEXT_699);
3192
    stringBuffer.append(genFeature.getUpperName());
3229
    stringBuffer.append(genFeature.getUpperName());
3193
    stringBuffer.append(TEXT_688);
3230
    stringBuffer.append(TEXT_700);
3194
    } else {
3231
    } else {
3195
    if (!genModel.isSuppressNotification()) {
3232
    if (!genModel.isSuppressNotification()) {
3196
    stringBuffer.append(TEXT_689);
3233
    stringBuffer.append(TEXT_701);
3197
    stringBuffer.append(genFeature.getCapName());
3234
    stringBuffer.append(genFeature.getCapName());
3198
    stringBuffer.append(TEXT_690);
3235
    stringBuffer.append(TEXT_702);
3199
    stringBuffer.append(genFeature.getUncapName());
3236
    stringBuffer.append(genFeature.getUncapName());
3200
    stringBuffer.append(TEXT_691);
3237
    stringBuffer.append(TEXT_703);
3201
    }
3238
    }
3202
    stringBuffer.append(TEXT_692);
3239
    stringBuffer.append(TEXT_704);
3203
    stringBuffer.append(genFeature.getUncapName());
3240
    stringBuffer.append(genFeature.getUncapName());
3204
    stringBuffer.append(TEXT_693);
3241
    stringBuffer.append(TEXT_705);
3205
    }
3242
    }
3206
    if (!genModel.isSuppressNotification()) {
3243
    if (!genModel.isSuppressNotification()) {
3207
    stringBuffer.append(TEXT_694);
3244
    stringBuffer.append(TEXT_706);
3208
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3245
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3209
    stringBuffer.append(TEXT_695);
3246
    stringBuffer.append(TEXT_707);
3210
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3247
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3211
    stringBuffer.append(TEXT_696);
3248
    stringBuffer.append(TEXT_708);
3212
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3249
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3213
    stringBuffer.append(positiveOffsetCorrection);
3250
    stringBuffer.append(positiveOffsetCorrection);
3214
    stringBuffer.append(TEXT_697);
3251
    stringBuffer.append(TEXT_709);
3215
    stringBuffer.append(genFeature.getCapName());
3252
    stringBuffer.append(genFeature.getCapName());
3216
    stringBuffer.append(TEXT_698);
3253
    stringBuffer.append(TEXT_710);
3217
    stringBuffer.append(genFeature.getCapName());
3254
    stringBuffer.append(genFeature.getCapName());
3218
    stringBuffer.append(TEXT_699);
3255
    stringBuffer.append(TEXT_711);
3219
    stringBuffer.append(genFeature.getCapName());
3256
    stringBuffer.append(genFeature.getCapName());
3220
    stringBuffer.append(TEXT_700);
3257
    stringBuffer.append(TEXT_712);
3221
    }
3258
    }
3222
    stringBuffer.append(TEXT_701);
3259
    stringBuffer.append(TEXT_713);
3223
    } else {
3260
    } else {
3224
    if (!genModel.isSuppressNotification()) {
3261
    if (!genModel.isSuppressNotification()) {
3225
    stringBuffer.append(TEXT_702);
3262
    stringBuffer.append(TEXT_714);
3226
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3263
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3227
    stringBuffer.append(TEXT_703);
3264
    stringBuffer.append(TEXT_715);
3228
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3265
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3229
    stringBuffer.append(TEXT_704);
3266
    stringBuffer.append(TEXT_716);
3230
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3267
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3231
    stringBuffer.append(positiveOffsetCorrection);
3268
    stringBuffer.append(positiveOffsetCorrection);
3232
    stringBuffer.append(TEXT_705);
3269
    stringBuffer.append(TEXT_717);
3233
    stringBuffer.append(genFeature.getCapName());
3270
    stringBuffer.append(genFeature.getCapName());
3234
    stringBuffer.append(TEXT_706);
3271
    stringBuffer.append(TEXT_718);
3235
    stringBuffer.append(genFeature.getCapName());
3272
    stringBuffer.append(genFeature.getCapName());
3236
    stringBuffer.append(TEXT_707);
3273
    stringBuffer.append(TEXT_719);
3237
    }
3274
    }
3238
    }
3275
    }
3239
    } else {
3276
    } else {
3240
    if (genClass.isFlag(genFeature)) {
3277
    if (genClass.isFlag(genFeature)) {
3241
    if (!genModel.isSuppressNotification()) {
3278
    if (!genModel.isSuppressNotification()) {
3242
    if (genFeature.isBooleanType()) {
3279
    if (genFeature.isBooleanType()) {
3243
    stringBuffer.append(TEXT_708);
3280
    stringBuffer.append(TEXT_720);
3244
    stringBuffer.append(genFeature.getImportedType(genClass));
3281
    stringBuffer.append(genFeature.getImportedType(genClass));
3245
    stringBuffer.append(TEXT_709);
3282
    stringBuffer.append(TEXT_721);
3246
    stringBuffer.append(genFeature.getCapName());
3283
    stringBuffer.append(genFeature.getCapName());
3247
    stringBuffer.append(TEXT_710);
3284
    stringBuffer.append(TEXT_722);
3248
    stringBuffer.append(genClass.getFlagsField(genFeature));
3285
    stringBuffer.append(genClass.getFlagsField(genFeature));
3249
    stringBuffer.append(TEXT_711);
3286
    stringBuffer.append(TEXT_723);
3250
    stringBuffer.append(genFeature.getUpperName());
3287
    stringBuffer.append(genFeature.getUpperName());
3251
    stringBuffer.append(TEXT_712);
3288
    stringBuffer.append(TEXT_724);
3252
    } else {
3289
    } else {
3253
    stringBuffer.append(TEXT_713);
3290
    stringBuffer.append(TEXT_725);
3254
    stringBuffer.append(genFeature.getImportedType(genClass));
3291
    stringBuffer.append(genFeature.getImportedType(genClass));
3255
    stringBuffer.append(TEXT_714);
3292
    stringBuffer.append(TEXT_726);
3256
    stringBuffer.append(genFeature.getCapName());
3293
    stringBuffer.append(genFeature.getCapName());
3257
    stringBuffer.append(TEXT_715);
3294
    stringBuffer.append(TEXT_727);
3258
    stringBuffer.append(genFeature.getUpperName());
3295
    stringBuffer.append(genFeature.getUpperName());
3259
    stringBuffer.append(TEXT_716);
3296
    stringBuffer.append(TEXT_728);
3260
    stringBuffer.append(genClass.getFlagsField(genFeature));
3297
    stringBuffer.append(genClass.getFlagsField(genFeature));
3261
    stringBuffer.append(TEXT_717);
3298
    stringBuffer.append(TEXT_729);
3262
    stringBuffer.append(genFeature.getUpperName());
3299
    stringBuffer.append(genFeature.getUpperName());
3263
    stringBuffer.append(TEXT_718);
3300
    stringBuffer.append(TEXT_730);
3264
    stringBuffer.append(genFeature.getUpperName());
3301
    stringBuffer.append(genFeature.getUpperName());
3265
    stringBuffer.append(TEXT_719);
3302
    stringBuffer.append(TEXT_731);
3266
    }
3303
    }
3267
    }
3304
    }
3268
    if (genFeature.isBooleanType()) {
3305
    if (genFeature.isBooleanType()) {
3269
    stringBuffer.append(TEXT_720);
3306
    stringBuffer.append(TEXT_732);
3270
    stringBuffer.append(genFeature.getCapName());
3307
    stringBuffer.append(genFeature.getCapName());
3271
    stringBuffer.append(TEXT_721);
3308
    stringBuffer.append(TEXT_733);
3272
    stringBuffer.append(genClass.getFlagsField(genFeature));
3309
    stringBuffer.append(genClass.getFlagsField(genFeature));
3273
    stringBuffer.append(TEXT_722);
3310
    stringBuffer.append(TEXT_734);
3274
    stringBuffer.append(genFeature.getUpperName());
3311
    stringBuffer.append(genFeature.getUpperName());
3275
    stringBuffer.append(TEXT_723);
3312
    stringBuffer.append(TEXT_735);
3276
    stringBuffer.append(genClass.getFlagsField(genFeature));
3313
    stringBuffer.append(genClass.getFlagsField(genFeature));
3277
    stringBuffer.append(TEXT_724);
3314
    stringBuffer.append(TEXT_736);
3278
    stringBuffer.append(genFeature.getUpperName());
3315
    stringBuffer.append(genFeature.getUpperName());
3279
    stringBuffer.append(TEXT_725);
3316
    stringBuffer.append(TEXT_737);
3280
    } else {
3317
    } else {
3281
    stringBuffer.append(TEXT_726);
3318
    stringBuffer.append(TEXT_738);
3282
    stringBuffer.append(genFeature.getCapName());
3319
    stringBuffer.append(genFeature.getCapName());
3283
    stringBuffer.append(TEXT_727);
3320
    stringBuffer.append(TEXT_739);
3284
    stringBuffer.append(genFeature.getCapName());
3321
    stringBuffer.append(genFeature.getCapName());
3285
    stringBuffer.append(TEXT_728);
3322
    stringBuffer.append(TEXT_740);
3286
    stringBuffer.append(genFeature.getUpperName());
3323
    stringBuffer.append(genFeature.getUpperName());
3287
    stringBuffer.append(TEXT_729);
3324
    stringBuffer.append(TEXT_741);
3288
    stringBuffer.append(genClass.getFlagsField(genFeature));
3325
    stringBuffer.append(genClass.getFlagsField(genFeature));
3289
    stringBuffer.append(TEXT_730);
3326
    stringBuffer.append(TEXT_742);
3290
    stringBuffer.append(genClass.getFlagsField(genFeature));
3327
    stringBuffer.append(genClass.getFlagsField(genFeature));
3291
    stringBuffer.append(TEXT_731);
3328
    stringBuffer.append(TEXT_743);
3292
    stringBuffer.append(genFeature.getUpperName());
3329
    stringBuffer.append(genFeature.getUpperName());
3293
    stringBuffer.append(TEXT_732);
3330
    stringBuffer.append(TEXT_744);
3294
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) {
3331
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) {
3295
    stringBuffer.append(TEXT_733);
3332
    stringBuffer.append(TEXT_745);
3296
    stringBuffer.append(genFeature.getCapName());
3333
    stringBuffer.append(genFeature.getCapName());
3297
    stringBuffer.append(TEXT_734);
3334
    stringBuffer.append(TEXT_746);
3298
    } else {
3335
    } else {
3299
    stringBuffer.append(genFeature.getImportedType(genClass));
3336
    stringBuffer.append(genFeature.getImportedType(genClass));
3300
    stringBuffer.append(TEXT_735);
3337
    stringBuffer.append(TEXT_747);
3301
    stringBuffer.append(genFeature.getCapName());
3338
    stringBuffer.append(genFeature.getCapName());
3302
    stringBuffer.append(TEXT_736);
3339
    stringBuffer.append(TEXT_748);
3303
    }
3340
    }
3304
    stringBuffer.append(TEXT_737);
3341
    stringBuffer.append(TEXT_749);
3305
    stringBuffer.append(genFeature.getUpperName());
3342
    stringBuffer.append(genFeature.getUpperName());
3306
    stringBuffer.append(TEXT_738);
3343
    stringBuffer.append(TEXT_750);
3307
    }
3344
    }
3308
    } else {
3345
    } else {
3309
    if (!genModel.isVirtualDelegation() || genFeature.isPrimitiveType()) {
3346
    if (!genModel.isVirtualDelegation() || genFeature.isPrimitiveType()) {
3310
    if (!genModel.isSuppressNotification()) {
3347
    if (!genModel.isSuppressNotification()) {
3311
    stringBuffer.append(TEXT_739);
3348
    stringBuffer.append(TEXT_751);
3312
    stringBuffer.append(genFeature.getImportedType(genClass));
3349
    stringBuffer.append(genFeature.getImportedType(genClass));
3313
    stringBuffer.append(TEXT_740);
3350
    stringBuffer.append(TEXT_752);
3314
    stringBuffer.append(genFeature.getCapName());
3351
    stringBuffer.append(genFeature.getCapName());
3315
    stringBuffer.append(TEXT_741);
3352
    stringBuffer.append(TEXT_753);
3316
    stringBuffer.append(genFeature.getSafeName());
3353
    stringBuffer.append(genFeature.getSafeName());
3317
    stringBuffer.append(TEXT_742);
3354
    stringBuffer.append(TEXT_754);
3318
    }
3355
    }
3319
    }
3356
    }
3320
    if (genFeature.isEnumType()) {
3357
    if (genFeature.isEnumType()) {
3321
    if (genModel.isVirtualDelegation()) {
3358
    if (genModel.isVirtualDelegation()) {
3322
    stringBuffer.append(TEXT_743);
3359
    stringBuffer.append(TEXT_755);
3323
    stringBuffer.append(genFeature.getImportedType(genClass));
3360
    stringBuffer.append(genFeature.getImportedType(genClass));
3324
    stringBuffer.append(TEXT_744);
3361
    stringBuffer.append(TEXT_756);
3325
    stringBuffer.append(genFeature.getSafeName());
3362
    stringBuffer.append(genFeature.getSafeName());
3326
    stringBuffer.append(TEXT_745);
3363
    stringBuffer.append(TEXT_757);
3327
    stringBuffer.append(genFeature.getCapName());
3364
    stringBuffer.append(genFeature.getCapName());
3328
    stringBuffer.append(TEXT_746);
3365
    stringBuffer.append(TEXT_758);
3329
    stringBuffer.append(genFeature.getEDefault());
3366
    stringBuffer.append(genFeature.getEDefault());
3330
    stringBuffer.append(TEXT_747);
3367
    stringBuffer.append(TEXT_759);
3331
    stringBuffer.append(genFeature.getCapName());
3368
    stringBuffer.append(genFeature.getCapName());
3332
    stringBuffer.append(TEXT_748);
3369
    stringBuffer.append(TEXT_760);
3333
    } else {
3370
    } else {
3334
    stringBuffer.append(TEXT_749);
3371
    stringBuffer.append(TEXT_761);
3335
    stringBuffer.append(genFeature.getSafeName());
3372
    stringBuffer.append(genFeature.getSafeName());
3336
    stringBuffer.append(TEXT_750);
3373
    stringBuffer.append(TEXT_762);
3337
    stringBuffer.append(genFeature.getCapName());
3374
    stringBuffer.append(genFeature.getCapName());
3338
    stringBuffer.append(TEXT_751);
3375
    stringBuffer.append(TEXT_763);
3339
    stringBuffer.append(genFeature.getEDefault());
3376
    stringBuffer.append(genFeature.getEDefault());
3340
    stringBuffer.append(TEXT_752);
3377
    stringBuffer.append(TEXT_764);
3341
    stringBuffer.append(genFeature.getCapName());
3378
    stringBuffer.append(genFeature.getCapName());
3342
    stringBuffer.append(TEXT_753);
3379
    stringBuffer.append(TEXT_765);
3343
    }
3380
    }
3344
    } else {
3381
    } else {
3345
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3382
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3346
    stringBuffer.append(TEXT_754);
3383
    stringBuffer.append(TEXT_766);
3347
    stringBuffer.append(genFeature.getImportedType(genClass));
3384
    stringBuffer.append(genFeature.getImportedType(genClass));
3348
    stringBuffer.append(TEXT_755);
3385
    stringBuffer.append(TEXT_767);
3349
    stringBuffer.append(genFeature.getSafeName());
3386
    stringBuffer.append(genFeature.getSafeName());
3350
    stringBuffer.append(TEXT_756);
3387
    stringBuffer.append(TEXT_768);
3351
    stringBuffer.append(genFeature.getInternalTypeCast());
3388
    stringBuffer.append(genFeature.getInternalTypeCast());
3352
    stringBuffer.append(TEXT_757);
3389
    stringBuffer.append(TEXT_769);
3353
    stringBuffer.append(genFeature.getCapName());
3390
    stringBuffer.append(genFeature.getCapName());
3354
    stringBuffer.append(TEXT_758);
3391
    stringBuffer.append(TEXT_770);
3355
    } else {
3392
    } else {
3356
    stringBuffer.append(TEXT_759);
3393
    stringBuffer.append(TEXT_771);
3357
    stringBuffer.append(genFeature.getSafeName());
3394
    stringBuffer.append(genFeature.getSafeName());
3358
    stringBuffer.append(TEXT_760);
3395
    stringBuffer.append(TEXT_772);
3359
    stringBuffer.append(genFeature.getInternalTypeCast());
3396
    stringBuffer.append(genFeature.getInternalTypeCast());
3360
    stringBuffer.append(TEXT_761);
3397
    stringBuffer.append(TEXT_773);
3361
    stringBuffer.append(genFeature.getCapName());
3398
    stringBuffer.append(genFeature.getCapName());
3362
    stringBuffer.append(TEXT_762);
3399
    stringBuffer.append(TEXT_774);
3363
    }
3400
    }
3364
    }
3401
    }
3365
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3402
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3366
    stringBuffer.append(TEXT_763);
3403
    stringBuffer.append(TEXT_775);
3367
    stringBuffer.append(genFeature.getCapName());
3404
    stringBuffer.append(genFeature.getCapName());
3368
    stringBuffer.append(TEXT_764);
3405
    stringBuffer.append(TEXT_776);
3369
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3406
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3370
    stringBuffer.append(positiveOffsetCorrection);
3407
    stringBuffer.append(positiveOffsetCorrection);
3371
    stringBuffer.append(TEXT_765);
3408
    stringBuffer.append(TEXT_777);
3372
    stringBuffer.append(genFeature.getSafeName());
3409
    stringBuffer.append(genFeature.getSafeName());
3373
    stringBuffer.append(TEXT_766);
3410
    stringBuffer.append(TEXT_778);
3374
    }
3411
    }
3375
    }
3412
    }
3376
    if (genFeature.isUnsettable()) {
3413
    if (genFeature.isUnsettable()) {
3377
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3414
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3378
    stringBuffer.append(TEXT_767);
3415
    stringBuffer.append(TEXT_779);
3379
    stringBuffer.append(genFeature.getCapName());
3416
    stringBuffer.append(genFeature.getCapName());
3380
    stringBuffer.append(TEXT_768);
3417
    stringBuffer.append(TEXT_780);
3381
    } else if (genClass.isESetFlag(genFeature)) {
3418
    } else if (genClass.isESetFlag(genFeature)) {
3382
    if (!genModel.isSuppressNotification()) {
3419
    if (!genModel.isSuppressNotification()) {
3383
    stringBuffer.append(TEXT_769);
3420
    stringBuffer.append(TEXT_781);
3384
    stringBuffer.append(genFeature.getCapName());
3421
    stringBuffer.append(genFeature.getCapName());
3385
    stringBuffer.append(TEXT_770);
3422
    stringBuffer.append(TEXT_782);
3386
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3423
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3387
    stringBuffer.append(TEXT_771);
3424
    stringBuffer.append(TEXT_783);
3388
    stringBuffer.append(genFeature.getUpperName());
3425
    stringBuffer.append(genFeature.getUpperName());
3389
    stringBuffer.append(TEXT_772);
3426
    stringBuffer.append(TEXT_784);
3390
    }
3427
    }
3391
    stringBuffer.append(TEXT_773);
3428
    stringBuffer.append(TEXT_785);
3392
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3429
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3393
    stringBuffer.append(TEXT_774);
3430
    stringBuffer.append(TEXT_786);
3394
    stringBuffer.append(genFeature.getUpperName());
3431
    stringBuffer.append(genFeature.getUpperName());
3395
    stringBuffer.append(TEXT_775);
3432
    stringBuffer.append(TEXT_787);
3396
    } else {
3433
    } else {
3397
    if (!genModel.isSuppressNotification()) {
3434
    if (!genModel.isSuppressNotification()) {
3398
    stringBuffer.append(TEXT_776);
3435
    stringBuffer.append(TEXT_788);
3399
    stringBuffer.append(genFeature.getCapName());
3436
    stringBuffer.append(genFeature.getCapName());
3400
    stringBuffer.append(TEXT_777);
3437
    stringBuffer.append(TEXT_789);
3401
    stringBuffer.append(genFeature.getUncapName());
3438
    stringBuffer.append(genFeature.getUncapName());
3402
    stringBuffer.append(TEXT_778);
3439
    stringBuffer.append(TEXT_790);
3403
    }
3440
    }
3404
    stringBuffer.append(TEXT_779);
3441
    stringBuffer.append(TEXT_791);
3405
    stringBuffer.append(genFeature.getUncapName());
3442
    stringBuffer.append(genFeature.getUncapName());
3406
    stringBuffer.append(TEXT_780);
3443
    stringBuffer.append(TEXT_792);
3407
    }
3444
    }
3408
    if (!genModel.isSuppressNotification()) {
3445
    if (!genModel.isSuppressNotification()) {
3409
    stringBuffer.append(TEXT_781);
3446
    stringBuffer.append(TEXT_793);
3410
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3447
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3411
    stringBuffer.append(TEXT_782);
3448
    stringBuffer.append(TEXT_794);
3412
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3449
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3413
    stringBuffer.append(TEXT_783);
3450
    stringBuffer.append(TEXT_795);
3414
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3451
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3415
    stringBuffer.append(positiveOffsetCorrection);
3452
    stringBuffer.append(positiveOffsetCorrection);
3416
    stringBuffer.append(TEXT_784);
3453
    stringBuffer.append(TEXT_796);
3417
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3454
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3418
    stringBuffer.append(TEXT_785);
3455
    stringBuffer.append(TEXT_797);
3419
    stringBuffer.append(genFeature.getEDefault());
3456
    stringBuffer.append(genFeature.getEDefault());
3420
    stringBuffer.append(TEXT_786);
3457
    stringBuffer.append(TEXT_798);
3421
    stringBuffer.append(genFeature.getCapName());
3458
    stringBuffer.append(genFeature.getCapName());
3422
    } else {
3459
    } else {
3423
    stringBuffer.append(TEXT_787);
3460
    stringBuffer.append(TEXT_799);
3424
    stringBuffer.append(genFeature.getCapName());
3461
    stringBuffer.append(genFeature.getCapName());
3425
    }
3462
    }
3426
    stringBuffer.append(TEXT_788);
3463
    stringBuffer.append(TEXT_800);
3427
    if (genClass.isFlag(genFeature)) {
3464
    if (genClass.isFlag(genFeature)) {
3428
    stringBuffer.append(TEXT_789);
3465
    stringBuffer.append(TEXT_801);
3429
    stringBuffer.append(genFeature.getCapName());
3466
    stringBuffer.append(genFeature.getCapName());
3430
    } else {
3467
    } else {
3431
    stringBuffer.append(genFeature.getSafeName());
3468
    stringBuffer.append(genFeature.getSafeName());
3432
    }
3469
    }
3433
    stringBuffer.append(TEXT_790);
3470
    stringBuffer.append(TEXT_802);
3434
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3471
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3435
    stringBuffer.append(TEXT_791);
3472
    stringBuffer.append(TEXT_803);
3436
    } else {
3473
    } else {
3437
    stringBuffer.append(TEXT_792);
3474
    stringBuffer.append(TEXT_804);
3438
    stringBuffer.append(genFeature.getCapName());
3475
    stringBuffer.append(genFeature.getCapName());
3439
    stringBuffer.append(TEXT_793);
3476
    stringBuffer.append(TEXT_805);
3440
    }
3477
    }
3441
    stringBuffer.append(TEXT_794);
3478
    stringBuffer.append(TEXT_806);
3442
    }
3479
    }
3443
    } else {
3480
    } else {
3444
    if (!genModel.isSuppressNotification()) {
3481
    if (!genModel.isSuppressNotification()) {
3445
    stringBuffer.append(TEXT_795);
3482
    stringBuffer.append(TEXT_807);
3446
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3483
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3447
    stringBuffer.append(TEXT_796);
3484
    stringBuffer.append(TEXT_808);
3448
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3485
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3449
    stringBuffer.append(TEXT_797);
3486
    stringBuffer.append(TEXT_809);
3450
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3487
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3451
    stringBuffer.append(positiveOffsetCorrection);
3488
    stringBuffer.append(positiveOffsetCorrection);
3452
    stringBuffer.append(TEXT_798);
3489
    stringBuffer.append(TEXT_810);
3453
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3490
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3454
    stringBuffer.append(TEXT_799);
3491
    stringBuffer.append(TEXT_811);
3455
    stringBuffer.append(genFeature.getCapName());
3492
    stringBuffer.append(genFeature.getCapName());
3456
    stringBuffer.append(TEXT_800);
3493
    stringBuffer.append(TEXT_812);
3457
    stringBuffer.append(genFeature.getEDefault());
3494
    stringBuffer.append(genFeature.getEDefault());
3458
    stringBuffer.append(TEXT_801);
3495
    stringBuffer.append(TEXT_813);
3459
    stringBuffer.append(genFeature.getCapName());
3496
    stringBuffer.append(genFeature.getCapName());
3460
    } else {
3497
    } else {
3461
    stringBuffer.append(TEXT_802);
3498
    stringBuffer.append(TEXT_814);
3462
    stringBuffer.append(genFeature.getCapName());
3499
    stringBuffer.append(genFeature.getCapName());
3463
    }
3500
    }
3464
    stringBuffer.append(TEXT_803);
3501
    stringBuffer.append(TEXT_815);
3465
    if (genClass.isFlag(genFeature)) {
3502
    if (genClass.isFlag(genFeature)) {
3466
    stringBuffer.append(TEXT_804);
3503
    stringBuffer.append(TEXT_816);
3467
    stringBuffer.append(genFeature.getCapName());
3504
    stringBuffer.append(genFeature.getCapName());
3468
    } else {
3505
    } else {
3469
    stringBuffer.append(genFeature.getSafeName());
3506
    stringBuffer.append(genFeature.getSafeName());
3470
    }
3507
    }
3471
    stringBuffer.append(TEXT_805);
3508
    stringBuffer.append(TEXT_817);
3472
    }
3509
    }
3473
    }
3510
    }
3474
    }
3511
    }
3475
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
3512
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
3476
    if (delegateFeature.isWrappedFeatureMapType()) {
3513
    if (delegateFeature.isWrappedFeatureMapType()) {
3477
    stringBuffer.append(TEXT_806);
3514
    stringBuffer.append(TEXT_818);
3478
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
3515
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
3479
    stringBuffer.append(TEXT_807);
3516
    stringBuffer.append(TEXT_819);
3480
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
3517
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
3481
    stringBuffer.append(TEXT_808);
3518
    stringBuffer.append(TEXT_820);
3482
    stringBuffer.append(delegateFeature.getAccessorName());
3519
    stringBuffer.append(delegateFeature.getAccessorName());
3483
    stringBuffer.append(TEXT_809);
3520
    stringBuffer.append(TEXT_821);
3484
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3521
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3485
    stringBuffer.append(TEXT_810);
3522
    stringBuffer.append(TEXT_822);
3486
    if (genFeature.isPrimitiveType()) {
3523
    if (genFeature.isPrimitiveType()) {
3487
    stringBuffer.append(TEXT_811);
3524
    stringBuffer.append(TEXT_823);
3488
    stringBuffer.append(genFeature.getObjectType(genClass));
3525
    stringBuffer.append(genFeature.getObjectType(genClass));
3489
    stringBuffer.append(TEXT_812);
3526
    stringBuffer.append(TEXT_824);
3490
    }
3527
    }
3491
    stringBuffer.append(TEXT_813);
3528
    stringBuffer.append(TEXT_825);
3492
    stringBuffer.append(genFeature.getCapName());
3529
    stringBuffer.append(genFeature.getCapName());
3493
    if (genFeature.isPrimitiveType()) {
3530
    if (genFeature.isPrimitiveType()) {
3494
    stringBuffer.append(TEXT_814);
3531
    stringBuffer.append(TEXT_826);
3495
    }
3532
    }
3496
    stringBuffer.append(TEXT_815);
3533
    stringBuffer.append(TEXT_827);
3497
    } else {
3534
    } else {
3498
    stringBuffer.append(TEXT_816);
3535
    stringBuffer.append(TEXT_828);
3499
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
3536
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
3500
    stringBuffer.append(TEXT_817);
3537
    stringBuffer.append(TEXT_829);
3501
    stringBuffer.append(delegateFeature.getAccessorName());
3538
    stringBuffer.append(delegateFeature.getAccessorName());
3502
    stringBuffer.append(TEXT_818);
3539
    stringBuffer.append(TEXT_830);
3503
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3540
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3504
    stringBuffer.append(TEXT_819);
3541
    stringBuffer.append(TEXT_831);
3505
    if (genFeature.isPrimitiveType()) {
3542
    if (genFeature.isPrimitiveType()) {
3506
    stringBuffer.append(TEXT_820);
3543
    stringBuffer.append(TEXT_832);
3507
    stringBuffer.append(genFeature.getObjectType(genClass));
3544
    stringBuffer.append(genFeature.getObjectType(genClass));
3508
    stringBuffer.append(TEXT_821);
3545
    stringBuffer.append(TEXT_833);
3509
    }
3546
    }
3510
    stringBuffer.append(TEXT_822);
3547
    stringBuffer.append(TEXT_834);
3511
    stringBuffer.append(genFeature.getCapName());
3548
    stringBuffer.append(genFeature.getCapName());
3512
    if (genFeature.isPrimitiveType()) {
3549
    if (genFeature.isPrimitiveType()) {
3513
    stringBuffer.append(TEXT_823);
3550
    stringBuffer.append(TEXT_835);
3514
    }
3551
    }
3515
    stringBuffer.append(TEXT_824);
3552
    stringBuffer.append(TEXT_836);
3516
    }
3553
    }
3517
    } else if (setAccessorOperation != null) {
3554
    } else if (setAccessorOperation != null) {
3518
    stringBuffer.append(TEXT_825);
3555
    stringBuffer.append(TEXT_837);
3519
    stringBuffer.append(setAccessorOperation.getBody(genModel.getIndentation(stringBuffer)));
3556
    stringBuffer.append(setAccessorOperation.getBody(genModel.getIndentation(stringBuffer)));
3520
    } else {
3557
    } else {
3521
    stringBuffer.append(TEXT_826);
3558
    stringBuffer.append(TEXT_838);
3522
    stringBuffer.append(genFeature.getFormattedName());
3559
    stringBuffer.append(genFeature.getFormattedName());
3523
    stringBuffer.append(TEXT_827);
3560
    stringBuffer.append(TEXT_839);
3524
    stringBuffer.append(genFeature.getFeatureKind());
3561
    stringBuffer.append(genFeature.getFeatureKind());
3525
    stringBuffer.append(TEXT_828);
3562
    stringBuffer.append(TEXT_840);
3526
    //Class/setGenFeature.todo.override.javajetinc
3563
    //Class/setGenFeature.todo.override.javajetinc
3527
    }
3564
    }
3528
    stringBuffer.append(TEXT_829);
3565
    stringBuffer.append(TEXT_841);
3529
    }
3566
    }
3530
    //Class/setGenFeature.override.javajetinc
3567
    //Class/setGenFeature.override.javajetinc
3531
    }
3568
    }
3532
    if (isImplementation && !genModel.isReflectiveDelegation() && genFeature.isBasicUnset()) {
3569
    if (isImplementation && !genModel.isReflectiveDelegation() && genFeature.isBasicUnset()) {
3533
    stringBuffer.append(TEXT_830);
3570
    stringBuffer.append(TEXT_842);
3534
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/basicUnsetGenFeature.annotations.insert.javajetinc
3571
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/basicUnsetGenFeature.annotations.insert.javajetinc
3535
    }
3572
    }
3536
    stringBuffer.append(TEXT_831);
3573
    stringBuffer.append(TEXT_843);
3537
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
3574
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
3538
    stringBuffer.append(TEXT_832);
3575
    stringBuffer.append(TEXT_844);
3539
    stringBuffer.append(genFeature.getAccessorName());
3576
    stringBuffer.append(genFeature.getAccessorName());
3540
    stringBuffer.append(TEXT_833);
3577
    stringBuffer.append(TEXT_845);
3541
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
3578
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
3542
    stringBuffer.append(TEXT_834);
3579
    stringBuffer.append(TEXT_846);
3543
    if (!genFeature.isVolatile()) {
3580
    if (!genFeature.isVolatile()) {
3581
    stringBuffer.append(TEXT_847);
3582
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3583
    stringBuffer.append(TEXT_848);
3544
    if (genModel.isVirtualDelegation()) {
3584
    if (genModel.isVirtualDelegation()) {
3545
    if (!genModel.isSuppressNotification()) {
3585
    if (!genModel.isSuppressNotification()) {
3546
    stringBuffer.append(TEXT_835);
3586
    stringBuffer.append(TEXT_849);
3547
    stringBuffer.append(genFeature.getCapName());
3587
    stringBuffer.append(genFeature.getCapName());
3548
    stringBuffer.append(TEXT_836);
3588
    stringBuffer.append(TEXT_850);
3549
    }
3589
    }
3550
    stringBuffer.append(TEXT_837);
3590
    stringBuffer.append(TEXT_851);
3551
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3591
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3552
    stringBuffer.append(positiveOffsetCorrection);
3592
    stringBuffer.append(positiveOffsetCorrection);
3553
    stringBuffer.append(TEXT_838);
3593
    stringBuffer.append(TEXT_852);
3554
    } else {
3594
    } else {
3555
    if (!genModel.isSuppressNotification()) {
3595
    if (!genModel.isSuppressNotification()) {
3556
    stringBuffer.append(TEXT_839);
3596
    stringBuffer.append(TEXT_853);
3557
    stringBuffer.append(genFeature.getImportedType(genClass));
3597
    stringBuffer.append(genFeature.getImportedType(genClass));
3558
    stringBuffer.append(TEXT_840);
3598
    stringBuffer.append(TEXT_854);
3559
    stringBuffer.append(genFeature.getCapName());
3599
    stringBuffer.append(genFeature.getCapName());
3560
    stringBuffer.append(TEXT_841);
3600
    stringBuffer.append(TEXT_855);
3561
    stringBuffer.append(genFeature.getSafeName());
3601
    stringBuffer.append(genFeature.getSafeName());
3562
    stringBuffer.append(TEXT_842);
3602
    stringBuffer.append(TEXT_856);
3563
    }
3603
    }
3564
    stringBuffer.append(TEXT_843);
3604
    stringBuffer.append(TEXT_857);
3565
    stringBuffer.append(genFeature.getSafeName());
3605
    stringBuffer.append(genFeature.getSafeName());
3566
    stringBuffer.append(TEXT_844);
3606
    stringBuffer.append(TEXT_858);
3567
    }
3607
    }
3568
    if (genModel.isVirtualDelegation()) {
3608
    if (genModel.isVirtualDelegation()) {
3569
    if (!genModel.isSuppressNotification()) {
3609
    if (!genModel.isSuppressNotification()) {
3570
    stringBuffer.append(TEXT_845);
3610
    stringBuffer.append(TEXT_859);
3571
    stringBuffer.append(genFeature.getCapName());
3611
    stringBuffer.append(genFeature.getCapName());
3572
    stringBuffer.append(TEXT_846);
3612
    stringBuffer.append(TEXT_860);
3573
    }
3613
    }
3574
    } else if (genClass.isESetFlag(genFeature)) {
3614
    } else if (genClass.isESetFlag(genFeature)) {
3575
    if (!genModel.isSuppressNotification()) {
3615
    if (!genModel.isSuppressNotification()) {
3576
    stringBuffer.append(TEXT_847);
3616
    stringBuffer.append(TEXT_861);
3577
    stringBuffer.append(genFeature.getCapName());
3617
    stringBuffer.append(genFeature.getCapName());
3578
    stringBuffer.append(TEXT_848);
3618
    stringBuffer.append(TEXT_862);
3579
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3619
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3580
    stringBuffer.append(TEXT_849);
3620
    stringBuffer.append(TEXT_863);
3581
    stringBuffer.append(genFeature.getUpperName());
3621
    stringBuffer.append(genFeature.getUpperName());
3582
    stringBuffer.append(TEXT_850);
3622
    stringBuffer.append(TEXT_864);
3583
    }
3623
    }
3584
    stringBuffer.append(TEXT_851);
3624
    stringBuffer.append(TEXT_865);
3585
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3625
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3586
    stringBuffer.append(TEXT_852);
3626
    stringBuffer.append(TEXT_866);
3587
    stringBuffer.append(genFeature.getUpperName());
3627
    stringBuffer.append(genFeature.getUpperName());
3588
    stringBuffer.append(TEXT_853);
3628
    stringBuffer.append(TEXT_867);
3589
    } else {
3629
    } else {
3590
    if (!genModel.isSuppressNotification()) {
3630
    if (!genModel.isSuppressNotification()) {
3591
    stringBuffer.append(TEXT_854);
3631
    stringBuffer.append(TEXT_868);
3592
    stringBuffer.append(genFeature.getCapName());
3632
    stringBuffer.append(genFeature.getCapName());
3593
    stringBuffer.append(TEXT_855);
3633
    stringBuffer.append(TEXT_869);
3594
    stringBuffer.append(genFeature.getUncapName());
3634
    stringBuffer.append(genFeature.getUncapName());
3595
    stringBuffer.append(TEXT_856);
3635
    stringBuffer.append(TEXT_870);
3596
    }
3636
    }
3597
    stringBuffer.append(TEXT_857);
3637
    stringBuffer.append(TEXT_871);
3598
    stringBuffer.append(genFeature.getUncapName());
3638
    stringBuffer.append(genFeature.getUncapName());
3599
    stringBuffer.append(TEXT_858);
3639
    stringBuffer.append(TEXT_872);
3600
    }
3640
    }
3601
    if (!genModel.isSuppressNotification()) {
3641
    if (!genModel.isSuppressNotification()) {
3602
    stringBuffer.append(TEXT_859);
3642
    stringBuffer.append(TEXT_873);
3603
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3643
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3604
    stringBuffer.append(TEXT_860);
3644
    stringBuffer.append(TEXT_874);
3605
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3645
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3606
    stringBuffer.append(TEXT_861);
3646
    stringBuffer.append(TEXT_875);
3607
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3647
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3608
    stringBuffer.append(TEXT_862);
3648
    stringBuffer.append(TEXT_876);
3609
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3649
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3610
    stringBuffer.append(positiveOffsetCorrection);
3650
    stringBuffer.append(positiveOffsetCorrection);
3611
    stringBuffer.append(TEXT_863);
3651
    stringBuffer.append(TEXT_877);
3612
    if (genModel.isVirtualDelegation()) {
3652
    if (genModel.isVirtualDelegation()) {
3613
    stringBuffer.append(TEXT_864);
3653
    stringBuffer.append(TEXT_878);
3614
    stringBuffer.append(genFeature.getCapName());
3654
    stringBuffer.append(genFeature.getCapName());
3615
    stringBuffer.append(TEXT_865);
3655
    stringBuffer.append(TEXT_879);
3616
    } else {
3656
    } else {
3617
    stringBuffer.append(TEXT_866);
3657
    stringBuffer.append(TEXT_880);
3618
    stringBuffer.append(genFeature.getCapName());
3658
    stringBuffer.append(genFeature.getCapName());
3619
    }
3659
    }
3620
    stringBuffer.append(TEXT_867);
3660
    stringBuffer.append(TEXT_881);
3621
    if (genModel.isVirtualDelegation()) {
3661
    if (genModel.isVirtualDelegation()) {
3622
    stringBuffer.append(TEXT_868);
3662
    stringBuffer.append(TEXT_882);
3623
    } else {
3663
    } else {
3624
    stringBuffer.append(TEXT_869);
3664
    stringBuffer.append(TEXT_883);
3625
    stringBuffer.append(genFeature.getCapName());
3665
    stringBuffer.append(genFeature.getCapName());
3626
    stringBuffer.append(TEXT_870);
3666
    stringBuffer.append(TEXT_884);
3627
    }
3667
    }
3628
    stringBuffer.append(TEXT_871);
3668
    stringBuffer.append(TEXT_885);
3629
    }
3669
    }
3630
    } else {
3670
    } else {
3631
    stringBuffer.append(TEXT_872);
3671
    stringBuffer.append(TEXT_886);
3632
    stringBuffer.append(genFeature.getFormattedName());
3672
    stringBuffer.append(genFeature.getFormattedName());
3633
    stringBuffer.append(TEXT_873);
3673
    stringBuffer.append(TEXT_887);
3634
    stringBuffer.append(genFeature.getFeatureKind());
3674
    stringBuffer.append(genFeature.getFeatureKind());
3635
    stringBuffer.append(TEXT_874);
3675
    stringBuffer.append(TEXT_888);
3636
    //Class/basicUnsetGenFeature.todo.override.javajetinc
3676
    //Class/basicUnsetGenFeature.todo.override.javajetinc
3637
    }
3677
    }
3638
    stringBuffer.append(TEXT_875);
3678
    stringBuffer.append(TEXT_889);
3639
    //Class.basicUnsetGenFeature.override.javajetinc
3679
    //Class.basicUnsetGenFeature.override.javajetinc
3640
    }
3680
    }
3641
    if (genFeature.isUnset() && (isImplementation || !genFeature.isSuppressedUnsetVisibility())) {
3681
    if (genFeature.isUnset() && (isImplementation || !genFeature.isSuppressedUnsetVisibility())) {
3642
    if (isInterface) {
3682
    if (isInterface) {
3643
    stringBuffer.append(TEXT_876);
3683
    stringBuffer.append(TEXT_890);
3644
    stringBuffer.append(genClass.getQualifiedInterfaceName());
3684
    stringBuffer.append(genClass.getQualifiedInterfaceName());
3645
    stringBuffer.append(TEXT_877);
3685
    stringBuffer.append(TEXT_891);
3646
    stringBuffer.append(genFeature.getGetAccessor());
3686
    stringBuffer.append(genFeature.getGetAccessor());
3647
    stringBuffer.append(TEXT_878);
3687
    stringBuffer.append(TEXT_892);
3648
    stringBuffer.append(genFeature.getFormattedName());
3688
    stringBuffer.append(genFeature.getFormattedName());
3649
    stringBuffer.append(TEXT_879);
3689
    stringBuffer.append(TEXT_893);
3650
    stringBuffer.append(genFeature.getFeatureKind());
3690
    stringBuffer.append(genFeature.getFeatureKind());
3651
    stringBuffer.append(TEXT_880);
3691
    stringBuffer.append(TEXT_894);
3652
    stringBuffer.append(TEXT_881);
3692
    stringBuffer.append(TEXT_895);
3653
    if (!genFeature.isSuppressedIsSetVisibility()) {
3693
    if (!genFeature.isSuppressedIsSetVisibility()) {
3654
    stringBuffer.append(TEXT_882);
3694
    stringBuffer.append(TEXT_896);
3655
    stringBuffer.append(genFeature.getAccessorName());
3695
    stringBuffer.append(genFeature.getAccessorName());
3656
    stringBuffer.append(TEXT_883);
3696
    stringBuffer.append(TEXT_897);
3657
    }
3697
    }
3658
    stringBuffer.append(TEXT_884);
3698
    stringBuffer.append(TEXT_898);
3659
    stringBuffer.append(genFeature.getGetAccessor());
3699
    stringBuffer.append(genFeature.getGetAccessor());
3660
    stringBuffer.append(TEXT_885);
3700
    stringBuffer.append(TEXT_899);
3661
    if (!genFeature.isListType() && !genFeature.isSuppressedSetVisibility()) {
3701
    if (!genFeature.isListType() && !genFeature.isSuppressedSetVisibility()) {
3662
    stringBuffer.append(TEXT_886);
3702
    stringBuffer.append(TEXT_900);
3663
    stringBuffer.append(genFeature.getAccessorName());
3703
    stringBuffer.append(genFeature.getAccessorName());
3664
    stringBuffer.append(TEXT_887);
3704
    stringBuffer.append(TEXT_901);
3665
    stringBuffer.append(genFeature.getRawImportedBoundType());
3705
    stringBuffer.append(genFeature.getRawImportedBoundType());
3666
    stringBuffer.append(TEXT_888);
3706
    stringBuffer.append(TEXT_902);
3667
    }
3707
    }
3668
    stringBuffer.append(TEXT_889);
3708
    stringBuffer.append(TEXT_903);
3669
    //Class/unsetGenFeature.javadoc.override.javajetinc
3709
    //Class/unsetGenFeature.javadoc.override.javajetinc
3670
    } else {
3710
    } else {
3671
    stringBuffer.append(TEXT_890);
3711
    stringBuffer.append(TEXT_904);
3672
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/unsetGenFeature.annotations.insert.javajetinc
3712
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/unsetGenFeature.annotations.insert.javajetinc
3673
    }
3713
    }
3674
    }
3714
    }
3675
    if (!isImplementation) {
3715
    if (!isImplementation) {
3676
    stringBuffer.append(TEXT_891);
3716
    stringBuffer.append(TEXT_905);
3677
    stringBuffer.append(genFeature.getAccessorName());
3717
    stringBuffer.append(genFeature.getAccessorName());
3678
    stringBuffer.append(TEXT_892);
3718
    stringBuffer.append(TEXT_906);
3679
    } else {
3719
    } else {
3680
    stringBuffer.append(TEXT_893);
3720
    stringBuffer.append(TEXT_907);
3681
    stringBuffer.append(genFeature.getAccessorName());
3721
    stringBuffer.append(genFeature.getAccessorName());
3682
    if (genClass.hasCollidingUnsetAccessorOperation(genFeature)) {
3722
    if (genClass.hasCollidingUnsetAccessorOperation(genFeature)) {
3683
    stringBuffer.append(TEXT_894);
3723
    stringBuffer.append(TEXT_908);
3684
    }
3724
    }
3685
    stringBuffer.append(TEXT_895);
3725
    stringBuffer.append(TEXT_909);
3686
    if (genModel.isDynamicDelegation()) {
3726
    if (genModel.isDynamicDelegation()) {
3687
    stringBuffer.append(TEXT_896);
3727
    stringBuffer.append(TEXT_910);
3688
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3728
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3689
    stringBuffer.append(TEXT_897);
3729
    stringBuffer.append(TEXT_911);
3690
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3730
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3691
    stringBuffer.append(TEXT_898);
3731
    stringBuffer.append(TEXT_912);
3692
    } else if (genModel.isReflectiveDelegation()) {
3732
    } else if (genModel.isReflectiveDelegation()) {
3693
    stringBuffer.append(TEXT_899);
3733
    stringBuffer.append(TEXT_913);
3694
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3734
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
3695
    stringBuffer.append(TEXT_900);
3735
    stringBuffer.append(TEXT_914);
3696
    } else if (!genFeature.isVolatile()) {
3736
    } else if (!genFeature.isVolatile()) {
3737
    stringBuffer.append(TEXT_915);
3738
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3739
    stringBuffer.append(TEXT_916);
3697
    if (genFeature.isListType()) {
3740
    if (genFeature.isListType()) {
3698
    if (genModel.isVirtualDelegation()) {
3741
    if (genModel.isVirtualDelegation()) {
3699
    stringBuffer.append(TEXT_901);
3742
    stringBuffer.append(TEXT_917);
3700
    stringBuffer.append(genFeature.getImportedType(genClass));
3743
    stringBuffer.append(genFeature.getImportedType(genClass));
3701
    stringBuffer.append(TEXT_902);
3744
    stringBuffer.append(TEXT_918);
3702
    stringBuffer.append(genFeature.getSafeName());
3745
    stringBuffer.append(genFeature.getSafeName());
3703
    stringBuffer.append(TEXT_903);
3746
    stringBuffer.append(TEXT_919);
3704
    stringBuffer.append(genFeature.getImportedType(genClass));
3747
    stringBuffer.append(genFeature.getImportedType(genClass));
3705
    stringBuffer.append(TEXT_904);
3748
    stringBuffer.append(TEXT_920);
3706
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3749
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3707
    stringBuffer.append(positiveOffsetCorrection);
3750
    stringBuffer.append(positiveOffsetCorrection);
3708
    stringBuffer.append(TEXT_905);
3751
    stringBuffer.append(TEXT_921);
3709
    }
3752
    }
3710
    stringBuffer.append(TEXT_906);
3753
    stringBuffer.append(TEXT_922);
3711
    stringBuffer.append(genFeature.getSafeName());
3754
    stringBuffer.append(genFeature.getSafeName());
3712
    stringBuffer.append(TEXT_907);
3755
    stringBuffer.append(TEXT_923);
3713
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList"));
3756
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList"));
3714
    stringBuffer.append(TEXT_908);
3757
    stringBuffer.append(TEXT_924);
3715
    stringBuffer.append(singleWildcard);
3758
    stringBuffer.append(singleWildcard);
3716
    stringBuffer.append(TEXT_909);
3759
    stringBuffer.append(TEXT_925);
3717
    stringBuffer.append(genFeature.getSafeName());
3760
    stringBuffer.append(genFeature.getSafeName());
3718
    stringBuffer.append(TEXT_910);
3761
    stringBuffer.append(TEXT_926);
3719
    } else if (genFeature.isBidirectional() || genFeature.isEffectiveContains()) {
3762
    } else if (genFeature.isBidirectional() || genFeature.isEffectiveContains()) {
3720
    if (genModel.isVirtualDelegation()) {
3763
    if (genModel.isVirtualDelegation()) {
3721
    stringBuffer.append(TEXT_911);
3764
    stringBuffer.append(TEXT_927);
3722
    stringBuffer.append(genFeature.getImportedType(genClass));
3765
    stringBuffer.append(genFeature.getImportedType(genClass));
3723
    stringBuffer.append(TEXT_912);
3766
    stringBuffer.append(TEXT_928);
3724
    stringBuffer.append(genFeature.getSafeName());
3767
    stringBuffer.append(genFeature.getSafeName());
3725
    stringBuffer.append(TEXT_913);
3768
    stringBuffer.append(TEXT_929);
3726
    stringBuffer.append(genFeature.getImportedType(genClass));
3769
    stringBuffer.append(genFeature.getImportedType(genClass));
3727
    stringBuffer.append(TEXT_914);
3770
    stringBuffer.append(TEXT_930);
3728
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3771
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3729
    stringBuffer.append(positiveOffsetCorrection);
3772
    stringBuffer.append(positiveOffsetCorrection);
3730
    stringBuffer.append(TEXT_915);
3773
    stringBuffer.append(TEXT_931);
3731
    }
3774
    }
3732
    stringBuffer.append(TEXT_916);
3775
    stringBuffer.append(TEXT_932);
3733
    stringBuffer.append(genFeature.getSafeName());
3776
    stringBuffer.append(genFeature.getSafeName());
3734
    stringBuffer.append(TEXT_917);
3777
    stringBuffer.append(TEXT_933);
3735
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
3778
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
3736
    stringBuffer.append(TEXT_918);
3779
    stringBuffer.append(TEXT_934);
3737
    if (!genFeature.isBidirectional()) {
3780
    if (!genFeature.isBidirectional()) {
3738
    stringBuffer.append(TEXT_919);
3781
    stringBuffer.append(TEXT_935);
3739
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3782
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3740
    stringBuffer.append(TEXT_920);
3783
    stringBuffer.append(TEXT_936);
3741
    stringBuffer.append(genFeature.getSafeName());
3784
    stringBuffer.append(genFeature.getSafeName());
3742
    stringBuffer.append(TEXT_921);
3785
    stringBuffer.append(TEXT_937);
3743
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3786
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3744
    stringBuffer.append(negativeOffsetCorrection);
3787
    stringBuffer.append(negativeOffsetCorrection);
3745
    stringBuffer.append(TEXT_922);
3788
    stringBuffer.append(TEXT_938);
3746
    } else { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
3789
    } else { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
3747
    stringBuffer.append(TEXT_923);
3790
    stringBuffer.append(TEXT_939);
3748
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3791
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
3749
    stringBuffer.append(TEXT_924);
3792
    stringBuffer.append(TEXT_940);
3750
    stringBuffer.append(genFeature.getSafeName());
3793
    stringBuffer.append(genFeature.getSafeName());
3751
    stringBuffer.append(TEXT_925);
3794
    stringBuffer.append(TEXT_941);
3752
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
3795
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
3753
    stringBuffer.append(reverseOffsetCorrection);
3796
    stringBuffer.append(reverseOffsetCorrection);
3754
    stringBuffer.append(TEXT_926);
3797
    stringBuffer.append(TEXT_942);
3755
    stringBuffer.append(targetClass.getImportedInterfaceName());
3798
    stringBuffer.append(targetClass.getImportedInterfaceName());
3756
    stringBuffer.append(TEXT_927);
3799
    stringBuffer.append(TEXT_943);
3757
    }
3800
    }
3758
    stringBuffer.append(TEXT_928);
3801
    stringBuffer.append(TEXT_944);
3759
    stringBuffer.append(genFeature.getAccessorName());
3802
    stringBuffer.append(genFeature.getAccessorName());
3760
    stringBuffer.append(TEXT_929);
3803
    stringBuffer.append(TEXT_945);
3761
    if (genModel.isVirtualDelegation()) {
3804
    if (genModel.isVirtualDelegation()) {
3762
    stringBuffer.append(TEXT_930);
3805
    stringBuffer.append(TEXT_946);
3763
    stringBuffer.append(genFeature.getCapName());
3806
    stringBuffer.append(genFeature.getCapName());
3764
    stringBuffer.append(TEXT_931);
3807
    stringBuffer.append(TEXT_947);
3765
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3808
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3766
    stringBuffer.append(positiveOffsetCorrection);
3809
    stringBuffer.append(positiveOffsetCorrection);
3767
    stringBuffer.append(TEXT_932);
3810
    stringBuffer.append(TEXT_948);
3768
    } else if (genClass.isESetFlag(genFeature)) {
3811
    } else if (genClass.isESetFlag(genFeature)) {
3769
    if (!genModel.isSuppressNotification()) {
3812
    if (!genModel.isSuppressNotification()) {
3770
    stringBuffer.append(TEXT_933);
3813
    stringBuffer.append(TEXT_949);
3771
    stringBuffer.append(genFeature.getCapName());
3814
    stringBuffer.append(genFeature.getCapName());
3772
    stringBuffer.append(TEXT_934);
3815
    stringBuffer.append(TEXT_950);
3773
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3816
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3774
    stringBuffer.append(TEXT_935);
3817
    stringBuffer.append(TEXT_951);
3775
    stringBuffer.append(genFeature.getUpperName());
3818
    stringBuffer.append(genFeature.getUpperName());
3776
    stringBuffer.append(TEXT_936);
3819
    stringBuffer.append(TEXT_952);
3777
    }
3820
    }
3778
    stringBuffer.append(TEXT_937);
3821
    stringBuffer.append(TEXT_953);
3779
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3822
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3780
    stringBuffer.append(TEXT_938);
3823
    stringBuffer.append(TEXT_954);
3781
    stringBuffer.append(genFeature.getUpperName());
3824
    stringBuffer.append(genFeature.getUpperName());
3782
    stringBuffer.append(TEXT_939);
3825
    stringBuffer.append(TEXT_955);
3783
    } else {
3826
    } else {
3784
    if (!genModel.isSuppressNotification()) {
3827
    if (!genModel.isSuppressNotification()) {
3785
    stringBuffer.append(TEXT_940);
3828
    stringBuffer.append(TEXT_956);
3786
    stringBuffer.append(genFeature.getCapName());
3829
    stringBuffer.append(genFeature.getCapName());
3787
    stringBuffer.append(TEXT_941);
3830
    stringBuffer.append(TEXT_957);
3788
    stringBuffer.append(genFeature.getUncapName());
3831
    stringBuffer.append(genFeature.getUncapName());
3789
    stringBuffer.append(TEXT_942);
3832
    stringBuffer.append(TEXT_958);
3790
    }
3833
    }
3791
    stringBuffer.append(TEXT_943);
3834
    stringBuffer.append(TEXT_959);
3792
    stringBuffer.append(genFeature.getUncapName());
3835
    stringBuffer.append(genFeature.getUncapName());
3793
    stringBuffer.append(TEXT_944);
3836
    stringBuffer.append(TEXT_960);
3794
    }
3837
    }
3795
    if (!genModel.isSuppressNotification()) {
3838
    if (!genModel.isSuppressNotification()) {
3796
    stringBuffer.append(TEXT_945);
3839
    stringBuffer.append(TEXT_961);
3797
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3840
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3798
    stringBuffer.append(TEXT_946);
3841
    stringBuffer.append(TEXT_962);
3799
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3842
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3800
    stringBuffer.append(TEXT_947);
3843
    stringBuffer.append(TEXT_963);
3801
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3844
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3802
    stringBuffer.append(positiveOffsetCorrection);
3845
    stringBuffer.append(positiveOffsetCorrection);
3803
    stringBuffer.append(TEXT_948);
3846
    stringBuffer.append(TEXT_964);
3804
    stringBuffer.append(genFeature.getCapName());
3847
    stringBuffer.append(genFeature.getCapName());
3805
    stringBuffer.append(TEXT_949);
3848
    stringBuffer.append(TEXT_965);
3806
    }
3849
    }
3807
    stringBuffer.append(TEXT_950);
3850
    stringBuffer.append(TEXT_966);
3808
    } else {
3851
    } else {
3809
    if (genClass.isFlag(genFeature)) {
3852
    if (genClass.isFlag(genFeature)) {
3810
    if (!genModel.isSuppressNotification()) {
3853
    if (!genModel.isSuppressNotification()) {
3811
    if (genFeature.isBooleanType()) {
3854
    if (genFeature.isBooleanType()) {
3812
    stringBuffer.append(TEXT_951);
3855
    stringBuffer.append(TEXT_967);
3813
    stringBuffer.append(genFeature.getImportedType(genClass));
3856
    stringBuffer.append(genFeature.getImportedType(genClass));
3814
    stringBuffer.append(TEXT_952);
3857
    stringBuffer.append(TEXT_968);
3815
    stringBuffer.append(genFeature.getCapName());
3858
    stringBuffer.append(genFeature.getCapName());
3816
    stringBuffer.append(TEXT_953);
3859
    stringBuffer.append(TEXT_969);
3817
    stringBuffer.append(genClass.getFlagsField(genFeature));
3860
    stringBuffer.append(genClass.getFlagsField(genFeature));
3818
    stringBuffer.append(TEXT_954);
3861
    stringBuffer.append(TEXT_970);
3819
    stringBuffer.append(genFeature.getUpperName());
3862
    stringBuffer.append(genFeature.getUpperName());
3820
    stringBuffer.append(TEXT_955);
3863
    stringBuffer.append(TEXT_971);
3821
    } else {
3864
    } else {
3822
    stringBuffer.append(TEXT_956);
3865
    stringBuffer.append(TEXT_972);
3823
    stringBuffer.append(genFeature.getImportedType(genClass));
3866
    stringBuffer.append(genFeature.getImportedType(genClass));
3824
    stringBuffer.append(TEXT_957);
3867
    stringBuffer.append(TEXT_973);
3825
    stringBuffer.append(genFeature.getCapName());
3868
    stringBuffer.append(genFeature.getCapName());
3826
    stringBuffer.append(TEXT_958);
3869
    stringBuffer.append(TEXT_974);
3827
    stringBuffer.append(genFeature.getUpperName());
3870
    stringBuffer.append(genFeature.getUpperName());
3828
    stringBuffer.append(TEXT_959);
3871
    stringBuffer.append(TEXT_975);
3829
    stringBuffer.append(genClass.getFlagsField(genFeature));
3872
    stringBuffer.append(genClass.getFlagsField(genFeature));
3830
    stringBuffer.append(TEXT_960);
3873
    stringBuffer.append(TEXT_976);
3831
    stringBuffer.append(genFeature.getUpperName());
3874
    stringBuffer.append(genFeature.getUpperName());
3832
    stringBuffer.append(TEXT_961);
3875
    stringBuffer.append(TEXT_977);
3833
    stringBuffer.append(genFeature.getUpperName());
3876
    stringBuffer.append(genFeature.getUpperName());
3834
    stringBuffer.append(TEXT_962);
3877
    stringBuffer.append(TEXT_978);
3835
    }
3878
    }
3836
    }
3879
    }
3837
    } else if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3880
    } else if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3838
    stringBuffer.append(TEXT_963);
3881
    stringBuffer.append(TEXT_979);
3839
    stringBuffer.append(genFeature.getCapName());
3882
    stringBuffer.append(genFeature.getCapName());
3840
    stringBuffer.append(TEXT_964);
3883
    stringBuffer.append(TEXT_980);
3841
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3884
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3842
    stringBuffer.append(positiveOffsetCorrection);
3885
    stringBuffer.append(positiveOffsetCorrection);
3843
    stringBuffer.append(TEXT_965);
3886
    stringBuffer.append(TEXT_981);
3844
    } else {
3887
    } else {
3845
    if (!genModel.isSuppressNotification()) {
3888
    if (!genModel.isSuppressNotification()) {
3846
    stringBuffer.append(TEXT_966);
3889
    stringBuffer.append(TEXT_982);
3847
    stringBuffer.append(genFeature.getImportedType(genClass));
3890
    stringBuffer.append(genFeature.getImportedType(genClass));
3848
    stringBuffer.append(TEXT_967);
3891
    stringBuffer.append(TEXT_983);
3849
    stringBuffer.append(genFeature.getCapName());
3892
    stringBuffer.append(genFeature.getCapName());
3850
    stringBuffer.append(TEXT_968);
3893
    stringBuffer.append(TEXT_984);
3851
    stringBuffer.append(genFeature.getSafeName());
3894
    stringBuffer.append(genFeature.getSafeName());
3852
    stringBuffer.append(TEXT_969);
3895
    stringBuffer.append(TEXT_985);
3853
    }
3896
    }
3854
    }
3897
    }
3855
    if (!genModel.isSuppressNotification()) {
3898
    if (!genModel.isSuppressNotification()) {
3856
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3899
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3857
    stringBuffer.append(TEXT_970);
3900
    stringBuffer.append(TEXT_986);
3858
    stringBuffer.append(genFeature.getCapName());
3901
    stringBuffer.append(genFeature.getCapName());
3859
    stringBuffer.append(TEXT_971);
3902
    stringBuffer.append(TEXT_987);
3860
    } else if (genClass.isESetFlag(genFeature)) {
3903
    } else if (genClass.isESetFlag(genFeature)) {
3861
    stringBuffer.append(TEXT_972);
3904
    stringBuffer.append(TEXT_988);
3862
    stringBuffer.append(genFeature.getCapName());
3905
    stringBuffer.append(genFeature.getCapName());
3863
    stringBuffer.append(TEXT_973);
3906
    stringBuffer.append(TEXT_989);
3864
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3907
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3865
    stringBuffer.append(TEXT_974);
3908
    stringBuffer.append(TEXT_990);
3866
    stringBuffer.append(genFeature.getUpperName());
3909
    stringBuffer.append(genFeature.getUpperName());
3867
    stringBuffer.append(TEXT_975);
3910
    stringBuffer.append(TEXT_991);
3868
    } else {
3911
    } else {
3869
    stringBuffer.append(TEXT_976);
3912
    stringBuffer.append(TEXT_992);
3870
    stringBuffer.append(genFeature.getCapName());
3913
    stringBuffer.append(genFeature.getCapName());
3871
    stringBuffer.append(TEXT_977);
3914
    stringBuffer.append(TEXT_993);
3872
    stringBuffer.append(genFeature.getUncapName());
3915
    stringBuffer.append(genFeature.getUncapName());
3873
    stringBuffer.append(TEXT_978);
3916
    stringBuffer.append(TEXT_994);
3874
    }
3917
    }
3875
    }
3918
    }
3876
    if (genFeature.isReferenceType()) {
3919
    if (genFeature.isReferenceType()) {
3877
    stringBuffer.append(TEXT_979);
3920
    stringBuffer.append(TEXT_995);
3878
    stringBuffer.append(genFeature.getSafeName());
3921
    stringBuffer.append(genFeature.getSafeName());
3879
    stringBuffer.append(TEXT_980);
3922
    stringBuffer.append(TEXT_996);
3880
    if (!genModel.isVirtualDelegation()) {
3923
    if (!genModel.isVirtualDelegation()) {
3881
    if (genClass.isESetFlag(genFeature)) {
3924
    if (genClass.isESetFlag(genFeature)) {
3882
    stringBuffer.append(TEXT_981);
3925
    stringBuffer.append(TEXT_997);
3883
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3926
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3884
    stringBuffer.append(TEXT_982);
3927
    stringBuffer.append(TEXT_998);
3885
    stringBuffer.append(genFeature.getUpperName());
3928
    stringBuffer.append(genFeature.getUpperName());
3886
    stringBuffer.append(TEXT_983);
3929
    stringBuffer.append(TEXT_999);
3887
    } else {
3930
    } else {
3888
    stringBuffer.append(TEXT_984);
3931
    stringBuffer.append(TEXT_1000);
3889
    stringBuffer.append(genFeature.getUncapName());
3932
    stringBuffer.append(genFeature.getUncapName());
3890
    stringBuffer.append(TEXT_985);
3933
    stringBuffer.append(TEXT_1001);
3891
    }
3934
    }
3892
    }
3935
    }
3893
    if (!genModel.isSuppressNotification()) {
3936
    if (!genModel.isSuppressNotification()) {
3894
    stringBuffer.append(TEXT_986);
3937
    stringBuffer.append(TEXT_1002);
3895
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3938
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3896
    stringBuffer.append(TEXT_987);
3939
    stringBuffer.append(TEXT_1003);
3897
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3940
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3898
    stringBuffer.append(TEXT_988);
3941
    stringBuffer.append(TEXT_1004);
3899
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3942
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3900
    stringBuffer.append(positiveOffsetCorrection);
3943
    stringBuffer.append(positiveOffsetCorrection);
3901
    stringBuffer.append(TEXT_989);
3944
    stringBuffer.append(TEXT_1005);
3902
    if (genModel.isVirtualDelegation()) {
3945
    if (genModel.isVirtualDelegation()) {
3903
    stringBuffer.append(TEXT_990);
3946
    stringBuffer.append(TEXT_1006);
3904
    stringBuffer.append(genFeature.getCapName());
3947
    stringBuffer.append(genFeature.getCapName());
3905
    stringBuffer.append(TEXT_991);
3948
    stringBuffer.append(TEXT_1007);
3906
    } else {
3949
    } else {
3907
    stringBuffer.append(TEXT_992);
3950
    stringBuffer.append(TEXT_1008);
3908
    stringBuffer.append(genFeature.getCapName());
3951
    stringBuffer.append(genFeature.getCapName());
3909
    }
3952
    }
3910
    stringBuffer.append(TEXT_993);
3953
    stringBuffer.append(TEXT_1009);
3911
    if (genModel.isVirtualDelegation()) {
3954
    if (genModel.isVirtualDelegation()) {
3912
    stringBuffer.append(TEXT_994);
3955
    stringBuffer.append(TEXT_1010);
3913
    } else {
3956
    } else {
3914
    stringBuffer.append(TEXT_995);
3957
    stringBuffer.append(TEXT_1011);
3915
    stringBuffer.append(genFeature.getCapName());
3958
    stringBuffer.append(genFeature.getCapName());
3916
    stringBuffer.append(TEXT_996);
3959
    stringBuffer.append(TEXT_1012);
3917
    }
3960
    }
3918
    stringBuffer.append(TEXT_997);
3961
    stringBuffer.append(TEXT_1013);
3919
    }
3962
    }
3920
    } else {
3963
    } else {
3921
    if (genClass.isFlag(genFeature)) {
3964
    if (genClass.isFlag(genFeature)) {
3922
    if (genFeature.isBooleanType()) {
3965
    if (genFeature.isBooleanType()) {
3923
    stringBuffer.append(TEXT_998);
3966
    stringBuffer.append(TEXT_1014);
3924
    stringBuffer.append(genFeature.getEDefault());
3967
    stringBuffer.append(genFeature.getEDefault());
3925
    stringBuffer.append(TEXT_999);
3968
    stringBuffer.append(TEXT_1015);
3926
    stringBuffer.append(genClass.getFlagsField(genFeature));
3969
    stringBuffer.append(genClass.getFlagsField(genFeature));
3927
    stringBuffer.append(TEXT_1000);
3970
    stringBuffer.append(TEXT_1016);
3928
    stringBuffer.append(genFeature.getUpperName());
3971
    stringBuffer.append(genFeature.getUpperName());
3929
    stringBuffer.append(TEXT_1001);
3972
    stringBuffer.append(TEXT_1017);
3930
    stringBuffer.append(genClass.getFlagsField(genFeature));
3973
    stringBuffer.append(genClass.getFlagsField(genFeature));
3931
    stringBuffer.append(TEXT_1002);
3974
    stringBuffer.append(TEXT_1018);
3932
    stringBuffer.append(genFeature.getUpperName());
3975
    stringBuffer.append(genFeature.getUpperName());
3933
    stringBuffer.append(TEXT_1003);
3976
    stringBuffer.append(TEXT_1019);
3934
    } else {
3977
    } else {
3935
    stringBuffer.append(TEXT_1004);
3978
    stringBuffer.append(TEXT_1020);
3936
    stringBuffer.append(genClass.getFlagsField(genFeature));
3979
    stringBuffer.append(genClass.getFlagsField(genFeature));
3937
    stringBuffer.append(TEXT_1005);
3980
    stringBuffer.append(TEXT_1021);
3938
    stringBuffer.append(genClass.getFlagsField(genFeature));
3981
    stringBuffer.append(genClass.getFlagsField(genFeature));
3939
    stringBuffer.append(TEXT_1006);
3982
    stringBuffer.append(TEXT_1022);
3940
    stringBuffer.append(genFeature.getUpperName());
3983
    stringBuffer.append(genFeature.getUpperName());
3941
    stringBuffer.append(TEXT_1007);
3984
    stringBuffer.append(TEXT_1023);
3942
    stringBuffer.append(genFeature.getUpperName());
3985
    stringBuffer.append(genFeature.getUpperName());
3943
    stringBuffer.append(TEXT_1008);
3986
    stringBuffer.append(TEXT_1024);
3944
    }
3987
    }
3945
    } else if (!genModel.isVirtualDelegation() || genFeature.isPrimitiveType()) {
3988
    } else if (!genModel.isVirtualDelegation() || genFeature.isPrimitiveType()) {
3946
    stringBuffer.append(TEXT_1009);
3989
    stringBuffer.append(TEXT_1025);
3947
    stringBuffer.append(genFeature.getSafeName());
3990
    stringBuffer.append(genFeature.getSafeName());
3948
    stringBuffer.append(TEXT_1010);
3991
    stringBuffer.append(TEXT_1026);
3949
    stringBuffer.append(genFeature.getEDefault());
3992
    stringBuffer.append(genFeature.getEDefault());
3950
    stringBuffer.append(TEXT_1011);
3993
    stringBuffer.append(TEXT_1027);
3951
    }
3994
    }
3952
    if (!genModel.isVirtualDelegation() || genFeature.isPrimitiveType()) {
3995
    if (!genModel.isVirtualDelegation() || genFeature.isPrimitiveType()) {
3953
    if (genClass.isESetFlag(genFeature)) {
3996
    if (genClass.isESetFlag(genFeature)) {
3954
    stringBuffer.append(TEXT_1012);
3997
    stringBuffer.append(TEXT_1028);
3955
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3998
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
3956
    stringBuffer.append(TEXT_1013);
3999
    stringBuffer.append(TEXT_1029);
3957
    stringBuffer.append(genFeature.getUpperName());
4000
    stringBuffer.append(genFeature.getUpperName());
3958
    stringBuffer.append(TEXT_1014);
4001
    stringBuffer.append(TEXT_1030);
3959
    } else {
4002
    } else {
3960
    stringBuffer.append(TEXT_1015);
4003
    stringBuffer.append(TEXT_1031);
3961
    stringBuffer.append(genFeature.getUncapName());
4004
    stringBuffer.append(genFeature.getUncapName());
3962
    stringBuffer.append(TEXT_1016);
4005
    stringBuffer.append(TEXT_1032);
3963
    }
4006
    }
3964
    }
4007
    }
3965
    if (!genModel.isSuppressNotification()) {
4008
    if (!genModel.isSuppressNotification()) {
3966
    stringBuffer.append(TEXT_1017);
4009
    stringBuffer.append(TEXT_1033);
3967
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
4010
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.impl.ENotificationImpl"));
3968
    stringBuffer.append(TEXT_1018);
4011
    stringBuffer.append(TEXT_1034);
3969
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
4012
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.Notification"));
3970
    stringBuffer.append(TEXT_1019);
4013
    stringBuffer.append(TEXT_1035);
3971
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4014
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
3972
    stringBuffer.append(positiveOffsetCorrection);
4015
    stringBuffer.append(positiveOffsetCorrection);
3973
    stringBuffer.append(TEXT_1020);
4016
    stringBuffer.append(TEXT_1036);
3974
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
4017
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3975
    stringBuffer.append(TEXT_1021);
4018
    stringBuffer.append(TEXT_1037);
3976
    stringBuffer.append(genFeature.getCapName());
4019
    stringBuffer.append(genFeature.getCapName());
3977
    stringBuffer.append(TEXT_1022);
4020
    stringBuffer.append(TEXT_1038);
3978
    stringBuffer.append(genFeature.getEDefault());
4021
    stringBuffer.append(genFeature.getEDefault());
3979
    } else {
4022
    } else {
3980
    stringBuffer.append(TEXT_1023);
4023
    stringBuffer.append(TEXT_1039);
3981
    stringBuffer.append(genFeature.getCapName());
4024
    stringBuffer.append(genFeature.getCapName());
3982
    }
4025
    }
3983
    stringBuffer.append(TEXT_1024);
4026
    stringBuffer.append(TEXT_1040);
3984
    stringBuffer.append(genFeature.getEDefault());
4027
    stringBuffer.append(genFeature.getEDefault());
3985
    stringBuffer.append(TEXT_1025);
4028
    stringBuffer.append(TEXT_1041);
3986
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
4029
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
3987
    stringBuffer.append(TEXT_1026);
4030
    stringBuffer.append(TEXT_1042);
3988
    } else {
4031
    } else {
3989
    stringBuffer.append(TEXT_1027);
4032
    stringBuffer.append(TEXT_1043);
3990
    stringBuffer.append(genFeature.getCapName());
4033
    stringBuffer.append(genFeature.getCapName());
3991
    stringBuffer.append(TEXT_1028);
4034
    stringBuffer.append(TEXT_1044);
3992
    }
4035
    }
3993
    stringBuffer.append(TEXT_1029);
4036
    stringBuffer.append(TEXT_1045);
3994
    }
4037
    }
3995
    }
4038
    }
3996
    }
4039
    }
3997
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
4040
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
3998
    if (delegateFeature.isWrappedFeatureMapType()) {
4041
    if (delegateFeature.isWrappedFeatureMapType()) {
3999
    stringBuffer.append(TEXT_1030);
4042
    stringBuffer.append(TEXT_1046);
4000
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4043
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4001
    stringBuffer.append(TEXT_1031);
4044
    stringBuffer.append(TEXT_1047);
4002
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4045
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4003
    stringBuffer.append(TEXT_1032);
4046
    stringBuffer.append(TEXT_1048);
4004
    stringBuffer.append(delegateFeature.getAccessorName());
4047
    stringBuffer.append(delegateFeature.getAccessorName());
4005
    stringBuffer.append(TEXT_1033);
4048
    stringBuffer.append(TEXT_1049);
4006
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4049
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4007
    stringBuffer.append(TEXT_1034);
4050
    stringBuffer.append(TEXT_1050);
4008
    } else {
4051
    } else {
4009
    stringBuffer.append(TEXT_1035);
4052
    stringBuffer.append(TEXT_1051);
4010
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4053
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4011
    stringBuffer.append(TEXT_1036);
4054
    stringBuffer.append(TEXT_1052);
4012
    stringBuffer.append(delegateFeature.getAccessorName());
4055
    stringBuffer.append(delegateFeature.getAccessorName());
4013
    stringBuffer.append(TEXT_1037);
4056
    stringBuffer.append(TEXT_1053);
4014
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4057
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4015
    stringBuffer.append(TEXT_1038);
4058
    stringBuffer.append(TEXT_1054);
4016
    }
4059
    }
4017
    } else if (genClass.getUnsetAccessorOperation(genFeature) != null) {
4060
    } else if (genClass.getUnsetAccessorOperation(genFeature) != null) {
4018
    stringBuffer.append(TEXT_1039);
4061
    stringBuffer.append(TEXT_1055);
4019
    stringBuffer.append(genClass.getUnsetAccessorOperation(genFeature).getBody(genModel.getIndentation(stringBuffer)));
4062
    stringBuffer.append(genClass.getUnsetAccessorOperation(genFeature).getBody(genModel.getIndentation(stringBuffer)));
4020
    } else {
4063
    } else {
4021
    stringBuffer.append(TEXT_1040);
4064
    stringBuffer.append(TEXT_1056);
4022
    stringBuffer.append(genFeature.getFormattedName());
4065
    stringBuffer.append(genFeature.getFormattedName());
4023
    stringBuffer.append(TEXT_1041);
4066
    stringBuffer.append(TEXT_1057);
4024
    stringBuffer.append(genFeature.getFeatureKind());
4067
    stringBuffer.append(genFeature.getFeatureKind());
4025
    stringBuffer.append(TEXT_1042);
4068
    stringBuffer.append(TEXT_1058);
4026
    //Class/unsetGenFeature.todo.override.javajetinc
4069
    //Class/unsetGenFeature.todo.override.javajetinc
4027
    }
4070
    }
4028
    stringBuffer.append(TEXT_1043);
4071
    stringBuffer.append(TEXT_1059);
4029
    }
4072
    }
4030
    //Class/unsetGenFeature.override.javajetinc
4073
    //Class/unsetGenFeature.override.javajetinc
4031
    }
4074
    }
4032
    if (genFeature.isIsSet() && (isImplementation || !genFeature.isSuppressedIsSetVisibility())) {
4075
    if (genFeature.isIsSet() && (isImplementation || !genFeature.isSuppressedIsSetVisibility())) {
4033
    if (isInterface) {
4076
    if (isInterface) {
4034
    stringBuffer.append(TEXT_1044);
4077
    stringBuffer.append(TEXT_1060);
4035
    stringBuffer.append(genClass.getQualifiedInterfaceName());
4078
    stringBuffer.append(genClass.getQualifiedInterfaceName());
4036
    stringBuffer.append(TEXT_1045);
4079
    stringBuffer.append(TEXT_1061);
4037
    stringBuffer.append(genFeature.getGetAccessor());
4080
    stringBuffer.append(genFeature.getGetAccessor());
4038
    stringBuffer.append(TEXT_1046);
4081
    stringBuffer.append(TEXT_1062);
4039
    stringBuffer.append(genFeature.getFormattedName());
4082
    stringBuffer.append(genFeature.getFormattedName());
4040
    stringBuffer.append(TEXT_1047);
4083
    stringBuffer.append(TEXT_1063);
4041
    stringBuffer.append(genFeature.getFeatureKind());
4084
    stringBuffer.append(genFeature.getFeatureKind());
4042
    stringBuffer.append(TEXT_1048);
4085
    stringBuffer.append(TEXT_1064);
4043
    stringBuffer.append(TEXT_1049);
4086
    stringBuffer.append(TEXT_1065);
4044
    stringBuffer.append(genFeature.getFormattedName());
4087
    stringBuffer.append(genFeature.getFormattedName());
4045
    stringBuffer.append(TEXT_1050);
4088
    stringBuffer.append(TEXT_1066);
4046
    stringBuffer.append(genFeature.getFeatureKind());
4089
    stringBuffer.append(genFeature.getFeatureKind());
4047
    stringBuffer.append(TEXT_1051);
4090
    stringBuffer.append(TEXT_1067);
4048
    if (genFeature.isChangeable() && !genFeature.isSuppressedUnsetVisibility()) {
4091
    if (genFeature.isChangeable() && !genFeature.isSuppressedUnsetVisibility()) {
4049
    stringBuffer.append(TEXT_1052);
4092
    stringBuffer.append(TEXT_1068);
4050
    stringBuffer.append(genFeature.getAccessorName());
4093
    stringBuffer.append(genFeature.getAccessorName());
4051
    stringBuffer.append(TEXT_1053);
4094
    stringBuffer.append(TEXT_1069);
4052
    }
4095
    }
4053
    stringBuffer.append(TEXT_1054);
4096
    stringBuffer.append(TEXT_1070);
4054
    stringBuffer.append(genFeature.getGetAccessor());
4097
    stringBuffer.append(genFeature.getGetAccessor());
4055
    stringBuffer.append(TEXT_1055);
4098
    stringBuffer.append(TEXT_1071);
4056
    if (!genFeature.isListType() && genFeature.isChangeable() && !genFeature.isSuppressedSetVisibility()) {
4099
    if (!genFeature.isListType() && genFeature.isChangeable() && !genFeature.isSuppressedSetVisibility()) {
4057
    stringBuffer.append(TEXT_1056);
4100
    stringBuffer.append(TEXT_1072);
4058
    stringBuffer.append(genFeature.getAccessorName());
4101
    stringBuffer.append(genFeature.getAccessorName());
4059
    stringBuffer.append(TEXT_1057);
4102
    stringBuffer.append(TEXT_1073);
4060
    stringBuffer.append(genFeature.getRawImportedBoundType());
4103
    stringBuffer.append(genFeature.getRawImportedBoundType());
4061
    stringBuffer.append(TEXT_1058);
4104
    stringBuffer.append(TEXT_1074);
4062
    }
4105
    }
4063
    stringBuffer.append(TEXT_1059);
4106
    stringBuffer.append(TEXT_1075);
4064
    //Class/isSetGenFeature.javadoc.override.javajetinc
4107
    //Class/isSetGenFeature.javadoc.override.javajetinc
4065
    } else {
4108
    } else {
4066
    stringBuffer.append(TEXT_1060);
4109
    stringBuffer.append(TEXT_1076);
4067
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/isSetGenFeature.annotations.insert.javajetinc
4110
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/isSetGenFeature.annotations.insert.javajetinc
4068
    }
4111
    }
4069
    }
4112
    }
4070
    if (!isImplementation) {
4113
    if (!isImplementation) {
4071
    stringBuffer.append(TEXT_1061);
4114
    stringBuffer.append(TEXT_1077);
4072
    stringBuffer.append(genFeature.getAccessorName());
4115
    stringBuffer.append(genFeature.getAccessorName());
4073
    stringBuffer.append(TEXT_1062);
4116
    stringBuffer.append(TEXT_1078);
4074
    } else {
4117
    } else {
4075
    stringBuffer.append(TEXT_1063);
4118
    stringBuffer.append(TEXT_1079);
4076
    stringBuffer.append(genFeature.getAccessorName());
4119
    stringBuffer.append(genFeature.getAccessorName());
4077
    if (genClass.hasCollidingIsSetAccessorOperation(genFeature)) {
4120
    if (genClass.hasCollidingIsSetAccessorOperation(genFeature)) {
4078
    stringBuffer.append(TEXT_1064);
4121
    stringBuffer.append(TEXT_1080);
4079
    }
4122
    }
4080
    stringBuffer.append(TEXT_1065);
4123
    stringBuffer.append(TEXT_1081);
4081
    if (genModel.isDynamicDelegation()) {
4124
    if (genModel.isDynamicDelegation()) {
4082
    stringBuffer.append(TEXT_1066);
4125
    stringBuffer.append(TEXT_1082);
4083
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4126
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4084
    stringBuffer.append(TEXT_1067);
4127
    stringBuffer.append(TEXT_1083);
4085
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4128
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4086
    stringBuffer.append(TEXT_1068);
4129
    stringBuffer.append(TEXT_1084);
4087
    } else if (genModel.isReflectiveDelegation()) {
4130
    } else if (genModel.isReflectiveDelegation()) {
4088
    stringBuffer.append(TEXT_1069);
4131
    stringBuffer.append(TEXT_1085);
4089
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4132
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4090
    stringBuffer.append(TEXT_1070);
4133
    stringBuffer.append(TEXT_1086);
4091
    } else if (!genFeature.isVolatile()) {
4134
    } else if (!genFeature.isVolatile()) {
4092
    if (genFeature.isListType()) {
4135
    if (genFeature.isListType()) {
4093
    if (genModel.isVirtualDelegation()) {
4136
    if (genModel.isVirtualDelegation()) {
4094
    stringBuffer.append(TEXT_1071);
4137
    stringBuffer.append(TEXT_1087);
4095
    stringBuffer.append(genFeature.getImportedType(genClass));
4138
    stringBuffer.append(genFeature.getImportedType(genClass));
4096
    stringBuffer.append(TEXT_1072);
4139
    stringBuffer.append(TEXT_1088);
4097
    stringBuffer.append(genFeature.getSafeName());
4140
    stringBuffer.append(genFeature.getSafeName());
4098
    stringBuffer.append(TEXT_1073);
4141
    stringBuffer.append(TEXT_1089);
4099
    stringBuffer.append(genFeature.getImportedType(genClass));
4142
    stringBuffer.append(genFeature.getImportedType(genClass));
4100
    stringBuffer.append(TEXT_1074);
4143
    stringBuffer.append(TEXT_1090);
4101
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4144
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4102
    stringBuffer.append(positiveOffsetCorrection);
4145
    stringBuffer.append(positiveOffsetCorrection);
4103
    stringBuffer.append(TEXT_1075);
4146
    stringBuffer.append(TEXT_1091);
4104
    }
4147
    }
4105
    stringBuffer.append(TEXT_1076);
4148
    stringBuffer.append(TEXT_1092);
4106
    stringBuffer.append(genFeature.getSafeName());
4149
    stringBuffer.append(genFeature.getSafeName());
4107
    stringBuffer.append(TEXT_1077);
4150
    stringBuffer.append(TEXT_1093);
4108
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList"));
4151
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList"));
4109
    stringBuffer.append(TEXT_1078);
4152
    stringBuffer.append(TEXT_1094);
4110
    stringBuffer.append(singleWildcard);
4153
    stringBuffer.append(singleWildcard);
4111
    stringBuffer.append(TEXT_1079);
4154
    stringBuffer.append(TEXT_1095);
4112
    stringBuffer.append(genFeature.getSafeName());
4155
    stringBuffer.append(genFeature.getSafeName());
4113
    stringBuffer.append(TEXT_1080);
4156
    stringBuffer.append(TEXT_1096);
4114
    } else {
4157
    } else {
4158
    stringBuffer.append(TEXT_1097);
4159
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4160
    stringBuffer.append(TEXT_1098);
4115
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
4161
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
4116
    stringBuffer.append(TEXT_1081);
4162
    stringBuffer.append(TEXT_1099);
4117
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4163
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4118
    stringBuffer.append(positiveOffsetCorrection);
4164
    stringBuffer.append(positiveOffsetCorrection);
4119
    stringBuffer.append(TEXT_1082);
4165
    stringBuffer.append(TEXT_1100);
4120
    } else if (genClass.isESetFlag(genFeature)) {
4166
    } else if (genClass.isESetFlag(genFeature)) {
4121
    stringBuffer.append(TEXT_1083);
4167
    stringBuffer.append(TEXT_1101);
4122
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
4168
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
4123
    stringBuffer.append(TEXT_1084);
4169
    stringBuffer.append(TEXT_1102);
4124
    stringBuffer.append(genFeature.getUpperName());
4170
    stringBuffer.append(genFeature.getUpperName());
4125
    stringBuffer.append(TEXT_1085);
4171
    stringBuffer.append(TEXT_1103);
4126
    } else {
4172
    } else {
4127
    stringBuffer.append(TEXT_1086);
4173
    stringBuffer.append(TEXT_1104);
4128
    stringBuffer.append(genFeature.getUncapName());
4174
    stringBuffer.append(genFeature.getUncapName());
4129
    stringBuffer.append(TEXT_1087);
4175
    stringBuffer.append(TEXT_1105);
4130
    }
4176
    }
4131
    }
4177
    }
4132
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
4178
    } else if (genFeature.hasDelegateFeature()) { GenFeature delegateFeature = genFeature.getDelegateFeature();
4133
    if (delegateFeature.isWrappedFeatureMapType()) {
4179
    if (delegateFeature.isWrappedFeatureMapType()) {
4134
    stringBuffer.append(TEXT_1088);
4180
    stringBuffer.append(TEXT_1106);
4135
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4181
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4136
    stringBuffer.append(TEXT_1089);
4182
    stringBuffer.append(TEXT_1107);
4137
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4183
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4138
    stringBuffer.append(TEXT_1090);
4184
    stringBuffer.append(TEXT_1108);
4139
    stringBuffer.append(delegateFeature.getAccessorName());
4185
    stringBuffer.append(delegateFeature.getAccessorName());
4140
    stringBuffer.append(TEXT_1091);
4186
    stringBuffer.append(TEXT_1109);
4141
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4187
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4142
    stringBuffer.append(TEXT_1092);
4188
    stringBuffer.append(TEXT_1110);
4143
    } else {
4189
    } else {
4144
    stringBuffer.append(TEXT_1093);
4190
    stringBuffer.append(TEXT_1111);
4145
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4191
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4146
    stringBuffer.append(TEXT_1094);
4192
    stringBuffer.append(TEXT_1112);
4147
    stringBuffer.append(delegateFeature.getAccessorName());
4193
    stringBuffer.append(delegateFeature.getAccessorName());
4148
    stringBuffer.append(TEXT_1095);
4194
    stringBuffer.append(TEXT_1113);
4149
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4195
    stringBuffer.append(genFeature.getQualifiedFeatureAccessor());
4150
    stringBuffer.append(TEXT_1096);
4196
    stringBuffer.append(TEXT_1114);
4151
    }
4197
    }
4152
    } else if (genClass.getIsSetAccessorOperation(genFeature) != null) {
4198
    } else if (genClass.getIsSetAccessorOperation(genFeature) != null) {
4153
    stringBuffer.append(TEXT_1097);
4199
    stringBuffer.append(TEXT_1115);
4154
    stringBuffer.append(genClass.getIsSetAccessorOperation(genFeature).getBody(genModel.getIndentation(stringBuffer)));
4200
    stringBuffer.append(genClass.getIsSetAccessorOperation(genFeature).getBody(genModel.getIndentation(stringBuffer)));
4155
    } else {
4201
    } else {
4156
    stringBuffer.append(TEXT_1098);
4202
    stringBuffer.append(TEXT_1116);
4157
    stringBuffer.append(genFeature.getFormattedName());
4203
    stringBuffer.append(genFeature.getFormattedName());
4158
    stringBuffer.append(TEXT_1099);
4204
    stringBuffer.append(TEXT_1117);
4159
    stringBuffer.append(genFeature.getFeatureKind());
4205
    stringBuffer.append(genFeature.getFeatureKind());
4160
    stringBuffer.append(TEXT_1100);
4206
    stringBuffer.append(TEXT_1118);
4161
    //Class/isSetGenFeature.todo.override.javajetinc
4207
    //Class/isSetGenFeature.todo.override.javajetinc
4162
    }
4208
    }
4163
    stringBuffer.append(TEXT_1101);
4209
    stringBuffer.append(TEXT_1119);
4164
    }
4210
    }
4165
    //Class/isSetGenFeature.override.javajetinc
4211
    //Class/isSetGenFeature.override.javajetinc
4166
    }
4212
    }
Lines 4169-5262 Link Here
4169
    }}.run();
4215
    }}.run();
4170
    for (GenOperation genOperation : (isImplementation ? genClass.getImplementedGenOperations() : genClass.getDeclaredGenOperations())) {
4216
    for (GenOperation genOperation : (isImplementation ? genClass.getImplementedGenOperations() : genClass.getDeclaredGenOperations())) {
4171
    if (isInterface) {
4217
    if (isInterface) {
4172
    stringBuffer.append(TEXT_1102);
4218
    stringBuffer.append(TEXT_1120);
4173
    stringBuffer.append(TEXT_1103);
4219
    stringBuffer.append(TEXT_1121);
4174
    if (genOperation.hasDocumentation() || genOperation.hasParameterDocumentation()) {
4220
    if (genOperation.hasDocumentation() || genOperation.hasParameterDocumentation()) {
4175
    stringBuffer.append(TEXT_1104);
4221
    stringBuffer.append(TEXT_1122);
4176
    if (genOperation.hasDocumentation()) {
4222
    if (genOperation.hasDocumentation()) {
4177
    stringBuffer.append(TEXT_1105);
4223
    stringBuffer.append(TEXT_1123);
4178
    stringBuffer.append(genOperation.getDocumentation(genModel.getIndentation(stringBuffer)));
4224
    stringBuffer.append(genOperation.getDocumentation(genModel.getIndentation(stringBuffer)));
4179
    }
4225
    }
4180
    for (GenParameter genParameter : genOperation.getGenParameters()) {
4226
    for (GenParameter genParameter : genOperation.getGenParameters()) {
4181
    if (genParameter.hasDocumentation()) { String documentation = genParameter.getDocumentation("");
4227
    if (genParameter.hasDocumentation()) { String documentation = genParameter.getDocumentation("");
4182
    if (documentation.contains("\n") || documentation.contains("\r")) {
4228
    if (documentation.contains("\n") || documentation.contains("\r")) {
4183
    stringBuffer.append(TEXT_1106);
4229
    stringBuffer.append(TEXT_1124);
4184
    stringBuffer.append(genParameter.getName());
4230
    stringBuffer.append(genParameter.getName());
4185
    stringBuffer.append(TEXT_1107);
4231
    stringBuffer.append(TEXT_1125);
4186
    stringBuffer.append(genParameter.getDocumentation(genModel.getIndentation(stringBuffer)));
4232
    stringBuffer.append(genParameter.getDocumentation(genModel.getIndentation(stringBuffer)));
4187
    } else {
4233
    } else {
4188
    stringBuffer.append(TEXT_1108);
4234
    stringBuffer.append(TEXT_1126);
4189
    stringBuffer.append(genParameter.getName());
4235
    stringBuffer.append(genParameter.getName());
4190
    stringBuffer.append(TEXT_1109);
4236
    stringBuffer.append(TEXT_1127);
4191
    stringBuffer.append(genParameter.getDocumentation(genModel.getIndentation(stringBuffer)));
4237
    stringBuffer.append(genParameter.getDocumentation(genModel.getIndentation(stringBuffer)));
4192
    }
4238
    }
4193
    }
4239
    }
4194
    }
4240
    }
4195
    stringBuffer.append(TEXT_1110);
4241
    stringBuffer.append(TEXT_1128);
4196
    }
4242
    }
4197
    if (!genModel.isSuppressEMFModelTags()) { boolean first = true; for (StringTokenizer stringTokenizer = new StringTokenizer(genOperation.getModelInfo(), "\n\r"); stringTokenizer.hasMoreTokens(); ) { String modelInfo = stringTokenizer.nextToken(); if (first) { first = false;
4243
    if (!genModel.isSuppressEMFModelTags()) { boolean first = true; for (StringTokenizer stringTokenizer = new StringTokenizer(genOperation.getModelInfo(), "\n\r"); stringTokenizer.hasMoreTokens(); ) { String modelInfo = stringTokenizer.nextToken(); if (first) { first = false;
4198
    stringBuffer.append(TEXT_1111);
4244
    stringBuffer.append(TEXT_1129);
4199
    stringBuffer.append(modelInfo);
4245
    stringBuffer.append(modelInfo);
4200
    } else {
4246
    } else {
4201
    stringBuffer.append(TEXT_1112);
4247
    stringBuffer.append(TEXT_1130);
4202
    stringBuffer.append(modelInfo);
4248
    stringBuffer.append(modelInfo);
4203
    }} if (first) {
4249
    }} if (first) {
4204
    stringBuffer.append(TEXT_1113);
4250
    stringBuffer.append(TEXT_1131);
4205
    }}
4251
    }}
4206
    stringBuffer.append(TEXT_1114);
4252
    stringBuffer.append(TEXT_1132);
4207
    //Class/genOperation.javadoc.override.javajetinc
4253
    //Class/genOperation.javadoc.override.javajetinc
4208
    } else {
4254
    } else {
4209
    stringBuffer.append(TEXT_1115);
4255
    stringBuffer.append(TEXT_1133);
4210
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/genOperation.annotations.insert.javajetinc
4256
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) { //Class/genOperation.annotations.insert.javajetinc
4211
    }
4257
    }
4212
    }
4258
    }
4213
    if (!isImplementation) {
4259
    if (!isImplementation) {
4214
    stringBuffer.append(TEXT_1116);
4260
    stringBuffer.append(TEXT_1134);
4215
    stringBuffer.append(genOperation.getTypeParameters(genClass));
4261
    stringBuffer.append(genOperation.getTypeParameters(genClass));
4216
    stringBuffer.append(genOperation.getImportedType(genClass));
4262
    stringBuffer.append(genOperation.getImportedType(genClass));
4217
    stringBuffer.append(TEXT_1117);
4263
    stringBuffer.append(TEXT_1135);
4218
    stringBuffer.append(genOperation.getName());
4264
    stringBuffer.append(genOperation.getName());
4219
    stringBuffer.append(TEXT_1118);
4265
    stringBuffer.append(TEXT_1136);
4220
    stringBuffer.append(genOperation.getParameters(genClass));
4266
    stringBuffer.append(genOperation.getParameters(genClass));
4221
    stringBuffer.append(TEXT_1119);
4267
    stringBuffer.append(TEXT_1137);
4222
    stringBuffer.append(genOperation.getThrows(genClass));
4268
    stringBuffer.append(genOperation.getThrows(genClass));
4223
    stringBuffer.append(TEXT_1120);
4269
    stringBuffer.append(TEXT_1138);
4224
    } else {
4270
    } else {
4225
    stringBuffer.append(TEXT_1121);
4271
    stringBuffer.append(TEXT_1139);
4226
    stringBuffer.append(genOperation.getTypeParameters(genClass));
4272
    stringBuffer.append(genOperation.getTypeParameters(genClass));
4227
    stringBuffer.append(genOperation.getImportedType(genClass));
4273
    stringBuffer.append(genOperation.getImportedType(genClass));
4228
    stringBuffer.append(TEXT_1122);
4274
    stringBuffer.append(TEXT_1140);
4229
    stringBuffer.append(genOperation.getName());
4275
    stringBuffer.append(genOperation.getName());
4230
    stringBuffer.append(TEXT_1123);
4276
    stringBuffer.append(TEXT_1141);
4231
    stringBuffer.append(genOperation.getParameters(genClass));
4277
    stringBuffer.append(genOperation.getParameters(genClass));
4232
    stringBuffer.append(TEXT_1124);
4278
    stringBuffer.append(TEXT_1142);
4233
    stringBuffer.append(genOperation.getThrows(genClass));
4279
    stringBuffer.append(genOperation.getThrows(genClass));
4234
    stringBuffer.append(TEXT_1125);
4280
    stringBuffer.append(TEXT_1143);
4235
    if (genOperation.hasBody()) {
4281
    if (genOperation.hasBody()) {
4236
    stringBuffer.append(TEXT_1126);
4282
    stringBuffer.append(TEXT_1144);
4237
    stringBuffer.append(genOperation.getBody(genModel.getIndentation(stringBuffer)));
4283
    stringBuffer.append(genOperation.getBody(genModel.getIndentation(stringBuffer)));
4238
    } else if (genOperation.isInvariant()) {GenClass opClass = genOperation.getGenClass(); String diagnostics = genOperation.getGenParameters().get(0).getName(); String context = genOperation.getGenParameters().get(1).getName();
4284
    } else if (genOperation.isInvariant()) {GenClass opClass = genOperation.getGenClass(); String diagnostics = genOperation.getGenParameters().get(0).getName(); String context = genOperation.getGenParameters().get(1).getName();
4239
    stringBuffer.append(TEXT_1127);
4285
    stringBuffer.append(TEXT_1145);
4240
    stringBuffer.append(diagnostics);
4286
    stringBuffer.append(diagnostics);
4241
    stringBuffer.append(TEXT_1128);
4287
    stringBuffer.append(TEXT_1146);
4242
    stringBuffer.append(diagnostics);
4288
    stringBuffer.append(diagnostics);
4243
    stringBuffer.append(TEXT_1129);
4289
    stringBuffer.append(TEXT_1147);
4244
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.BasicDiagnostic"));
4290
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.BasicDiagnostic"));
4245
    stringBuffer.append(TEXT_1130);
4291
    stringBuffer.append(TEXT_1148);
4246
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.Diagnostic"));
4292
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.Diagnostic"));
4247
    stringBuffer.append(TEXT_1131);
4293
    stringBuffer.append(TEXT_1149);
4248
    stringBuffer.append(opClass.getGenPackage().getImportedValidatorClassName());
4294
    stringBuffer.append(opClass.getGenPackage().getImportedValidatorClassName());
4249
    stringBuffer.append(TEXT_1132);
4295
    stringBuffer.append(TEXT_1150);
4250
    stringBuffer.append(opClass.getGenPackage().getImportedValidatorClassName());
4296
    stringBuffer.append(opClass.getGenPackage().getImportedValidatorClassName());
4251
    stringBuffer.append(TEXT_1133);
4297
    stringBuffer.append(TEXT_1151);
4252
    stringBuffer.append(opClass.getOperationID(genOperation));
4298
    stringBuffer.append(opClass.getOperationID(genOperation));
4253
    stringBuffer.append(TEXT_1134);
4299
    stringBuffer.append(TEXT_1152);
4254
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.plugin.EcorePlugin"));
4300
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.plugin.EcorePlugin"));
4255
    stringBuffer.append(TEXT_1135);
4301
    stringBuffer.append(TEXT_1153);
4256
    stringBuffer.append(genOperation.getName());
4302
    stringBuffer.append(genOperation.getName());
4257
    stringBuffer.append(TEXT_1136);
4303
    stringBuffer.append(TEXT_1154);
4258
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.EObjectValidator"));
4304
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.EObjectValidator"));
4259
    stringBuffer.append(TEXT_1137);
4305
    stringBuffer.append(TEXT_1155);
4260
    stringBuffer.append(context);
4306
    stringBuffer.append(context);
4261
    stringBuffer.append(TEXT_1138);
4307
    stringBuffer.append(TEXT_1156);
4262
    stringBuffer.append(genModel.getNonNLS());
4308
    stringBuffer.append(genModel.getNonNLS());
4263
    stringBuffer.append(genModel.getNonNLS(2));
4309
    stringBuffer.append(genModel.getNonNLS(2));
4264
    stringBuffer.append(TEXT_1139);
4310
    stringBuffer.append(TEXT_1157);
4265
    } else {
4311
    } else {
4266
    stringBuffer.append(TEXT_1140);
4312
    stringBuffer.append(TEXT_1158);
4267
    //Class/implementedGenOperation.todo.override.javajetinc
4313
    //Class/implementedGenOperation.todo.override.javajetinc
4268
    }
4314
    }
4269
    stringBuffer.append(TEXT_1141);
4315
    stringBuffer.append(TEXT_1159);
4270
    }
4316
    }
4271
    //Class/implementedGenOperation.override.javajetinc
4317
    //Class/implementedGenOperation.override.javajetinc
4272
    }//for
4318
    }//for
4273
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEInverseAddGenFeatures())) {
4319
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEInverseAddGenFeatures())) {
4274
    stringBuffer.append(TEXT_1142);
4320
    stringBuffer.append(TEXT_1160);
4275
    if (genModel.useGenerics()) {
4321
    if (genModel.useGenerics()) {
4276
    for (GenFeature genFeature : genClass.getEInverseAddGenFeatures()) {
4322
    for (GenFeature genFeature : genClass.getEInverseAddGenFeatures()) {
4277
    if (genFeature.isUncheckedCast(genClass)) {
4323
    if (genFeature.isUncheckedCast(genClass)) {
4278
    stringBuffer.append(TEXT_1143);
4324
    stringBuffer.append(TEXT_1161);
4279
    break; }
4325
    break; }
4280
    }
4326
    }
4281
    }
4327
    }
4282
    if (genModel.useClassOverrideAnnotation()) {
4328
    if (genModel.useClassOverrideAnnotation()) {
4283
    stringBuffer.append(TEXT_1144);
4329
    stringBuffer.append(TEXT_1162);
4284
    }
4330
    }
4285
    stringBuffer.append(TEXT_1145);
4331
    stringBuffer.append(TEXT_1163);
4286
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4332
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4287
    stringBuffer.append(TEXT_1146);
4333
    stringBuffer.append(TEXT_1164);
4288
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
4334
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
4289
    stringBuffer.append(TEXT_1147);
4335
    stringBuffer.append(TEXT_1165);
4290
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4336
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4291
    stringBuffer.append(TEXT_1148);
4337
    stringBuffer.append(TEXT_1166);
4292
    stringBuffer.append(negativeOffsetCorrection);
4338
    stringBuffer.append(negativeOffsetCorrection);
4293
    stringBuffer.append(TEXT_1149);
4339
    stringBuffer.append(TEXT_1167);
4294
    for (GenFeature genFeature : genClass.getEInverseAddGenFeatures()) {
4340
    for (GenFeature genFeature : genClass.getEInverseAddGenFeatures()) {
4295
    stringBuffer.append(TEXT_1150);
4341
    stringBuffer.append(TEXT_1168);
4296
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4342
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4297
    stringBuffer.append(TEXT_1151);
4343
    stringBuffer.append(TEXT_1169);
4298
    if (genFeature.isListType()) { String cast = "("  + genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList") + (!genModel.useGenerics() ? ")" : "<" + genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject") + ">)(" + genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList") + "<?>)");
4344
    if (genFeature.isListType()) { String cast = "("  + genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList") + (!genModel.useGenerics() ? ")" : "<" + genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject") + ">)(" + genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList") + "<?>)");
4299
    if (genFeature.isMapType() && genFeature.isEffectiveSuppressEMFTypes()) {
4345
    if (genFeature.isMapType() && genFeature.isEffectiveSuppressEMFTypes()) {
4300
    stringBuffer.append(TEXT_1152);
4346
    stringBuffer.append(TEXT_1170);
4301
    stringBuffer.append(cast);
4347
    stringBuffer.append(cast);
4302
    stringBuffer.append(TEXT_1153);
4348
    stringBuffer.append(TEXT_1171);
4303
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.EMap"));
4349
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.EMap"));
4304
    stringBuffer.append(TEXT_1154);
4350
    stringBuffer.append(TEXT_1172);
4305
    stringBuffer.append(genFeature.getImportedMapTemplateArguments(genClass));
4351
    stringBuffer.append(genFeature.getImportedMapTemplateArguments(genClass));
4306
    stringBuffer.append(TEXT_1155);
4352
    stringBuffer.append(TEXT_1173);
4307
    stringBuffer.append(genFeature.getGetAccessor());
4353
    stringBuffer.append(genFeature.getGetAccessor());
4308
    stringBuffer.append(TEXT_1156);
4354
    stringBuffer.append(TEXT_1174);
4309
    } else {
4355
    } else {
4310
    stringBuffer.append(TEXT_1157);
4356
    stringBuffer.append(TEXT_1175);
4311
    stringBuffer.append(cast);
4357
    stringBuffer.append(cast);
4312
    stringBuffer.append(genFeature.getGetAccessor());
4358
    stringBuffer.append(genFeature.getGetAccessor());
4313
    stringBuffer.append(TEXT_1158);
4359
    stringBuffer.append(TEXT_1176);
4314
    }
4360
    }
4315
    } else if (genFeature.isContainer()) {
4361
    } else if (genFeature.isContainer()) {
4316
    stringBuffer.append(TEXT_1159);
4362
    stringBuffer.append(TEXT_1177);
4317
    if (genFeature.isBasicSet()) {
4363
    if (genFeature.isBasicSet()) {
4318
    stringBuffer.append(TEXT_1160);
4364
    stringBuffer.append(TEXT_1178);
4319
    stringBuffer.append(genFeature.getAccessorName());
4365
    stringBuffer.append(genFeature.getAccessorName());
4320
    stringBuffer.append(TEXT_1161);
4366
    stringBuffer.append(TEXT_1179);
4321
    stringBuffer.append(genFeature.getImportedType(genClass));
4367
    stringBuffer.append(genFeature.getImportedType(genClass));
4322
    stringBuffer.append(TEXT_1162);
4368
    stringBuffer.append(TEXT_1180);
4323
    } else {
4369
    } else {
4324
    stringBuffer.append(TEXT_1163);
4370
    stringBuffer.append(TEXT_1181);
4325
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4371
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4326
    stringBuffer.append(positiveOffsetCorrection);
4372
    stringBuffer.append(positiveOffsetCorrection);
4327
    stringBuffer.append(TEXT_1164);
4373
    stringBuffer.append(TEXT_1182);
4328
    }
4374
    }
4329
    } else {
4375
    } else {
4330
    if (genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4376
    if (genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4331
    stringBuffer.append(TEXT_1165);
4377
    stringBuffer.append(TEXT_1183);
4332
    stringBuffer.append(genFeature.getImportedType(genClass));
4378
    stringBuffer.append(genFeature.getImportedType(genClass));
4333
    stringBuffer.append(TEXT_1166);
4379
    stringBuffer.append(TEXT_1184);
4334
    stringBuffer.append(genFeature.getSafeName());
4380
    stringBuffer.append(genFeature.getSafeName());
4335
    stringBuffer.append(TEXT_1167);
4381
    stringBuffer.append(TEXT_1185);
4336
    stringBuffer.append(genFeature.getImportedType(genClass));
4382
    stringBuffer.append(genFeature.getImportedType(genClass));
4337
    stringBuffer.append(TEXT_1168);
4383
    stringBuffer.append(TEXT_1186);
4338
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4384
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4339
    stringBuffer.append(positiveOffsetCorrection);
4385
    stringBuffer.append(positiveOffsetCorrection);
4340
    stringBuffer.append(TEXT_1169);
4386
    stringBuffer.append(TEXT_1187);
4341
    } else if (genFeature.isVolatile() || genClass.getImplementingGenModel(genFeature).isDynamicDelegation()) {
4387
    } else if (genFeature.isVolatile() || genClass.getImplementingGenModel(genFeature).isDynamicDelegation()) {
4342
    stringBuffer.append(TEXT_1170);
4388
    stringBuffer.append(TEXT_1188);
4343
    stringBuffer.append(genFeature.getImportedType(genClass));
4389
    stringBuffer.append(genFeature.getImportedType(genClass));
4344
    stringBuffer.append(TEXT_1171);
4390
    stringBuffer.append(TEXT_1189);
4345
    stringBuffer.append(genFeature.getSafeName());
4391
    stringBuffer.append(genFeature.getSafeName());
4346
    stringBuffer.append(TEXT_1172);
4392
    stringBuffer.append(TEXT_1190);
4347
    if (genFeature.isResolveProxies()) {
4393
    if (genFeature.isResolveProxies()) {
4348
    stringBuffer.append(TEXT_1173);
4394
    stringBuffer.append(TEXT_1191);
4349
    stringBuffer.append(genFeature.getAccessorName());
4395
    stringBuffer.append(genFeature.getAccessorName());
4350
    } else {
4396
    } else {
4351
    stringBuffer.append(genFeature.getGetAccessor());
4397
    stringBuffer.append(genFeature.getGetAccessor());
4352
    }
4398
    }
4353
    stringBuffer.append(TEXT_1174);
4399
    stringBuffer.append(TEXT_1192);
4354
    }
4400
    }
4355
    stringBuffer.append(TEXT_1175);
4401
    stringBuffer.append(TEXT_1193);
4356
    stringBuffer.append(genFeature.getSafeName());
4402
    stringBuffer.append(genFeature.getSafeName());
4357
    stringBuffer.append(TEXT_1176);
4403
    stringBuffer.append(TEXT_1194);
4358
    if (genFeature.isEffectiveContains()) {
4404
    if (genFeature.isEffectiveContains()) {
4359
    stringBuffer.append(TEXT_1177);
4405
    stringBuffer.append(TEXT_1195);
4360
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
4406
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
4361
    stringBuffer.append(TEXT_1178);
4407
    stringBuffer.append(TEXT_1196);
4362
    stringBuffer.append(genFeature.getSafeName());
4408
    stringBuffer.append(genFeature.getSafeName());
4363
    stringBuffer.append(TEXT_1179);
4409
    stringBuffer.append(TEXT_1197);
4364
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4410
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4365
    stringBuffer.append(negativeOffsetCorrection);
4411
    stringBuffer.append(negativeOffsetCorrection);
4366
    stringBuffer.append(TEXT_1180);
4412
    stringBuffer.append(TEXT_1198);
4367
    } else { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
4413
    } else { GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
4368
    stringBuffer.append(TEXT_1181);
4414
    stringBuffer.append(TEXT_1199);
4369
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
4415
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
4370
    stringBuffer.append(TEXT_1182);
4416
    stringBuffer.append(TEXT_1200);
4371
    stringBuffer.append(genFeature.getSafeName());
4417
    stringBuffer.append(genFeature.getSafeName());
4372
    stringBuffer.append(TEXT_1183);
4418
    stringBuffer.append(TEXT_1201);
4373
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
4419
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
4374
    stringBuffer.append(reverseOffsetCorrection);
4420
    stringBuffer.append(reverseOffsetCorrection);
4375
    stringBuffer.append(TEXT_1184);
4421
    stringBuffer.append(TEXT_1202);
4376
    stringBuffer.append(targetClass.getImportedInterfaceName());
4422
    stringBuffer.append(targetClass.getImportedInterfaceName());
4377
    stringBuffer.append(TEXT_1185);
4423
    stringBuffer.append(TEXT_1203);
4378
    }
4424
    }
4379
    stringBuffer.append(TEXT_1186);
4425
    stringBuffer.append(TEXT_1204);
4380
    stringBuffer.append(genFeature.getAccessorName());
4426
    stringBuffer.append(genFeature.getAccessorName());
4381
    stringBuffer.append(TEXT_1187);
4427
    stringBuffer.append(TEXT_1205);
4382
    stringBuffer.append(genFeature.getImportedType(genClass));
4428
    stringBuffer.append(genFeature.getImportedType(genClass));
4383
    stringBuffer.append(TEXT_1188);
4429
    stringBuffer.append(TEXT_1206);
4384
    }
4430
    }
4385
    }
4431
    }
4386
    stringBuffer.append(TEXT_1189);
4432
    stringBuffer.append(TEXT_1207);
4387
    if (genModel.isMinimalReflectiveMethods()) {
4433
    if (genModel.isMinimalReflectiveMethods()) {
4388
    stringBuffer.append(TEXT_1190);
4434
    stringBuffer.append(TEXT_1208);
4389
    } else {
4435
    } else {
4390
    stringBuffer.append(TEXT_1191);
4436
    stringBuffer.append(TEXT_1209);
4391
    }
4437
    }
4392
    stringBuffer.append(TEXT_1192);
4438
    stringBuffer.append(TEXT_1210);
4393
    }
4439
    }
4394
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEInverseRemoveGenFeatures())) {
4440
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEInverseRemoveGenFeatures())) {
4395
    stringBuffer.append(TEXT_1193);
4441
    stringBuffer.append(TEXT_1211);
4396
    if (genModel.useClassOverrideAnnotation()) {
4442
    if (genModel.useClassOverrideAnnotation()) {
4397
    stringBuffer.append(TEXT_1194);
4443
    stringBuffer.append(TEXT_1212);
4398
    }
4444
    }
4399
    stringBuffer.append(TEXT_1195);
4445
    stringBuffer.append(TEXT_1213);
4400
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4446
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4401
    stringBuffer.append(TEXT_1196);
4447
    stringBuffer.append(TEXT_1214);
4402
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
4448
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.InternalEObject"));
4403
    stringBuffer.append(TEXT_1197);
4449
    stringBuffer.append(TEXT_1215);
4404
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4450
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4405
    stringBuffer.append(TEXT_1198);
4451
    stringBuffer.append(TEXT_1216);
4406
    stringBuffer.append(negativeOffsetCorrection);
4452
    stringBuffer.append(negativeOffsetCorrection);
4407
    stringBuffer.append(TEXT_1199);
4453
    stringBuffer.append(TEXT_1217);
4408
    for (GenFeature genFeature : genClass.getEInverseRemoveGenFeatures()) {
4454
    for (GenFeature genFeature : genClass.getEInverseRemoveGenFeatures()) {
4409
    stringBuffer.append(TEXT_1200);
4455
    stringBuffer.append(TEXT_1218);
4410
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4456
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4411
    stringBuffer.append(TEXT_1201);
4457
    stringBuffer.append(TEXT_1219);
4412
    if (genFeature.isListType()) {
4458
    if (genFeature.isListType()) {
4413
    if (genFeature.isMapType() && genFeature.isEffectiveSuppressEMFTypes()) {
4459
    if (genFeature.isMapType() && genFeature.isEffectiveSuppressEMFTypes()) {
4414
    stringBuffer.append(TEXT_1202);
4460
    stringBuffer.append(TEXT_1220);
4415
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList"));
4461
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList"));
4416
    stringBuffer.append(singleWildcard);
4462
    stringBuffer.append(singleWildcard);
4417
    stringBuffer.append(TEXT_1203);
4463
    stringBuffer.append(TEXT_1221);
4418
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.EMap"));
4464
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.EMap"));
4419
    stringBuffer.append(TEXT_1204);
4465
    stringBuffer.append(TEXT_1222);
4420
    stringBuffer.append(genFeature.getImportedMapTemplateArguments(genClass));
4466
    stringBuffer.append(genFeature.getImportedMapTemplateArguments(genClass));
4421
    stringBuffer.append(TEXT_1205);
4467
    stringBuffer.append(TEXT_1223);
4422
    stringBuffer.append(genFeature.getGetAccessor());
4468
    stringBuffer.append(genFeature.getGetAccessor());
4423
    stringBuffer.append(TEXT_1206);
4469
    stringBuffer.append(TEXT_1224);
4424
    } else if (genFeature.isWrappedFeatureMapType()) {
4470
    } else if (genFeature.isWrappedFeatureMapType()) {
4425
    stringBuffer.append(TEXT_1207);
4471
    stringBuffer.append(TEXT_1225);
4426
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList"));
4472
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList"));
4427
    stringBuffer.append(singleWildcard);
4473
    stringBuffer.append(singleWildcard);
4428
    stringBuffer.append(TEXT_1208);
4474
    stringBuffer.append(TEXT_1226);
4429
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4475
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4430
    stringBuffer.append(TEXT_1209);
4476
    stringBuffer.append(TEXT_1227);
4431
    stringBuffer.append(genFeature.getGetAccessor());
4477
    stringBuffer.append(genFeature.getGetAccessor());
4432
    stringBuffer.append(TEXT_1210);
4478
    stringBuffer.append(TEXT_1228);
4433
    } else {
4479
    } else {
4434
    stringBuffer.append(TEXT_1211);
4480
    stringBuffer.append(TEXT_1229);
4435
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList"));
4481
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.InternalEList"));
4436
    stringBuffer.append(singleWildcard);
4482
    stringBuffer.append(singleWildcard);
4437
    stringBuffer.append(TEXT_1212);
4483
    stringBuffer.append(TEXT_1230);
4438
    stringBuffer.append(genFeature.getGetAccessor());
4484
    stringBuffer.append(genFeature.getGetAccessor());
4439
    stringBuffer.append(TEXT_1213);
4485
    stringBuffer.append(TEXT_1231);
4440
    }
4486
    }
4441
    } else if (genFeature.isContainer() && !genFeature.isBasicSet()) {
4487
    } else if (genFeature.isContainer() && !genFeature.isBasicSet()) {
4442
    stringBuffer.append(TEXT_1214);
4488
    stringBuffer.append(TEXT_1232);
4443
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4489
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4444
    stringBuffer.append(positiveOffsetCorrection);
4490
    stringBuffer.append(positiveOffsetCorrection);
4445
    stringBuffer.append(TEXT_1215);
4491
    stringBuffer.append(TEXT_1233);
4446
    } else if (genFeature.isUnsettable()) {
4492
    } else if (genFeature.isUnsettable()) {
4447
    stringBuffer.append(TEXT_1216);
4493
    stringBuffer.append(TEXT_1234);
4448
    stringBuffer.append(genFeature.getAccessorName());
4494
    stringBuffer.append(genFeature.getAccessorName());
4449
    stringBuffer.append(TEXT_1217);
4495
    stringBuffer.append(TEXT_1235);
4450
    } else {
4496
    } else {
4451
    stringBuffer.append(TEXT_1218);
4497
    stringBuffer.append(TEXT_1236);
4452
    stringBuffer.append(genFeature.getAccessorName());
4498
    stringBuffer.append(genFeature.getAccessorName());
4453
    stringBuffer.append(TEXT_1219);
4499
    stringBuffer.append(TEXT_1237);
4454
    }
4500
    }
4455
    }
4501
    }
4456
    stringBuffer.append(TEXT_1220);
4502
    stringBuffer.append(TEXT_1238);
4457
    if (genModel.isMinimalReflectiveMethods()) {
4503
    if (genModel.isMinimalReflectiveMethods()) {
4458
    stringBuffer.append(TEXT_1221);
4504
    stringBuffer.append(TEXT_1239);
4459
    } else {
4505
    } else {
4460
    stringBuffer.append(TEXT_1222);
4506
    stringBuffer.append(TEXT_1240);
4461
    }
4507
    }
4462
    stringBuffer.append(TEXT_1223);
4508
    stringBuffer.append(TEXT_1241);
4463
    }
4509
    }
4464
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEBasicRemoveFromContainerGenFeatures())) {
4510
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEBasicRemoveFromContainerGenFeatures())) {
4465
    stringBuffer.append(TEXT_1224);
4511
    stringBuffer.append(TEXT_1242);
4466
    if (genModel.useClassOverrideAnnotation()) {
4512
    if (genModel.useClassOverrideAnnotation()) {
4467
    stringBuffer.append(TEXT_1225);
4513
    stringBuffer.append(TEXT_1243);
4468
    }
4514
    }
4469
    stringBuffer.append(TEXT_1226);
4515
    stringBuffer.append(TEXT_1244);
4470
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4516
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4471
    stringBuffer.append(TEXT_1227);
4517
    stringBuffer.append(TEXT_1245);
4472
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4518
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.notify.NotificationChain"));
4473
    stringBuffer.append(TEXT_1228);
4519
    stringBuffer.append(TEXT_1246);
4474
    stringBuffer.append(negativeOffsetCorrection);
4520
    stringBuffer.append(negativeOffsetCorrection);
4475
    stringBuffer.append(TEXT_1229);
4521
    stringBuffer.append(TEXT_1247);
4476
    for (GenFeature genFeature : genClass.getEBasicRemoveFromContainerGenFeatures()) {
4522
    for (GenFeature genFeature : genClass.getEBasicRemoveFromContainerGenFeatures()) {
4477
    GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
4523
    GenFeature reverseFeature = genFeature.getReverse(); GenClass targetClass = reverseFeature.getGenClass(); String reverseOffsetCorrection = targetClass.hasOffsetCorrection() ? " + " + genClass.getOffsetCorrectionField(reverseFeature) : "";
4478
    stringBuffer.append(TEXT_1230);
4524
    stringBuffer.append(TEXT_1248);
4479
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4525
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4480
    stringBuffer.append(TEXT_1231);
4526
    stringBuffer.append(TEXT_1249);
4481
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
4527
    stringBuffer.append(targetClass.getQualifiedFeatureID(reverseFeature));
4482
    stringBuffer.append(reverseOffsetCorrection);
4528
    stringBuffer.append(reverseOffsetCorrection);
4483
    stringBuffer.append(TEXT_1232);
4529
    stringBuffer.append(TEXT_1250);
4484
    stringBuffer.append(targetClass.getImportedInterfaceName());
4530
    stringBuffer.append(targetClass.getImportedInterfaceName());
4485
    stringBuffer.append(TEXT_1233);
4531
    stringBuffer.append(TEXT_1251);
4486
    }
4532
    }
4487
    stringBuffer.append(TEXT_1234);
4533
    stringBuffer.append(TEXT_1252);
4488
    if (genModel.isMinimalReflectiveMethods()) {
4534
    if (genModel.isMinimalReflectiveMethods()) {
4489
    stringBuffer.append(TEXT_1235);
4535
    stringBuffer.append(TEXT_1253);
4490
    } else {
4536
    } else {
4491
    stringBuffer.append(TEXT_1236);
4537
    stringBuffer.append(TEXT_1254);
4492
    }
4538
    }
4493
    stringBuffer.append(TEXT_1237);
4539
    stringBuffer.append(TEXT_1255);
4494
    }
4540
    }
4495
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEGetGenFeatures())) {
4541
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEGetGenFeatures())) {
4496
    stringBuffer.append(TEXT_1238);
4542
    stringBuffer.append(TEXT_1256);
4497
    if (genModel.useClassOverrideAnnotation()) {
4543
    if (genModel.useClassOverrideAnnotation()) {
4498
    stringBuffer.append(TEXT_1239);
4544
    stringBuffer.append(TEXT_1257);
4499
    }
4545
    }
4500
    stringBuffer.append(TEXT_1240);
4546
    stringBuffer.append(TEXT_1258);
4501
    stringBuffer.append(negativeOffsetCorrection);
4547
    stringBuffer.append(negativeOffsetCorrection);
4502
    stringBuffer.append(TEXT_1241);
4548
    stringBuffer.append(TEXT_1259);
4503
    for (GenFeature genFeature : genClass.getEGetGenFeatures()) {
4549
    for (GenFeature genFeature : genClass.getEGetGenFeatures()) {
4504
    stringBuffer.append(TEXT_1242);
4550
    stringBuffer.append(TEXT_1260);
4505
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4551
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4506
    stringBuffer.append(TEXT_1243);
4552
    stringBuffer.append(TEXT_1261);
4507
    if (genFeature.isPrimitiveType()) {
4553
    if (genFeature.isPrimitiveType()) {
4508
    if (genFeature.isBooleanType()) {
4554
    if (genFeature.isBooleanType()) {
4509
    stringBuffer.append(TEXT_1244);
4555
    stringBuffer.append(TEXT_1262);
4510
    stringBuffer.append(genFeature.getGetAccessor());
4556
    stringBuffer.append(genFeature.getGetAccessor());
4511
    stringBuffer.append(TEXT_1245);
4557
    stringBuffer.append(TEXT_1263);
4512
    } else {
4558
    } else {
4513
    stringBuffer.append(TEXT_1246);
4559
    stringBuffer.append(TEXT_1264);
4514
    stringBuffer.append(genFeature.getObjectType(genClass));
4560
    stringBuffer.append(genFeature.getObjectType(genClass));
4515
    stringBuffer.append(TEXT_1247);
4561
    stringBuffer.append(TEXT_1265);
4516
    stringBuffer.append(genFeature.getGetAccessor());
4562
    stringBuffer.append(genFeature.getGetAccessor());
4517
    stringBuffer.append(TEXT_1248);
4563
    stringBuffer.append(TEXT_1266);
4518
    }
4564
    }
4519
    } else if (genFeature.isResolveProxies() && !genFeature.isListType()) {
4565
    } else if (genFeature.isResolveProxies() && !genFeature.isListType()) {
4520
    stringBuffer.append(TEXT_1249);
4566
    stringBuffer.append(TEXT_1267);
4521
    stringBuffer.append(genFeature.getGetAccessor());
4567
    stringBuffer.append(genFeature.getGetAccessor());
4522
    stringBuffer.append(TEXT_1250);
4568
    stringBuffer.append(TEXT_1268);
4523
    stringBuffer.append(genFeature.getAccessorName());
4569
    stringBuffer.append(genFeature.getAccessorName());
4524
    stringBuffer.append(TEXT_1251);
4570
    stringBuffer.append(TEXT_1269);
4525
    } else if (genFeature.isMapType()) {
4571
    } else if (genFeature.isMapType()) {
4526
    if (genFeature.isEffectiveSuppressEMFTypes()) {
4572
    if (genFeature.isEffectiveSuppressEMFTypes()) {
4527
    stringBuffer.append(TEXT_1252);
4573
    stringBuffer.append(TEXT_1270);
4528
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.EMap"));
4574
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.EMap"));
4529
    stringBuffer.append(TEXT_1253);
4575
    stringBuffer.append(TEXT_1271);
4530
    stringBuffer.append(genFeature.getImportedMapTemplateArguments(genClass));
4576
    stringBuffer.append(genFeature.getImportedMapTemplateArguments(genClass));
4531
    stringBuffer.append(TEXT_1254);
4577
    stringBuffer.append(TEXT_1272);
4532
    stringBuffer.append(genFeature.getGetAccessor());
4578
    stringBuffer.append(genFeature.getGetAccessor());
4533
    stringBuffer.append(TEXT_1255);
4579
    stringBuffer.append(TEXT_1273);
4534
    stringBuffer.append(genFeature.getGetAccessor());
4580
    stringBuffer.append(genFeature.getGetAccessor());
4535
    stringBuffer.append(TEXT_1256);
4581
    stringBuffer.append(TEXT_1274);
4536
    } else {
4582
    } else {
4537
    stringBuffer.append(TEXT_1257);
4583
    stringBuffer.append(TEXT_1275);
4538
    stringBuffer.append(genFeature.getGetAccessor());
4584
    stringBuffer.append(genFeature.getGetAccessor());
4539
    stringBuffer.append(TEXT_1258);
4585
    stringBuffer.append(TEXT_1276);
4540
    stringBuffer.append(genFeature.getGetAccessor());
4586
    stringBuffer.append(genFeature.getGetAccessor());
4541
    stringBuffer.append(TEXT_1259);
4587
    stringBuffer.append(TEXT_1277);
4542
    }
4588
    }
4543
    } else if (genFeature.isWrappedFeatureMapType()) {
4589
    } else if (genFeature.isWrappedFeatureMapType()) {
4544
    stringBuffer.append(TEXT_1260);
4590
    stringBuffer.append(TEXT_1278);
4545
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4591
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4546
    stringBuffer.append(TEXT_1261);
4592
    stringBuffer.append(TEXT_1279);
4547
    stringBuffer.append(genFeature.getGetAccessor());
4593
    stringBuffer.append(genFeature.getGetAccessor());
4548
    stringBuffer.append(TEXT_1262);
4594
    stringBuffer.append(TEXT_1280);
4549
    stringBuffer.append(genFeature.getGetAccessor());
4595
    stringBuffer.append(genFeature.getGetAccessor());
4550
    stringBuffer.append(TEXT_1263);
4596
    stringBuffer.append(TEXT_1281);
4551
    } else if (genFeature.isFeatureMapType()) {
4597
    } else if (genFeature.isFeatureMapType()) {
4552
    stringBuffer.append(TEXT_1264);
4598
    stringBuffer.append(TEXT_1282);
4553
    stringBuffer.append(genFeature.getGetAccessor());
4599
    stringBuffer.append(genFeature.getGetAccessor());
4554
    stringBuffer.append(TEXT_1265);
4600
    stringBuffer.append(TEXT_1283);
4555
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4601
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4556
    stringBuffer.append(TEXT_1266);
4602
    stringBuffer.append(TEXT_1284);
4557
    stringBuffer.append(genFeature.getGetAccessor());
4603
    stringBuffer.append(genFeature.getGetAccessor());
4558
    stringBuffer.append(TEXT_1267);
4604
    stringBuffer.append(TEXT_1285);
4559
    } else {
4605
    } else {
4560
    stringBuffer.append(TEXT_1268);
4606
    stringBuffer.append(TEXT_1286);
4561
    stringBuffer.append(genFeature.getGetAccessor());
4607
    stringBuffer.append(genFeature.getGetAccessor());
4562
    stringBuffer.append(TEXT_1269);
4608
    stringBuffer.append(TEXT_1287);
4563
    }
4609
    }
4564
    }
4610
    }
4565
    stringBuffer.append(TEXT_1270);
4611
    stringBuffer.append(TEXT_1288);
4566
    if (genModel.isMinimalReflectiveMethods()) {
4612
    if (genModel.isMinimalReflectiveMethods()) {
4567
    stringBuffer.append(TEXT_1271);
4613
    stringBuffer.append(TEXT_1289);
4568
    } else {
4614
    } else {
4569
    stringBuffer.append(TEXT_1272);
4615
    stringBuffer.append(TEXT_1290);
4570
    }
4616
    }
4571
    stringBuffer.append(TEXT_1273);
4617
    stringBuffer.append(TEXT_1291);
4572
    }
4618
    }
4573
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getESetGenFeatures())) {
4619
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getESetGenFeatures())) {
4574
    stringBuffer.append(TEXT_1274);
4620
    stringBuffer.append(TEXT_1292);
4575
    if (genModel.useGenerics()) {
4621
    if (genModel.useGenerics()) {
4576
    for (GenFeature genFeature : genClass.getESetGenFeatures()) {
4622
    for (GenFeature genFeature : genClass.getESetGenFeatures()) {
4577
    if (genFeature.isUncheckedCast(genClass) && !genFeature.isFeatureMapType() && !genFeature.isMapType()) {
4623
    if (genFeature.isUncheckedCast(genClass) && !genFeature.isFeatureMapType() && !genFeature.isMapType()) {
4578
    stringBuffer.append(TEXT_1275);
4624
    stringBuffer.append(TEXT_1293);
4579
    break; }
4625
    break; }
4580
    }
4626
    }
4581
    }
4627
    }
4582
    if (genModel.useClassOverrideAnnotation()) {
4628
    if (genModel.useClassOverrideAnnotation()) {
4583
    stringBuffer.append(TEXT_1276);
4629
    stringBuffer.append(TEXT_1294);
4584
    }
4630
    }
4585
    stringBuffer.append(TEXT_1277);
4631
    stringBuffer.append(TEXT_1295);
4586
    stringBuffer.append(negativeOffsetCorrection);
4632
    stringBuffer.append(negativeOffsetCorrection);
4587
    stringBuffer.append(TEXT_1278);
4633
    stringBuffer.append(TEXT_1296);
4588
    for (GenFeature genFeature : genClass.getESetGenFeatures()) {
4634
    for (GenFeature genFeature : genClass.getESetGenFeatures()) {
4589
    stringBuffer.append(TEXT_1279);
4635
    stringBuffer.append(TEXT_1297);
4590
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4636
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4591
    stringBuffer.append(TEXT_1280);
4637
    stringBuffer.append(TEXT_1298);
4592
    if (genFeature.isListType()) {
4638
    if (genFeature.isListType()) {
4593
    if (genFeature.isWrappedFeatureMapType()) {
4639
    if (genFeature.isWrappedFeatureMapType()) {
4594
    stringBuffer.append(TEXT_1281);
4640
    stringBuffer.append(TEXT_1299);
4595
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4641
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4596
    stringBuffer.append(TEXT_1282);
4642
    stringBuffer.append(TEXT_1300);
4597
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4643
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4598
    stringBuffer.append(TEXT_1283);
4644
    stringBuffer.append(TEXT_1301);
4599
    stringBuffer.append(genFeature.getGetAccessor());
4645
    stringBuffer.append(genFeature.getGetAccessor());
4600
    stringBuffer.append(TEXT_1284);
4646
    stringBuffer.append(TEXT_1302);
4601
    } else if (genFeature.isFeatureMapType()) {
4647
    } else if (genFeature.isFeatureMapType()) {
4602
    stringBuffer.append(TEXT_1285);
4648
    stringBuffer.append(TEXT_1303);
4603
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4649
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4604
    stringBuffer.append(TEXT_1286);
4650
    stringBuffer.append(TEXT_1304);
4605
    stringBuffer.append(genFeature.getGetAccessor());
4651
    stringBuffer.append(genFeature.getGetAccessor());
4606
    stringBuffer.append(TEXT_1287);
4652
    stringBuffer.append(TEXT_1305);
4607
    } else if (genFeature.isMapType()) {
4653
    } else if (genFeature.isMapType()) {
4608
    if (genFeature.isEffectiveSuppressEMFTypes()) {
4654
    if (genFeature.isEffectiveSuppressEMFTypes()) {
4609
    stringBuffer.append(TEXT_1288);
4655
    stringBuffer.append(TEXT_1306);
4610
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.EStructuralFeature"));
4656
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.EStructuralFeature"));
4611
    stringBuffer.append(TEXT_1289);
4657
    stringBuffer.append(TEXT_1307);
4612
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.EMap"));
4658
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.common.util.EMap"));
4613
    stringBuffer.append(TEXT_1290);
4659
    stringBuffer.append(TEXT_1308);
4614
    stringBuffer.append(genFeature.getImportedMapTemplateArguments(genClass));
4660
    stringBuffer.append(genFeature.getImportedMapTemplateArguments(genClass));
4615
    stringBuffer.append(TEXT_1291);
4661
    stringBuffer.append(TEXT_1309);
4616
    stringBuffer.append(genFeature.getGetAccessor());
4662
    stringBuffer.append(genFeature.getGetAccessor());
4617
    stringBuffer.append(TEXT_1292);
4663
    stringBuffer.append(TEXT_1310);
4618
    } else {
4664
    } else {
4619
    stringBuffer.append(TEXT_1293);
4665
    stringBuffer.append(TEXT_1311);
4620
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.EStructuralFeature"));
4666
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.EStructuralFeature"));
4621
    stringBuffer.append(TEXT_1294);
4667
    stringBuffer.append(TEXT_1312);
4622
    stringBuffer.append(genFeature.getGetAccessor());
4668
    stringBuffer.append(genFeature.getGetAccessor());
4623
    stringBuffer.append(TEXT_1295);
4669
    stringBuffer.append(TEXT_1313);
4624
    }
4670
    }
4625
    } else {
4671
    } else {
4626
    stringBuffer.append(TEXT_1296);
4672
    stringBuffer.append(TEXT_1314);
4627
    stringBuffer.append(genFeature.getGetAccessor());
4673
    stringBuffer.append(genFeature.getGetAccessor());
4628
    stringBuffer.append(TEXT_1297);
4674
    stringBuffer.append(TEXT_1315);
4629
    stringBuffer.append(genFeature.getGetAccessor());
4675
    stringBuffer.append(genFeature.getGetAccessor());
4630
    stringBuffer.append(TEXT_1298);
4676
    stringBuffer.append(TEXT_1316);
4631
    stringBuffer.append(genModel.getImportedName("java.util.Collection"));
4677
    stringBuffer.append(genModel.getImportedName("java.util.Collection"));
4632
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) {
4678
    if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) {
4633
    stringBuffer.append(TEXT_1299);
4679
    stringBuffer.append(TEXT_1317);
4634
    stringBuffer.append(genFeature.getListItemType(genClass));
4680
    stringBuffer.append(genFeature.getListItemType(genClass));
4635
    stringBuffer.append(TEXT_1300);
4681
    stringBuffer.append(TEXT_1318);
4636
    }
4682
    }
4637
    stringBuffer.append(TEXT_1301);
4683
    stringBuffer.append(TEXT_1319);
4638
    }
4684
    }
4639
    } else if (genFeature.isPrimitiveType()) {
4685
    } else if (genFeature.isPrimitiveType()) {
4640
    stringBuffer.append(TEXT_1302);
4686
    stringBuffer.append(TEXT_1320);
4641
    stringBuffer.append(genFeature.getAccessorName());
4687
    stringBuffer.append(genFeature.getAccessorName());
4642
    stringBuffer.append(TEXT_1303);
4688
    stringBuffer.append(TEXT_1321);
4643
    stringBuffer.append(genFeature.getObjectType(genClass));
4689
    stringBuffer.append(genFeature.getObjectType(genClass));
4644
    stringBuffer.append(TEXT_1304);
4690
    stringBuffer.append(TEXT_1322);
4645
    stringBuffer.append(genFeature.getPrimitiveValueFunction());
4691
    stringBuffer.append(genFeature.getPrimitiveValueFunction());
4646
    stringBuffer.append(TEXT_1305);
4692
    stringBuffer.append(TEXT_1323);
4647
    } else {
4693
    } else {
4648
    stringBuffer.append(TEXT_1306);
4694
    stringBuffer.append(TEXT_1324);
4649
    stringBuffer.append(genFeature.getAccessorName());
4695
    stringBuffer.append(genFeature.getAccessorName());
4650
    stringBuffer.append(TEXT_1307);
4696
    stringBuffer.append(TEXT_1325);
4651
    if (genFeature.getTypeGenDataType() == null || !genFeature.getTypeGenDataType().isObjectType() || !genFeature.getRawType().equals(genFeature.getType(genClass))) {
4697
    if (genFeature.getTypeGenDataType() == null || !genFeature.getTypeGenDataType().isObjectType() || !genFeature.getRawType().equals(genFeature.getType(genClass))) {
4652
    stringBuffer.append(TEXT_1308);
4698
    stringBuffer.append(TEXT_1326);
4653
    stringBuffer.append(genFeature.getImportedType(genClass));
4699
    stringBuffer.append(genFeature.getImportedType(genClass));
4654
    stringBuffer.append(TEXT_1309);
4700
    stringBuffer.append(TEXT_1327);
4655
    }
4701
    }
4656
    stringBuffer.append(TEXT_1310);
4702
    stringBuffer.append(TEXT_1328);
4657
    }
4703
    }
4658
    stringBuffer.append(TEXT_1311);
4704
    stringBuffer.append(TEXT_1329);
4659
    }
4705
    }
4660
    stringBuffer.append(TEXT_1312);
4706
    stringBuffer.append(TEXT_1330);
4661
    if (genModel.isMinimalReflectiveMethods()) {
4707
    if (genModel.isMinimalReflectiveMethods()) {
4662
    stringBuffer.append(TEXT_1313);
4708
    stringBuffer.append(TEXT_1331);
4663
    } else {
4709
    } else {
4664
    stringBuffer.append(TEXT_1314);
4710
    stringBuffer.append(TEXT_1332);
4665
    }
4711
    }
4666
    stringBuffer.append(TEXT_1315);
4712
    stringBuffer.append(TEXT_1333);
4667
    }
4713
    }
4668
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEUnsetGenFeatures())) {
4714
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEUnsetGenFeatures())) {
4669
    stringBuffer.append(TEXT_1316);
4715
    stringBuffer.append(TEXT_1334);
4670
    if (genModel.useClassOverrideAnnotation()) {
4716
    if (genModel.useClassOverrideAnnotation()) {
4671
    stringBuffer.append(TEXT_1317);
4717
    stringBuffer.append(TEXT_1335);
4672
    }
4718
    }
4673
    stringBuffer.append(TEXT_1318);
4719
    stringBuffer.append(TEXT_1336);
4674
    stringBuffer.append(negativeOffsetCorrection);
4720
    stringBuffer.append(negativeOffsetCorrection);
4675
    stringBuffer.append(TEXT_1319);
4721
    stringBuffer.append(TEXT_1337);
4676
    for (GenFeature genFeature : genClass.getEUnsetGenFeatures()) {
4722
    for (GenFeature genFeature : genClass.getEUnsetGenFeatures()) {
4677
    stringBuffer.append(TEXT_1320);
4723
    stringBuffer.append(TEXT_1338);
4678
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4724
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4679
    stringBuffer.append(TEXT_1321);
4725
    stringBuffer.append(TEXT_1339);
4680
    if (genFeature.isListType() && !genFeature.isUnsettable()) {
4726
    if (genFeature.isListType() && !genFeature.isUnsettable()) {
4681
    if (genFeature.isWrappedFeatureMapType()) {
4727
    if (genFeature.isWrappedFeatureMapType()) {
4682
    stringBuffer.append(TEXT_1322);
4728
    stringBuffer.append(TEXT_1340);
4683
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4729
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4684
    stringBuffer.append(TEXT_1323);
4730
    stringBuffer.append(TEXT_1341);
4685
    stringBuffer.append(genFeature.getGetAccessor());
4731
    stringBuffer.append(genFeature.getGetAccessor());
4686
    stringBuffer.append(TEXT_1324);
4732
    stringBuffer.append(TEXT_1342);
4687
    } else {
4733
    } else {
4688
    stringBuffer.append(TEXT_1325);
4734
    stringBuffer.append(TEXT_1343);
4689
    stringBuffer.append(genFeature.getGetAccessor());
4735
    stringBuffer.append(genFeature.getGetAccessor());
4690
    stringBuffer.append(TEXT_1326);
4736
    stringBuffer.append(TEXT_1344);
4691
    }
4737
    }
4692
    } else if (genFeature.isUnsettable()) {
4738
    } else if (genFeature.isUnsettable()) {
4693
    stringBuffer.append(TEXT_1327);
4739
    stringBuffer.append(TEXT_1345);
4694
    stringBuffer.append(genFeature.getAccessorName());
4740
    stringBuffer.append(genFeature.getAccessorName());
4695
    stringBuffer.append(TEXT_1328);
4741
    stringBuffer.append(TEXT_1346);
4696
    } else if (!genFeature.hasEDefault()) {
4742
    } else if (!genFeature.hasEDefault()) {
4697
    stringBuffer.append(TEXT_1329);
4743
    stringBuffer.append(TEXT_1347);
4698
    stringBuffer.append(genFeature.getAccessorName());
4744
    stringBuffer.append(genFeature.getAccessorName());
4699
    stringBuffer.append(TEXT_1330);
4745
    stringBuffer.append(TEXT_1348);
4700
    stringBuffer.append(genFeature.getImportedType(genClass));
4746
    stringBuffer.append(genFeature.getImportedType(genClass));
4701
    stringBuffer.append(TEXT_1331);
4747
    stringBuffer.append(TEXT_1349);
4702
    } else {
4748
    } else {
4703
    stringBuffer.append(TEXT_1332);
4749
    stringBuffer.append(TEXT_1350);
4704
    stringBuffer.append(genFeature.getAccessorName());
4750
    stringBuffer.append(genFeature.getAccessorName());
4705
    stringBuffer.append(TEXT_1333);
4751
    stringBuffer.append(TEXT_1351);
4706
    stringBuffer.append(genFeature.getEDefault());
4752
    stringBuffer.append(genFeature.getEDefault());
4707
    stringBuffer.append(TEXT_1334);
4753
    stringBuffer.append(TEXT_1352);
4708
    }
4754
    }
4709
    stringBuffer.append(TEXT_1335);
4755
    stringBuffer.append(TEXT_1353);
4710
    }
4756
    }
4711
    stringBuffer.append(TEXT_1336);
4757
    stringBuffer.append(TEXT_1354);
4712
    if (genModel.isMinimalReflectiveMethods()) {
4758
    if (genModel.isMinimalReflectiveMethods()) {
4713
    stringBuffer.append(TEXT_1337);
4759
    stringBuffer.append(TEXT_1355);
4714
    } else {
4760
    } else {
4715
    stringBuffer.append(TEXT_1338);
4761
    stringBuffer.append(TEXT_1356);
4716
    }
4762
    }
4717
    stringBuffer.append(TEXT_1339);
4763
    stringBuffer.append(TEXT_1357);
4718
    //Class/eUnset.override.javajetinc
4764
    //Class/eUnset.override.javajetinc
4719
    }
4765
    }
4720
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEIsSetGenFeatures())) {
4766
    if (isImplementation && !genModel.isReflectiveDelegation() && genClass.implementsAny(genClass.getEIsSetGenFeatures())) {
4721
    stringBuffer.append(TEXT_1340);
4767
    stringBuffer.append(TEXT_1358);
4722
    if (genModel.useGenerics()) {
4768
    if (genModel.useGenerics()) {
4723
    for (GenFeature genFeature : genClass.getEIsSetGenFeatures()) {
4769
    for (GenFeature genFeature : genClass.getEIsSetGenFeatures()) {
4724
    if (genFeature.isListType() && !genFeature.isUnsettable() && !genFeature.isWrappedFeatureMapType() && !genClass.isField(genFeature) && genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4770
    if (genFeature.isListType() && !genFeature.isUnsettable() && !genFeature.isWrappedFeatureMapType() && !genClass.isField(genFeature) && genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4725
    stringBuffer.append(TEXT_1341);
4771
    stringBuffer.append(TEXT_1359);
4726
    break; }
4772
    break; }
4727
    }
4773
    }
4728
    }
4774
    }
4729
    if (genModel.useClassOverrideAnnotation()) {
4775
    if (genModel.useClassOverrideAnnotation()) {
4730
    stringBuffer.append(TEXT_1342);
4776
    stringBuffer.append(TEXT_1360);
4731
    }
4777
    }
4732
    stringBuffer.append(TEXT_1343);
4778
    stringBuffer.append(TEXT_1361);
4733
    stringBuffer.append(negativeOffsetCorrection);
4779
    stringBuffer.append(negativeOffsetCorrection);
4734
    stringBuffer.append(TEXT_1344);
4780
    stringBuffer.append(TEXT_1362);
4735
    for (GenFeature genFeature : genClass.getEIsSetGenFeatures()) {
4781
    for (GenFeature genFeature : genClass.getEIsSetGenFeatures()) {
4736
    stringBuffer.append(TEXT_1345);
4782
    stringBuffer.append(TEXT_1363);
4737
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4783
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4738
    stringBuffer.append(TEXT_1346);
4784
    stringBuffer.append(TEXT_1364);
4739
    if (genFeature.isListType() && !genFeature.isUnsettable()) {
4785
    if (genFeature.isListType() && !genFeature.isUnsettable()) {
4740
    if (genFeature.isWrappedFeatureMapType()) {
4786
    if (genFeature.isWrappedFeatureMapType()) {
4741
    if (genFeature.isVolatile()) {
4787
    if (genFeature.isVolatile()) {
4742
    stringBuffer.append(TEXT_1347);
4788
    stringBuffer.append(TEXT_1365);
4743
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4789
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.util.FeatureMap"));
4744
    stringBuffer.append(TEXT_1348);
4790
    stringBuffer.append(TEXT_1366);
4745
    stringBuffer.append(genFeature.getGetAccessor());
4791
    stringBuffer.append(genFeature.getGetAccessor());
4746
    stringBuffer.append(TEXT_1349);
4792
    stringBuffer.append(TEXT_1367);
4747
    } else {
4793
    } else {
4748
    stringBuffer.append(TEXT_1350);
4794
    stringBuffer.append(TEXT_1368);
4749
    stringBuffer.append(genFeature.getSafeName());
4795
    stringBuffer.append(genFeature.getSafeName());
4750
    stringBuffer.append(TEXT_1351);
4796
    stringBuffer.append(TEXT_1369);
4751
    stringBuffer.append(genFeature.getSafeName());
4797
    stringBuffer.append(genFeature.getSafeName());
4752
    stringBuffer.append(TEXT_1352);
4798
    stringBuffer.append(TEXT_1370);
4753
    }
4799
    }
4754
    } else {
4800
    } else {
4755
    if (genClass.isField(genFeature)) {
4801
    if (genClass.isField(genFeature)) {
4756
    stringBuffer.append(TEXT_1353);
4802
    stringBuffer.append(TEXT_1371);
4757
    stringBuffer.append(genFeature.getSafeName());
4803
    stringBuffer.append(genFeature.getSafeName());
4758
    stringBuffer.append(TEXT_1354);
4804
    stringBuffer.append(TEXT_1372);
4759
    stringBuffer.append(genFeature.getSafeName());
4805
    stringBuffer.append(genFeature.getSafeName());
4760
    stringBuffer.append(TEXT_1355);
4806
    stringBuffer.append(TEXT_1373);
4761
    } else {
4807
    } else {
4762
    if (genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4808
    if (genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4763
    stringBuffer.append(TEXT_1356);
4809
    stringBuffer.append(TEXT_1374);
4764
    stringBuffer.append(genFeature.getImportedType(genClass));
4810
    stringBuffer.append(genFeature.getImportedType(genClass));
4765
    stringBuffer.append(TEXT_1357);
4811
    stringBuffer.append(TEXT_1375);
4766
    stringBuffer.append(genFeature.getSafeName());
4812
    stringBuffer.append(genFeature.getSafeName());
4767
    stringBuffer.append(TEXT_1358);
4813
    stringBuffer.append(TEXT_1376);
4768
    stringBuffer.append(genFeature.getImportedType(genClass));
4814
    stringBuffer.append(genFeature.getImportedType(genClass));
4769
    stringBuffer.append(TEXT_1359);
4815
    stringBuffer.append(TEXT_1377);
4770
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4816
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4771
    stringBuffer.append(positiveOffsetCorrection);
4817
    stringBuffer.append(positiveOffsetCorrection);
4772
    stringBuffer.append(TEXT_1360);
4818
    stringBuffer.append(TEXT_1378);
4773
    stringBuffer.append(genFeature.getSafeName());
4819
    stringBuffer.append(genFeature.getSafeName());
4774
    stringBuffer.append(TEXT_1361);
4820
    stringBuffer.append(TEXT_1379);
4775
    stringBuffer.append(genFeature.getSafeName());
4821
    stringBuffer.append(genFeature.getSafeName());
4776
    stringBuffer.append(TEXT_1362);
4822
    stringBuffer.append(TEXT_1380);
4777
    } else {
4823
    } else {
4778
    stringBuffer.append(TEXT_1363);
4824
    stringBuffer.append(TEXT_1381);
4779
    stringBuffer.append(genFeature.getGetAccessor());
4825
    stringBuffer.append(genFeature.getGetAccessor());
4780
    stringBuffer.append(TEXT_1364);
4826
    stringBuffer.append(TEXT_1382);
4781
    }
4827
    }
4782
    }
4828
    }
4783
    }
4829
    }
4784
    } else if (genFeature.isUnsettable()) {
4830
    } else if (genFeature.isUnsettable()) {
4785
    stringBuffer.append(TEXT_1365);
4831
    stringBuffer.append(TEXT_1383);
4786
    stringBuffer.append(genFeature.getAccessorName());
4832
    stringBuffer.append(genFeature.getAccessorName());
4787
    stringBuffer.append(TEXT_1366);
4833
    stringBuffer.append(TEXT_1384);
4788
    } else if (genFeature.isResolveProxies()) {
4834
    } else if (genFeature.isResolveProxies()) {
4789
    if (genClass.isField(genFeature)) {
4835
    if (genClass.isField(genFeature)) {
4790
    stringBuffer.append(TEXT_1367);
4836
    stringBuffer.append(TEXT_1385);
4791
    stringBuffer.append(genFeature.getSafeName());
4837
    stringBuffer.append(genFeature.getSafeName());
4792
    stringBuffer.append(TEXT_1368);
4838
    stringBuffer.append(TEXT_1386);
4793
    } else {
4839
    } else {
4794
    if (genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4840
    if (genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4795
    stringBuffer.append(TEXT_1369);
4841
    stringBuffer.append(TEXT_1387);
4796
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4842
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4797
    stringBuffer.append(positiveOffsetCorrection);
4843
    stringBuffer.append(positiveOffsetCorrection);
4798
    stringBuffer.append(TEXT_1370);
4844
    stringBuffer.append(TEXT_1388);
4799
    } else {
4845
    } else {
4800
    stringBuffer.append(TEXT_1371);
4846
    stringBuffer.append(TEXT_1389);
4801
    stringBuffer.append(genFeature.getAccessorName());
4847
    stringBuffer.append(genFeature.getAccessorName());
4802
    stringBuffer.append(TEXT_1372);
4848
    stringBuffer.append(TEXT_1390);
4803
    }
4849
    }
4804
    }
4850
    }
4805
    } else if (!genFeature.hasEDefault()) {
4851
    } else if (!genFeature.hasEDefault()) {
4806
    if (genClass.isField(genFeature)) {
4852
    if (genClass.isField(genFeature)) {
4807
    stringBuffer.append(TEXT_1373);
4853
    stringBuffer.append(TEXT_1391);
4808
    stringBuffer.append(genFeature.getSafeName());
4854
    stringBuffer.append(genFeature.getSafeName());
4809
    stringBuffer.append(TEXT_1374);
4855
    stringBuffer.append(TEXT_1392);
4810
    } else {
4856
    } else {
4811
    if (genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4857
    if (genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4812
    stringBuffer.append(TEXT_1375);
4858
    stringBuffer.append(TEXT_1393);
4813
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4859
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4814
    stringBuffer.append(positiveOffsetCorrection);
4860
    stringBuffer.append(positiveOffsetCorrection);
4815
    stringBuffer.append(TEXT_1376);
4861
    stringBuffer.append(TEXT_1394);
4816
    } else {
4862
    } else {
4817
    stringBuffer.append(TEXT_1377);
4863
    stringBuffer.append(TEXT_1395);
4818
    stringBuffer.append(genFeature.getGetAccessor());
4864
    stringBuffer.append(genFeature.getGetAccessor());
4819
    stringBuffer.append(TEXT_1378);
4865
    stringBuffer.append(TEXT_1396);
4820
    }
4866
    }
4821
    }
4867
    }
4822
    } else if (genFeature.isPrimitiveType() || genFeature.isEnumType()) {
4868
    } else if (genFeature.isPrimitiveType() || genFeature.isEnumType()) {
4823
    if (genClass.isField(genFeature)) {
4869
    if (genClass.isField(genFeature)) {
4824
    if (genClass.isFlag(genFeature)) {
4870
    if (genClass.isFlag(genFeature)) {
4825
    if (genFeature.isBooleanType()) {
4871
    if (genFeature.isBooleanType()) {
4826
    stringBuffer.append(TEXT_1379);
4872
    stringBuffer.append(TEXT_1397);
4827
    stringBuffer.append(genClass.getFlagsField(genFeature));
4873
    stringBuffer.append(genClass.getFlagsField(genFeature));
4828
    stringBuffer.append(TEXT_1380);
4874
    stringBuffer.append(TEXT_1398);
4829
    stringBuffer.append(genFeature.getUpperName());
4875
    stringBuffer.append(genFeature.getUpperName());
4830
    stringBuffer.append(TEXT_1381);
4876
    stringBuffer.append(TEXT_1399);
4831
    stringBuffer.append(genFeature.getEDefault());
4877
    stringBuffer.append(genFeature.getEDefault());
4832
    stringBuffer.append(TEXT_1382);
4878
    stringBuffer.append(TEXT_1400);
4833
    } else {
4879
    } else {
4834
    stringBuffer.append(TEXT_1383);
4880
    stringBuffer.append(TEXT_1401);
4835
    stringBuffer.append(genClass.getFlagsField(genFeature));
4881
    stringBuffer.append(genClass.getFlagsField(genFeature));
4836
    stringBuffer.append(TEXT_1384);
4882
    stringBuffer.append(TEXT_1402);
4837
    stringBuffer.append(genFeature.getUpperName());
4883
    stringBuffer.append(genFeature.getUpperName());
4838
    stringBuffer.append(TEXT_1385);
4884
    stringBuffer.append(TEXT_1403);
4839
    stringBuffer.append(genFeature.getUpperName());
4885
    stringBuffer.append(genFeature.getUpperName());
4840
    stringBuffer.append(TEXT_1386);
4886
    stringBuffer.append(TEXT_1404);
4841
    }
4887
    }
4842
    } else {
4888
    } else {
4843
    stringBuffer.append(TEXT_1387);
4889
    stringBuffer.append(TEXT_1405);
4844
    stringBuffer.append(genFeature.getSafeName());
4890
    stringBuffer.append(genFeature.getSafeName());
4845
    stringBuffer.append(TEXT_1388);
4891
    stringBuffer.append(TEXT_1406);
4846
    stringBuffer.append(genFeature.getEDefault());
4892
    stringBuffer.append(genFeature.getEDefault());
4847
    stringBuffer.append(TEXT_1389);
4893
    stringBuffer.append(TEXT_1407);
4848
    }
4894
    }
4849
    } else {
4895
    } else {
4850
    if (genFeature.isEnumType() && genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4896
    if (genFeature.isEnumType() && genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4851
    stringBuffer.append(TEXT_1390);
4897
    stringBuffer.append(TEXT_1408);
4852
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4898
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4853
    stringBuffer.append(positiveOffsetCorrection);
4899
    stringBuffer.append(positiveOffsetCorrection);
4854
    stringBuffer.append(TEXT_1391);
4900
    stringBuffer.append(TEXT_1409);
4855
    stringBuffer.append(genFeature.getEDefault());
4901
    stringBuffer.append(genFeature.getEDefault());
4856
    stringBuffer.append(TEXT_1392);
4902
    stringBuffer.append(TEXT_1410);
4857
    stringBuffer.append(genFeature.getEDefault());
4903
    stringBuffer.append(genFeature.getEDefault());
4858
    stringBuffer.append(TEXT_1393);
4904
    stringBuffer.append(TEXT_1411);
4859
    } else {
4905
    } else {
4860
    stringBuffer.append(TEXT_1394);
4906
    stringBuffer.append(TEXT_1412);
4861
    stringBuffer.append(genFeature.getGetAccessor());
4907
    stringBuffer.append(genFeature.getGetAccessor());
4862
    stringBuffer.append(TEXT_1395);
4908
    stringBuffer.append(TEXT_1413);
4863
    stringBuffer.append(genFeature.getEDefault());
4909
    stringBuffer.append(genFeature.getEDefault());
4864
    stringBuffer.append(TEXT_1396);
4910
    stringBuffer.append(TEXT_1414);
4865
    }
4911
    }
4866
    }
4912
    }
4867
    } else {//datatype
4913
    } else {//datatype
4868
    if (genClass.isField(genFeature)) {
4914
    if (genClass.isField(genFeature)) {
4869
    stringBuffer.append(TEXT_1397);
4915
    stringBuffer.append(TEXT_1415);
4870
    stringBuffer.append(genFeature.getEDefault());
4916
    stringBuffer.append(genFeature.getEDefault());
4871
    stringBuffer.append(TEXT_1398);
4917
    stringBuffer.append(TEXT_1416);
4872
    stringBuffer.append(genFeature.getSafeName());
4918
    stringBuffer.append(genFeature.getSafeName());
4873
    stringBuffer.append(TEXT_1399);
4919
    stringBuffer.append(TEXT_1417);
4874
    stringBuffer.append(genFeature.getEDefault());
4920
    stringBuffer.append(genFeature.getEDefault());
4875
    stringBuffer.append(TEXT_1400);
4921
    stringBuffer.append(TEXT_1418);
4876
    stringBuffer.append(genFeature.getSafeName());
4922
    stringBuffer.append(genFeature.getSafeName());
4877
    stringBuffer.append(TEXT_1401);
4923
    stringBuffer.append(TEXT_1419);
4878
    } else {
4924
    } else {
4879
    if (genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4925
    if (genFeature.isField() && genClass.getImplementingGenModel(genFeature).isVirtualDelegation()) {
4880
    stringBuffer.append(TEXT_1402);
4926
    stringBuffer.append(TEXT_1420);
4881
    stringBuffer.append(genFeature.getImportedType(genClass));
4927
    stringBuffer.append(genFeature.getImportedType(genClass));
4882
    stringBuffer.append(TEXT_1403);
4928
    stringBuffer.append(TEXT_1421);
4883
    stringBuffer.append(genFeature.getSafeName());
4929
    stringBuffer.append(genFeature.getSafeName());
4884
    stringBuffer.append(TEXT_1404);
4930
    stringBuffer.append(TEXT_1422);
4885
    stringBuffer.append(genFeature.getImportedType(genClass));
4931
    stringBuffer.append(genFeature.getImportedType(genClass));
4886
    stringBuffer.append(TEXT_1405);
4932
    stringBuffer.append(TEXT_1423);
4887
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4933
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4888
    stringBuffer.append(positiveOffsetCorrection);
4934
    stringBuffer.append(positiveOffsetCorrection);
4889
    stringBuffer.append(TEXT_1406);
4935
    stringBuffer.append(TEXT_1424);
4890
    stringBuffer.append(genFeature.getEDefault());
4936
    stringBuffer.append(genFeature.getEDefault());
4891
    stringBuffer.append(TEXT_1407);
4937
    stringBuffer.append(TEXT_1425);
4892
    stringBuffer.append(genFeature.getEDefault());
4938
    stringBuffer.append(genFeature.getEDefault());
4893
    stringBuffer.append(TEXT_1408);
4939
    stringBuffer.append(TEXT_1426);
4894
    stringBuffer.append(genFeature.getSafeName());
4940
    stringBuffer.append(genFeature.getSafeName());
4895
    stringBuffer.append(TEXT_1409);
4941
    stringBuffer.append(TEXT_1427);
4896
    stringBuffer.append(genFeature.getEDefault());
4942
    stringBuffer.append(genFeature.getEDefault());
4897
    stringBuffer.append(TEXT_1410);
4943
    stringBuffer.append(TEXT_1428);
4898
    stringBuffer.append(genFeature.getSafeName());
4944
    stringBuffer.append(genFeature.getSafeName());
4899
    stringBuffer.append(TEXT_1411);
4945
    stringBuffer.append(TEXT_1429);
4900
    } else {
4946
    } else {
4901
    stringBuffer.append(TEXT_1412);
4947
    stringBuffer.append(TEXT_1430);
4902
    stringBuffer.append(genFeature.getEDefault());
4948
    stringBuffer.append(genFeature.getEDefault());
4903
    stringBuffer.append(TEXT_1413);
4949
    stringBuffer.append(TEXT_1431);
4904
    stringBuffer.append(genFeature.getGetAccessor());
4950
    stringBuffer.append(genFeature.getGetAccessor());
4905
    stringBuffer.append(TEXT_1414);
4951
    stringBuffer.append(TEXT_1432);
4906
    stringBuffer.append(genFeature.getEDefault());
4952
    stringBuffer.append(genFeature.getEDefault());
4907
    stringBuffer.append(TEXT_1415);
4953
    stringBuffer.append(TEXT_1433);
4908
    stringBuffer.append(genFeature.getGetAccessor());
4954
    stringBuffer.append(genFeature.getGetAccessor());
4909
    stringBuffer.append(TEXT_1416);
4955
    stringBuffer.append(TEXT_1434);
4910
    }
4956
    }
4911
    }
4957
    }
4912
    }
4958
    }
4913
    }
4959
    }
4914
    stringBuffer.append(TEXT_1417);
4960
    stringBuffer.append(TEXT_1435);
4915
    if (genModel.isMinimalReflectiveMethods()) {
4961
    if (genModel.isMinimalReflectiveMethods()) {
4916
    stringBuffer.append(TEXT_1418);
4962
    stringBuffer.append(TEXT_1436);
4917
    } else {
4963
    } else {
4918
    stringBuffer.append(TEXT_1419);
4964
    stringBuffer.append(TEXT_1437);
4919
    }
4965
    }
4920
    stringBuffer.append(TEXT_1420);
4966
    stringBuffer.append(TEXT_1438);
4921
    //Class/eIsSet.override.javajetinc
4967
    //Class/eIsSet.override.javajetinc
4922
    }
4968
    }
4923
    if (isImplementation && (!genClass.getMixinGenFeatures().isEmpty() || genClass.hasOffsetCorrection() && !genClass.getGenFeatures().isEmpty())) {
4969
    if (isImplementation && (!genClass.getMixinGenFeatures().isEmpty() || genClass.hasOffsetCorrection() && !genClass.getGenFeatures().isEmpty())) {
4924
    if (!genClass.getMixinGenFeatures().isEmpty()) {
4970
    if (!genClass.getMixinGenFeatures().isEmpty()) {
4925
    stringBuffer.append(TEXT_1421);
4971
    stringBuffer.append(TEXT_1439);
4926
    if (genModel.useClassOverrideAnnotation()) {
4972
    if (genModel.useClassOverrideAnnotation()) {
4927
    stringBuffer.append(TEXT_1422);
4973
    stringBuffer.append(TEXT_1440);
4928
    }
4974
    }
4929
    stringBuffer.append(TEXT_1423);
4975
    stringBuffer.append(TEXT_1441);
4930
    stringBuffer.append(singleWildcard);
4976
    stringBuffer.append(singleWildcard);
4931
    stringBuffer.append(TEXT_1424);
4977
    stringBuffer.append(TEXT_1442);
4932
    for (GenClass mixinGenClass : genClass.getMixinGenClasses()) {
4978
    for (GenClass mixinGenClass : genClass.getMixinGenClasses()) {
4933
    stringBuffer.append(TEXT_1425);
4979
    stringBuffer.append(TEXT_1443);
4934
    stringBuffer.append(mixinGenClass.getImportedInterfaceName());
4980
    stringBuffer.append(mixinGenClass.getImportedInterfaceName());
4935
    stringBuffer.append(TEXT_1426);
4981
    stringBuffer.append(TEXT_1444);
4936
    stringBuffer.append(negativeOffsetCorrection);
4982
    stringBuffer.append(negativeOffsetCorrection);
4937
    stringBuffer.append(TEXT_1427);
4983
    stringBuffer.append(TEXT_1445);
4938
    for (GenFeature genFeature : mixinGenClass.getGenFeatures()) {
4984
    for (GenFeature genFeature : mixinGenClass.getGenFeatures()) {
4939
    stringBuffer.append(TEXT_1428);
4985
    stringBuffer.append(TEXT_1446);
4940
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4986
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4941
    stringBuffer.append(TEXT_1429);
4987
    stringBuffer.append(TEXT_1447);
4942
    stringBuffer.append(mixinGenClass.getQualifiedFeatureID(genFeature));
4988
    stringBuffer.append(mixinGenClass.getQualifiedFeatureID(genFeature));
4943
    stringBuffer.append(TEXT_1430);
4989
    stringBuffer.append(TEXT_1448);
4944
    }
4990
    }
4945
    stringBuffer.append(TEXT_1431);
4991
    stringBuffer.append(TEXT_1449);
4946
    }
4992
    }
4947
    stringBuffer.append(TEXT_1432);
4993
    stringBuffer.append(TEXT_1450);
4948
    }
4994
    }
4949
    stringBuffer.append(TEXT_1433);
4995
    stringBuffer.append(TEXT_1451);
4950
    if (genModel.useClassOverrideAnnotation()) {
4996
    if (genModel.useClassOverrideAnnotation()) {
4951
    stringBuffer.append(TEXT_1434);
4997
    stringBuffer.append(TEXT_1452);
4952
    }
4998
    }
4953
    stringBuffer.append(TEXT_1435);
4999
    stringBuffer.append(TEXT_1453);
4954
    stringBuffer.append(singleWildcard);
5000
    stringBuffer.append(singleWildcard);
4955
    stringBuffer.append(TEXT_1436);
5001
    stringBuffer.append(TEXT_1454);
4956
    for (GenClass mixinGenClass : genClass.getMixinGenClasses()) {
5002
    for (GenClass mixinGenClass : genClass.getMixinGenClasses()) {
4957
    stringBuffer.append(TEXT_1437);
5003
    stringBuffer.append(TEXT_1455);
4958
    stringBuffer.append(mixinGenClass.getImportedInterfaceName());
5004
    stringBuffer.append(mixinGenClass.getImportedInterfaceName());
4959
    stringBuffer.append(TEXT_1438);
5005
    stringBuffer.append(TEXT_1456);
4960
    for (GenFeature genFeature : mixinGenClass.getGenFeatures()) {
5006
    for (GenFeature genFeature : mixinGenClass.getGenFeatures()) {
4961
    stringBuffer.append(TEXT_1439);
5007
    stringBuffer.append(TEXT_1457);
4962
    stringBuffer.append(mixinGenClass.getQualifiedFeatureID(genFeature));
5008
    stringBuffer.append(mixinGenClass.getQualifiedFeatureID(genFeature));
4963
    stringBuffer.append(TEXT_1440);
5009
    stringBuffer.append(TEXT_1458);
4964
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
5010
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4965
    stringBuffer.append(positiveOffsetCorrection);
5011
    stringBuffer.append(positiveOffsetCorrection);
4966
    stringBuffer.append(TEXT_1441);
5012
    stringBuffer.append(TEXT_1459);
4967
    }
5013
    }
4968
    stringBuffer.append(TEXT_1442);
5014
    stringBuffer.append(TEXT_1460);
4969
    }
5015
    }
4970
    if (genClass.hasOffsetCorrection() && !genClass.getGenFeatures().isEmpty()) {
5016
    if (genClass.hasOffsetCorrection() && !genClass.getGenFeatures().isEmpty()) {
4971
    stringBuffer.append(TEXT_1443);
5017
    stringBuffer.append(TEXT_1461);
4972
    stringBuffer.append(genClass.getImportedInterfaceName());
5018
    stringBuffer.append(genClass.getImportedInterfaceName());
4973
    stringBuffer.append(TEXT_1444);
5019
    stringBuffer.append(TEXT_1462);
4974
    stringBuffer.append(negativeOffsetCorrection);
5020
    stringBuffer.append(negativeOffsetCorrection);
4975
    stringBuffer.append(TEXT_1445);
5021
    stringBuffer.append(TEXT_1463);
4976
    for (GenFeature genFeature : genClass.getGenFeatures()) {
5022
    for (GenFeature genFeature : genClass.getGenFeatures()) {
4977
    stringBuffer.append(TEXT_1446);
5023
    stringBuffer.append(TEXT_1464);
4978
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
5024
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4979
    stringBuffer.append(TEXT_1447);
5025
    stringBuffer.append(TEXT_1465);
4980
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
5026
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
4981
    stringBuffer.append(positiveOffsetCorrection);
5027
    stringBuffer.append(positiveOffsetCorrection);
4982
    stringBuffer.append(TEXT_1448);
5028
    stringBuffer.append(TEXT_1466);
4983
    }
5029
    }
4984
    stringBuffer.append(TEXT_1449);
5030
    stringBuffer.append(TEXT_1467);
4985
    }
5031
    }
4986
    stringBuffer.append(TEXT_1450);
5032
    stringBuffer.append(TEXT_1468);
4987
    }
5033
    }
4988
    if (isImplementation && genModel.isVirtualDelegation()) { String eVirtualValuesField = genClass.getEVirtualValuesField();
5034
    if (isImplementation && genModel.isVirtualDelegation()) { String eVirtualValuesField = genClass.getEVirtualValuesField();
4989
    if (eVirtualValuesField != null) {
5035
    if (eVirtualValuesField != null) {
4990
    stringBuffer.append(TEXT_1451);
5036
    stringBuffer.append(TEXT_1469);
4991
    if (genModel.useClassOverrideAnnotation()) {
5037
    if (genModel.useClassOverrideAnnotation()) {
4992
    stringBuffer.append(TEXT_1452);
5038
    stringBuffer.append(TEXT_1470);
4993
    }
5039
    }
4994
    stringBuffer.append(TEXT_1453);
5040
    stringBuffer.append(TEXT_1471);
4995
    stringBuffer.append(eVirtualValuesField);
5041
    stringBuffer.append(eVirtualValuesField);
4996
    stringBuffer.append(TEXT_1454);
5042
    stringBuffer.append(TEXT_1472);
4997
    if (genModel.useClassOverrideAnnotation()) {
5043
    if (genModel.useClassOverrideAnnotation()) {
4998
    stringBuffer.append(TEXT_1455);
5044
    stringBuffer.append(TEXT_1473);
4999
    }
5045
    }
5000
    stringBuffer.append(TEXT_1456);
5046
    stringBuffer.append(TEXT_1474);
5001
    stringBuffer.append(eVirtualValuesField);
5047
    stringBuffer.append(eVirtualValuesField);
5002
    stringBuffer.append(TEXT_1457);
5048
    stringBuffer.append(TEXT_1475);
5003
    }
5049
    }
5004
    { List<String> eVirtualIndexBitFields = genClass.getEVirtualIndexBitFields(new ArrayList<String>());
5050
    { List<String> eVirtualIndexBitFields = genClass.getEVirtualIndexBitFields(new ArrayList<String>());
5005
    if (!eVirtualIndexBitFields.isEmpty()) { List<String> allEVirtualIndexBitFields = genClass.getAllEVirtualIndexBitFields(new ArrayList<String>());
5051
    if (!eVirtualIndexBitFields.isEmpty()) { List<String> allEVirtualIndexBitFields = genClass.getAllEVirtualIndexBitFields(new ArrayList<String>());
5006
    stringBuffer.append(TEXT_1458);
5052
    stringBuffer.append(TEXT_1476);
5007
    if (genModel.useClassOverrideAnnotation()) {
5053
    if (genModel.useClassOverrideAnnotation()) {
5008
    stringBuffer.append(TEXT_1459);
5054
    stringBuffer.append(TEXT_1477);
5009
    }
5055
    }
5010
    stringBuffer.append(TEXT_1460);
5056
    stringBuffer.append(TEXT_1478);
5011
    for (int i = 0; i < allEVirtualIndexBitFields.size(); i++) {
5057
    for (int i = 0; i < allEVirtualIndexBitFields.size(); i++) {
5012
    stringBuffer.append(TEXT_1461);
5058
    stringBuffer.append(TEXT_1479);
5013
    stringBuffer.append(i);
5059
    stringBuffer.append(i);
5014
    stringBuffer.append(TEXT_1462);
5060
    stringBuffer.append(TEXT_1480);
5015
    stringBuffer.append(allEVirtualIndexBitFields.get(i));
5061
    stringBuffer.append(allEVirtualIndexBitFields.get(i));
5016
    stringBuffer.append(TEXT_1463);
5062
    stringBuffer.append(TEXT_1481);
5017
    }
5063
    }
5018
    stringBuffer.append(TEXT_1464);
5064
    stringBuffer.append(TEXT_1482);
5019
    if (genModel.useClassOverrideAnnotation()) {
5065
    if (genModel.useClassOverrideAnnotation()) {
5020
    stringBuffer.append(TEXT_1465);
5066
    stringBuffer.append(TEXT_1483);
5021
    }
5067
    }
5022
    stringBuffer.append(TEXT_1466);
5068
    stringBuffer.append(TEXT_1484);
5023
    for (int i = 0; i < allEVirtualIndexBitFields.size(); i++) {
5069
    for (int i = 0; i < allEVirtualIndexBitFields.size(); i++) {
5024
    stringBuffer.append(TEXT_1467);
5070
    stringBuffer.append(TEXT_1485);
5025
    stringBuffer.append(i);
5071
    stringBuffer.append(i);
5026
    stringBuffer.append(TEXT_1468);
5072
    stringBuffer.append(TEXT_1486);
5027
    stringBuffer.append(allEVirtualIndexBitFields.get(i));
5073
    stringBuffer.append(allEVirtualIndexBitFields.get(i));
5028
    stringBuffer.append(TEXT_1469);
5074
    stringBuffer.append(TEXT_1487);
5029
    }
5075
    }
5030
    stringBuffer.append(TEXT_1470);
5076
    stringBuffer.append(TEXT_1488);
5031
    }
5077
    }
5032
    }
5078
    }
5033
    }
5079
    }
5034
    if (!genClass.hasImplementedToStringGenOperation() && isImplementation && !genModel.isReflectiveDelegation() && !genModel.isDynamicDelegation() && !genClass.getToStringGenFeatures().isEmpty()) {
5080
    if (!genClass.hasImplementedToStringGenOperation() && isImplementation && !genModel.isReflectiveDelegation() && !genModel.isDynamicDelegation() && !genClass.getToStringGenFeatures().isEmpty()) {
5035
    stringBuffer.append(TEXT_1471);
5081
    stringBuffer.append(TEXT_1489);
5036
    if (genModel.useClassOverrideAnnotation()) {
5082
    if (genModel.useClassOverrideAnnotation()) {
5037
    stringBuffer.append(TEXT_1472);
5083
    stringBuffer.append(TEXT_1490);
5038
    }
5084
    }
5039
    stringBuffer.append(TEXT_1473);
5085
    stringBuffer.append(TEXT_1491);
5040
    { boolean first = true;
5086
    { boolean first = true;
5041
    for (GenFeature genFeature : genClass.getToStringGenFeatures()) {
5087
    for (GenFeature genFeature : genClass.getToStringGenFeatures()) {
5042
    if (first) { first = false;
5088
    if (first) { first = false;
5043
    stringBuffer.append(TEXT_1474);
5089
    stringBuffer.append(TEXT_1492);
5044
    stringBuffer.append(genFeature.getName());
5090
    stringBuffer.append(genFeature.getName());
5045
    stringBuffer.append(TEXT_1475);
5091
    stringBuffer.append(TEXT_1493);
5046
    stringBuffer.append(genModel.getNonNLS());
5092
    stringBuffer.append(genModel.getNonNLS());
5047
    } else {
5093
    } else {
5048
    stringBuffer.append(TEXT_1476);
5094
    stringBuffer.append(TEXT_1494);
5049
    stringBuffer.append(genFeature.getName());
5095
    stringBuffer.append(genFeature.getName());
5050
    stringBuffer.append(TEXT_1477);
5096
    stringBuffer.append(TEXT_1495);
5051
    stringBuffer.append(genModel.getNonNLS());
5097
    stringBuffer.append(genModel.getNonNLS());
5052
    }
5098
    }
5053
    if (genFeature.isUnsettable() && !genFeature.isListType()) {
5099
    if (genFeature.isUnsettable() && !genFeature.isListType()) {
5054
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
5100
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
5055
    stringBuffer.append(TEXT_1478);
5101
    stringBuffer.append(TEXT_1496);
5056
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
5102
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
5057
    stringBuffer.append(positiveOffsetCorrection);
5103
    stringBuffer.append(positiveOffsetCorrection);
5058
    stringBuffer.append(TEXT_1479);
5104
    stringBuffer.append(TEXT_1497);
5059
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
5105
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
5060
    stringBuffer.append(positiveOffsetCorrection);
5106
    stringBuffer.append(positiveOffsetCorrection);
5061
    stringBuffer.append(TEXT_1480);
5107
    stringBuffer.append(TEXT_1498);
5062
    stringBuffer.append(genModel.getNonNLS());
5108
    stringBuffer.append(genModel.getNonNLS());
5063
    } else {
5109
    } else {
5064
    if (genClass.isFlag(genFeature)) {
5110
    if (genClass.isFlag(genFeature)) {
5065
    if (genFeature.isBooleanType()) {
5111
    if (genFeature.isBooleanType()) {
5066
    stringBuffer.append(TEXT_1481);
5112
    stringBuffer.append(TEXT_1499);
5067
    if (genClass.isESetFlag(genFeature)) {
5113
    if (genClass.isESetFlag(genFeature)) {
5068
    stringBuffer.append(TEXT_1482);
5114
    stringBuffer.append(TEXT_1500);
5069
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
5115
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
5070
    stringBuffer.append(TEXT_1483);
5116
    stringBuffer.append(TEXT_1501);
5071
    stringBuffer.append(genFeature.getUpperName());
5117
    stringBuffer.append(genFeature.getUpperName());
5072
    stringBuffer.append(TEXT_1484);
5118
    stringBuffer.append(TEXT_1502);
5073
    } else {
5119
    } else {
5074
    stringBuffer.append(genFeature.getUncapName());
5120
    stringBuffer.append(genFeature.getUncapName());
5075
    stringBuffer.append(TEXT_1485);
5121
    stringBuffer.append(TEXT_1503);
5076
    }
5122
    }
5077
    stringBuffer.append(TEXT_1486);
5123
    stringBuffer.append(TEXT_1504);
5078
    stringBuffer.append(genClass.getFlagsField(genFeature));
5124
    stringBuffer.append(genClass.getFlagsField(genFeature));
5079
    stringBuffer.append(TEXT_1487);
5125
    stringBuffer.append(TEXT_1505);
5080
    stringBuffer.append(genFeature.getUpperName());
5126
    stringBuffer.append(genFeature.getUpperName());
5081
    stringBuffer.append(TEXT_1488);
5127
    stringBuffer.append(TEXT_1506);
5082
    stringBuffer.append(genModel.getNonNLS());
5128
    stringBuffer.append(genModel.getNonNLS());
5083
    } else {
5129
    } else {
5084
    stringBuffer.append(TEXT_1489);
5130
    stringBuffer.append(TEXT_1507);
5085
    if (genClass.isESetFlag(genFeature)) {
5131
    if (genClass.isESetFlag(genFeature)) {
5086
    stringBuffer.append(TEXT_1490);
5132
    stringBuffer.append(TEXT_1508);
5087
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
5133
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
5088
    stringBuffer.append(TEXT_1491);
5134
    stringBuffer.append(TEXT_1509);
5089
    stringBuffer.append(genFeature.getUpperName());
5135
    stringBuffer.append(genFeature.getUpperName());
5090
    stringBuffer.append(TEXT_1492);
5136
    stringBuffer.append(TEXT_1510);
5091
    } else {
5137
    } else {
5092
    stringBuffer.append(genFeature.getUncapName());
5138
    stringBuffer.append(genFeature.getUncapName());
5093
    stringBuffer.append(TEXT_1493);
5139
    stringBuffer.append(TEXT_1511);
5094
    }
5140
    }
5095
    stringBuffer.append(TEXT_1494);
5141
    stringBuffer.append(TEXT_1512);
5096
    stringBuffer.append(genFeature.getUpperName());
5142
    stringBuffer.append(genFeature.getUpperName());
5097
    stringBuffer.append(TEXT_1495);
5143
    stringBuffer.append(TEXT_1513);
5098
    stringBuffer.append(genClass.getFlagsField(genFeature));
5144
    stringBuffer.append(genClass.getFlagsField(genFeature));
5099
    stringBuffer.append(TEXT_1496);
5145
    stringBuffer.append(TEXT_1514);
5100
    stringBuffer.append(genFeature.getUpperName());
5146
    stringBuffer.append(genFeature.getUpperName());
5101
    stringBuffer.append(TEXT_1497);
5147
    stringBuffer.append(TEXT_1515);
5102
    stringBuffer.append(genFeature.getUpperName());
5148
    stringBuffer.append(genFeature.getUpperName());
5103
    stringBuffer.append(TEXT_1498);
5149
    stringBuffer.append(TEXT_1516);
5104
    stringBuffer.append(genModel.getNonNLS());
5150
    stringBuffer.append(genModel.getNonNLS());
5105
    }
5151
    }
5106
    } else {
5152
    } else {
5107
    stringBuffer.append(TEXT_1499);
5153
    stringBuffer.append(TEXT_1517);
5108
    if (genClass.isESetFlag(genFeature)) {
5154
    if (genClass.isESetFlag(genFeature)) {
5109
    stringBuffer.append(TEXT_1500);
5155
    stringBuffer.append(TEXT_1518);
5110
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
5156
    stringBuffer.append(genClass.getESetFlagsField(genFeature));
5111
    stringBuffer.append(TEXT_1501);
5157
    stringBuffer.append(TEXT_1519);
5112
    stringBuffer.append(genFeature.getUpperName());
5158
    stringBuffer.append(genFeature.getUpperName());
5113
    stringBuffer.append(TEXT_1502);
5159
    stringBuffer.append(TEXT_1520);
5114
    } else {
5160
    } else {
5115
    stringBuffer.append(genFeature.getUncapName());
5161
    stringBuffer.append(genFeature.getUncapName());
5116
    stringBuffer.append(TEXT_1503);
5162
    stringBuffer.append(TEXT_1521);
5117
    }
5163
    }
5118
    stringBuffer.append(TEXT_1504);
5164
    stringBuffer.append(TEXT_1522);
5119
    stringBuffer.append(genFeature.getSafeName());
5165
    stringBuffer.append(genFeature.getSafeName());
5120
    stringBuffer.append(TEXT_1505);
5166
    stringBuffer.append(TEXT_1523);
5121
    stringBuffer.append(genModel.getNonNLS());
5167
    stringBuffer.append(genModel.getNonNLS());
5122
    }
5168
    }
5123
    }
5169
    }
5124
    } else {
5170
    } else {
5125
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
5171
    if (genModel.isVirtualDelegation() && !genFeature.isPrimitiveType()) {
5126
    stringBuffer.append(TEXT_1506);
5172
    stringBuffer.append(TEXT_1524);
5127
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
5173
    stringBuffer.append(genClass.getQualifiedFeatureID(genFeature));
5128
    stringBuffer.append(positiveOffsetCorrection);
5174
    stringBuffer.append(positiveOffsetCorrection);
5129
    if (!genFeature.isListType() && !genFeature.isReferenceType()){
5175
    if (!genFeature.isListType() && !genFeature.isReferenceType()){
5130
    stringBuffer.append(TEXT_1507);
5176
    stringBuffer.append(TEXT_1525);
5131
    stringBuffer.append(genFeature.getEDefault());
5177
    stringBuffer.append(genFeature.getEDefault());
5132
    }
5178
    }
5133
    stringBuffer.append(TEXT_1508);
5179
    stringBuffer.append(TEXT_1526);
5134
    } else {
5180
    } else {
5135
    if (genClass.isFlag(genFeature)) {
5181
    if (genClass.isFlag(genFeature)) {
5136
    if (genFeature.isBooleanType()) {
5182
    if (genFeature.isBooleanType()) {
5137
    stringBuffer.append(TEXT_1509);
5183
    stringBuffer.append(TEXT_1527);
5138
    stringBuffer.append(genClass.getFlagsField(genFeature));
5184
    stringBuffer.append(genClass.getFlagsField(genFeature));
5139
    stringBuffer.append(TEXT_1510);
5185
    stringBuffer.append(TEXT_1528);
5140
    stringBuffer.append(genFeature.getUpperName());
5186
    stringBuffer.append(genFeature.getUpperName());
5141
    stringBuffer.append(TEXT_1511);
5187
    stringBuffer.append(TEXT_1529);
5142
    } else {
5188
    } else {
5143
    stringBuffer.append(TEXT_1512);
5189
    stringBuffer.append(TEXT_1530);
5144
    stringBuffer.append(genFeature.getUpperName());
5190
    stringBuffer.append(genFeature.getUpperName());
5145
    stringBuffer.append(TEXT_1513);
5191
    stringBuffer.append(TEXT_1531);
5146
    stringBuffer.append(genClass.getFlagsField(genFeature));
5192
    stringBuffer.append(genClass.getFlagsField(genFeature));
5147
    stringBuffer.append(TEXT_1514);
5193
    stringBuffer.append(TEXT_1532);
5148
    stringBuffer.append(genFeature.getUpperName());
5194
    stringBuffer.append(genFeature.getUpperName());
5149
    stringBuffer.append(TEXT_1515);
5195
    stringBuffer.append(TEXT_1533);
5150
    stringBuffer.append(genFeature.getUpperName());
5196
    stringBuffer.append(genFeature.getUpperName());
5151
    stringBuffer.append(TEXT_1516);
5197
    stringBuffer.append(TEXT_1534);
5152
    }
5198
    }
5153
    } else {
5199
    } else {
5154
    stringBuffer.append(TEXT_1517);
5200
    stringBuffer.append(TEXT_1535);
5155
    stringBuffer.append(genFeature.getSafeName());
5201
    stringBuffer.append(genFeature.getSafeName());
5156
    stringBuffer.append(TEXT_1518);
5202
    stringBuffer.append(TEXT_1536);
5157
    }
5203
    }
5158
    }
5204
    }
5159
    }
5205
    }
5160
    }
5206
    }
5161
    }
5207
    }
5162
    stringBuffer.append(TEXT_1519);
5208
    stringBuffer.append(TEXT_1537);
5163
    }
5209
    }
5164
    if (isImplementation && genClass.isMapEntry()) { GenFeature keyFeature = genClass.getMapEntryKeyFeature(); GenFeature valueFeature = genClass.getMapEntryValueFeature();
5210
    if (isImplementation && genClass.isMapEntry()) { GenFeature keyFeature = genClass.getMapEntryKeyFeature(); GenFeature valueFeature = genClass.getMapEntryValueFeature();
5165
    String objectType = genModel.getImportedName("java.lang.Object");
5211
    String objectType = genModel.getImportedName("java.lang.Object");
5166
    String keyType = genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50 ? keyFeature.getObjectType(genClass) : objectType;
5212
    String keyType = genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50 ? keyFeature.getObjectType(genClass) : objectType;
5167
    String valueType = genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50 ? valueFeature.getObjectType(genClass) : objectType;
5213
    String valueType = genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50 ? valueFeature.getObjectType(genClass) : objectType;
5168
    String eMapType = genModel.getImportedName("org.eclipse.emf.common.util.EMap") + (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50 ? "<" + keyType + ", " + valueType + ">" : "");
5214
    String eMapType = genModel.getImportedName("org.eclipse.emf.common.util.EMap") + (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50 ? "<" + keyType + ", " + valueType + ">" : "");
5169
    stringBuffer.append(TEXT_1520);
5215
    stringBuffer.append(TEXT_1538);
5170
    stringBuffer.append(objectType);
5216
    stringBuffer.append(objectType);
5171
    stringBuffer.append(TEXT_1521);
5217
    stringBuffer.append(TEXT_1539);
5172
    stringBuffer.append(keyType);
5218
    stringBuffer.append(keyType);
5173
    stringBuffer.append(TEXT_1522);
5219
    stringBuffer.append(TEXT_1540);
5174
    if (keyFeature.isPrimitiveType()) {
5220
    if (keyFeature.isPrimitiveType()) {
5175
    stringBuffer.append(TEXT_1523);
5221
    stringBuffer.append(TEXT_1541);
5176
    stringBuffer.append(keyFeature.getObjectType(genClass));
5222
    stringBuffer.append(keyFeature.getObjectType(genClass));
5177
    stringBuffer.append(TEXT_1524);
5223
    stringBuffer.append(TEXT_1542);
5178
    } else {
5224
    } else {
5179
    stringBuffer.append(TEXT_1525);
5225
    stringBuffer.append(TEXT_1543);
5180
    }
5226
    }
5181
    stringBuffer.append(TEXT_1526);
5227
    stringBuffer.append(TEXT_1544);
5182
    stringBuffer.append(keyType);
5228
    stringBuffer.append(keyType);
5183
    stringBuffer.append(TEXT_1527);
5229
    stringBuffer.append(TEXT_1545);
5184
    if (keyFeature.isListType()) {
5230
    if (keyFeature.isListType()) {
5185
    stringBuffer.append(TEXT_1528);
5231
    stringBuffer.append(TEXT_1546);
5186
    if (!genModel.useGenerics()) {
5232
    if (!genModel.useGenerics()) {
5187
    stringBuffer.append(TEXT_1529);
5233
    stringBuffer.append(TEXT_1547);
5188
    stringBuffer.append(genModel.getImportedName("java.util.Collection"));
5234
    stringBuffer.append(genModel.getImportedName("java.util.Collection"));
5189
    stringBuffer.append(TEXT_1530);
5235
    stringBuffer.append(TEXT_1548);
5190
    }
5236
    }
5191
    stringBuffer.append(TEXT_1531);
5237
    stringBuffer.append(TEXT_1549);
5192
    } else if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) {
5238
    } else if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) {
5193
    stringBuffer.append(TEXT_1532);
5239
    stringBuffer.append(TEXT_1550);
5194
    } else if (keyFeature.isPrimitiveType()) {
5240
    } else if (keyFeature.isPrimitiveType()) {
5195
    stringBuffer.append(TEXT_1533);
5241
    stringBuffer.append(TEXT_1551);
5196
    stringBuffer.append(keyFeature.getObjectType(genClass));
5242
    stringBuffer.append(keyFeature.getObjectType(genClass));
5197
    stringBuffer.append(TEXT_1534);
5243
    stringBuffer.append(TEXT_1552);
5198
    stringBuffer.append(keyFeature.getPrimitiveValueFunction());
5244
    stringBuffer.append(keyFeature.getPrimitiveValueFunction());
5199
    stringBuffer.append(TEXT_1535);
5245
    stringBuffer.append(TEXT_1553);
5200
    } else {
5246
    } else {
5201
    stringBuffer.append(TEXT_1536);
5247
    stringBuffer.append(TEXT_1554);
5202
    stringBuffer.append(keyFeature.getImportedType(genClass));
5248
    stringBuffer.append(keyFeature.getImportedType(genClass));
5203
    stringBuffer.append(TEXT_1537);
5249
    stringBuffer.append(TEXT_1555);
5204
    }
5250
    }
5205
    stringBuffer.append(TEXT_1538);
5251
    stringBuffer.append(TEXT_1556);
5206
    stringBuffer.append(valueType);
5252
    stringBuffer.append(valueType);
5207
    stringBuffer.append(TEXT_1539);
5253
    stringBuffer.append(TEXT_1557);
5208
    if (valueFeature.isPrimitiveType()) {
5254
    if (valueFeature.isPrimitiveType()) {
5209
    stringBuffer.append(TEXT_1540);
5255
    stringBuffer.append(TEXT_1558);
5210
    stringBuffer.append(valueFeature.getObjectType(genClass));
5256
    stringBuffer.append(valueFeature.getObjectType(genClass));
5211
    stringBuffer.append(TEXT_1541);
5257
    stringBuffer.append(TEXT_1559);
5212
    } else {
5258
    } else {
5213
    stringBuffer.append(TEXT_1542);
5259
    stringBuffer.append(TEXT_1560);
5214
    }
5260
    }
5215
    stringBuffer.append(TEXT_1543);
5261
    stringBuffer.append(TEXT_1561);
5216
    stringBuffer.append(valueType);
5262
    stringBuffer.append(valueType);
5217
    stringBuffer.append(TEXT_1544);
5263
    stringBuffer.append(TEXT_1562);
5218
    stringBuffer.append(valueType);
5264
    stringBuffer.append(valueType);
5219
    stringBuffer.append(TEXT_1545);
5265
    stringBuffer.append(TEXT_1563);
5220
    stringBuffer.append(valueType);
5266
    stringBuffer.append(valueType);
5221
    stringBuffer.append(TEXT_1546);
5267
    stringBuffer.append(TEXT_1564);
5222
    if (valueFeature.isListType()) {
5268
    if (valueFeature.isListType()) {
5223
    stringBuffer.append(TEXT_1547);
5269
    stringBuffer.append(TEXT_1565);
5224
    if (!genModel.useGenerics()) {
5270
    if (!genModel.useGenerics()) {
5225
    stringBuffer.append(TEXT_1548);
5271
    stringBuffer.append(TEXT_1566);
5226
    stringBuffer.append(genModel.getImportedName("java.util.Collection"));
5272
    stringBuffer.append(genModel.getImportedName("java.util.Collection"));
5227
    stringBuffer.append(TEXT_1549);
5273
    stringBuffer.append(TEXT_1567);
5228
    }
5274
    }
5229
    stringBuffer.append(TEXT_1550);
5275
    stringBuffer.append(TEXT_1568);
5230
    } else if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) {
5276
    } else if (genModel.getComplianceLevel().getValue() >= GenJDKLevel.JDK50) {
5231
    stringBuffer.append(TEXT_1551);
5277
    stringBuffer.append(TEXT_1569);
5232
    } else if (valueFeature.isPrimitiveType()) {
5278
    } else if (valueFeature.isPrimitiveType()) {
5233
    stringBuffer.append(TEXT_1552);
5279
    stringBuffer.append(TEXT_1570);
5234
    stringBuffer.append(valueFeature.getObjectType(genClass));
5280
    stringBuffer.append(valueFeature.getObjectType(genClass));
5235
    stringBuffer.append(TEXT_1553);
5281
    stringBuffer.append(TEXT_1571);
5236
    stringBuffer.append(valueFeature.getPrimitiveValueFunction());
5282
    stringBuffer.append(valueFeature.getPrimitiveValueFunction());
5237
    stringBuffer.append(TEXT_1554);
5283
    stringBuffer.append(TEXT_1572);
5238
    } else {
5284
    } else {
5239
    stringBuffer.append(TEXT_1555);
5285
    stringBuffer.append(TEXT_1573);
5240
    stringBuffer.append(valueFeature.getImportedType(genClass));
5286
    stringBuffer.append(valueFeature.getImportedType(genClass));
5241
    stringBuffer.append(TEXT_1556);
5287
    stringBuffer.append(TEXT_1574);
5242
    }
5288
    }
5243
    stringBuffer.append(TEXT_1557);
5289
    stringBuffer.append(TEXT_1575);
5244
    if (genModel.useGenerics()) {
5290
    if (genModel.useGenerics()) {
5245
    stringBuffer.append(TEXT_1558);
5291
    stringBuffer.append(TEXT_1576);
5246
    }
5292
    }
5247
    stringBuffer.append(TEXT_1559);
5293
    stringBuffer.append(TEXT_1577);
5248
    stringBuffer.append(eMapType);
5294
    stringBuffer.append(eMapType);
5249
    stringBuffer.append(TEXT_1560);
5295
    stringBuffer.append(TEXT_1578);
5250
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.EObject"));
5296
    stringBuffer.append(genModel.getImportedName("org.eclipse.emf.ecore.EObject"));
5251
    stringBuffer.append(TEXT_1561);
5297
    stringBuffer.append(TEXT_1579);
5252
    stringBuffer.append(eMapType);
5298
    stringBuffer.append(eMapType);
5253
    stringBuffer.append(TEXT_1562);
5299
    stringBuffer.append(TEXT_1580);
5254
    }
5300
    }
5255
    stringBuffer.append(TEXT_1563);
5301
    stringBuffer.append(TEXT_1581);
5256
    stringBuffer.append(isInterface ? " " + genClass.getInterfaceName() : genClass.getClassName());
5302
    stringBuffer.append(isInterface ? " " + genClass.getInterfaceName() : genClass.getClassName());
5257
    // TODO fix the space above
5303
    // TODO fix the space above
5258
    genModel.emitSortedImports();
5304
    genModel.emitSortedImports();
5259
    stringBuffer.append(TEXT_1564);
5305
    stringBuffer.append(TEXT_1582);
5260
    return stringBuffer.toString();
5306
    return stringBuffer.toString();
5261
  }
5307
  }
5262
}
5308
}
(-)src/org/eclipse/emf/cdo/tests/NoLegacyTest.java (-83 lines)
Removed Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.cdo.tests;
12
13
import org.eclipse.emf.cdo.CDOSession;
14
import org.eclipse.emf.cdo.CDOSessionConfiguration;
15
import org.eclipse.emf.cdo.CDOTransaction;
16
import org.eclipse.emf.cdo.eresource.CDOResource;
17
import org.eclipse.emf.cdo.util.CDOUtil;
18
import org.eclipse.emf.cdo.util.LegacySystemNotAvailableException;
19
20
import org.eclipse.net4j.util.io.IOUtil;
21
22
import org.eclipse.emf.ecore.xml.type.ProcessingInstruction;
23
import org.eclipse.emf.ecore.xml.type.XMLTypeFactory;
24
import org.eclipse.emf.ecore.xml.type.XMLTypePackage;
25
26
/**
27
 * @author Eike Stepper
28
 */
29
public class NoLegacyTest extends AbstractCDOTest
30
{
31
  public void testOpenLegacySession() throws Exception
32
  {
33
    CDOSession session = null;
34
35
    try
36
    {
37
      CDOSessionConfiguration configuration = CDOUtil.createSessionConfiguration();
38
      configuration.setConnector(getConnector());
39
      configuration.setRepositoryName(REPOSITORY_NAME);
40
      configuration.setLegacySupportEnabled(true);
41
      session = configuration.openSession();
42
      fail("LegacySystemNotAvailableException expected");
43
    }
44
    catch (LegacySystemNotAvailableException ex)
45
    {
46
      IOUtil.print(ex);
47
    }
48
    finally
49
    {
50
      if (session != null)
51
      {
52
        session.close();
53
      }
54
    }
55
  }
56
57
  public void testAttachLegacyObject() throws Exception
58
  {
59
    CDOSession session = openSession();
60
    session.getPackageRegistry().putEPackage(XMLTypePackage.eINSTANCE);
61
62
    CDOTransaction transaction = session.openTransaction();
63
    CDOResource resource = transaction.createResource("/test1");
64
65
    ProcessingInstruction pi = XMLTypeFactory.eINSTANCE.createProcessingInstruction();
66
    pi.setData("data");
67
    pi.setTarget("target");
68
69
    try
70
    {
71
      resource.getContents().add(pi);
72
      fail("LegacySystemNotAvailableException expected");
73
    }
74
    catch (LegacySystemNotAvailableException ex)
75
    {
76
      IOUtil.print(ex);
77
    }
78
    finally
79
    {
80
      session.close();
81
    }
82
  }
83
}
(-)src/org/eclipse/emf/cdo/tests/AllTests.java (-1 lines)
Lines 50-56 Link Here
50
    suite.addTestSuite(RevisionDeltaWithDeltaSupportTest.class);
50
    suite.addTestSuite(RevisionDeltaWithDeltaSupportTest.class);
51
    suite.addTestSuite(RevisionDeltaWithoutDeltaSupportTest.class);
51
    suite.addTestSuite(RevisionDeltaWithoutDeltaSupportTest.class);
52
    suite.addTestSuite(IndexReconstructionTest.class);
52
    suite.addTestSuite(IndexReconstructionTest.class);
53
    suite.addTestSuite(NoLegacyTest.class);
54
    suite.addTestSuite(AutoAttacherTest.class);
53
    suite.addTestSuite(AutoAttacherTest.class);
55
    suite.addTestSuite(SavepointTest.class);
54
    suite.addTestSuite(SavepointTest.class);
56
    suite.addTestSuite(ChangeSubscriptionTest.class);
55
    suite.addTestSuite(ChangeSubscriptionTest.class);
(-)src/org/eclipse/emf/ecore/util/EContentsEList.java (+20 lines)
Lines 28-33 Link Here
28
import org.eclipse.emf.ecore.EObject;
28
import org.eclipse.emf.ecore.EObject;
29
import org.eclipse.emf.ecore.EReference;
29
import org.eclipse.emf.ecore.EReference;
30
import org.eclipse.emf.ecore.EStructuralFeature;
30
import org.eclipse.emf.ecore.EStructuralFeature;
31
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
31
import org.eclipse.emf.ecore.impl.EClassImpl;
32
import org.eclipse.emf.ecore.impl.EClassImpl;
32
33
33
34
Lines 307-312 Link Here
307
    return result;
308
    return result;
308
  }
309
  }
309
310
311
  public InternalEList<E> readWriteFiringList()
312
  {
313
    return 
314
      new DelegatingInternalEList<E>()
315
      {
316
         @Override
317
         protected InternalEList<E> getDelegateInternalEList()
318
         {
319
           return EContentsEList.this;
320
         }
321
   
322
         @Override
323
         protected Setting getDelegateSetting()
324
         {
325
           throw new UnsupportedOperationException();
326
         }
327
       };
328
  }
329
310
  public interface FeatureIterator<E> extends Iterator<E>
330
  public interface FeatureIterator<E> extends Iterator<E>
311
  {
331
  {
312
    EStructuralFeature feature();
332
    EStructuralFeature feature();
(-)src/org/eclipse/emf/ecore/util/BasicInternalEList.java (+20 lines)
Lines 25-30 Link Here
25
25
26
import org.eclipse.emf.common.notify.NotificationChain;
26
import org.eclipse.emf.common.notify.NotificationChain;
27
import org.eclipse.emf.common.util.BasicEList;
27
import org.eclipse.emf.common.util.BasicEList;
28
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
28
29
29
30
30
/**
31
/**
Lines 131-134 Link Here
131
  {
132
  {
132
    return super.toArray(array);
133
    return super.toArray(array);
133
  }
134
  }
135
  
136
  public InternalEList<E> readWriteFiringList()
137
  {
138
    return 
139
      new DelegatingInternalEList<E>()
140
      {
141
         @Override
142
         protected InternalEList<E> getDelegateInternalEList()
143
         {
144
           return BasicInternalEList.this;
145
         }
146
   
147
         @Override
148
         protected Setting getDelegateSetting()
149
         {
150
           throw new UnsupportedOperationException();
151
         }
152
       };
153
  }
134
}
154
}
(-)src/org/eclipse/emf/ecore/util/NotifyingInternalEListImpl.java (+20 lines)
Lines 22-27 Link Here
22
import java.util.ListIterator;
22
import java.util.ListIterator;
23
23
24
import org.eclipse.emf.common.notify.impl.NotifyingListImpl;
24
import org.eclipse.emf.common.notify.impl.NotifyingListImpl;
25
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
25
26
26
/**
27
/**
27
 * A {@link NotifyingListImpl notifying list} that implements {@link InternalEList}.
28
 * A {@link NotifyingListImpl notifying list} that implements {@link InternalEList}.
Lines 99-102 Link Here
99
  {
100
  {
100
    return super.basicListIterator(index);
101
    return super.basicListIterator(index);
101
  }
102
  }
103
  
104
  public InternalEList<E> readWriteFiringList()
105
  {
106
    return 
107
      new DelegatingInternalEList<E>()
108
      {
109
         @Override
110
         protected InternalEList<E> getDelegateInternalEList()
111
         {
112
           return NotifyingInternalEListImpl.this;
113
         }
114
   
115
         @Override
116
         protected Setting getDelegateSetting()
117
         {
118
           throw new UnsupportedOperationException();
119
         }
120
       };
121
  }
102
}
122
}
(-)src/org/eclipse/emf/ecore/util/EcoreEMap.java (+41 lines)
Lines 29-38 Link Here
29
import org.eclipse.emf.common.util.BasicEList;
29
import org.eclipse.emf.common.util.BasicEList;
30
import org.eclipse.emf.common.util.BasicEMap;
30
import org.eclipse.emf.common.util.BasicEMap;
31
import org.eclipse.emf.common.util.EList;
31
import org.eclipse.emf.common.util.EList;
32
import org.eclipse.emf.common.util.EMap;
32
import org.eclipse.emf.ecore.EClass;
33
import org.eclipse.emf.ecore.EClass;
33
import org.eclipse.emf.ecore.EObject;
34
import org.eclipse.emf.ecore.EObject;
34
import org.eclipse.emf.ecore.EStructuralFeature;
35
import org.eclipse.emf.ecore.EStructuralFeature;
35
import org.eclipse.emf.ecore.InternalEObject;
36
import org.eclipse.emf.ecore.InternalEObject;
37
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
36
38
37
39
38
public class EcoreEMap<K, V> extends BasicEMap<K, V> implements InternalEList.Unsettable<Map.Entry<K, V>>, EStructuralFeature.Setting
40
public class EcoreEMap<K, V> extends BasicEMap<K, V> implements InternalEList.Unsettable<Map.Entry<K, V>>, EStructuralFeature.Setting
Lines 364-367 Link Here
364
  {
366
  {
365
    ((EStructuralFeature.Setting)delegateEList).unset();
367
    ((EStructuralFeature.Setting)delegateEList).unset();
366
  }
368
  }
369
  
370
  public DelegatingInternalEList.DelegatingEMap<K, V> readWriteFiringList()
371
  {
372
    // TODO not the ideal return type.
373
    //
374
    return 
375
      new DelegatingInternalEList.DelegatingEMap<K, V>()
376
      {
377
         @Override
378
         protected InternalEList<Map.Entry<K, V>> getDelegateInternalEList()
379
         {
380
           return EcoreEMap.this;
381
         }
382
   
383
         @Override
384
         protected Setting getDelegateSetting()
385
         {
386
           return EcoreEMap.this;
387
         }
388
         
389
         @Override
390
         protected InternalEObject getInternalEObject()
391
         {
392
           return (InternalEObject)EcoreEMap.this.getEObject();
393
         }
394
         
395
         @Override
396
         protected int getFeatureID()
397
         {
398
           return EcoreEMap.this.getEObject().eClass().getFeatureID(getEStructuralFeature());
399
         }
400
401
         @Override
402
         protected EMap<K, V> getDelegateEMap()
403
         {
404
           return EcoreEMap.this;
405
         }
406
       };
407
  }
367
}
408
}
(-)src/org/eclipse/emf/ecore/util/FeatureMapUtil.java (+33 lines)
Lines 42-47 Link Here
42
import org.eclipse.emf.ecore.EStructuralFeature;
42
import org.eclipse.emf.ecore.EStructuralFeature;
43
import org.eclipse.emf.ecore.ETypedElement;
43
import org.eclipse.emf.ecore.ETypedElement;
44
import org.eclipse.emf.ecore.InternalEObject;
44
import org.eclipse.emf.ecore.InternalEObject;
45
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
45
import org.eclipse.emf.ecore.impl.ENotificationImpl;
46
import org.eclipse.emf.ecore.impl.ENotificationImpl;
46
import org.eclipse.emf.ecore.impl.EStructuralFeatureImpl;
47
import org.eclipse.emf.ecore.impl.EStructuralFeatureImpl;
47
import org.eclipse.emf.ecore.util.FeatureMap.Entry;
48
import org.eclipse.emf.ecore.util.FeatureMap.Entry;
Lines 953-958 Link Here
953
      stringBuffer.append("]");
954
      stringBuffer.append("]");
954
      return stringBuffer.toString();
955
      return stringBuffer.toString();
955
    }
956
    }
957
958
    public InternalEList<E> readWriteFiringList()
959
    {
960
      return 
961
        new DelegatingInternalEList<E>()
962
        {
963
           @Override
964
           protected InternalEList<E> getDelegateInternalEList()
965
           {
966
             return FeatureEList.this;
967
           }
968
        
969
           @Override
970
           protected Setting getDelegateSetting()
971
           {
972
             return FeatureEList.this;
973
           }
974
           
975
           @Override
976
           protected InternalEObject getInternalEObject()
977
           {
978
             return (InternalEObject)FeatureEList.this.getEObject();
979
           }
980
           
981
           @Override
982
           protected int getFeatureID()
983
           {
984
             return FeatureEList.this.getFeatureID();
985
           }
986
           
987
         };
988
    }
956
  }
989
  }
957
990
958
  public static class FeatureFeatureMap extends FeatureEList<FeatureMap.Entry> implements FeatureMap.Internal, FeatureMap.Internal.Wrapper
991
  public static class FeatureFeatureMap extends FeatureEList<FeatureMap.Entry> implements FeatureMap.Internal, FeatureMap.Internal.Wrapper
(-)src/org/eclipse/emf/ecore/util/DelegatingEcoreEList.java (+63 lines)
Lines 34-39 Link Here
34
import org.eclipse.emf.ecore.EReference;
34
import org.eclipse.emf.ecore.EReference;
35
import org.eclipse.emf.ecore.EStructuralFeature;
35
import org.eclipse.emf.ecore.EStructuralFeature;
36
import org.eclipse.emf.ecore.InternalEObject;
36
import org.eclipse.emf.ecore.InternalEObject;
37
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
37
import org.eclipse.emf.ecore.impl.ENotificationImpl;
38
import org.eclipse.emf.ecore.impl.ENotificationImpl;
38
39
39
40
Lines 574-579 Link Here
574
  {
575
  {
575
    clear();
576
    clear();
576
  }
577
  }
578
  
579
  public InternalEList<E> readWriteFiringList()
580
  {
581
    return 
582
      new DelegatingInternalEList<E>()
583
      {
584
         @Override
585
         protected InternalEList<E> getDelegateInternalEList()
586
         {
587
           return DelegatingEcoreEList.this;
588
         }
589
   
590
         @Override
591
         protected Setting getDelegateSetting()
592
         {
593
           return DelegatingEcoreEList.this;
594
         }
595
         
596
         @Override
597
         protected InternalEObject getInternalEObject()
598
         {
599
           return owner;
600
         }
601
         
602
         @Override
603
         protected int getFeatureID()
604
         {
605
           return DelegatingEcoreEList.this.getFeatureID();
606
         }
607
       };
608
  }
577
609
578
  public static class UnmodifiableEList<E>
610
  public static class UnmodifiableEList<E>
579
    extends DelegatingEList.UnmodifiableEList<E>
611
    extends DelegatingEList.UnmodifiableEList<E>
Lines 690-695 Link Here
690
    {
722
    {
691
      throw new UnsupportedOperationException();
723
      throw new UnsupportedOperationException();
692
    }
724
    }
725
    
726
    public InternalEList<E> readWriteFiringList()
727
    {
728
      return 
729
        new DelegatingInternalEList<E>()
730
        {
731
           @Override
732
           protected InternalEList<E> getDelegateInternalEList()
733
           {
734
             return DelegatingEcoreEList.UnmodifiableEList.this;
735
           }
736
     
737
           @Override
738
           protected Setting getDelegateSetting()
739
           {
740
             return DelegatingEcoreEList.UnmodifiableEList.this;
741
           }
742
           
743
           @Override
744
           protected InternalEObject getInternalEObject()
745
           {
746
             return owner;
747
           }
748
           
749
           @Override
750
           protected int getFeatureID()
751
           {
752
             return owner.eClass().getFeatureID(getEStructuralFeature());
753
           }
754
         };
755
    }
693
  }
756
  }
694
757
695
  public static abstract class Generic<E> extends DelegatingEcoreEList<E>
758
  public static abstract class Generic<E> extends DelegatingEcoreEList<E>
(-)src/org/eclipse/emf/ecore/util/BasicFeatureMap.java (+33 lines)
Lines 34-39 Link Here
34
import org.eclipse.emf.ecore.EStructuralFeature;
34
import org.eclipse.emf.ecore.EStructuralFeature;
35
import org.eclipse.emf.ecore.ETypedElement;
35
import org.eclipse.emf.ecore.ETypedElement;
36
import org.eclipse.emf.ecore.InternalEObject;
36
import org.eclipse.emf.ecore.InternalEObject;
37
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
37
import org.eclipse.emf.ecore.impl.ENotificationImpl;
38
import org.eclipse.emf.ecore.impl.ENotificationImpl;
38
39
39
40
Lines 2545-2548 Link Here
2545
  {
2546
  {
2546
    super.set(newValue instanceof FeatureMap ? newValue : ((FeatureMap.Internal.Wrapper)newValue).featureMap());
2547
    super.set(newValue instanceof FeatureMap ? newValue : ((FeatureMap.Internal.Wrapper)newValue).featureMap());
2547
  }
2548
  }
2549
  
2550
  @Override
2551
  public FeatureMap.Internal readWriteFiringList()
2552
  {
2553
    return 
2554
      new DelegatingInternalEList.DelegatingFeatureMap()
2555
      {
2556
        @Override
2557
        protected Internal getInternalFeatureMap()
2558
        {
2559
          return BasicFeatureMap.this;
2560
        }
2561
2562
        @Override
2563
        protected Setting getDelegateSetting()
2564
        {
2565
          return BasicFeatureMap.this;
2566
        }
2567
        
2568
        @Override
2569
        protected InternalEObject getInternalEObject()
2570
        {
2571
          return owner;
2572
        }
2573
        
2574
        @Override
2575
        protected int getFeatureID()
2576
        {
2577
          return BasicFeatureMap.this.getFeatureID();
2578
        }
2579
      };
2580
  }
2548
}
2581
}
(-)src/org/eclipse/emf/ecore/util/EcoreEList.java (+64 lines)
Lines 34-39 Link Here
34
import org.eclipse.emf.ecore.EReference;
34
import org.eclipse.emf.ecore.EReference;
35
import org.eclipse.emf.ecore.EStructuralFeature;
35
import org.eclipse.emf.ecore.EStructuralFeature;
36
import org.eclipse.emf.ecore.InternalEObject;
36
import org.eclipse.emf.ecore.InternalEObject;
37
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
37
import org.eclipse.emf.ecore.impl.ENotificationImpl;
38
import org.eclipse.emf.ecore.impl.ENotificationImpl;
38
39
39
40
Lines 465-470 Link Here
465
  {
466
  {
466
    clear();
467
    clear();
467
  }
468
  }
469
  
470
  @Override
471
  public InternalEList<E> readWriteFiringList()
472
  {
473
    return 
474
      new DelegatingInternalEList<E>()
475
      {
476
         @Override
477
         protected InternalEList<E> getDelegateInternalEList()
478
         {
479
           return EcoreEList.this;
480
         }
481
   
482
         @Override
483
         protected Setting getDelegateSetting()
484
         {
485
           return EcoreEList.this;
486
         }
487
  
488
         @Override
489
         protected InternalEObject getInternalEObject()
490
         {
491
           return owner;
492
         }
493
         
494
         @Override
495
         protected int getFeatureID()
496
         {
497
           return EcoreEList.this.getFeatureID();
498
         }
499
       };
500
  }
468
501
469
  public static class UnmodifiableEList<E>
502
  public static class UnmodifiableEList<E>
470
    extends BasicEList.UnmodifiableEList<E>
503
    extends BasicEList.UnmodifiableEList<E>
Lines 591-596 Link Here
591
    {
624
    {
592
      throw new UnsupportedOperationException();
625
      throw new UnsupportedOperationException();
593
    }
626
    }
627
628
    public InternalEList<E> readWriteFiringList()
629
    {
630
      return 
631
        new DelegatingInternalEList<E>()
632
        {
633
           @Override
634
           protected InternalEList<E> getDelegateInternalEList()
635
           {
636
             return EcoreEList.UnmodifiableEList.this;
637
           }
638
     
639
           @Override
640
           protected Setting getDelegateSetting()
641
           {
642
             return EcoreEList.UnmodifiableEList.this;
643
           }
644
           
645
           @Override
646
           protected InternalEObject getInternalEObject()
647
           {
648
             return owner;
649
           }
650
           
651
           @Override
652
           protected int getFeatureID()
653
           {
654
             return owner.eClass().getFeatureID(getEStructuralFeature());
655
           }
656
         };
657
    }
594
  }
658
  }
595
659
596
  /**
660
  /**
(-)src/org/eclipse/emf/ecore/util/InternalEList.java (+6 lines)
Lines 27-32 Link Here
27
import org.eclipse.emf.ecore.EObject;
27
import org.eclipse.emf.ecore.EObject;
28
import org.eclipse.emf.ecore.EStructuralFeature;
28
import org.eclipse.emf.ecore.EStructuralFeature;
29
import org.eclipse.emf.ecore.ETypedElement;
29
import org.eclipse.emf.ecore.ETypedElement;
30
import org.eclipse.emf.ecore.InternalEObject;
30
31
31
32
32
/**
33
/**
Lines 160-163 Link Here
160
     */
161
     */
161
    void unset();
162
    void unset();
162
  }
163
  }
164
  
165
  /**
166
   * Returns a view of the list that fires {@link InternalEObject#eFireRead(int) read} and {@link InternalEObject#eFireWrite(int) write} callbacks.
167
   */
168
  InternalEList<E> readWriteFiringList();
163
}
169
}
(-)src/org/eclipse/emf/ecore/impl/EObjectImpl.java (+36 lines)
Lines 131-136 Link Here
131
  {
131
  {
132
    return eAdapters;
132
    return eAdapters;
133
  }
133
  }
134
  
135
  private BasicEList<EReadListener> eReadListeners;
136
  
137
  @Override
138
  public EList<EReadListener> eReadListeners()
139
  {
140
    if (eReadListeners == null)
141
    {
142
      eReadListeners = new EReadListenerList();
143
    }
144
    return eReadListeners;
145
  }
146
  
147
  @Override
148
  protected BasicEList<EReadListener> eBasicReadListeners()
149
  {
150
    return eReadListeners;
151
  }
152
  
153
  private BasicEList<EWriteListener> eWriteListeners;
154
  
155
  @Override
156
  public EList<EWriteListener> eWriteListeners()
157
  {
158
    if (eWriteListeners == null)
159
    {
160
      eWriteListeners = new EWriteListenerList();
161
    }
162
    return eWriteListeners;
163
  }
164
165
  @Override
166
  protected BasicEList<EWriteListener> eBasicWriteListeners()
167
  {
168
    return eWriteListeners;
169
  }
134
170
135
  /*
171
  /*
136
   * Javadoc copied from interface.
172
   * Javadoc copied from interface.
(-)src/org/eclipse/emf/ecore/impl/BasicEObjectImpl.java (+86 lines)
Lines 1999-2002 Link Here
1999
1999
2000
    return result.toString();
2000
    return result.toString();
2001
  }
2001
  }
2002
2003
  public void eFireRead(int featureID)
2004
  {
2005
    BasicEList<EReadListener> eReadListeners = eBasicReadListeners();
2006
    if (eReadListeners != null)
2007
    {
2008
      int size = eReadListeners.size();
2009
      if (size > 0)
2010
      {
2011
        EReadListener [] data = (EReadListener[])eReadListeners.data();
2012
        for (int i = 0; i < size; ++i)
2013
        {
2014
          data[i].handleRead(this, featureID);
2015
        }
2016
      }
2017
    }
2018
  }
2019
2020
  public void eFireWrite(int featureID)
2021
  {
2022
    BasicEList<EWriteListener> eWriteListeners = eBasicWriteListeners();
2023
    if (eWriteListeners != null)
2024
    {
2025
      int size = eWriteListeners.size();
2026
      if (size > 0)
2027
      {
2028
        EWriteListener [] data = (EWriteListener[])eWriteListeners.data();
2029
        for (int i = 0; i < size; ++i)
2030
        {
2031
          data[i].handleWrite(this, featureID);
2032
        }
2033
      }
2034
    }
2035
  }
2036
2037
  protected static class EReadListenerList extends ESafeList<EReadListener>
2038
  {
2039
    private static final long serialVersionUID = 1L;
2040
    
2041
    public EReadListenerList()
2042
    {
2043
      super();
2044
    }
2045
    
2046
    @Override
2047
    protected Object[] newData(int capacity)
2048
    {
2049
      return  new EReadListener[capacity];
2050
    }
2051
  }
2052
2053
  protected BasicEList<EReadListener> eBasicReadListeners()
2054
  {
2055
    return null;
2056
  }
2057
  
2058
  public EList<EReadListener> eReadListeners()
2059
  {
2060
    return null;
2061
  }
2062
2063
  protected static class EWriteListenerList extends ESafeList<EWriteListener>
2064
  {
2065
    private static final long serialVersionUID = 1L;
2066
2067
    public EWriteListenerList()
2068
    {
2069
      super();
2070
    }
2071
    
2072
    @Override
2073
    protected Object[] newData(int capacity)
2074
    {
2075
      return  new EWriteListener[capacity];
2076
    }
2077
  }
2078
2079
  protected BasicEList<EWriteListener> eBasicWriteListeners()
2080
  {
2081
    return null;
2082
  }
2083
2084
  public EList<EWriteListener> eWriteListeners()
2085
  {
2086
    return null;
2087
  }
2002
}
2088
}
(-)src/org/eclipse/emf/ecore/InternalEObject.java (+19 lines)
Lines 9-14 Link Here
9
 *
9
 *
10
 * Contributors:
10
 * Contributors:
11
 *   IBM - Initial API and implementation
11
 *   IBM - Initial API and implementation
12
 *   Eike Stepper - http://bugs.eclipse.org/247130
12
 *
13
 *
13
 * </copyright>
14
 * </copyright>
14
 *
15
 *
Lines 435-438 Link Here
435
   * @see #eIsSet(EStructuralFeature)
436
   * @see #eIsSet(EStructuralFeature)
436
   */
437
   */
437
  boolean eIsSet(int featureID);
438
  boolean eIsSet(int featureID);
439
440
  interface EReadListener
441
  {
442
    void handleRead(InternalEObject eObject, int featureID);
443
  }
444
445
  EList<EReadListener> eReadListeners();
446
447
  void eFireRead(int featureID);
448
449
  interface EWriteListener
450
  {
451
    void handleWrite(InternalEObject eObject, int featureID);
452
  }
453
454
  EList<EWriteListener> eWriteListeners();
455
456
  void eFireWrite(int featureID);
438
}
457
}
(-)src/org/eclipse/emf/ecore/resource/impl/ResourceImpl.java (+10 lines)
Lines 1508-1513 Link Here
1508
  {
1508
  {
1509
    internalEObject.eSetProxyURI(uri.appendFragment(getURIFragment(internalEObject)));
1509
    internalEObject.eSetProxyURI(uri.appendFragment(getURIFragment(internalEObject)));
1510
    internalEObject.eAdapters().clear();
1510
    internalEObject.eAdapters().clear();
1511
    EList<InternalEObject.EReadListener> readListeners = internalEObject.eReadListeners();
1512
    if (readListeners != null)
1513
    {
1514
      readListeners.clear();
1515
    }
1516
    EList<InternalEObject.EWriteListener> writeListeners = internalEObject.eWriteListeners();
1517
    if (writeListeners != null)
1518
    {
1519
      writeListeners.clear();
1520
    }
1511
  }
1521
  }
1512
1522
1513
  /**
1523
  /**
(-)src/org/eclipse/emf/ecore/util/DelegatingInternalEList.java (+1354 lines)
Added Link Here
1
package org.eclipse.emf.ecore.util;
2
3
import java.util.AbstractCollection;
4
import java.util.AbstractList;
5
import java.util.AbstractSet;
6
import java.util.Collection;
7
import java.util.Iterator;
8
import java.util.List;
9
import java.util.ListIterator;
10
import java.util.Map;
11
import java.util.Set;
12
import java.util.Map.Entry;
13
14
import org.eclipse.emf.common.notify.NotificationChain;
15
import org.eclipse.emf.common.util.EList;
16
import org.eclipse.emf.common.util.EMap;
17
import org.eclipse.emf.ecore.EObject;
18
import org.eclipse.emf.ecore.EStructuralFeature;
19
import org.eclipse.emf.ecore.InternalEObject;
20
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
21
22
public abstract class DelegatingInternalEList<E> extends AbstractList<E> implements InternalEList.Unsettable<E>, EStructuralFeature.Setting
23
{
24
  protected abstract InternalEList<E> getDelegateInternalEList();
25
  protected abstract EStructuralFeature.Setting getDelegateSetting();
26
  protected InternalEObject getInternalEObject()
27
  {
28
    return null;
29
  }
30
31
  protected int getFeatureID()
32
  {
33
    return 0;
34
  }
35
  
36
  protected void readAccess()
37
  {
38
    InternalEObject internalEObject = getInternalEObject();
39
    if (internalEObject != null)
40
    {
41
      internalEObject.eFireRead(getFeatureID());
42
    }
43
  }
44
45
  protected void writeAccess()
46
  {
47
    InternalEObject internalEObject = getInternalEObject();
48
    if (internalEObject != null)
49
    {
50
      internalEObject.eFireWrite(getFeatureID());
51
    }
52
    ++modCount;
53
  }
54
55
  public boolean addAllUnique(Collection<? extends E> collection)
56
  {
57
    writeAccess();
58
    return getDelegateInternalEList().addAllUnique(collection);
59
  }
60
61
  public boolean addAllUnique(int index, Collection<? extends E> collection)
62
  {
63
    writeAccess();
64
    return getDelegateInternalEList().addAllUnique(index, collection);
65
  }
66
67
  public void addUnique(E object)
68
  {
69
    writeAccess();
70
    getDelegateInternalEList().addUnique(object);
71
  }
72
73
  public void addUnique(int index, E object)
74
  {
75
    writeAccess();
76
    getDelegateInternalEList().addUnique(index, object);
77
  }
78
79
  public NotificationChain basicAdd(E object, NotificationChain notifications)
80
  {
81
    writeAccess();
82
    return getDelegateInternalEList().basicAdd(object, notifications);
83
  }
84
85
  public boolean basicContains(Object object)
86
  {
87
    readAccess();
88
    return getDelegateInternalEList().basicContains(object);
89
  }
90
91
  public boolean basicContainsAll(Collection<?> collection)
92
  {
93
    readAccess();
94
    return getDelegateInternalEList().basicContainsAll(collection);
95
  }
96
97
  public E basicGet(int index)
98
  {
99
    readAccess();
100
    return getDelegateInternalEList().basicGet(index);
101
  }
102
103
  public int basicIndexOf(Object object)
104
  {
105
    readAccess();
106
    return getDelegateInternalEList().basicIndexOf(object);
107
  }
108
109
  public Iterator<E> basicIterator()
110
  {
111
    // Ensure that we delegate to our own implementation of the basic list.
112
    //
113
    return basicList().iterator();
114
  }
115
116
  public int basicLastIndexOf(Object object)
117
  {
118
    readAccess();
119
    return getDelegateInternalEList().lastIndexOf(object);
120
  }
121
122
  public List<E> basicList()
123
  {
124
    return 
125
      new AbstractList<E>()
126
      {
127
        @Override
128
        public boolean contains(Object object)
129
        {
130
          return basicContains(object);
131
        }
132
133
        @Override
134
        public boolean containsAll(Collection<?> collection)
135
        {
136
          return basicContainsAll(collection);
137
        }
138
139
        @Override
140
        public E get(int index)
141
        {
142
          return basicGet(index);
143
        }
144
145
        @Override
146
        public int indexOf(Object object)
147
        {
148
          return basicIndexOf(object);
149
        }
150
151
        @Override
152
        public boolean isEmpty()
153
        {
154
          return DelegatingInternalEList.this.isEmpty();
155
        }
156
157
        @Override
158
        public int size()
159
        {
160
          return DelegatingInternalEList.this.size();
161
        }
162
163
        @Override
164
        public Object[] toArray()
165
        {
166
          return basicToArray();
167
        }
168
169
        @Override
170
        public <T> T[] toArray(T[] a)
171
        {
172
          return basicToArray(a);
173
        }
174
      };
175
  }
176
177
  public ListIterator<E> basicListIterator()
178
  {
179
    // Ensure that we delegate to our own implementation of the basic list.
180
    //
181
    return basicList().listIterator();
182
  }
183
184
  public ListIterator<E> basicListIterator(int index)
185
  {
186
    // Ensure that we delegate to our own implementation of the basic list.
187
    //
188
    return basicList().listIterator(index);
189
  }
190
191
  public NotificationChain basicRemove(Object object, NotificationChain notifications)
192
  {
193
    writeAccess();
194
    return getDelegateInternalEList().basicRemove(object, notifications);
195
  }
196
197
  public Object[] basicToArray()
198
  {
199
    readAccess();
200
    return getDelegateInternalEList().basicToArray();
201
  }
202
203
  public <T> T[] basicToArray(T[] array)
204
  {
205
    readAccess();
206
    return getDelegateInternalEList().basicToArray(array);
207
  }
208
209
  public E setUnique(int index, E object)
210
  {
211
    writeAccess();
212
    return getDelegateInternalEList().setUnique(index, object);
213
  }
214
215
  public void move(int newPosition, E object)
216
  {
217
    writeAccess();
218
    getDelegateInternalEList().move(newPosition, object);
219
  }
220
221
  public E move(int newPosition, int oldPosition)
222
  {
223
    writeAccess();
224
    return getDelegateInternalEList().move(newPosition, oldPosition);
225
  }
226
227
  @Override
228
  public boolean add(E o)
229
  {
230
    writeAccess();
231
    return getDelegateInternalEList().add(o);
232
  }
233
234
  @Override
235
  public void add(int index, E object)
236
  {
237
    writeAccess();
238
    getDelegateInternalEList().add(index, object);
239
  }
240
241
  @Override
242
  public boolean addAll(Collection<? extends E> collection)
243
  {
244
    writeAccess();
245
    return getDelegateInternalEList().addAll(collection);
246
  }
247
248
  @Override
249
  public boolean addAll(int index, Collection<? extends E> collection)
250
  {
251
    writeAccess();
252
    return getDelegateInternalEList().addAll(index, collection);
253
  }
254
255
  @Override
256
  public void clear()
257
  {
258
    writeAccess();
259
    getDelegateInternalEList().clear();
260
  }
261
262
  @Override
263
  public boolean contains(Object object)
264
  {
265
    writeAccess();
266
    return getDelegateInternalEList().contains(object);
267
  }
268
269
  @Override
270
  public boolean containsAll(Collection<?> collection)
271
  {
272
    writeAccess();
273
    return getDelegateInternalEList().contains(collection);
274
  }
275
276
  @Override
277
  public E get(int index)
278
  {
279
    readAccess();
280
    return getDelegateInternalEList().get(index);
281
  }
282
283
  @Override
284
  public int indexOf(Object object)
285
  {
286
    readAccess();
287
    return getDelegateInternalEList().indexOf(object);
288
  }
289
290
  @Override
291
  public boolean isEmpty()
292
  {
293
    readAccess();
294
    return getDelegateInternalEList().isEmpty();
295
  }
296
297
  @Override
298
  public Iterator<E> iterator()
299
  {
300
    // Ensure that the iterator delegates back to this list implementation.
301
    //
302
    return super.iterator();
303
  }
304
305
  @Override
306
  public int lastIndexOf(Object object)
307
  {
308
    readAccess();
309
    return getDelegateInternalEList().lastIndexOf(object);
310
  }
311
312
  @Override
313
  public ListIterator<E> listIterator()
314
  {
315
    // Ensure that the list iterator delegates back to this list implementation.
316
    //
317
    return super.listIterator();
318
  }
319
320
  @Override
321
  public ListIterator<E> listIterator(int index)
322
  {
323
    // Ensure that the list iterator delegates back to this list implementation.
324
    //
325
    return super.listIterator(index);
326
  }
327
328
  @Override
329
  public boolean remove(Object object)
330
  {
331
    writeAccess();
332
    return getDelegateInternalEList().remove(object);
333
  }
334
335
  @Override
336
  public E remove(int index)
337
  {
338
    writeAccess();
339
    return getDelegateInternalEList().remove(index);
340
  }
341
342
  @Override
343
  public boolean removeAll(Collection<?> collection)
344
  {
345
    writeAccess();
346
    return getDelegateInternalEList().removeAll(collection);
347
  }
348
349
  @Override
350
  public boolean retainAll(Collection<?> collection)
351
  {
352
    writeAccess();
353
    return getDelegateInternalEList().retainAll(collection);
354
  }
355
356
  @Override
357
  public E set(int index, E object)
358
  {
359
    writeAccess();
360
    return getDelegateInternalEList().set(index, object);
361
  }
362
363
  @Override
364
  public int size()
365
  {
366
    readAccess();
367
    return getDelegateInternalEList().size();
368
  }
369
370
  @Override
371
  public List<E> subList(int fromIndex, int toIndex)
372
  {
373
    // Ensure that the sublist delegates back to this list implementation.
374
    //
375
    return super.subList(fromIndex, toIndex);
376
  }
377
378
  @Override
379
  public Object[] toArray()
380
  {
381
    readAccess();
382
    return getDelegateInternalEList().toArray();
383
  }
384
385
  @Override
386
  public <T> T[] toArray(T[] array)
387
  {
388
    readAccess();
389
    return getDelegateInternalEList().toArray(array);
390
  }
391
392
  public Object get(boolean resolve)
393
  {
394
    readAccess();
395
    return getDelegateSetting().get(resolve);
396
  }
397
398
  public EObject getEObject()
399
  {
400
    return getDelegateSetting().getEObject();
401
  }
402
403
  public EStructuralFeature getEStructuralFeature()
404
  {
405
    return getDelegateSetting().getEStructuralFeature();
406
  }
407
408
  public boolean isSet()
409
  {
410
    readAccess();
411
    return getDelegateSetting().isSet();
412
  }
413
414
  public void set(Object newValue)
415
  {
416
    writeAccess();
417
    getDelegateSetting().set(newValue);
418
  }
419
420
  public void unset()
421
  {
422
    writeAccess();
423
    getDelegateSetting().unset();
424
  }
425
  
426
  public InternalEList<E> readWriteFiringList()
427
  {
428
    return this;
429
  }
430
431
  protected abstract static class DelegatingEMap<K, V> extends DelegatingInternalEList<Map.Entry<K, V>> implements EMap<K, V>
432
  {
433
    protected abstract EMap<K, V> getDelegateEMap();
434
  
435
    public boolean containsKey(Object key)
436
    {
437
      readAccess();
438
      return getDelegateEMap().containsKey(key);
439
    }
440
441
    public boolean containsValue(Object value)
442
    {
443
      readAccess();
444
      return getDelegateEMap().containsValue(value);
445
    }
446
447
    public Set<Entry<K, V>> entrySet()
448
    {
449
      return
450
        new AbstractSet<Entry<K, V>>() 
451
        {
452
          @Override
453
          public Iterator<Entry<K, V>> iterator() 
454
          {
455
            final Iterator<Entry<K, V>> iterator = DelegatingEMap.this.iterator();
456
            return 
457
              new Iterator<Entry<K, V>>()
458
              {
459
                public boolean hasNext()
460
                {
461
                  return iterator.hasNext();
462
                }
463
  
464
                public Entry<K, V> next()
465
                {
466
                  return iterator.next();
467
                }
468
  
469
                public void remove()
470
                {
471
                  iterator.remove();
472
                }
473
              };
474
          }
475
  
476
          @Override
477
          public int size() 
478
          {
479
            return DelegatingEMap.this.size();
480
          }
481
  
482
          @Override
483
          public boolean contains(Object key) 
484
          {
485
            return containsKey(key);
486
          }
487
  
488
          @Override
489
          public void clear() 
490
          {
491
            DelegatingEMap.this.clear();
492
          }
493
        };
494
    }
495
496
    public V get(Object key)
497
    {
498
      readAccess();
499
      return getDelegateEMap().get(key);
500
    }
501
502
    public int indexOfKey(Object key)
503
    {
504
      readAccess();
505
      return getDelegateEMap().indexOf(key);
506
    }
507
508
    public Set<K> keySet()
509
    {
510
      return
511
        new AbstractSet<K>() 
512
        {
513
          @Override
514
          public Iterator<K> iterator() 
515
          {
516
            final Iterator<Entry<K, V>> iterator = DelegatingEMap.this.iterator();
517
            return 
518
              new Iterator<K>()
519
              {
520
                public boolean hasNext()
521
                {
522
                  return iterator.hasNext();
523
                }
524
  
525
                public K next()
526
                {
527
                  return iterator.next().getKey();
528
                }
529
  
530
                public void remove()
531
                {
532
                  iterator.remove();
533
                }
534
              };
535
          }
536
  
537
          @Override
538
          public int size() 
539
          {
540
            return DelegatingEMap.this.size();
541
          }
542
  
543
          @Override
544
          public boolean contains(Object key) 
545
          {
546
            return containsKey(key);
547
          }
548
  
549
          @Override
550
          public void clear() 
551
          {
552
            DelegatingEMap.this.clear();
553
          }
554
        };
555
    }
556
557
    public Map<K, V> map()
558
    {
559
      return getDelegateEMap().map();
560
    }
561
562
    public V put(K key, V value)
563
    {
564
      writeAccess();
565
      return getDelegateEMap().put(key, value);
566
    }
567
568
    public void putAll(Map<? extends K, ? extends V> map)
569
    {
570
      writeAccess();
571
      getDelegateEMap().putAll(map);
572
    }
573
574
    public void putAll(EMap<? extends K, ? extends V> map)
575
    {
576
      writeAccess();
577
      getDelegateEMap().putAll(map);
578
    }
579
580
    public V removeKey(Object key)
581
    {
582
      writeAccess();
583
      return getDelegateEMap().removeKey(key);
584
    }
585
586
    public Collection<V> values()
587
    {
588
      return
589
        new AbstractCollection<V>() 
590
        {
591
          @Override
592
          public Iterator<V> iterator() 
593
          {
594
            final Iterator<Entry<K, V>> iterator = DelegatingEMap.this.iterator();
595
            return 
596
              new Iterator<V>()
597
              {
598
                public boolean hasNext()
599
                {
600
                  return iterator.hasNext();
601
                }
602
603
                public V next()
604
                {
605
                  return iterator.next().getValue();
606
                }
607
608
                public void remove()
609
                {
610
                  iterator.remove();
611
                }
612
              };
613
          }
614
  
615
          @Override
616
          public int size() 
617
          {
618
            return DelegatingEMap.this.size();
619
          }
620
  
621
          @Override
622
          public boolean contains(Object value) 
623
          {
624
            return containsValue(value);
625
          }
626
  
627
          @Override
628
          public void clear() 
629
          {
630
            DelegatingEMap.this.clear();
631
          }
632
        };
633
    }
634
  }
635
636
  protected abstract static class DelegatingFeatureMap extends DelegatingInternalEList<FeatureMap.Entry> implements FeatureMap.Internal
637
  {
638
    protected abstract FeatureMap.Internal getInternalFeatureMap();
639
    
640
    @Override
641
    protected InternalEList<FeatureMap.Entry> getDelegateInternalEList()
642
    {
643
      return getInternalFeatureMap();
644
    }
645
646
    @Override
647
    public boolean add(FeatureMap.Entry o)
648
    {
649
      writeAccess();
650
      return getInternalFeatureMap().add(o);
651
    }
652
653
    public void add(EStructuralFeature feature, int index, Object object)
654
    {
655
      writeAccess();
656
      getInternalFeatureMap().add(feature, index, object);
657
    }
658
659
    public boolean add(EStructuralFeature feature, Object value)
660
    {
661
      writeAccess();
662
      return getInternalFeatureMap().add(feature, value);
663
    }
664
665
    @Override
666
    public void add(int index, FeatureMap.Entry element)
667
    {
668
      writeAccess();
669
      getInternalFeatureMap().add(index, element);
670
    }
671
672
    public void add(int index, EStructuralFeature feature, Object value)
673
    {
674
      writeAccess();
675
      getInternalFeatureMap().add(index, feature, value);
676
    }
677
678
    @Override
679
    public boolean addAll(Collection<? extends FeatureMap.Entry> c)
680
    {
681
      writeAccess();
682
      return getInternalFeatureMap().addAll(c);
683
    }
684
685
    public boolean addAll(EStructuralFeature feature, Collection<?> values)
686
    {
687
      writeAccess();
688
      return getInternalFeatureMap().addAll(feature, values);
689
    }
690
691
    public boolean addAll(EStructuralFeature feature, int index, Collection<?> collection)
692
    {
693
      writeAccess();
694
      return getInternalFeatureMap().addAll(feature, index, collection);
695
    }
696
697
    @Override
698
    public boolean addAll(int index, Collection<? extends FeatureMap.Entry> c)
699
    {
700
      writeAccess();
701
      return getInternalFeatureMap().addAll(index, c);
702
    }
703
704
    public boolean addAll(int index, EStructuralFeature feature, Collection<?> values)
705
    {
706
      writeAccess();
707
      return getInternalFeatureMap().addAll(index, feature, values);
708
    }
709
710
    @Override
711
    public boolean addAllUnique(Collection<? extends FeatureMap.Entry> collection)
712
    {
713
      writeAccess();
714
      return getInternalFeatureMap().addAllUnique(collection);
715
    }
716
717
    @Override
718
    public boolean addAllUnique(int index, Collection<? extends FeatureMap.Entry> collection)
719
    {
720
      writeAccess();
721
      return getInternalFeatureMap().addAllUnique(index, collection);
722
    }
723
724
    public boolean addAllUnique(int index, FeatureMap.Entry.Internal[] entries, int start, int end)
725
    {
726
      writeAccess();
727
      return getInternalFeatureMap().addAllUnique(index, entries, start, end);
728
    }
729
730
    public boolean addAllUnique(FeatureMap.Entry.Internal[] entries, int start, int end)
731
    {
732
      writeAccess();
733
      return getInternalFeatureMap().addAllUnique(entries, start, end);
734
    }
735
736
    @Override
737
    public void addUnique(FeatureMap.Entry object)
738
    {
739
      writeAccess();
740
      getInternalFeatureMap().addUnique(object);
741
    }
742
743
    public void addUnique(EStructuralFeature feature, int index, Object object)
744
    {
745
      writeAccess();
746
      getInternalFeatureMap().addUnique(feature, index, object);
747
    }
748
749
    public void addUnique(EStructuralFeature feature, Object object)
750
    {
751
      writeAccess();
752
      getInternalFeatureMap().addUnique(feature, object);
753
    }
754
755
    @Override
756
    public void addUnique(int index, FeatureMap.Entry object)
757
    {
758
      writeAccess();
759
      getInternalFeatureMap().addUnique(index, object);
760
    }
761
762
    public void addUnique(FeatureMap.Entry.Internal entry)
763
    {
764
      writeAccess();
765
      getInternalFeatureMap().addUnique(entry);
766
    }
767
768
    @Override
769
    public NotificationChain basicAdd(FeatureMap.Entry object, NotificationChain notifications)
770
    {
771
      writeAccess();
772
      return getInternalFeatureMap().basicAdd(object, notifications);
773
    }
774
775
    public NotificationChain basicAdd(EStructuralFeature feature, Object object, NotificationChain notifications)
776
    {
777
      writeAccess();
778
      return getInternalFeatureMap().basicAdd(feature, object, notifications);
779
    }
780
781
    public boolean basicContains(EStructuralFeature feature, Object object)
782
    {
783
      readAccess();
784
      return getInternalFeatureMap().basicContains(feature, object);
785
    }
786
787
    @Override
788
    public boolean basicContains(Object object)
789
    {
790
      readAccess();
791
      return getInternalFeatureMap().basicContains(object);
792
    }
793
794
    @Override
795
    public boolean basicContainsAll(Collection<?> collection)
796
    {
797
      readAccess();
798
      return getInternalFeatureMap().basicContainsAll(collection);
799
    }
800
801
    public boolean basicContainsAll(EStructuralFeature feature, Collection<?> collection)
802
    {
803
      readAccess();
804
      return getInternalFeatureMap().basicContainsAll(feature, collection);
805
    }
806
807
    @Override
808
    public FeatureMap.Entry basicGet(int index)
809
    {
810
      readAccess();
811
      return getInternalFeatureMap().basicGet(index);
812
    }
813
814
    public int basicIndexOf(EStructuralFeature feature, Object object)
815
    {
816
      readAccess();
817
      return getInternalFeatureMap().basicIndexOf(feature, object);
818
    }
819
820
    @Override
821
    public int basicIndexOf(Object object)
822
    {
823
      readAccess();
824
      return getInternalFeatureMap().basicIndexOf(object);
825
    }
826
827
    @Override
828
    public Iterator<FeatureMap.Entry> basicIterator()
829
    {
830
      // Ensure that we delegate to our own implementation of the basic list.
831
      //
832
      return super.basicIterator();
833
    }
834
835
    public Iterator<Object> basicIterator(EStructuralFeature feature)
836
    {
837
      // TODO
838
      //
839
      return getInternalFeatureMap().basicIterator(feature);
840
    }
841
842
    public int basicLastIndexOf(EStructuralFeature feature, Object object)
843
    {
844
      readAccess();
845
      return getInternalFeatureMap().basicLastIndexOf(feature, object);
846
    }
847
848
    @Override
849
    public int basicLastIndexOf(Object object)
850
    {
851
      readAccess();
852
      return getInternalFeatureMap().basicLastIndexOf(object);
853
    }
854
855
    @Override
856
    public List<FeatureMap.Entry> basicList()
857
    {
858
      // Ensure that we delegate back to this list itself.
859
      //
860
      return super.basicList();
861
    }
862
863
    public List<Object> basicList(EStructuralFeature feature)
864
    {
865
      // TODO
866
      return getInternalFeatureMap().basicList(feature);
867
    }
868
869
    @Override
870
    public ListIterator<FeatureMap.Entry> basicListIterator()
871
    {
872
      // Ensure that we delegate to our own implementation of the basic list.
873
      //
874
      return super.basicListIterator();
875
    }
876
877
    public ListIterator<Object> basicListIterator(EStructuralFeature feature, int index)
878
    {
879
      // TODO
880
      return getInternalFeatureMap().basicListIterator(feature, index);
881
    }
882
883
    public ListIterator<Object> basicListIterator(EStructuralFeature feature)
884
    {
885
      // TODO
886
      return getInternalFeatureMap().basicListIterator(feature);
887
    }
888
889
    @Override
890
    public ListIterator<FeatureMap.Entry> basicListIterator(int index)
891
    {
892
      // Ensure that we delegate to our own implementation of the basic list.
893
      //
894
      return super.basicListIterator(index);
895
    }
896
897
    public NotificationChain basicRemove(EStructuralFeature feature, Object object, NotificationChain notifications)
898
    {
899
      writeAccess();
900
      return getInternalFeatureMap().basicRemove(feature, object, notifications);
901
    }
902
903
    @Override
904
    public NotificationChain basicRemove(Object object, NotificationChain notifications)
905
    {
906
      writeAccess();
907
      return getInternalFeatureMap().basicRemove(object, notifications);
908
    }
909
910
    @Override
911
    public Object[] basicToArray()
912
    {
913
      readAccess();
914
      return getInternalFeatureMap().basicToArray();
915
    }
916
917
    public <T> T[] basicToArray(EStructuralFeature feature, T[] array)
918
    {
919
      readAccess();
920
      return getInternalFeatureMap().basicToArray(feature, array);
921
    }
922
923
    public Object[] basicToArray(EStructuralFeature feature)
924
    {
925
      readAccess();
926
      return getInternalFeatureMap().basicToArray(feature);
927
    }
928
929
    @Override
930
    public <T> T[] basicToArray(T[] array)
931
    {
932
      readAccess();
933
      return getInternalFeatureMap().basicToArray(array);
934
    }
935
936
    @Override
937
    public void clear()
938
    {
939
      writeAccess();
940
      getInternalFeatureMap().clear();
941
    }
942
943
    public void clear(EStructuralFeature feature)
944
    {
945
      writeAccess();
946
      getInternalFeatureMap().clear(feature);
947
    }
948
949
    public boolean contains(EStructuralFeature feature, Object object)
950
    {
951
      readAccess();
952
      return getInternalFeatureMap().contains(feature, object);
953
    }
954
955
    @Override
956
    public boolean contains(Object o)
957
    {
958
      readAccess();
959
      return getInternalFeatureMap().contains(o);
960
    }
961
962
    @Override
963
    public boolean containsAll(Collection<?> c)
964
    {
965
      readAccess();
966
      return getInternalFeatureMap().containsAll(c);
967
    }
968
969
    public boolean containsAll(EStructuralFeature feature, Collection<?> collection)
970
    {
971
      readAccess();
972
      return getInternalFeatureMap().containsAll(feature, collection);
973
    }
974
975
    @Override
976
    public boolean equals(Object o)
977
    {
978
      // TODO
979
      readAccess();
980
      return getInternalFeatureMap().equals(o);
981
    }
982
983
    @Override
984
    public Object get(boolean resolve)
985
    {
986
      readAccess();
987
      return getInternalFeatureMap().get(resolve);
988
    }
989
990
    public Object get(EStructuralFeature feature, boolean resolve)
991
    {
992
      readAccess();
993
      return getInternalFeatureMap().get(feature, resolve);
994
    }
995
996
    public Object get(EStructuralFeature feature, int index, boolean resolve)
997
    {
998
      readAccess();
999
      return getInternalFeatureMap().get(feature, index, resolve);
1000
    }
1001
1002
    @Override
1003
    public FeatureMap.Entry get(int index)
1004
    {
1005
      readAccess();
1006
      return getInternalFeatureMap().get(index);
1007
    }
1008
1009
    public EStructuralFeature getEStructuralFeature(int index)
1010
    {
1011
      readAccess();
1012
      return getInternalFeatureMap().getEStructuralFeature(index);
1013
    }
1014
1015
    public int getModCount()
1016
    {
1017
      readAccess();
1018
      return getInternalFeatureMap().getModCount();
1019
    }
1020
1021
    public Object getValue(int index)
1022
    {
1023
      readAccess();
1024
      return getInternalFeatureMap().getValue(index);
1025
    }
1026
1027
    public Wrapper getWrapper()
1028
    {
1029
      // TODO
1030
      return getInternalFeatureMap().getWrapper();
1031
    }
1032
1033
    @Override
1034
    public int hashCode()
1035
    {
1036
      // TODO
1037
      readAccess();
1038
      return getInternalFeatureMap().hashCode();
1039
    }
1040
1041
    public int indexOf(EStructuralFeature feature, Object object)
1042
    {
1043
      readAccess();
1044
      return getInternalFeatureMap().indexOf(feature, object);
1045
    }
1046
1047
    @Override
1048
    public int indexOf(Object o)
1049
    {
1050
      readAccess();
1051
      return getInternalFeatureMap().indexOf(o);
1052
    }
1053
1054
    @Override
1055
    public boolean isEmpty()
1056
    {
1057
      readAccess();
1058
      return getInternalFeatureMap().isEmpty();
1059
    }
1060
1061
    public boolean isEmpty(EStructuralFeature feature)
1062
    {
1063
      readAccess();
1064
      return getInternalFeatureMap().isEmpty(feature);
1065
    }
1066
1067
    @Override
1068
    public boolean isSet()
1069
    {
1070
      readAccess();
1071
      return getInternalFeatureMap().isSet();
1072
    }
1073
1074
    public boolean isSet(EStructuralFeature feature)
1075
    {
1076
      readAccess();
1077
      return getInternalFeatureMap().isSet(feature);
1078
    }
1079
1080
    @Override
1081
    public Iterator<FeatureMap.Entry> iterator()
1082
    {
1083
      // Ensure that the iterator delegates back to this list implementation.
1084
      //
1085
      return super.iterator();
1086
    }
1087
1088
    public Iterator<Object> iterator(EStructuralFeature feature)
1089
    {
1090
      // TODO
1091
      return getInternalFeatureMap().iterator(feature);
1092
    }
1093
1094
    public int lastIndexOf(EStructuralFeature feature, Object object)
1095
    {
1096
      readAccess();
1097
      return getInternalFeatureMap().lastIndexOf(feature, object);
1098
    }
1099
1100
    @Override
1101
    public int lastIndexOf(Object o)
1102
    {
1103
      readAccess();
1104
      return getInternalFeatureMap().lastIndexOf(o);
1105
    }
1106
1107
    public <T> EList<T> list(EStructuralFeature feature)
1108
    {
1109
      // TODO
1110
      return getInternalFeatureMap().list(feature);
1111
    }
1112
1113
    @Override
1114
    public ListIterator<FeatureMap.Entry> listIterator()
1115
    {
1116
      // Ensure that the iterator delegates back to this list implementation.
1117
      //
1118
      return super.listIterator();
1119
    }
1120
1121
    public ListIterator<Object> listIterator(EStructuralFeature feature, int index)
1122
    {
1123
      // TODO
1124
      return getInternalFeatureMap().listIterator(feature, index);
1125
    }
1126
1127
    public ListIterator<Object> listIterator(EStructuralFeature feature)
1128
    {
1129
      // TODO
1130
      return getInternalFeatureMap().listIterator(feature);
1131
    }
1132
1133
    @Override
1134
    public ListIterator<FeatureMap.Entry> listIterator(int index)
1135
    {
1136
      // Ensure that the iterator delegates back to this list implementation.
1137
      //
1138
      return super.listIterator(index);
1139
    }
1140
1141
    public Object move(EStructuralFeature feature, int targetIndex, int sourceIndex)
1142
    {
1143
      writeAccess();
1144
      return getInternalFeatureMap().move(feature, targetIndex, sourceIndex);
1145
    }
1146
1147
    public void move(EStructuralFeature feature, int index, Object object)
1148
    {
1149
      writeAccess();
1150
      getInternalFeatureMap().move(feature, index, object);
1151
    }
1152
1153
    @Override
1154
    public void move(int newPosition, FeatureMap.Entry object)
1155
    {
1156
      writeAccess();
1157
      getInternalFeatureMap().move(newPosition, object);
1158
    }
1159
1160
    @Override
1161
    public FeatureMap.Entry move(int newPosition, int oldPosition)
1162
    {
1163
      writeAccess();
1164
      return getInternalFeatureMap().move(newPosition, oldPosition);
1165
    }
1166
1167
    public Object remove(EStructuralFeature feature, int index)
1168
    {
1169
      writeAccess();
1170
      return getInternalFeatureMap().remove(feature, index);
1171
    }
1172
1173
    public boolean remove(EStructuralFeature feature, Object object)
1174
    {
1175
      writeAccess();
1176
      return getInternalFeatureMap().remove(feature, object);
1177
    }
1178
1179
    @Override
1180
    public FeatureMap.Entry remove(int index)
1181
    {
1182
      writeAccess();
1183
      return getInternalFeatureMap().remove(index);
1184
    }
1185
1186
    @Override
1187
    public boolean remove(Object o)
1188
    {
1189
      writeAccess();
1190
      return getInternalFeatureMap().remove(o);
1191
    }
1192
1193
    @Override
1194
    public boolean removeAll(Collection<?> c)
1195
    {
1196
      writeAccess();
1197
      return getInternalFeatureMap().removeAll(c);
1198
    }
1199
1200
    public boolean removeAll(EStructuralFeature feature, Collection<?> collection)
1201
    {
1202
      writeAccess();
1203
      return getInternalFeatureMap().removeAll(feature, collection);
1204
    }
1205
1206
    public Object resolveProxy(EStructuralFeature feature, int entryIndex, int index, Object object)
1207
    {
1208
      readAccess();
1209
      return getInternalFeatureMap().resolveProxy(feature, entryIndex, index, object);
1210
    }
1211
1212
    @Override
1213
    public boolean retainAll(Collection<?> c)
1214
    {
1215
      writeAccess();
1216
      return getInternalFeatureMap().retainAll(c);
1217
    }
1218
1219
    public boolean retainAll(EStructuralFeature feature, Collection<?> collection)
1220
    {
1221
      writeAccess();
1222
      return getInternalFeatureMap().retainAll(feature, collection);
1223
    }
1224
1225
    public Object set(EStructuralFeature feature, int index, Object object)
1226
    {
1227
      writeAccess();
1228
      return getInternalFeatureMap().set(feature, index, object);
1229
    }
1230
1231
    public void set(EStructuralFeature feature, Object object)
1232
    {
1233
      writeAccess();
1234
      getInternalFeatureMap().set(feature, object);
1235
    }
1236
1237
    @Override
1238
    public FeatureMap.Entry set(int index, org.eclipse.emf.ecore.util.FeatureMap.Entry element)
1239
    {
1240
      writeAccess();
1241
      return getInternalFeatureMap().set(index, element);
1242
    }
1243
1244
    @Override
1245
    public void set(Object newValue)
1246
    {
1247
      writeAccess();
1248
      getInternalFeatureMap().set(newValue);
1249
    }
1250
1251
    public Setting setting(EStructuralFeature feature)
1252
    {
1253
      return getInternalFeatureMap().setting(feature);
1254
    }
1255
1256
    public Object setUnique(EStructuralFeature feature, int index, Object object)
1257
    {
1258
      writeAccess();
1259
      return getInternalFeatureMap().setUnique(feature, index, object);
1260
    }
1261
1262
    @Override
1263
    public FeatureMap.Entry setUnique(int index, org.eclipse.emf.ecore.util.FeatureMap.Entry object)
1264
    {
1265
      writeAccess();
1266
      return getInternalFeatureMap().setUnique(index, object);
1267
    }
1268
1269
    public Object setValue(int index, Object value)
1270
    {
1271
      writeAccess();
1272
      return getInternalFeatureMap().setValue(index, value);
1273
    }
1274
1275
    public void setWrapper(Wrapper wrapper)
1276
    {
1277
      // TODO
1278
      writeAccess();
1279
      getInternalFeatureMap().setWrapper(wrapper);
1280
    }
1281
1282
    @Override
1283
    public int size()
1284
    {
1285
      readAccess();
1286
      return getInternalFeatureMap().size();
1287
    }
1288
1289
    public int size(EStructuralFeature feature)
1290
    {
1291
      readAccess();
1292
      return getInternalFeatureMap().size(feature);
1293
    }
1294
1295
    @Override
1296
    public List<FeatureMap.Entry> subList(int fromIndex, int toIndex)
1297
    {
1298
      // Ensure that the sublist delegates back to this list implementation.
1299
      //
1300
      return super.subList(fromIndex, toIndex);
1301
    }
1302
1303
    @Override
1304
    public Object[] toArray()
1305
    {
1306
      readAccess();
1307
      return getInternalFeatureMap().toArray();
1308
    }
1309
1310
    public <T> T[] toArray(EStructuralFeature feature, T[] array)
1311
    {
1312
      readAccess();
1313
      return getInternalFeatureMap().toArray(feature, array);
1314
    }
1315
1316
    public Object[] toArray(EStructuralFeature feature)
1317
    {
1318
      readAccess();
1319
      return getInternalFeatureMap().toArray(feature);
1320
    }
1321
1322
    @Override
1323
    public <T> T[] toArray(T[] a)
1324
    {
1325
      readAccess();
1326
      return getInternalFeatureMap().toArray(a);
1327
    }
1328
1329
    @Override
1330
    public void unset()
1331
    {
1332
      writeAccess();
1333
      getInternalFeatureMap().unset();
1334
    }
1335
1336
    public void unset(EStructuralFeature feature)
1337
    {
1338
      writeAccess();
1339
      getInternalFeatureMap().unset(feature);
1340
    }
1341
1342
    public ValueListIterator<Object> valueListIterator()
1343
    {
1344
      // TODO
1345
      return getInternalFeatureMap().valueListIterator();
1346
    }
1347
1348
    public ValueListIterator<Object> valueListIterator(int index)
1349
    {
1350
      // TODO
1351
      return getInternalFeatureMap().valueListIterator(index);
1352
    }
1353
  }
1354
}
(-).classpath (-1 lines)
Lines 3-8 Link Here
3
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
3
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
4
	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
4
	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
5
	<classpathentry kind="src" path="src"/>
5
	<classpathentry kind="src" path="src"/>
6
	<classpathentry kind="src" output="mixin-bin" path="mixin"/>
7
	<classpathentry kind="output" path="bin"/>
6
	<classpathentry kind="output" path="bin"/>
8
</classpath>
7
</classpath>
(-)build.properties (-6 / +2 lines)
Lines 23-33 Link Here
23
               about.ini,\
23
               about.ini,\
24
               about.mappings,\
24
               about.mappings,\
25
               about.properties,\
25
               about.properties,\
26
               modeling32.png,\
26
               modeling32.png
27
               mixin.jar
27
jars.compile.order = .
28
jars.compile.order = mixin.jar,\
29
                     .
30
source.. = src/
28
source.. = src/
31
output.. = bin/
29
output.. = bin/
32
source.mixin.jar = mixin/
33
output.mixin.jar = mixin-bin/
(-)src/org/eclipse/emf/internal/cdo/CDOViewImpl.java (-10 / +4 lines)
Lines 501-507 Link Here
501
      throw new ImplementationError("No metaInstance for " + id);
501
      throw new ImplementationError("No metaInstance for " + id);
502
    }
502
    }
503
503
504
    return new CDOMetaImpl(this, metaInstance, id);
504
    return new CDOMetaWrapper(this, metaInstance, id);
505
  }
505
  }
506
506
507
  /**
507
  /**
Lines 647-662 Link Here
647
    if (potentialObject instanceof InternalEObject && !(potentialObject instanceof InternalCDOObject))
647
    if (potentialObject instanceof InternalEObject && !(potentialObject instanceof InternalCDOObject))
648
    {
648
    {
649
      InternalEObject eObject = (InternalEObject)potentialObject;
649
      InternalEObject eObject = (InternalEObject)potentialObject;
650
650
      CDOLegacyWrapper legacyListener = FSMUtil.getLegacyListener(eObject.eReadListeners());
651
      // Only adapt object that are already adapted.
651
      if (legacyListener != null)
652
      // We do not want to create a attach without goign through the normal process.
653
      if (EcoreUtil.getAdapter(eObject.eAdapters(), CDOAdapterImpl.class) != null)
654
      {
652
      {
655
        InternalCDOObject adapter = FSMUtil.adapt(eObject, this);
653
        potentialObject = legacyListener;
656
        if (adapter != null)
657
        {
658
          potentialObject = adapter;
659
        }
660
      }
654
      }
661
    }
655
    }
662
656
(-)src/org/eclipse/emf/internal/cdo/CDOWrapperImpl.java (-321 lines)
Removed Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.internal.cdo;
12
13
import org.eclipse.emf.cdo.CDOView;
14
import org.eclipse.emf.cdo.common.id.CDOID;
15
16
import org.eclipse.emf.internal.cdo.bundle.OM;
17
18
import org.eclipse.net4j.util.om.trace.ContextTracer;
19
20
import org.eclipse.emf.common.notify.Adapter;
21
import org.eclipse.emf.common.notify.Notification;
22
import org.eclipse.emf.common.notify.NotificationChain;
23
import org.eclipse.emf.common.util.EList;
24
import org.eclipse.emf.common.util.TreeIterator;
25
import org.eclipse.emf.common.util.URI;
26
import org.eclipse.emf.ecore.EClass;
27
import org.eclipse.emf.ecore.EObject;
28
import org.eclipse.emf.ecore.EReference;
29
import org.eclipse.emf.ecore.EStructuralFeature;
30
import org.eclipse.emf.ecore.InternalEObject;
31
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
32
import org.eclipse.emf.ecore.resource.Resource;
33
34
/**
35
 * @author Eike Stepper
36
 */
37
public abstract class CDOWrapperImpl implements InternalCDOObject
38
{
39
  private static final ContextTracer TRACER = new ContextTracer(OM.DEBUG_OBJECT, CDOWrapperImpl.class);
40
41
  protected CDOID id;
42
43
  protected CDOViewImpl view;
44
45
  protected InternalEObject instance;
46
47
  public CDOWrapperImpl()
48
  {
49
    super();
50
  }
51
52
  public CDOID cdoID()
53
  {
54
    return id;
55
  }
56
57
  public CDOViewImpl cdoView()
58
  {
59
    return view;
60
  }
61
62
  public void cdoInternalSetID(CDOID id)
63
  {
64
    if (id == null)
65
    {
66
      throw new IllegalArgumentException("id == null");
67
    }
68
69
    if (TRACER.isEnabled())
70
    {
71
      TRACER.format("Setting ID: {0} for {1}", id, instance);
72
    }
73
74
    this.id = id;
75
  }
76
77
  public void cdoInternalSetView(CDOView view)
78
  {
79
    if (TRACER.isEnabled())
80
    {
81
      TRACER.format("Setting view: {0} for {1}", view, instance);
82
    }
83
84
    this.view = (CDOViewImpl)view;
85
  }
86
87
  public InternalEObject cdoInternalInstance()
88
  {
89
    return instance;
90
  }
91
92
  public EStructuralFeature cdoInternalDynamicFeature(int dynamicFeatureID)
93
  {
94
    // TODO Implement method CDOWrapperImpl.cdoInternalDynamicFeature()
95
    throw new UnsupportedOperationException("Not yet implemented");
96
  }
97
98
  public EList<Adapter> eAdapters()
99
  {
100
    return instance.eAdapters();
101
  }
102
103
  public TreeIterator<EObject> eAllContents()
104
  {
105
    return instance.eAllContents();
106
  }
107
108
  public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass)
109
  {
110
    return instance.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
111
  }
112
113
  public NotificationChain eBasicRemoveFromContainer(NotificationChain notifications)
114
  {
115
    return instance.eBasicRemoveFromContainer(notifications);
116
  }
117
118
  public NotificationChain eBasicSetContainer(InternalEObject newContainer, int newContainerFeatureID,
119
      NotificationChain notifications)
120
  {
121
    return instance.eBasicSetContainer(newContainer, newContainerFeatureID, notifications);
122
  }
123
124
  public EClass eClass()
125
  {
126
    return instance.eClass();
127
  }
128
129
  public EObject eContainer()
130
  {
131
    return instance.eContainer();
132
  }
133
134
  public int eContainerFeatureID()
135
  {
136
    return instance.eContainerFeatureID();
137
  }
138
139
  public EStructuralFeature eContainingFeature()
140
  {
141
    return instance.eContainingFeature();
142
  }
143
144
  public EReference eContainmentFeature()
145
  {
146
    return instance.eContainmentFeature();
147
  }
148
149
  public EList<EObject> eContents()
150
  {
151
    return instance.eContents();
152
  }
153
154
  public EList<EObject> eCrossReferences()
155
  {
156
    return instance.eCrossReferences();
157
  }
158
159
  public boolean eDeliver()
160
  {
161
    return instance.eDeliver();
162
  }
163
164
  public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass)
165
  {
166
    return instance.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
167
  }
168
169
  public Resource.Internal eDirectResource()
170
  {
171
    return instance.eDirectResource();
172
  }
173
174
  public Object eGet(EStructuralFeature feature, boolean resolve, boolean coreType)
175
  {
176
    return instance.eGet(feature, resolve, coreType);
177
  }
178
179
  public Object eGet(EStructuralFeature feature, boolean resolve)
180
  {
181
    return instance.eGet(feature, resolve);
182
  }
183
184
  public Object eGet(EStructuralFeature feature)
185
  {
186
    return instance.eGet(feature);
187
  }
188
189
  public Object eGet(int featureID, boolean resolve, boolean coreType)
190
  {
191
    return instance.eGet(featureID, resolve, coreType);
192
  }
193
194
  public InternalEObject eInternalContainer()
195
  {
196
    return instance.eInternalContainer();
197
  }
198
199
  public Resource.Internal eInternalResource()
200
  {
201
    return instance.eInternalResource();
202
  }
203
204
  public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class<?> baseClass,
205
      NotificationChain notifications)
206
  {
207
    return instance.eInverseAdd(otherEnd, featureID, baseClass, notifications);
208
  }
209
210
  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class<?> baseClass,
211
      NotificationChain notifications)
212
  {
213
    return instance.eInverseRemove(otherEnd, featureID, baseClass, notifications);
214
  }
215
216
  public boolean eIsProxy()
217
  {
218
    return instance.eIsProxy();
219
  }
220
221
  public boolean eIsSet(EStructuralFeature feature)
222
  {
223
    return instance.eIsSet(feature);
224
  }
225
226
  public boolean eIsSet(int featureID)
227
  {
228
    return instance.eIsSet(featureID);
229
  }
230
231
  public boolean eNotificationRequired()
232
  {
233
    return instance.eNotificationRequired();
234
  }
235
236
  public void eNotify(Notification notification)
237
  {
238
    instance.eNotify(notification);
239
  }
240
241
  public EObject eObjectForURIFragmentSegment(String uriFragmentSegment)
242
  {
243
    return instance.eObjectForURIFragmentSegment(uriFragmentSegment);
244
  }
245
246
  public URI eProxyURI()
247
  {
248
    return instance.eProxyURI();
249
  }
250
251
  public EObject eResolveProxy(InternalEObject proxy)
252
  {
253
    return instance.eResolveProxy(proxy);
254
  }
255
256
  public Resource eResource()
257
  {
258
    return instance.eResource();
259
  }
260
261
  public void eSet(EStructuralFeature feature, Object newValue)
262
  {
263
    instance.eSet(feature, newValue);
264
  }
265
266
  public void eSet(int featureID, Object newValue)
267
  {
268
    instance.eSet(featureID, newValue);
269
  }
270
271
  public void eSetClass(EClass class1)
272
  {
273
    instance.eSetClass(class1);
274
  }
275
276
  public void eSetDeliver(boolean deliver)
277
  {
278
    instance.eSetDeliver(deliver);
279
  }
280
281
  public void eSetProxyURI(URI uri)
282
  {
283
    instance.eSetProxyURI(uri);
284
  }
285
286
  public NotificationChain eSetResource(Resource.Internal resource, NotificationChain notifications)
287
  {
288
    return instance.eSetResource(resource, notifications);
289
  }
290
291
  public void eSetStore(EStore store)
292
  {
293
    instance.eSetStore(store);
294
  }
295
296
  public Setting eSetting(EStructuralFeature feature)
297
  {
298
    return instance.eSetting(feature);
299
  }
300
301
  public EStore eStore()
302
  {
303
    return instance.eStore();
304
  }
305
306
  public void eUnset(EStructuralFeature feature)
307
  {
308
    instance.eUnset(feature);
309
  }
310
311
  public void eUnset(int featureID)
312
  {
313
    instance.eUnset(featureID);
314
  }
315
316
  public String eURIFragmentSegment(EStructuralFeature feature, EObject object)
317
  {
318
    return instance.eURIFragmentSegment(feature, object);
319
  }
320
321
}
(-)src/org/eclipse/emf/internal/cdo/CDOCallbackImpl.java (-174 lines)
Removed Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.internal.cdo;
12
13
import org.eclipse.emf.cdo.CDOView;
14
15
import org.eclipse.emf.internal.cdo.bundle.OM;
16
import org.eclipse.emf.internal.cdo.util.FSMUtil;
17
18
import org.eclipse.emf.common.notify.Notification;
19
import org.eclipse.emf.ecore.EReference;
20
import org.eclipse.emf.ecore.InternalEObject;
21
import org.eclipse.emf.ecore.impl.CDOAware;
22
import org.eclipse.emf.ecore.impl.CDOCallback;
23
import org.eclipse.emf.ecore.impl.EObjectImpl;
24
import org.eclipse.emf.ecore.util.EcoreUtil;
25
26
import java.util.List;
27
28
/**
29
 * @author Eike Stepper
30
 */
31
public class CDOCallbackImpl extends CDOLegacyImpl implements CDOCallback
32
{
33
  public CDOCallbackImpl(InternalEObject instance)
34
  {
35
    this.instance = instance;
36
  }
37
38
  public void beforeRead(EObjectImpl instance)
39
  {
40
    CDOStateMachine.INSTANCE.read(this);
41
  }
42
43
  public void beforeWrite(EObjectImpl instance)
44
  {
45
    CDOStateMachine.INSTANCE.write(this);
46
  }
47
48
  @Override
49
  public boolean isAdapterForType(Object type)
50
  {
51
    return type == CDOCallbackImpl.class;
52
  }
53
54
  public void notifyChanged(Notification msg)
55
  {
56
    try
57
    {
58
      if (msg.getNotifier() == instance)
59
      {
60
        Object feature = msg.getFeature();
61
        if (feature instanceof EReference)
62
        {
63
          EReference reference = (EReference)feature;
64
          if (reference.isContainment() && !reference.isTransient())
65
          {
66
            switch (msg.getEventType())
67
            {
68
            case Notification.ADD:
69
              notifyAdd(msg.getNewValue());
70
              break;
71
72
            case Notification.ADD_MANY:
73
              notifyAddMany(msg);
74
              break;
75
76
            case Notification.REMOVE:
77
              notifyRemove(msg.getOldValue());
78
              break;
79
80
            case Notification.REMOVE_MANY:
81
              notifyRemoveMany(msg);
82
              break;
83
            }
84
          }
85
        }
86
      }
87
    }
88
    catch (RuntimeException ex)
89
    {
90
      OM.LOG.error(ex);
91
    }
92
  }
93
94
  @Override
95
  protected void adjustEProxy()
96
  {
97
    // Do nothing
98
  }
99
100
  private void notifyAddMany(Notification msg)
101
  {
102
    List<?> newValues = (List<?>)msg.getNewValue();
103
    List<?> oldValues = (List<?>)msg.getOldValue();
104
    for (Object newValue : newValues)
105
    {
106
      if (!oldValues.contains(newValue))
107
      {
108
        notifyAdd(newValue);
109
      }
110
    }
111
  }
112
113
  private void notifyAdd(Object instance)
114
  {
115
    if (instance instanceof InternalEObject)
116
    {
117
      if (((InternalEObject)instance).eDeliver())
118
      {
119
        InternalCDOObject object = FSMUtil.adapt(instance, view);
120
        CDOStateMachine.INSTANCE.attach(object, view.toTransaction());
121
      }
122
    }
123
  }
124
125
  private void notifyRemoveMany(Notification msg)
126
  {
127
    List<?> newValues = (List<?>)msg.getNewValue();
128
    List<?> oldValues = (List<?>)msg.getOldValue();
129
    for (Object oldValue : oldValues)
130
    {
131
      if (!newValues.contains(oldValue))
132
      {
133
        notifyRemove(oldValue);
134
      }
135
    }
136
  }
137
138
  private void notifyRemove(Object instance)
139
  {
140
    if (instance instanceof InternalEObject)
141
    {
142
      if (((InternalEObject)instance).eDeliver())
143
      {
144
        InternalCDOObject object = FSMUtil.adapt(instance, view);
145
        CDOStateMachine.INSTANCE.detach(object);
146
      }
147
    }
148
  }
149
150
  public static InternalCDOObject adapt(Object object, CDOView view) throws Throwable
151
  {
152
    if (object instanceof CDOAware)
153
    {
154
      CDOAware aware = (CDOAware)object;
155
      CDOCallbackImpl callback = (CDOCallbackImpl)aware.getCDOCallback();
156
      if (callback == null)
157
      {
158
        InternalEObject instance = (InternalEObject)aware;
159
        if (instance.eIsProxy())
160
        {
161
          instance = (InternalEObject)EcoreUtil.resolve(instance, view.getResourceSet());
162
        }
163
164
        callback = new CDOCallbackImpl(instance);
165
        aware.setCDOCallback(callback);
166
        instance.eAdapters().add(callback);
167
      }
168
169
      return callback;
170
    }
171
172
    return null;
173
  }
174
}
(-)src/org/eclipse/emf/internal/cdo/CDOAdapterImpl.java (-59 lines)
Removed Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.internal.cdo;
12
13
import org.eclipse.emf.internal.cdo.bundle.OM;
14
15
import org.eclipse.emf.common.notify.Notification;
16
17
/**
18
 * @author Eike Stepper
19
 */
20
public class CDOAdapterImpl extends CDOLegacyImpl
21
{
22
  public CDOAdapterImpl()
23
  {
24
  }
25
26
  @Override
27
  public boolean isAdapterForType(Object type)
28
  {
29
    return type == CDOAdapterImpl.class;
30
  }
31
32
  public void notifyChanged(Notification msg)
33
  {
34
    try
35
    {
36
      if (msg.getNotifier() == instance)
37
      {
38
        switch (msg.getEventType())
39
        {
40
        case Notification.ADD:
41
        case Notification.ADD_MANY:
42
        case Notification.REMOVE:
43
        case Notification.REMOVE_MANY:
44
        case Notification.MOVE:
45
        case Notification.SET:
46
        case Notification.UNSET:
47
          if (!instance.eIsProxy())
48
          {
49
            CDOStateMachine.INSTANCE.write(this);
50
          }
51
        }
52
      }
53
    }
54
    catch (RuntimeException ex)
55
    {
56
      OM.LOG.error(ex);
57
    }
58
  }
59
}
(-)src/org/eclipse/emf/internal/cdo/CDOMetaImpl.java (-108 lines)
Removed Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.internal.cdo;
12
13
import org.eclipse.emf.cdo.CDOState;
14
import org.eclipse.emf.cdo.common.id.CDOID;
15
import org.eclipse.emf.cdo.common.model.CDOClass;
16
import org.eclipse.emf.cdo.common.revision.CDORevision;
17
import org.eclipse.emf.cdo.eresource.CDOResource;
18
19
import org.eclipse.emf.ecore.InternalEObject;
20
21
/**
22
 * @author Eike Stepper
23
 */
24
public class CDOMetaImpl extends CDOWrapperImpl
25
{
26
  public CDOMetaImpl(CDOViewImpl view, InternalEObject instance, CDOID id)
27
  {
28
    this.view = view;
29
    this.instance = instance;
30
    this.id = id;
31
  }
32
33
  public CDOState cdoState()
34
  {
35
    return CDOState.CLEAN;
36
  }
37
38
  public CDORevision cdoRevision()
39
  {
40
    throw new UnsupportedOperationException();
41
  }
42
43
  public CDOResource cdoResource()
44
  {
45
    throw new UnsupportedOperationException();
46
  }
47
48
  public CDOClass cdoClass()
49
  {
50
    throw new UnsupportedOperationException();
51
  }
52
53
  public void cdoReload()
54
  {
55
    throw new UnsupportedOperationException();
56
  }
57
58
  public boolean cdoTransient()
59
  {
60
    return false;
61
  }
62
63
  public CDOState cdoInternalSetState(CDOState state)
64
  {
65
    throw new UnsupportedOperationException();
66
  }
67
68
  public void cdoInternalSetRevision(CDORevision revision)
69
  {
70
    throw new UnsupportedOperationException();
71
  }
72
73
  public void cdoInternalSetResource(CDOResource resource)
74
  {
75
    throw new UnsupportedOperationException();
76
  }
77
78
  public void cdoInternalPostLoad()
79
  {
80
    throw new UnsupportedOperationException();
81
  }
82
83
  public void cdoInternalPostAttach()
84
  {
85
    throw new UnsupportedOperationException();
86
  }
87
88
  public void cdoInternalPostDetach()
89
  {
90
    throw new UnsupportedOperationException();
91
  }
92
93
  public void cdoInternalPreCommit()
94
  {
95
    throw new UnsupportedOperationException();
96
  }
97
98
  @Override
99
  public String toString()
100
  {
101
    if (cdoID() == null)
102
    {
103
      return instance.eClass().getName() + "?";
104
    }
105
106
    return instance.eClass().getName() + "@" + cdoID();
107
  }
108
}
(-)src/org/eclipse/emf/internal/cdo/CDOSessionImpl.java (-14 lines)
Lines 38-44 Link Here
38
import org.eclipse.emf.cdo.spi.common.InternalCDORevision;
38
import org.eclipse.emf.cdo.spi.common.InternalCDORevision;
39
import org.eclipse.emf.cdo.util.CDOPackageRegistry;
39
import org.eclipse.emf.cdo.util.CDOPackageRegistry;
40
import org.eclipse.emf.cdo.util.CDOUtil;
40
import org.eclipse.emf.cdo.util.CDOUtil;
41
import org.eclipse.emf.cdo.util.LegacySystemNotAvailableException;
42
41
43
import org.eclipse.emf.internal.cdo.bundle.OM;
42
import org.eclipse.emf.internal.cdo.bundle.OM;
44
import org.eclipse.emf.internal.cdo.protocol.LoadLibrariesRequest;
43
import org.eclipse.emf.internal.cdo.protocol.LoadLibrariesRequest;
Lines 49-55 Link Here
49
import org.eclipse.emf.internal.cdo.protocol.SyncRevisionRequest;
48
import org.eclipse.emf.internal.cdo.protocol.SyncRevisionRequest;
50
import org.eclipse.emf.internal.cdo.protocol.ViewsChangedRequest;
49
import org.eclipse.emf.internal.cdo.protocol.ViewsChangedRequest;
51
import org.eclipse.emf.internal.cdo.util.CDOPackageRegistryImpl;
50
import org.eclipse.emf.internal.cdo.util.CDOPackageRegistryImpl;
52
import org.eclipse.emf.internal.cdo.util.FSMUtil;
53
import org.eclipse.emf.internal.cdo.util.ModelUtil;
51
import org.eclipse.emf.internal.cdo.util.ModelUtil;
54
52
55
import org.eclipse.net4j.channel.IChannel;
53
import org.eclipse.net4j.channel.IChannel;
Lines 205-217 Link Here
205
  public void setLegacySupportEnabled(boolean legacySupportEnabled)
203
  public void setLegacySupportEnabled(boolean legacySupportEnabled)
206
  {
204
  {
207
    checkInactive();
205
    checkInactive();
208
    // TODO Adjust this when legacy system is working again:
209
    // if (legacySupportEnabled && !FSMUtil.isLegacySystemAvailable())
210
    if (legacySupportEnabled)
211
    {
212
      throw new LegacySystemNotAvailableException();
213
    }
214
215
    this.legacySupportEnabled = legacySupportEnabled;
206
    this.legacySupportEnabled = legacySupportEnabled;
216
  }
207
  }
217
208
Lines 734-744 Link Here
734
  protected void doBeforeActivate() throws Exception
725
  protected void doBeforeActivate() throws Exception
735
  {
726
  {
736
    super.doBeforeActivate();
727
    super.doBeforeActivate();
737
    if (legacySupportEnabled && !FSMUtil.isLegacySystemAvailable())
738
    {
739
      throw new LegacySystemNotAvailableException();
740
    }
741
742
    if (channel == null && connector == null)
728
    if (channel == null && connector == null)
743
    {
729
    {
744
      throw new IllegalStateException("channel == null && connector == null");
730
      throw new IllegalStateException("channel == null && connector == null");
(-)src/org/eclipse/emf/internal/cdo/CDOLegacyImpl.java (-569 lines)
Removed Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 *    Simon McDuff - http://bugs.eclipse.org/201266
11
 **************************************************************************/
12
package org.eclipse.emf.internal.cdo;
13
14
import org.eclipse.emf.cdo.CDOState;
15
import org.eclipse.emf.cdo.common.CDOProtocolConstants;
16
import org.eclipse.emf.cdo.common.id.CDOID;
17
import org.eclipse.emf.cdo.common.model.CDOClass;
18
import org.eclipse.emf.cdo.common.model.CDOFeature;
19
import org.eclipse.emf.cdo.common.model.CDOType;
20
import org.eclipse.emf.cdo.common.revision.CDORevision;
21
import org.eclipse.emf.cdo.eresource.CDOResource;
22
import org.eclipse.emf.cdo.eresource.impl.CDOResourceImpl;
23
import org.eclipse.emf.cdo.spi.common.InternalCDORevision;
24
25
import org.eclipse.emf.internal.cdo.bundle.OM;
26
import org.eclipse.emf.internal.cdo.util.GenUtil;
27
import org.eclipse.emf.internal.cdo.util.ModelUtil;
28
29
import org.eclipse.net4j.util.ImplementationError;
30
import org.eclipse.net4j.util.ReflectUtil;
31
import org.eclipse.net4j.util.WrappedException;
32
import org.eclipse.net4j.util.om.trace.ContextTracer;
33
34
import org.eclipse.emf.common.notify.Adapter;
35
import org.eclipse.emf.common.notify.Notifier;
36
import org.eclipse.emf.common.util.URI;
37
import org.eclipse.emf.ecore.EObject;
38
import org.eclipse.emf.ecore.EStructuralFeature;
39
import org.eclipse.emf.ecore.InternalEObject;
40
import org.eclipse.emf.ecore.impl.BasicEObjectImpl;
41
import org.eclipse.emf.ecore.impl.EAttributeImpl;
42
import org.eclipse.emf.ecore.impl.EClassImpl;
43
import org.eclipse.emf.ecore.impl.EDataTypeImpl;
44
import org.eclipse.emf.ecore.impl.EReferenceImpl;
45
import org.eclipse.emf.ecore.impl.EStructuralFeatureImpl;
46
import org.eclipse.emf.ecore.impl.ETypedElementImpl;
47
import org.eclipse.emf.ecore.resource.Resource;
48
import org.eclipse.emf.ecore.util.InternalEList;
49
50
import java.lang.reflect.Field;
51
import java.lang.reflect.InvocationTargetException;
52
import java.lang.reflect.Method;
53
import java.util.Iterator;
54
import java.util.List;
55
56
/**
57
 * @author Eike Stepper
58
 */
59
public abstract class CDOLegacyImpl extends CDOWrapperImpl implements Adapter.Internal
60
{
61
  private static final ContextTracer TRACER = new ContextTracer(OM.DEBUG_OBJECT, CDOLegacyImpl.class);
62
63
  private CDOState state;
64
65
  private CDOResourceImpl resource;
66
67
  private InternalCDORevision revision;
68
69
  public CDOLegacyImpl()
70
  {
71
    state = CDOState.TRANSIENT;
72
  }
73
74
  public CDOState cdoState()
75
  {
76
    return state;
77
  }
78
79
  public InternalCDORevision cdoRevision()
80
  {
81
    return revision;
82
  }
83
84
  public CDOResourceImpl cdoResource()
85
  {
86
    return resource;
87
  }
88
89
  public CDOClass cdoClass()
90
  {
91
    return CDOObjectImpl.getCDOClass(this);
92
  }
93
94
  public void cdoReload()
95
  {
96
    CDOStateMachine.INSTANCE.reload(this);
97
  }
98
99
  public boolean isAdapterForType(Object type)
100
  {
101
    return false;
102
  }
103
104
  public CDOState cdoInternalSetState(CDOState state)
105
  {
106
    if (this.state != state)
107
    {
108
      if (TRACER.isEnabled())
109
      {
110
        TRACER.format("Setting state {0} for {1}", state, this);
111
      }
112
113
      CDOState tmp = this.state;
114
      this.state = state;
115
      adjustEProxy();
116
      return tmp;
117
    }
118
119
    // TODO Detect duplicate cdoInternalSetState() calls
120
    return null;
121
  }
122
123
  public void cdoInternalSetRevision(CDORevision revision)
124
  {
125
    if (TRACER.isEnabled())
126
    {
127
      TRACER.format("Setting revision: {0}", revision);
128
    }
129
130
    this.revision = (InternalCDORevision)revision;
131
  }
132
133
  public void cdoInternalSetResource(CDOResource resource)
134
  {
135
    if (TRACER.isEnabled())
136
    {
137
      TRACER.format("Setting resource: {0}", resource);
138
    }
139
140
    this.resource = (CDOResourceImpl)resource;
141
    // if (resource != null)
142
    // {
143
    // transferResourceToInstance(resource);
144
    // }
145
  }
146
147
  public void cdoInternalPostAttach()
148
  {
149
    // Do nothing
150
  }
151
152
  public void cdoInternalPostDetach()
153
  {
154
    // Do nothing
155
  }
156
157
  public void cdoInternalPreCommit()
158
  {
159
    transferInstanceToRevision();
160
161
    CDORevisionManagerImpl revisionManager = view.getSession().getRevisionManager();
162
    InternalCDORevision revision = cdoRevision();
163
    InternalCDORevision originRevision = revisionManager.getRevisionByVersion(revision.getID(), CDORevision.UNCHUNKED,
164
        revision.getVersion() - 1, false);
165
166
    CDOTransactionImpl transaction = cdoView().toTransaction();
167
    transaction.registerRevisionDelta(cdoRevision().compare(originRevision));
168
  }
169
170
  public void cdoInternalPostLoad()
171
  {
172
    transferRevisionToInstance();
173
  }
174
175
  @Override
176
  public String toString()
177
  {
178
    if (id == null)
179
    {
180
      return eClass().getName() + "?";
181
    }
182
183
    return eClass().getName() + "@" + id;
184
  }
185
186
  public InternalEObject getTarget()
187
  {
188
    return instance;
189
  }
190
191
  public void setTarget(Notifier newTarget)
192
  {
193
    if (newTarget instanceof InternalEObject)
194
    {
195
      instance = (InternalEObject)newTarget;
196
    }
197
    else
198
    {
199
      throw new IllegalArgumentException("Not an InternalEObject: " + newTarget.getClass().getName());
200
    }
201
  }
202
203
  public void unsetTarget(Notifier oldTarget)
204
  {
205
    if (oldTarget instanceof InternalEObject)
206
    {
207
      if (instance == oldTarget)
208
      {
209
        instance = null;
210
      }
211
    }
212
    else
213
    {
214
      throw new IllegalArgumentException("Not an InternalEObject: " + oldTarget.getClass().getName());
215
    }
216
  }
217
218
  protected void transferInstanceToRevision()
219
  {
220
    if (TRACER.isEnabled())
221
    {
222
      TRACER.format("Transfering instance to revision: {0} --> {1}", instance, revision);
223
    }
224
225
    CDOViewImpl view = cdoView();
226
    if (view == null)
227
    {
228
      throw new ImplementationError("view == null");
229
    }
230
231
    // Handle containment
232
    EObject container = instance.eContainer();
233
    if (container != null)
234
    {
235
      if (container instanceof CDOResource)
236
      {
237
        revision.setResourceID(((CDOResource)container).cdoID());
238
        revision.setContainerID(CDOID.NULL);
239
        revision.setContainingFeatureID(0);
240
      }
241
      else
242
      {
243
        revision.setResourceID(CDOID.NULL);
244
        // TODO is as CDOIDProvider call ok here?
245
        CDOID containerID = view.provideCDOID(container);
246
        if (containerID.isNull())
247
        {
248
          throw new ImplementationError("containerID.isNull()");
249
        }
250
251
        int containerFeatureID = instance.eContainerFeatureID();// containER???
252
        revision.setContainerID(containerID);
253
        revision.setContainingFeatureID(containerFeatureID);
254
      }
255
    }
256
257
    // Handle values
258
    CDOClass cdoClass = revision.getCDOClass();
259
    CDOFeature[] features = cdoClass.getAllFeatures();
260
    for (int i = 0; i < features.length; i++)
261
    {
262
      CDOFeature feature = features[i];
263
      Object instanceValue = getInstanceValue(instance, feature);
264
      if (feature.isMany())
265
      {
266
        List<Object> revisionList = revision.getList(feature); // TODO lazy?
267
        revisionList.clear();
268
269
        if (instanceValue != null)
270
        {
271
          if (instanceValue instanceof InternalEList)
272
          {
273
            InternalEList<?> instanceList = (InternalEList<?>)instanceValue;
274
            if (instanceList != null)
275
            {
276
              for (Iterator<?> it = instanceList.basicIterator(); it.hasNext();)
277
              {
278
                Object instanceElement = it.next();
279
                if (instanceElement != null && feature.isReference())
280
                {
281
                  instanceElement = view.convertObjectToID(instanceElement);
282
                }
283
284
                revisionList.add(instanceElement);
285
              }
286
            }
287
          }
288
          else
289
          {
290
            throw new ImplementationError("Not an InternalEList: " + instanceValue.getClass().getName());
291
          }
292
        }
293
      }
294
      else
295
      {
296
        if (instanceValue != null && feature.isReference())
297
        {
298
          instanceValue = view.convertObjectToID(instanceValue);
299
        }
300
301
        revision.setValue(feature, instanceValue);
302
      }
303
    }
304
  }
305
306
  protected void transferRevisionToInstance()
307
  {
308
    if (TRACER.isEnabled())
309
    {
310
      TRACER.format("Transfering revision to instance: {0} --> {1}", revision, instance);
311
    }
312
313
    CDOViewImpl view = cdoView();
314
    if (view == null)
315
    {
316
      throw new ImplementationError("view == null");
317
    }
318
319
    boolean deliver = instance.eDeliver();
320
    if (deliver)
321
    {
322
      instance.eSetDeliver(false);
323
    }
324
325
    try
326
    {
327
      // Handle containment
328
      transferContainmentToInstance(view);
329
330
      // Handle values
331
      CDOClass cdoClass = revision.getCDOClass();
332
      CDOFeature[] features = cdoClass.getAllFeatures();
333
      for (CDOFeature feature : features)
334
      {
335
        transferFeatureToInstance(view, feature);
336
      }
337
    }
338
    finally
339
    {
340
      if (deliver)
341
      {
342
        instance.eSetDeliver(true);
343
      }
344
    }
345
  }
346
347
  protected void transferContainmentToInstance(CDOViewImpl view)
348
  {
349
    // Not supported anymore
350
    // Object containerID = revision.getContainerID();
351
    // if (containerID.isNull())
352
    // {
353
    // CDOID resourceID = revision.getResourceID();
354
    // Resource.Internal resource = (Resource.Internal)view.getObject(resourceID);
355
    // transferResourceToInstance(resource);
356
    // }
357
    // else
358
    // {
359
    // int containingFeatureID = revision.getContainingFeatureID();
360
    // InternalEObject container = convertPotentialID(view, containerID);
361
    // ((BasicEObjectImpl)instance).eBasicSetContainer(container, containingFeatureID, null);
362
    // }
363
  }
364
365
  public void transferResourceToInstance(Resource.Internal resource)
366
  {
367
    Method method = ReflectUtil.getMethod(BasicEObjectImpl.class, "eSetDirectResource", Resource.Internal.class);
368
369
    try
370
    {
371
      ReflectUtil.invokeMethod(method, instance, resource);
372
    }
373
    catch (InvocationTargetException ex)
374
    {
375
      throw WrappedException.wrap(ex);
376
    }
377
  }
378
379
  @SuppressWarnings("unchecked")
380
  protected void transferFeatureToInstance(CDOViewImpl view, CDOFeature feature)
381
  {
382
    Object value = revision.getValue(feature);
383
    if (feature.isMany())
384
    {
385
      InternalEList<Object> instanceList = (InternalEList<Object>)getInstanceValue(instance, feature);
386
      if (instanceList != null)
387
      {
388
        clearEList(instanceList);
389
        if (value != null)
390
        {
391
          List<?> revisionList = (List<?>)value;
392
          for (Object element : revisionList)
393
          {
394
            if (feature.isReference())
395
            {
396
              element = convertPotentialID(view, element);
397
            }
398
399
            instanceList.basicAdd(element, null);
400
          }
401
        }
402
      }
403
    }
404
    else
405
    {
406
      if (feature.isReference())
407
      {
408
        value = convertPotentialID(view, value);
409
      }
410
411
      setInstanceValue(instance, feature, value);
412
    }
413
  }
414
415
  protected InternalEObject convertPotentialID(CDOViewImpl view, Object potentialID)
416
  {
417
    if (potentialID instanceof CDOID)
418
    {
419
      CDOID id = (CDOID)potentialID;
420
      if (id.isNull())
421
      {
422
        return null;
423
      }
424
425
      potentialID = view.getObject(id, false);
426
    }
427
428
    if (potentialID instanceof InternalCDOObject)
429
    {
430
      potentialID = ((InternalCDOObject)potentialID).cdoInternalInstance();
431
    }
432
433
    if (potentialID instanceof InternalEObject)
434
    {
435
      return (InternalEObject)potentialID;
436
    }
437
438
    throw new ImplementationError();
439
  }
440
441
  protected Object getInstanceValue(InternalEObject instance, CDOFeature feature)
442
  {
443
    EStructuralFeature eFeature = ModelUtil.getEFeature(feature, cdoView().getSession().getPackageRegistry());
444
    return instance.eGet(eFeature);
445
  }
446
447
  protected void setInstanceValue(InternalEObject instance, CDOFeature feature, Object value)
448
  {
449
    // TODO Don't use Java reflection
450
    Class<?> instanceClass = instance.getClass();
451
    String featureName = feature.getName();
452
    String fieldName = featureName;// TODO safeName()
453
    Field field = ReflectUtil.getField(instanceClass, fieldName);
454
    if (field == null && feature.getType() == CDOType.BOOLEAN)
455
    {
456
      if (instanceClass.isAssignableFrom(EAttributeImpl.class) || instanceClass.isAssignableFrom(EClassImpl.class)
457
          || instanceClass.isAssignableFrom(EDataTypeImpl.class)
458
          || instanceClass.isAssignableFrom(EReferenceImpl.class)
459
          || instanceClass.isAssignableFrom(EStructuralFeatureImpl.class)
460
          || instanceClass.isAssignableFrom(ETypedElementImpl.class))
461
      {
462
        // *******************************************
463
        // ID_EFLAG = 1 << 15;
464
        // *******************************************
465
        // ABSTRACT_EFLAG = 1 << 8;
466
        // INTERFACE_EFLAG = 1 << 9;
467
        // *******************************************
468
        // SERIALIZABLE_EFLAG = 1 << 8;
469
        // *******************************************
470
        // CONTAINMENT_EFLAG = 1 << 15;
471
        // RESOLVE_PROXIES_EFLAG = 1 << 16;
472
        // *******************************************
473
        // CHANGEABLE_EFLAG = 1 << 10;
474
        // VOLATILE_EFLAG = 1 << 11;
475
        // TRANSIENT_EFLAG = 1 << 12;
476
        // UNSETTABLE_EFLAG = 1 << 13;
477
        // DERIVED_EFLAG = 1 << 14;
478
        // *******************************************
479
        // ORDERED_EFLAG = 1 << 8;
480
        // UNIQUE_EFLAG = 1 << 9;
481
        // *******************************************
482
483
        String flagName = GenUtil.getFeatureUpperName(featureName) + "_EFLAG";
484
        int flagsMask = getEFlagMask(instanceClass, flagName);
485
486
        field = ReflectUtil.getField(instanceClass, "eFlags");
487
        int flags = (Integer)ReflectUtil.getValue(field, instance);
488
        boolean on = (Boolean)value;
489
        if (on)
490
        {
491
          flags |= flagsMask; // Add EFlag
492
        }
493
        else
494
        {
495
          flags &= ~flagsMask; // Remove EFlag
496
        }
497
498
        ReflectUtil.setValue(field, instance, flags);
499
        return;
500
      }
501
    }
502
503
    if (field == null)
504
    {
505
      throw new ImplementationError("Field not found: " + fieldName);
506
    }
507
508
    ReflectUtil.setValue(field, instance, value);
509
  }
510
511
  protected void adjustEProxy()
512
  {
513
    // Setting eProxyURI is necessary to prevent content adapters from
514
    // loading the whole content tree.
515
    // TODO Does not have the desired effect ;-( see CDOEditor.createModel()
516
    if (state == CDOState.PROXY)
517
    {
518
      if (!instance.eIsProxy())
519
      {
520
        URI uri = URI.createURI(CDOProtocolConstants.PROTOCOL_NAME + ":proxy#" + id);
521
        if (TRACER.isEnabled())
522
        {
523
          TRACER.format("Setting proxyURI {0} for {1}", uri, instance);
524
        }
525
526
        instance.eSetProxyURI(uri);
527
      }
528
    }
529
    else
530
    {
531
      if (instance.eIsProxy())
532
      {
533
        if (TRACER.isEnabled())
534
        {
535
          TRACER.format("Unsetting proxyURI for {0}", instance);
536
        }
537
538
        instance.eSetProxyURI(null);
539
      }
540
    }
541
  }
542
543
  protected void clearEList(InternalEList<Object> list)
544
  {
545
    while (!list.isEmpty())
546
    {
547
      Object toBeRemoved = list.basicGet(0);
548
      list.basicRemove(toBeRemoved, null);
549
    }
550
  }
551
552
  protected static int getEFlagMask(Class<?> instanceClass, String flagName)
553
  {
554
    Field field = ReflectUtil.getField(instanceClass, flagName);
555
    if (!field.isAccessible())
556
    {
557
      field.setAccessible(true);
558
    }
559
560
    try
561
    {
562
      return (Integer)field.get(null);
563
    }
564
    catch (IllegalAccessException ex)
565
    {
566
      throw new ImplementationError(ex);
567
    }
568
  }
569
}
(-)src/org/eclipse/emf/internal/cdo/util/CDOPackageTypeRegistryImpl.java (-37 / +8 lines)
Lines 14-21 Link Here
14
import org.eclipse.emf.cdo.eresource.EresourcePackage;
14
import org.eclipse.emf.cdo.eresource.EresourcePackage;
15
import org.eclipse.emf.cdo.util.CDOPackageType;
15
import org.eclipse.emf.cdo.util.CDOPackageType;
16
import org.eclipse.emf.cdo.util.CDOPackageTypeRegistry;
16
import org.eclipse.emf.cdo.util.CDOPackageTypeRegistry;
17
import org.eclipse.emf.cdo.util.CDOUtil;
18
17
18
import org.eclipse.emf.internal.cdo.CDOObjectImpl;
19
import org.eclipse.emf.internal.cdo.bundle.OM;
19
import org.eclipse.emf.internal.cdo.bundle.OM;
20
20
21
import org.eclipse.net4j.util.StringUtil;
21
import org.eclipse.net4j.util.StringUtil;
Lines 38-44 Link Here
38
import org.eclipse.core.runtime.dynamichelpers.IFilter;
38
import org.eclipse.core.runtime.dynamichelpers.IFilter;
39
39
40
import org.osgi.framework.Bundle;
40
import org.osgi.framework.Bundle;
41
import org.osgi.framework.Constants;
42
41
43
import java.util.HashMap;
42
import java.util.HashMap;
44
import java.util.Map;
43
import java.util.Map;
Lines 68-73 Link Here
68
    if (ePackage.getClass() == EPackageImpl.class)
67
    if (ePackage.getClass() == EPackageImpl.class)
69
    {
68
    {
70
      // Dynamic packages can be considered native
69
      // Dynamic packages can be considered native
70
      // TODO Check EFactory type!
71
      return CDOPackageType.NATIVE;
71
      return CDOPackageType.NATIVE;
72
    }
72
    }
73
73
Lines 78-98 Link Here
78
      throw new IllegalArgumentException("ePackage does not contain classes");
78
      throw new IllegalArgumentException("ePackage does not contain classes");
79
    }
79
    }
80
80
81
    try
81
    Class<?> instanceClass = eClass.getInstanceClass();
82
    {
82
    if (CDOObject.class.isAssignableFrom(instanceClass))
83
      if (isConverted(eClass))
84
      {
85
        return CDOPackageType.CONVERTED;
86
      }
87
    }
88
    catch (Throwable ignore)
89
    {
83
    {
90
      // Legacy system might not be available
84
      return CDOPackageType.NATIVE;
91
    }
85
    }
92
86
93
    // TODO This might not work if the model interface don't extend CDOObject
87
    if (CDOObjectImpl.class.isAssignableFrom(instanceClass))
94
    Class<?> instanceClass = eClass.getInstanceClass();
95
    if (CDOObject.class.isAssignableFrom(instanceClass))
96
    {
88
    {
97
      return CDOPackageType.NATIVE;
89
      return CDOPackageType.NATIVE;
98
    }
90
    }
Lines 115-125 Link Here
115
    put(uri, CDOPackageType.NATIVE);
107
    put(uri, CDOPackageType.NATIVE);
116
  }
108
  }
117
109
118
  public void registerConverted(String uri)
119
  {
120
    put(uri, CDOPackageType.CONVERTED);
121
  }
122
123
  @Override
110
  @Override
124
  protected void doActivate() throws Exception
111
  protected void doActivate() throws Exception
125
  {
112
  {
Lines 191-208 Link Here
191
    {
178
    {
192
      return CDOPackageType.NATIVE;
179
      return CDOPackageType.NATIVE;
193
    }
180
    }
194
    else
181
195
    {
182
    return CDOPackageType.LEGACY;
196
      String version = (String)bundle.getHeaders().get(Constants.BUNDLE_VERSION);
197
      if (version.endsWith(CDOUtil.CDO_VERSION_SUFFIX))
198
      {
199
        return CDOPackageType.CONVERTED;
200
      }
201
      else
202
      {
203
        return CDOPackageType.LEGACY;
204
      }
205
    }
206
  }
183
  }
207
184
208
  private EClass getAnyEClass(EPackage ePackage)
185
  private EClass getAnyEClass(EPackage ePackage)
Lines 227-238 Link Here
227
    return null;
204
    return null;
228
  }
205
  }
229
206
230
  private boolean isConverted(EClass eClass)
231
  {
232
    Class<?> instanceClass = eClass.getInstanceClass();
233
    return org.eclipse.emf.ecore.impl.CDOAware.class.isAssignableFrom(instanceClass);
234
  }
235
236
  private void connectExtensionTracker()
207
  private void connectExtensionTracker()
237
  {
208
  {
238
    ExtensionTracker extensionTracker = new ExtensionTracker();
209
    ExtensionTracker extensionTracker = new ExtensionTracker();
(-)src/org/eclipse/emf/internal/cdo/util/FSMUtil.java (-83 / +59 lines)
Lines 12-31 Link Here
12
package org.eclipse.emf.internal.cdo.util;
12
package org.eclipse.emf.internal.cdo.util;
13
13
14
import org.eclipse.emf.cdo.CDOObject;
14
import org.eclipse.emf.cdo.CDOObject;
15
import org.eclipse.emf.cdo.CDOSession;
16
import org.eclipse.emf.cdo.CDOState;
15
import org.eclipse.emf.cdo.CDOState;
17
import org.eclipse.emf.cdo.CDOView;
16
import org.eclipse.emf.cdo.CDOView;
18
import org.eclipse.emf.cdo.common.id.CDOID;
17
import org.eclipse.emf.cdo.common.id.CDOID;
19
import org.eclipse.emf.cdo.util.LegacySystemNotAvailableException;
20
18
21
import org.eclipse.emf.internal.cdo.CDOAdapterImpl;
19
import org.eclipse.emf.internal.cdo.CDOLegacyWrapper;
22
import org.eclipse.emf.internal.cdo.CDOLegacyImpl;
20
import org.eclipse.emf.internal.cdo.CDOMetaWrapper;
23
import org.eclipse.emf.internal.cdo.CDOMetaImpl;
24
import org.eclipse.emf.internal.cdo.CDOViewImpl;
21
import org.eclipse.emf.internal.cdo.CDOViewImpl;
25
import org.eclipse.emf.internal.cdo.InternalCDOObject;
22
import org.eclipse.emf.internal.cdo.InternalCDOObject;
26
import org.eclipse.emf.internal.cdo.bundle.OM;
27
23
28
import org.eclipse.emf.common.notify.Adapter;
29
import org.eclipse.emf.common.util.EList;
24
import org.eclipse.emf.common.util.EList;
30
import org.eclipse.emf.ecore.EGenericType;
25
import org.eclipse.emf.ecore.EGenericType;
31
import org.eclipse.emf.ecore.EModelElement;
26
import org.eclipse.emf.ecore.EModelElement;
Lines 34-40 Link Here
34
import org.eclipse.emf.ecore.resource.Resource;
29
import org.eclipse.emf.ecore.resource.Resource;
35
import org.eclipse.emf.ecore.util.EcoreUtil;
30
import org.eclipse.emf.ecore.util.EcoreUtil;
36
31
37
import java.lang.reflect.Method;
38
import java.util.Collection;
32
import java.util.Collection;
39
import java.util.Iterator;
33
import java.util.Iterator;
40
34
Lines 43-94 Link Here
43
 */
37
 */
44
public final class FSMUtil
38
public final class FSMUtil
45
{
39
{
46
  private static Method adaptLegacyMethod = initAdaptLegacyMethod();
47
48
  private FSMUtil()
40
  private FSMUtil()
49
  {
41
  {
50
  }
42
  }
51
43
52
  private static Method initAdaptLegacyMethod()
53
  {
54
    // TODO Fix when legacy mode is supported again...
55
    // try
56
    // {
57
    // Class<?> c = Class.forName("org.eclipse.emf.internal.cdo.CDOCallbackImpl");
58
    // if (c != null)
59
    // {
60
    // final Class<?>[] params = { Object.class, CDOView.class };
61
    // Method method = c.getDeclaredMethod("adapt", params);
62
    // if (method != null)
63
    // {
64
    // return method;
65
    // }
66
    // }
67
    // }
68
    // catch (Throwable ignore)
69
    // {
70
    // // Only for testing:
71
    // // ignore.printStackTrace();
72
    // }
73
    //
74
    // OM.LOG.info(LegacySystemNotAvailableException.LEGACY_SYSTEM_NOT_AVAILABLE);
75
    return null;
76
  }
77
78
  public static boolean isLegacySystemAvailable()
79
  {
80
    return adaptLegacyMethod != null;
81
  }
82
83
  public static void checkLegacySystemAvailability(CDOSession session, CDOObject object)
84
      throws LegacySystemNotAvailableException
85
  {
86
    if (!session.isLegacySupportEnabled() && object instanceof CDOLegacyImpl)
87
    {
88
      throw new LegacySystemNotAvailableException();
89
    }
90
  }
91
92
  public static boolean isTransient(CDOObject object)
44
  public static boolean isTransient(CDOObject object)
93
  {
45
  {
94
    CDOState state = object.cdoState();
46
    CDOState state = object.cdoState();
Lines 101-106 Link Here
101
    return state == CDOState.NEW;
53
    return state == CDOState.NEW;
102
  }
54
  }
103
55
56
  public static boolean isMeta(Object object)
57
  {
58
    return object instanceof EModelElement || object instanceof EGenericType
59
        || object instanceof org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl;
60
  }
61
104
  /**
62
  /**
105
   * @param view
63
   * @param view
106
   *          Only needed if object is a meta instance.
64
   *          Only needed if object is a meta instance.
Lines 117-166 Link Here
117
      throw new IllegalArgumentException("object == null");
75
      throw new IllegalArgumentException("object == null");
118
    }
76
    }
119
77
120
    if (object instanceof EModelElement || object instanceof EGenericType
78
    if (isMeta(object))
121
        || object instanceof org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl)
122
    {
79
    {
123
      InternalEObject eObject = (InternalEObject)object;
80
      return adaptMeta((InternalEObject)object, view);
124
      if (view == null)
81
    }
125
      {
126
        throw new IllegalArgumentException("view == null");
127
      }
128
82
129
      if (eObject.eIsProxy())
83
    if (object instanceof InternalEObject)
130
      {
84
    {
131
        eObject = (InternalEObject)EcoreUtil.resolve(eObject, view.getResourceSet());
85
      return adaptLegacy((InternalEObject)object, view);
132
      }
86
    }
133
87
134
      CDOID id = ((CDOViewImpl)view).getSession().lookupMetaInstanceID(eObject);
88
    return null;
135
      if (id != null)
89
  }
136
      {
90
137
        return new CDOMetaImpl((CDOViewImpl)view, eObject, id);
91
  private static InternalCDOObject adaptMeta(InternalEObject object, CDOView view)
138
      }
92
  {
93
    if (view == null)
94
    {
95
      throw new IllegalArgumentException("view == null");
139
    }
96
    }
140
97
141
    if (isLegacySystemAvailable())
98
    if (object.eIsProxy())
142
    {
99
    {
143
      try
100
      object = (InternalEObject)EcoreUtil.resolve(object, view.getResourceSet());
144
      {
145
        return (InternalCDOObject)adaptLegacyMethod.invoke(null, object, view);
146
      }
147
      catch (Throwable t)
148
      {
149
        OM.LOG.info(t);
150
      }
151
    }
101
    }
152
102
153
    if (object instanceof InternalEObject)
103
    CDOID id = ((CDOViewImpl)view).getSession().lookupMetaInstanceID(object);
104
    if (id != null)
154
    {
105
    {
155
      EList<Adapter> adapters = ((InternalEObject)object).eAdapters();
106
      return new CDOMetaWrapper((CDOViewImpl)view, object, id);
156
      CDOAdapterImpl adapter = (CDOAdapterImpl)EcoreUtil.getAdapter(adapters, CDOAdapterImpl.class);
107
    }
157
      if (adapter == null)
108
109
    return null;
110
  }
111
112
  private static InternalCDOObject adaptLegacy(InternalEObject object, CDOView view)
113
  {
114
    EList<InternalEObject.EReadListener> readListeners = object.eReadListeners();
115
    CDOLegacyWrapper listener = getLegacyListener(readListeners);
116
    if (listener == null)
117
    {
118
      listener = new CDOLegacyWrapper(object, (CDOViewImpl)view);
119
      readListeners.add(0, listener);
120
      object.eWriteListeners().add(0, listener);
121
      return listener;
122
    }
123
124
    if (listener.cdoView() != view)
125
    {
126
      throw new IllegalStateException("Already attached to a different view: " + view);
127
    }
128
129
    return null;
130
  }
131
132
  public static CDOLegacyWrapper getLegacyListener(EList<?> listeners)
133
  {
134
    for (Object listener : listeners)
135
    {
136
      if (listener.getClass() == CDOLegacyWrapper.class)
158
      {
137
      {
159
        adapter = new CDOAdapterImpl();
138
        return (CDOLegacyWrapper)listener;
160
        adapters.add(adapter);
161
      }
139
      }
162
163
      return adapter;
164
    }
140
    }
165
141
166
    return null;
142
    return null;
(-)src/org/eclipse/emf/cdo/util/CDOPackageType.java (-9 / +1 lines)
Lines 10-16 Link Here
10
 **************************************************************************/
10
 **************************************************************************/
11
package org.eclipse.emf.cdo.util;
11
package org.eclipse.emf.cdo.util;
12
12
13
import org.eclipse.emf.internal.cdo.CDOAdapterImpl;
14
import org.eclipse.emf.internal.cdo.CDOObjectImpl;
13
import org.eclipse.emf.internal.cdo.CDOObjectImpl;
15
import org.eclipse.emf.internal.cdo.CDOStateMachine;
14
import org.eclipse.emf.internal.cdo.CDOStateMachine;
16
15
Lines 29-40 Link Here
29
   * The type of <code>EPackages</code> that have been normally generated for EMF. Instances of <code>EClasses</code> of
28
   * The type of <code>EPackages</code> that have been normally generated for EMF. Instances of <code>EClasses</code> of
30
   * these packages are represented by {@link CDOAdapterImpl} to the {@link CDOStateMachine}.
29
   * these packages are represented by {@link CDOAdapterImpl} to the {@link CDOStateMachine}.
31
   */
30
   */
32
  LEGACY,
31
  LEGACY
33
34
  /**
35
   * The type of <code>EPackages</code> that have been normally generated for EMF and later converted to CDO. Instances
36
   * of <code>EClasses</code> of these packages are represented by {@link org.eclipse.emf.internal.cdo.CDOCallbackImpl}
37
   * to the {@link CDOStateMachine}.
38
   */
39
  CONVERTED
40
}
32
}
(-)src/org/eclipse/emf/cdo/util/LegacySystemNotAvailableException.java (-26 lines)
Removed Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.cdo.util;
12
13
/**
14
 * @author Eike Stepper
15
 */
16
public class LegacySystemNotAvailableException extends RuntimeException
17
{
18
  public static final String LEGACY_SYSTEM_NOT_AVAILABLE = "Legacy system not available";
19
20
  private static final long serialVersionUID = 1L;
21
22
  public LegacySystemNotAvailableException()
23
  {
24
    super(LEGACY_SYSTEM_NOT_AVAILABLE);
25
  }
26
}
(-)src/org/eclipse/emf/cdo/util/CDOPackageTypeRegistry.java (-2 lines)
Lines 31-36 Link Here
31
  public void registerLegacy(String uri);
31
  public void registerLegacy(String uri);
32
32
33
  public void registerNative(String uri);
33
  public void registerNative(String uri);
34
35
  public void registerConverted(String uri);
36
}
34
}
(-)src/org/eclipse/emf/cdo/eresource/impl/CDOResourceImpl.java (-1 / +1 lines)
Lines 19-25 Link Here
19
import org.eclipse.emf.cdo.eresource.CDOResource;
19
import org.eclipse.emf.cdo.eresource.CDOResource;
20
import org.eclipse.emf.cdo.eresource.EresourcePackage;
20
import org.eclipse.emf.cdo.eresource.EresourcePackage;
21
import org.eclipse.emf.cdo.util.CDOURIUtil;
21
import org.eclipse.emf.cdo.util.CDOURIUtil;
22
import org.eclipse.emf.cdo.util.LegacySystemNotAvailableException;
23
22
24
import org.eclipse.emf.internal.cdo.CDOObjectImpl;
23
import org.eclipse.emf.internal.cdo.CDOObjectImpl;
25
import org.eclipse.emf.internal.cdo.CDOStateMachine;
24
import org.eclipse.emf.internal.cdo.CDOStateMachine;
Lines 566-571 Link Here
566
      {
565
      {
567
        throw new LegacySystemNotAvailableException();
566
        throw new LegacySystemNotAvailableException();
568
      }
567
      }
568
569
      return notifications;
569
      return notifications;
570
    }
570
    }
571
571
(-)mixin/org/eclipse/emf/ecore/impl/CDOAware.java (-21 lines)
Removed Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.ecore.impl;
12
13
/**
14
 * @author Eike Stepper
15
 */
16
public interface CDOAware
17
{
18
  public CDOCallback getCDOCallback();
19
20
  public void setCDOCallback(CDOCallback callback);
21
}
(-)mixin/org/eclipse/emf/ecore/impl/CDOCallback.java (-25 lines)
Removed Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.ecore.impl;
12
13
// import org.eclipse.emf.ecore.resource.Resource;
14
15
/**
16
 * @author Eike Stepper
17
 */
18
public interface CDOCallback
19
{
20
  public void beforeRead(EObjectImpl eObject);
21
22
  public void beforeWrite(EObjectImpl eObject);
23
24
  // public Resource callbackResource(BasicEObjectImpl eObject);
25
}
(-)src/org/eclipse/emf/internal/cdo/CDOLegacyWrapper.java (+529 lines)
Added Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.internal.cdo;
12
13
import org.eclipse.emf.cdo.CDOState;
14
import org.eclipse.emf.cdo.common.CDOProtocolConstants;
15
import org.eclipse.emf.cdo.common.id.CDOID;
16
import org.eclipse.emf.cdo.common.model.CDOClass;
17
import org.eclipse.emf.cdo.common.model.CDOFeature;
18
import org.eclipse.emf.cdo.common.model.CDOType;
19
import org.eclipse.emf.cdo.common.revision.CDORevision;
20
import org.eclipse.emf.cdo.eresource.CDOResource;
21
import org.eclipse.emf.cdo.eresource.impl.CDOResourceImpl;
22
import org.eclipse.emf.cdo.spi.common.InternalCDORevision;
23
24
import org.eclipse.emf.internal.cdo.bundle.OM;
25
import org.eclipse.emf.internal.cdo.util.GenUtil;
26
import org.eclipse.emf.internal.cdo.util.ModelUtil;
27
28
import org.eclipse.net4j.util.ImplementationError;
29
import org.eclipse.net4j.util.ReflectUtil;
30
import org.eclipse.net4j.util.WrappedException;
31
import org.eclipse.net4j.util.om.trace.ContextTracer;
32
33
import org.eclipse.emf.common.util.URI;
34
import org.eclipse.emf.ecore.EObject;
35
import org.eclipse.emf.ecore.EStructuralFeature;
36
import org.eclipse.emf.ecore.InternalEObject;
37
import org.eclipse.emf.ecore.impl.BasicEObjectImpl;
38
import org.eclipse.emf.ecore.impl.EAttributeImpl;
39
import org.eclipse.emf.ecore.impl.EClassImpl;
40
import org.eclipse.emf.ecore.impl.EDataTypeImpl;
41
import org.eclipse.emf.ecore.impl.EReferenceImpl;
42
import org.eclipse.emf.ecore.impl.EStructuralFeatureImpl;
43
import org.eclipse.emf.ecore.impl.ETypedElementImpl;
44
import org.eclipse.emf.ecore.resource.Resource;
45
import org.eclipse.emf.ecore.util.InternalEList;
46
47
import java.lang.reflect.Field;
48
import java.lang.reflect.InvocationTargetException;
49
import java.lang.reflect.Method;
50
import java.util.Iterator;
51
import java.util.List;
52
53
/**
54
 * @author Eike Stepper
55
 * @since 2.0
56
 */
57
public final class CDOLegacyWrapper extends CDOObjectWrapper implements InternalEObject.EReadListener,
58
    InternalEObject.EWriteListener
59
{
60
  private static final ContextTracer TRACER = new ContextTracer(OM.DEBUG_OBJECT, CDOLegacyWrapper.class);
61
62
  private CDOState state;
63
64
  private CDOResourceImpl resource;
65
66
  private InternalCDORevision revision;
67
68
  public CDOLegacyWrapper(InternalEObject instance, CDOViewImpl view)
69
  {
70
    this.instance = instance;
71
    this.view = view;
72
  }
73
74
  public CDOClass cdoClass()
75
  {
76
    return CDOObjectImpl.getCDOClass(this);
77
  }
78
79
  public CDOState cdoState()
80
  {
81
    return state;
82
  }
83
84
  public InternalCDORevision cdoRevision()
85
  {
86
    return revision;
87
  }
88
89
  public CDOResourceImpl cdoResource()
90
  {
91
    return resource;
92
  }
93
94
  public void cdoReload()
95
  {
96
    CDOStateMachine.INSTANCE.reload(this);
97
  }
98
99
  public CDOState cdoInternalSetState(CDOState state)
100
  {
101
    if (this.state != state)
102
    {
103
      if (TRACER.isEnabled())
104
      {
105
        TRACER.format("Setting state {0} for {1}", state, this);
106
      }
107
108
      CDOState tmp = this.state;
109
      this.state = state;
110
      adjustEProxy();
111
      return tmp;
112
    }
113
114
    // TODO Detect duplicate cdoInternalSetState() calls
115
    return null;
116
  }
117
118
  public void cdoInternalSetRevision(CDORevision revision)
119
  {
120
    if (TRACER.isEnabled())
121
    {
122
      TRACER.format("Setting revision: {0}", revision);
123
    }
124
125
    this.revision = (InternalCDORevision)revision;
126
  }
127
128
  public void cdoInternalSetResource(CDOResource resource)
129
  {
130
    if (TRACER.isEnabled())
131
    {
132
      TRACER.format("Setting resource: {0}", resource);
133
    }
134
135
    this.resource = (CDOResourceImpl)resource;
136
    // if (resource != null)
137
    // {
138
    // transferResourceToInstance(resource);
139
    // }
140
  }
141
142
  public void cdoInternalPostAttach()
143
  {
144
    // Do nothing
145
  }
146
147
  public void cdoInternalPostDetach()
148
  {
149
    // Do nothing
150
  }
151
152
  public void cdoInternalPreCommit()
153
  {
154
    transferInstanceToRevision();
155
156
    CDORevisionManagerImpl revisionManager = view.getSession().getRevisionManager();
157
    InternalCDORevision revision = cdoRevision();
158
    InternalCDORevision originRevision = revisionManager.getRevisionByVersion(revision.getID(), CDORevision.UNCHUNKED,
159
        revision.getVersion() - 1, false);
160
161
    CDOTransactionImpl transaction = cdoView().toTransaction();
162
    transaction.registerRevisionDelta(cdoRevision().compare(originRevision));
163
  }
164
165
  public void cdoInternalPostLoad()
166
  {
167
    transferRevisionToInstance();
168
  }
169
170
  public void handleRead(InternalEObject object, int featureID)
171
  {
172
  }
173
174
  public void handleWrite(InternalEObject object, int featureID)
175
  {
176
  }
177
178
  private void transferInstanceToRevision()
179
  {
180
    if (TRACER.isEnabled())
181
    {
182
      TRACER.format("Transfering instance to revision: {0} --> {1}", instance, revision);
183
    }
184
185
    CDOViewImpl view = cdoView();
186
    if (view == null)
187
    {
188
      throw new ImplementationError("view == null");
189
    }
190
191
    // Handle containment
192
    EObject container = instance.eContainer();
193
    if (container != null)
194
    {
195
      if (container instanceof CDOResource)
196
      {
197
        revision.setResourceID(((CDOResource)container).cdoID());
198
        revision.setContainerID(CDOID.NULL);
199
        revision.setContainingFeatureID(0);
200
      }
201
      else
202
      {
203
        revision.setResourceID(CDOID.NULL);
204
        // TODO is as CDOIDProvider call ok here?
205
        CDOID containerID = view.provideCDOID(container);
206
        if (containerID.isNull())
207
        {
208
          throw new ImplementationError("containerID.isNull()");
209
        }
210
211
        int containerFeatureID = instance.eContainerFeatureID();// containER???
212
        revision.setContainerID(containerID);
213
        revision.setContainingFeatureID(containerFeatureID);
214
      }
215
    }
216
217
    // Handle values
218
    CDOClass cdoClass = revision.getCDOClass();
219
    CDOFeature[] features = cdoClass.getAllFeatures();
220
    for (int i = 0; i < features.length; i++)
221
    {
222
      CDOFeature feature = features[i];
223
      Object instanceValue = getInstanceValue(instance, feature);
224
      if (feature.isMany())
225
      {
226
        List<Object> revisionList = revision.getList(feature); // TODO lazy?
227
        revisionList.clear();
228
229
        if (instanceValue != null)
230
        {
231
          if (instanceValue instanceof InternalEList)
232
          {
233
            InternalEList<?> instanceList = (InternalEList<?>)instanceValue;
234
            if (instanceList != null)
235
            {
236
              for (Iterator<?> it = instanceList.basicIterator(); it.hasNext();)
237
              {
238
                Object instanceElement = it.next();
239
                if (instanceElement != null && feature.isReference())
240
                {
241
                  instanceElement = view.convertObjectToID(instanceElement);
242
                }
243
244
                revisionList.add(instanceElement);
245
              }
246
            }
247
          }
248
          else
249
          {
250
            throw new ImplementationError("Not an InternalEList: " + instanceValue.getClass().getName());
251
          }
252
        }
253
      }
254
      else
255
      {
256
        if (instanceValue != null && feature.isReference())
257
        {
258
          instanceValue = view.convertObjectToID(instanceValue);
259
        }
260
261
        revision.setValue(feature, instanceValue);
262
      }
263
    }
264
  }
265
266
  private void transferRevisionToInstance()
267
  {
268
    if (TRACER.isEnabled())
269
    {
270
      TRACER.format("Transfering revision to instance: {0} --> {1}", revision, instance);
271
    }
272
273
    CDOViewImpl view = cdoView();
274
    if (view == null)
275
    {
276
      throw new ImplementationError("view == null");
277
    }
278
279
    boolean deliver = instance.eDeliver();
280
    if (deliver)
281
    {
282
      instance.eSetDeliver(false);
283
    }
284
285
    try
286
    {
287
      // Handle containment
288
      transferContainmentToInstance(view);
289
290
      // Handle values
291
      CDOClass cdoClass = revision.getCDOClass();
292
      CDOFeature[] features = cdoClass.getAllFeatures();
293
      for (CDOFeature feature : features)
294
      {
295
        transferFeatureToInstance(view, feature);
296
      }
297
    }
298
    finally
299
    {
300
      if (deliver)
301
      {
302
        instance.eSetDeliver(true);
303
      }
304
    }
305
  }
306
307
  private void transferContainmentToInstance(CDOViewImpl view)
308
  {
309
    // Not supported anymore
310
    // Object containerID = revision.getContainerID();
311
    // if (containerID.isNull())
312
    // {
313
    // CDOID resourceID = revision.getResourceID();
314
    // Resource.Internal resource = (Resource.Internal)view.getObject(resourceID);
315
    // transferResourceToInstance(resource);
316
    // }
317
    // else
318
    // {
319
    // int containingFeatureID = revision.getContainingFeatureID();
320
    // InternalEObject container = convertPotentialID(view, containerID);
321
    // ((BasicEObjectImpl)instance).eBasicSetContainer(container, containingFeatureID, null);
322
    // }
323
  }
324
325
  private void transferResourceToInstance(Resource.Internal resource)
326
  {
327
    Method method = ReflectUtil.getMethod(BasicEObjectImpl.class, "eSetDirectResource", Resource.Internal.class);
328
329
    try
330
    {
331
      ReflectUtil.invokeMethod(method, instance, resource);
332
    }
333
    catch (InvocationTargetException ex)
334
    {
335
      throw WrappedException.wrap(ex);
336
    }
337
  }
338
339
  @SuppressWarnings("unchecked")
340
  private void transferFeatureToInstance(CDOViewImpl view, CDOFeature feature)
341
  {
342
    Object value = revision.getValue(feature);
343
    if (feature.isMany())
344
    {
345
      InternalEList<Object> instanceList = (InternalEList<Object>)getInstanceValue(instance, feature);
346
      if (instanceList != null)
347
      {
348
        clearEList(instanceList);
349
        if (value != null)
350
        {
351
          List<?> revisionList = (List<?>)value;
352
          for (Object element : revisionList)
353
          {
354
            if (feature.isReference())
355
            {
356
              element = convertPotentialID(view, element);
357
            }
358
359
            instanceList.basicAdd(element, null);
360
          }
361
        }
362
      }
363
    }
364
    else
365
    {
366
      if (feature.isReference())
367
      {
368
        value = convertPotentialID(view, value);
369
      }
370
371
      setInstanceValue(instance, feature, value);
372
    }
373
  }
374
375
  private InternalEObject convertPotentialID(CDOViewImpl view, Object potentialID)
376
  {
377
    if (potentialID instanceof CDOID)
378
    {
379
      CDOID id = (CDOID)potentialID;
380
      if (id.isNull())
381
      {
382
        return null;
383
      }
384
385
      potentialID = view.getObject(id, false);
386
    }
387
388
    if (potentialID instanceof InternalCDOObject)
389
    {
390
      potentialID = ((InternalCDOObject)potentialID).cdoInternalInstance();
391
    }
392
393
    if (potentialID instanceof InternalEObject)
394
    {
395
      return (InternalEObject)potentialID;
396
    }
397
398
    throw new ImplementationError();
399
  }
400
401
  private Object getInstanceValue(InternalEObject instance, CDOFeature feature)
402
  {
403
    EStructuralFeature eFeature = ModelUtil.getEFeature(feature, cdoView().getSession().getPackageRegistry());
404
    return instance.eGet(eFeature);
405
  }
406
407
  private void setInstanceValue(InternalEObject instance, CDOFeature feature, Object value)
408
  {
409
    // TODO Don't use Java reflection
410
    Class<?> instanceClass = instance.getClass();
411
    String featureName = feature.getName();
412
    String fieldName = featureName;// TODO safeName()
413
    Field field = ReflectUtil.getField(instanceClass, fieldName);
414
    if (field == null && feature.getType() == CDOType.BOOLEAN)
415
    {
416
      if (instanceClass.isAssignableFrom(EAttributeImpl.class) || instanceClass.isAssignableFrom(EClassImpl.class)
417
          || instanceClass.isAssignableFrom(EDataTypeImpl.class)
418
          || instanceClass.isAssignableFrom(EReferenceImpl.class)
419
          || instanceClass.isAssignableFrom(EStructuralFeatureImpl.class)
420
          || instanceClass.isAssignableFrom(ETypedElementImpl.class))
421
      {
422
        // *******************************************
423
        // ID_EFLAG = 1 << 15;
424
        // *******************************************
425
        // ABSTRACT_EFLAG = 1 << 8;
426
        // INTERFACE_EFLAG = 1 << 9;
427
        // *******************************************
428
        // SERIALIZABLE_EFLAG = 1 << 8;
429
        // *******************************************
430
        // CONTAINMENT_EFLAG = 1 << 15;
431
        // RESOLVE_PROXIES_EFLAG = 1 << 16;
432
        // *******************************************
433
        // CHANGEABLE_EFLAG = 1 << 10;
434
        // VOLATILE_EFLAG = 1 << 11;
435
        // TRANSIENT_EFLAG = 1 << 12;
436
        // UNSETTABLE_EFLAG = 1 << 13;
437
        // DERIVED_EFLAG = 1 << 14;
438
        // *******************************************
439
        // ORDERED_EFLAG = 1 << 8;
440
        // UNIQUE_EFLAG = 1 << 9;
441
        // *******************************************
442
443
        String flagName = GenUtil.getFeatureUpperName(featureName) + "_EFLAG";
444
        int flagsMask = getEFlagMask(instanceClass, flagName);
445
446
        field = ReflectUtil.getField(instanceClass, "eFlags");
447
        int flags = (Integer)ReflectUtil.getValue(field, instance);
448
        boolean on = (Boolean)value;
449
        if (on)
450
        {
451
          flags |= flagsMask; // Add EFlag
452
        }
453
        else
454
        {
455
          flags &= ~flagsMask; // Remove EFlag
456
        }
457
458
        ReflectUtil.setValue(field, instance, flags);
459
        return;
460
      }
461
    }
462
463
    if (field == null)
464
    {
465
      throw new ImplementationError("Field not found: " + fieldName);
466
    }
467
468
    ReflectUtil.setValue(field, instance, value);
469
  }
470
471
  private void adjustEProxy()
472
  {
473
    // Setting eProxyURI is necessary to prevent content adapters from
474
    // loading the whole content tree.
475
    // TODO Does not have the desired effect ;-( see CDOEditor.createModel()
476
    if (state == CDOState.PROXY)
477
    {
478
      if (!instance.eIsProxy())
479
      {
480
        URI uri = URI.createURI(CDOProtocolConstants.PROTOCOL_NAME + ":proxy#" + id);
481
        if (TRACER.isEnabled())
482
        {
483
          TRACER.format("Setting proxyURI {0} for {1}", uri, instance);
484
        }
485
486
        instance.eSetProxyURI(uri);
487
      }
488
    }
489
    else
490
    {
491
      if (instance.eIsProxy())
492
      {
493
        if (TRACER.isEnabled())
494
        {
495
          TRACER.format("Unsetting proxyURI for {0}", instance);
496
        }
497
498
        instance.eSetProxyURI(null);
499
      }
500
    }
501
  }
502
503
  private void clearEList(InternalEList<Object> list)
504
  {
505
    while (!list.isEmpty())
506
    {
507
      Object toBeRemoved = list.basicGet(0);
508
      list.basicRemove(toBeRemoved, null);
509
    }
510
  }
511
512
  private static int getEFlagMask(Class<?> instanceClass, String flagName)
513
  {
514
    Field field = ReflectUtil.getField(instanceClass, flagName);
515
    if (!field.isAccessible())
516
    {
517
      field.setAccessible(true);
518
    }
519
520
    try
521
    {
522
      return (Integer)field.get(null);
523
    }
524
    catch (IllegalAccessException ex)
525
    {
526
      throw new ImplementationError(ex);
527
    }
528
  }
529
}
(-)src/org/eclipse/emf/internal/cdo/CDOMetaWrapper.java (+109 lines)
Added Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.internal.cdo;
12
13
import org.eclipse.emf.cdo.CDOState;
14
import org.eclipse.emf.cdo.common.id.CDOID;
15
import org.eclipse.emf.cdo.common.model.CDOClass;
16
import org.eclipse.emf.cdo.common.revision.CDORevision;
17
import org.eclipse.emf.cdo.eresource.CDOResource;
18
19
import org.eclipse.emf.ecore.InternalEObject;
20
21
/**
22
 * @author Eike Stepper
23
 * @since 2.0
24
 */
25
public class CDOMetaWrapper extends CDOObjectWrapper
26
{
27
  public CDOMetaWrapper(CDOViewImpl view, InternalEObject instance, CDOID id)
28
  {
29
    this.view = view;
30
    this.instance = instance;
31
    this.id = id;
32
  }
33
34
  public CDOState cdoState()
35
  {
36
    return CDOState.CLEAN;
37
  }
38
39
  public CDORevision cdoRevision()
40
  {
41
    throw new UnsupportedOperationException();
42
  }
43
44
  public CDOResource cdoResource()
45
  {
46
    throw new UnsupportedOperationException();
47
  }
48
49
  public CDOClass cdoClass()
50
  {
51
    throw new UnsupportedOperationException();
52
  }
53
54
  public void cdoReload()
55
  {
56
    throw new UnsupportedOperationException();
57
  }
58
59
  public boolean cdoTransient()
60
  {
61
    return false;
62
  }
63
64
  public CDOState cdoInternalSetState(CDOState state)
65
  {
66
    throw new UnsupportedOperationException();
67
  }
68
69
  public void cdoInternalSetRevision(CDORevision revision)
70
  {
71
    throw new UnsupportedOperationException();
72
  }
73
74
  public void cdoInternalSetResource(CDOResource resource)
75
  {
76
    throw new UnsupportedOperationException();
77
  }
78
79
  public void cdoInternalPostLoad()
80
  {
81
    throw new UnsupportedOperationException();
82
  }
83
84
  public void cdoInternalPostAttach()
85
  {
86
    throw new UnsupportedOperationException();
87
  }
88
89
  public void cdoInternalPostDetach()
90
  {
91
    throw new UnsupportedOperationException();
92
  }
93
94
  public void cdoInternalPreCommit()
95
  {
96
    throw new UnsupportedOperationException();
97
  }
98
99
  @Override
100
  public String toString()
101
  {
102
    if (cdoID() == null)
103
    {
104
      return instance.eClass().getName() + "?";
105
    }
106
107
    return instance.eClass().getName() + "@" + cdoID();
108
  }
109
}
(-)src/org/eclipse/emf/internal/cdo/CDOObjectWrapper.java (+354 lines)
Added Link Here
1
/***************************************************************************
2
 * Copyright (c) 2004 - 2008 Eike Stepper, Germany.
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
6
 * http://www.eclipse.org/legal/epl-v10.html
7
 * 
8
 * Contributors:
9
 *    Eike Stepper - initial API and implementation
10
 **************************************************************************/
11
package org.eclipse.emf.internal.cdo;
12
13
import org.eclipse.emf.cdo.CDOView;
14
import org.eclipse.emf.cdo.common.id.CDOID;
15
16
import org.eclipse.emf.internal.cdo.bundle.OM;
17
18
import org.eclipse.net4j.util.om.trace.ContextTracer;
19
20
import org.eclipse.emf.common.notify.Adapter;
21
import org.eclipse.emf.common.notify.Notification;
22
import org.eclipse.emf.common.notify.NotificationChain;
23
import org.eclipse.emf.common.util.EList;
24
import org.eclipse.emf.common.util.TreeIterator;
25
import org.eclipse.emf.common.util.URI;
26
import org.eclipse.emf.ecore.EClass;
27
import org.eclipse.emf.ecore.EObject;
28
import org.eclipse.emf.ecore.EReference;
29
import org.eclipse.emf.ecore.EStructuralFeature;
30
import org.eclipse.emf.ecore.InternalEObject;
31
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
32
import org.eclipse.emf.ecore.resource.Resource;
33
34
/**
35
 * @author Eike Stepper
36
 * @since 2.0
37
 */
38
public abstract class CDOObjectWrapper implements InternalCDOObject
39
{
40
  private static final ContextTracer TRACER = new ContextTracer(OM.DEBUG_OBJECT, CDOObjectWrapper.class);
41
42
  protected CDOID id;
43
44
  protected CDOViewImpl view;
45
46
  protected InternalEObject instance;
47
48
  public CDOObjectWrapper()
49
  {
50
    super();
51
  }
52
53
  public CDOID cdoID()
54
  {
55
    return id;
56
  }
57
58
  public CDOViewImpl cdoView()
59
  {
60
    return view;
61
  }
62
63
  public void cdoInternalSetID(CDOID id)
64
  {
65
    if (id == null)
66
    {
67
      throw new IllegalArgumentException("id == null");
68
    }
69
70
    if (TRACER.isEnabled())
71
    {
72
      TRACER.format("Setting ID: {0} for {1}", id, instance);
73
    }
74
75
    this.id = id;
76
  }
77
78
  public void cdoInternalSetView(CDOView view)
79
  {
80
    if (TRACER.isEnabled())
81
    {
82
      TRACER.format("Setting view: {0} for {1}", view, instance);
83
    }
84
85
    this.view = (CDOViewImpl)view;
86
  }
87
88
  public InternalEObject cdoInternalInstance()
89
  {
90
    return instance;
91
  }
92
93
  public EStructuralFeature cdoInternalDynamicFeature(int dynamicFeatureID)
94
  {
95
    // TODO Implement method CDOWrapperImpl.cdoInternalDynamicFeature()
96
    throw new UnsupportedOperationException("Not yet implemented");
97
  }
98
99
  /**
100
   * @since 2.0
101
   */
102
  public void eFireRead(int featureID)
103
  {
104
    // Do nothing
105
  }
106
107
  /**
108
   * @since 2.0
109
   */
110
  public void eFireWrite(int featureID)
111
  {
112
    // Do nothing
113
  }
114
115
  /**
116
   * @since 2.0
117
   */
118
  public EList<EReadListener> eReadListeners()
119
  {
120
    return instance.eReadListeners();
121
  }
122
123
  /**
124
   * @since 2.0
125
   */
126
  public EList<EWriteListener> eWriteListeners()
127
  {
128
    return instance.eWriteListeners();
129
  }
130
131
  public EList<Adapter> eAdapters()
132
  {
133
    return instance.eAdapters();
134
  }
135
136
  public TreeIterator<EObject> eAllContents()
137
  {
138
    return instance.eAllContents();
139
  }
140
141
  public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass)
142
  {
143
    return instance.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
144
  }
145
146
  public NotificationChain eBasicRemoveFromContainer(NotificationChain notifications)
147
  {
148
    return instance.eBasicRemoveFromContainer(notifications);
149
  }
150
151
  public NotificationChain eBasicSetContainer(InternalEObject newContainer, int newContainerFeatureID,
152
      NotificationChain notifications)
153
  {
154
    return instance.eBasicSetContainer(newContainer, newContainerFeatureID, notifications);
155
  }
156
157
  public EClass eClass()
158
  {
159
    return instance.eClass();
160
  }
161
162
  public EObject eContainer()
163
  {
164
    return instance.eContainer();
165
  }
166
167
  public int eContainerFeatureID()
168
  {
169
    return instance.eContainerFeatureID();
170
  }
171
172
  public EStructuralFeature eContainingFeature()
173
  {
174
    return instance.eContainingFeature();
175
  }
176
177
  public EReference eContainmentFeature()
178
  {
179
    return instance.eContainmentFeature();
180
  }
181
182
  public EList<EObject> eContents()
183
  {
184
    return instance.eContents();
185
  }
186
187
  public EList<EObject> eCrossReferences()
188
  {
189
    return instance.eCrossReferences();
190
  }
191
192
  public boolean eDeliver()
193
  {
194
    return instance.eDeliver();
195
  }
196
197
  public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass)
198
  {
199
    return instance.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
200
  }
201
202
  public Resource.Internal eDirectResource()
203
  {
204
    return instance.eDirectResource();
205
  }
206
207
  public Object eGet(EStructuralFeature feature, boolean resolve, boolean coreType)
208
  {
209
    return instance.eGet(feature, resolve, coreType);
210
  }
211
212
  public Object eGet(EStructuralFeature feature, boolean resolve)
213
  {
214
    return instance.eGet(feature, resolve);
215
  }
216
217
  public Object eGet(EStructuralFeature feature)
218
  {
219
    return instance.eGet(feature);
220
  }
221
222
  public Object eGet(int featureID, boolean resolve, boolean coreType)
223
  {
224
    return instance.eGet(featureID, resolve, coreType);
225
  }
226
227
  public InternalEObject eInternalContainer()
228
  {
229
    return instance.eInternalContainer();
230
  }
231
232
  public Resource.Internal eInternalResource()
233
  {
234
    return instance.eInternalResource();
235
  }
236
237
  public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class<?> baseClass,
238
      NotificationChain notifications)
239
  {
240
    return instance.eInverseAdd(otherEnd, featureID, baseClass, notifications);
241
  }
242
243
  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class<?> baseClass,
244
      NotificationChain notifications)
245
  {
246
    return instance.eInverseRemove(otherEnd, featureID, baseClass, notifications);
247
  }
248
249
  public boolean eIsProxy()
250
  {
251
    return instance.eIsProxy();
252
  }
253
254
  public boolean eIsSet(EStructuralFeature feature)
255
  {
256
    return instance.eIsSet(feature);
257
  }
258
259
  public boolean eIsSet(int featureID)
260
  {
261
    return instance.eIsSet(featureID);
262
  }
263
264
  public boolean eNotificationRequired()
265
  {
266
    return instance.eNotificationRequired();
267
  }
268
269
  public void eNotify(Notification notification)
270
  {
271
    instance.eNotify(notification);
272
  }
273
274
  public EObject eObjectForURIFragmentSegment(String uriFragmentSegment)
275
  {
276
    return instance.eObjectForURIFragmentSegment(uriFragmentSegment);
277
  }
278
279
  public URI eProxyURI()
280
  {
281
    return instance.eProxyURI();
282
  }
283
284
  public EObject eResolveProxy(InternalEObject proxy)
285
  {
286
    return instance.eResolveProxy(proxy);
287
  }
288
289
  public Resource eResource()
290
  {
291
    return instance.eResource();
292
  }
293
294
  public void eSet(EStructuralFeature feature, Object newValue)
295
  {
296
    instance.eSet(feature, newValue);
297
  }
298
299
  public void eSet(int featureID, Object newValue)
300
  {
301
    instance.eSet(featureID, newValue);
302
  }
303
304
  public void eSetClass(EClass class1)
305
  {
306
    instance.eSetClass(class1);
307
  }
308
309
  public void eSetDeliver(boolean deliver)
310
  {
311
    instance.eSetDeliver(deliver);
312
  }
313
314
  public void eSetProxyURI(URI uri)
315
  {
316
    instance.eSetProxyURI(uri);
317
  }
318
319
  public NotificationChain eSetResource(Resource.Internal resource, NotificationChain notifications)
320
  {
321
    return instance.eSetResource(resource, notifications);
322
  }
323
324
  public void eSetStore(EStore store)
325
  {
326
    instance.eSetStore(store);
327
  }
328
329
  public Setting eSetting(EStructuralFeature feature)
330
  {
331
    return instance.eSetting(feature);
332
  }
333
334
  public EStore eStore()
335
  {
336
    return instance.eStore();
337
  }
338
339
  public void eUnset(EStructuralFeature feature)
340
  {
341
    instance.eUnset(feature);
342
  }
343
344
  public void eUnset(int featureID)
345
  {
346
    instance.eUnset(featureID);
347
  }
348
349
  public String eURIFragmentSegment(EStructuralFeature feature, EObject object)
350
  {
351
    return instance.eURIFragmentSegment(feature, object);
352
  }
353
354
}
(-)src/org/eclipse/emf/cdo/internal/ui/actions/RegisterSinglePackageAction.java (-3 lines)
Lines 54-62 Link Here
54
  {
54
  {
55
    switch (packageType)
55
    switch (packageType)
56
    {
56
    {
57
    case CONVERTED:
58
      return SharedIcons.getDescriptor(SharedIcons.OBJ_EPACKAGE_CONVERTED);
59
60
    case LEGACY:
57
    case LEGACY:
61
      return SharedIcons.getDescriptor(SharedIcons.OBJ_EPACKAGE_LEGACY);
58
      return SharedIcons.getDescriptor(SharedIcons.OBJ_EPACKAGE_LEGACY);
62
59
(-)src/org/eclipse/emf/cdo/internal/ui/dialogs/OpenSessionDialog.java (-4 / +1 lines)
Lines 13-20 Link Here
13
import org.eclipse.emf.cdo.internal.ui.SharedIcons;
13
import org.eclipse.emf.cdo.internal.ui.SharedIcons;
14
import org.eclipse.emf.cdo.internal.ui.bundle.OM;
14
import org.eclipse.emf.cdo.internal.ui.bundle.OM;
15
15
16
import org.eclipse.emf.internal.cdo.util.FSMUtil;
17
18
import org.eclipse.net4j.util.collection.IHistory;
16
import org.eclipse.net4j.util.collection.IHistory;
19
import org.eclipse.net4j.util.collection.PreferenceHistory;
17
import org.eclipse.net4j.util.collection.PreferenceHistory;
20
import org.eclipse.net4j.util.ui.UIUtil;
18
import org.eclipse.net4j.util.ui.UIUtil;
Lines 66-72 Link Here
66
64
67
  static
65
  static
68
  {
66
  {
69
    OM.PREF_LEGACY_MODEL_SUPPORT.setValue(FSMUtil.isLegacySystemAvailable());
67
    OM.PREF_LEGACY_MODEL_SUPPORT.setValue(true);
70
  }
68
  }
71
69
72
  public OpenSessionDialog(IWorkbenchPage page)
70
  public OpenSessionDialog(IWorkbenchPage page)
Lines 140-146 Link Here
140
138
141
    new Label(composite, SWT.NONE);
139
    new Label(composite, SWT.NONE);
142
    legacyButton = new PreferenceButton(composite, SWT.CHECK, "Legacy Model Support", OM.PREF_LEGACY_MODEL_SUPPORT);
140
    legacyButton = new PreferenceButton(composite, SWT.CHECK, "Legacy Model Support", OM.PREF_LEGACY_MODEL_SUPPORT);
143
    legacyButton.getButton().setEnabled(FSMUtil.isLegacySystemAvailable());
144
141
145
    connectorText.setFocus();
142
    connectorText.setFocus();
146
    connectorText.getCombo().addFocusListener(new FocusListener()
143
    connectorText.getCombo().addFocusListener(new FocusListener()
(-)src/org/eclipse/emf/cdo/internal/ui/dialogs/SelectPackageDialog.java (-3 lines)
Lines 150-158 Link Here
150
        CDOPackageType packageType = CDOPackageTypeRegistry.INSTANCE.get(element);
150
        CDOPackageType packageType = CDOPackageTypeRegistry.INSTANCE.get(element);
151
        switch (packageType)
151
        switch (packageType)
152
        {
152
        {
153
        case CONVERTED:
154
          return SharedIcons.getImage(SharedIcons.OBJ_EPACKAGE_CONVERTED);
155
156
        case LEGACY:
153
        case LEGACY:
157
          return SharedIcons.getImage(SharedIcons.OBJ_EPACKAGE_LEGACY);
154
          return SharedIcons.getImage(SharedIcons.OBJ_EPACKAGE_LEGACY);
158
155
(-)src/org/eclipse/emf/cdo/internal/ui/editor/CDOEditor.java (-2 / +2 lines)
Lines 24-30 Link Here
24
import org.eclipse.emf.cdo.ui.CDOLabelProvider;
24
import org.eclipse.emf.cdo.ui.CDOLabelProvider;
25
import org.eclipse.emf.cdo.util.CDOURIUtil;
25
import org.eclipse.emf.cdo.util.CDOURIUtil;
26
26
27
import org.eclipse.emf.internal.cdo.CDOLegacyImpl;
27
import org.eclipse.emf.internal.cdo.CDOLegacyWrapper;
28
import org.eclipse.emf.internal.cdo.CDOStateMachine;
28
import org.eclipse.emf.internal.cdo.CDOStateMachine;
29
import org.eclipse.emf.internal.cdo.CDOTransactionImpl;
29
import org.eclipse.emf.internal.cdo.CDOTransactionImpl;
30
import org.eclipse.emf.internal.cdo.InternalCDOObject;
30
import org.eclipse.emf.internal.cdo.InternalCDOObject;
Lines 1203-1209 Link Here
1203
        @Override
1203
        @Override
1204
        protected void objectInvalidated(InternalCDOObject cdoObject)
1204
        protected void objectInvalidated(InternalCDOObject cdoObject)
1205
        {
1205
        {
1206
          if (cdoObject instanceof CDOLegacyImpl)
1206
          if (cdoObject instanceof CDOLegacyWrapper)
1207
          {
1207
          {
1208
            CDOStateMachine.INSTANCE.read(cdoObject);
1208
            CDOStateMachine.INSTANCE.read(cdoObject);
1209
          }
1209
          }

Return to bug 247226