Skip to content

Package: IndexsegmentItemProviderAdapterFactory

IndexsegmentItemProviderAdapterFactory

nameinstructionbranchcomplexitylinemethod
IndexsegmentItemProviderAdapterFactory()
M: 45 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 11 C: 0
0%
M: 1 C: 0
0%
adapt(Notifier, Object)
M: 5 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
adapt(Object, Object)
M: 21 C: 0
0%
M: 6 C: 0
0%
M: 4 C: 0
0%
M: 5 C: 0
0%
M: 1 C: 0
0%
addListener(INotifyChangedListener)
M: 5 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%
createIndexDomainModelReferenceSegmentAdapter()
M: 12 C: 0
0%
M: 2 C: 0
0%
M: 2 C: 0
0%
M: 3 C: 0
0%
M: 1 C: 0
0%
dispose()
M: 7 C: 0
0%
M: 2 C: 0
0%
M: 2 C: 0
0%
M: 3 C: 0
0%
M: 1 C: 0
0%
fireNotifyChanged(Notification)
M: 12 C: 0
0%
M: 2 C: 0
0%
M: 2 C: 0
0%
M: 4 C: 0
0%
M: 1 C: 0
0%
getChildCreationExtenders()
M: 4 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
getNewChildDescriptors(Object, EditingDomain)
M: 6 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
getResourceLocator()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
getRootAdapterFactory()
M: 9 C: 0
0%
M: 2 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
isFactoryForType(Object)
M: 13 C: 0
0%
M: 4 C: 0
0%
M: 3 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
removeListener(INotifyChangedListener)
M: 5 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%
setParentAdapterFactory(ComposedAdapterFactory)
M: 4 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%

Coverage

1: /**
2: * Copyright (c) 2011-2018 EclipseSource Muenchen GmbH and others.
3: *
4: * All rights reserved. This program and the accompanying materials
5: * are made available under the terms of the Eclipse Public License 2.0
6: * which accompanies this distribution, and is available at
7: * https://www.eclipse.org/legal/epl-2.0/
8: *
9: * SPDX-License-Identifier: EPL-2.0
10: *
11: * Contributors:
12: * Lucas Koehler - initial API and implementation
13: */
14: package org.eclipse.emfforms.spi.view.indexsegment.model.provider;
15:
16: import java.util.ArrayList;
17: import java.util.Collection;
18: import java.util.List;
19:
20: import org.eclipse.emf.common.notify.Adapter;
21: import org.eclipse.emf.common.notify.Notification;
22: import org.eclipse.emf.common.notify.Notifier;
23: import org.eclipse.emf.common.util.ResourceLocator;
24: import org.eclipse.emf.edit.domain.EditingDomain;
25: import org.eclipse.emf.edit.provider.ChangeNotifier;
26: import org.eclipse.emf.edit.provider.ChildCreationExtenderManager;
27: import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
28: import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
29: import org.eclipse.emf.edit.provider.IChangeNotifier;
30: import org.eclipse.emf.edit.provider.IChildCreationExtender;
31: import org.eclipse.emf.edit.provider.IDisposable;
32: import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
33: import org.eclipse.emf.edit.provider.IItemLabelProvider;
34: import org.eclipse.emf.edit.provider.IItemPropertySource;
35: import org.eclipse.emf.edit.provider.INotifyChangedListener;
36: import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
37: import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
38: import org.eclipse.emfforms.spi.view.indexsegment.model.VIndexsegmentPackage;
39: import org.eclipse.emfforms.spi.view.indexsegment.model.util.IndexsegmentAdapterFactory;
40:
41: /**
42: * This is the factory that is used to provide the interfaces needed to support Viewers.
43: * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged
44: * fireNotifyChanged}.
45: * The adapters also support Eclipse property sheets.
46: * Note that most of the adapters are shared among multiple instances.
47: * <!-- begin-user-doc --> <!--
48: * end-user-doc -->
49: *
50: * @generated
51: */
52: public class IndexsegmentItemProviderAdapterFactory extends IndexsegmentAdapterFactory
53:         implements ComposeableAdapterFactory, IChangeNotifier, IDisposable, IChildCreationExtender {
54:         /**
55:          * This keeps track of the root adapter factory that delegates to this adapter factory.
56:          * <!-- begin-user-doc --> <!-- end-user-doc -->
57:          *
58:          * @generated
59:          */
60:         protected ComposedAdapterFactory parentAdapterFactory;
61:
62:         /**
63:          * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
64:          * <!-- begin-user-doc
65:          * --> <!-- end-user-doc -->
66:          *
67:          * @generated
68:          */
69:         protected IChangeNotifier changeNotifier = new ChangeNotifier();
70:
71:         /**
72:          * This helps manage the child creation extenders.
73:          * <!-- begin-user-doc --> <!--
74:          * end-user-doc -->
75:          *
76:          * @generated
77:          */
78:         protected ChildCreationExtenderManager childCreationExtenderManager = new ChildCreationExtenderManager(
79:                 IndexsegmentEditPlugin.INSTANCE, VIndexsegmentPackage.eNS_URI);
80:
81:         /**
82:          * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
83:          * <!-- begin-user-doc --> <!--
84:          * end-user-doc -->
85:          *
86:          * @generated
87:          */
88:         protected Collection<Object> supportedTypes = new ArrayList<>();
89:
90:         /**
91:          * This constructs an instance.
92:          * <!-- begin-user-doc --> <!-- end-user-doc -->
93:          *
94:          * @generated
95:          */
96:         public IndexsegmentItemProviderAdapterFactory() {
97:                 supportedTypes.add(IEditingDomainItemProvider.class);
98:                 supportedTypes.add(IStructuredItemContentProvider.class);
99:                 supportedTypes.add(ITreeItemContentProvider.class);
100:                 supportedTypes.add(IItemLabelProvider.class);
101:                 supportedTypes.add(IItemPropertySource.class);
102:         }
103:
104:         /**
105:          * This keeps track of the one adapter used for all
106:          * {@link org.eclipse.emfforms.spi.view.indexsegment.model.VIndexDomainModelReferenceSegment} instances.
107:          * <!-- begin-user-doc --> <!-- end-user-doc -->
108:          *
109:          * @generated
110:          */
111:         protected IndexDomainModelReferenceSegmentItemProvider indexDomainModelReferenceSegmentItemProvider;
112:
113:         /**
114:          * This creates an adapter for a
115:          * {@link org.eclipse.emfforms.spi.view.indexsegment.model.VIndexDomainModelReferenceSegment}.
116:          * <!-- begin-user-doc --> <!-- end-user-doc -->
117:          *
118:          * @generated
119:          */
120:         @Override
121:         public Adapter createIndexDomainModelReferenceSegmentAdapter() {
122:•                if (indexDomainModelReferenceSegmentItemProvider == null) {
123:                         indexDomainModelReferenceSegmentItemProvider = new IndexDomainModelReferenceSegmentItemProvider(this);
124:                 }
125:
126:                 return indexDomainModelReferenceSegmentItemProvider;
127:         }
128:
129:         /**
130:          * This returns the root adapter factory that contains this factory. <!--
131:          * begin-user-doc --> <!-- end-user-doc -->
132:          *
133:          * @generated
134:          */
135:         @Override
136:         public ComposeableAdapterFactory getRootAdapterFactory() {
137:•                return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
138:         }
139:
140:         /**
141:          * This sets the composed adapter factory that contains this factory. <!--
142:          * begin-user-doc --> <!-- end-user-doc -->
143:          *
144:          * @generated
145:          */
146:         @Override
147:         public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
148:                 this.parentAdapterFactory = parentAdapterFactory;
149:         }
150:
151:         /**
152:          * <!-- begin-user-doc --> <!-- end-user-doc -->
153:          *
154:          * @generated
155:          */
156:         @Override
157:         public boolean isFactoryForType(Object type) {
158:•                return supportedTypes.contains(type) || super.isFactoryForType(type);
159:         }
160:
161:         /**
162:          * This implementation substitutes the factory itself as the key for the adapter.
163:          * <!-- begin-user-doc --> <!-- end-user-doc -->
164:          *
165:          * @generated
166:          */
167:         @Override
168:         public Adapter adapt(Notifier notifier, Object type) {
169:                 return super.adapt(notifier, this);
170:         }
171:
172:         /**
173:          * <!-- begin-user-doc --> <!-- end-user-doc -->
174:          *
175:          * @generated
176:          */
177:         @Override
178:         public Object adapt(Object object, Object type) {
179:•                if (isFactoryForType(type)) {
180:                         final Object adapter = super.adapt(object, type);
181:•                        if (!(type instanceof Class<?>) || ((Class<?>) type).isInstance(adapter)) {
182:                                 return adapter;
183:                         }
184:                 }
185:
186:                 return null;
187:         }
188:
189:         /**
190:          * <!-- begin-user-doc --> <!-- end-user-doc -->
191:          *
192:          * @generated
193:          */
194:         public List<IChildCreationExtender> getChildCreationExtenders() {
195:                 return childCreationExtenderManager.getChildCreationExtenders();
196:         }
197:
198:         /**
199:          * <!-- begin-user-doc --> <!-- end-user-doc -->
200:          *
201:          * @generated
202:          */
203:         @Override
204:         public Collection<?> getNewChildDescriptors(Object object, EditingDomain editingDomain) {
205:                 return childCreationExtenderManager.getNewChildDescriptors(object, editingDomain);
206:         }
207:
208:         /**
209:          * <!-- begin-user-doc --> <!-- end-user-doc -->
210:          *
211:          * @generated
212:          */
213:         @Override
214:         public ResourceLocator getResourceLocator() {
215:                 return childCreationExtenderManager;
216:         }
217:
218:         /**
219:          * This adds a listener.
220:          * <!-- begin-user-doc --> <!-- end-user-doc -->
221:          *
222:          * @generated
223:          */
224:         @Override
225:         public void addListener(INotifyChangedListener notifyChangedListener) {
226:                 changeNotifier.addListener(notifyChangedListener);
227:         }
228:
229:         /**
230:          * This removes a listener.
231:          * <!-- begin-user-doc --> <!-- end-user-doc -->
232:          *
233:          * @generated
234:          */
235:         @Override
236:         public void removeListener(INotifyChangedListener notifyChangedListener) {
237:                 changeNotifier.removeListener(notifyChangedListener);
238:         }
239:
240:         /**
241:          * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
242:          * <!-- begin-user-doc --> <!-- end-user-doc -->
243:          *
244:          * @generated
245:          */
246:         @Override
247:         public void fireNotifyChanged(Notification notification) {
248:                 changeNotifier.fireNotifyChanged(notification);
249:
250:•                if (parentAdapterFactory != null) {
251:                         parentAdapterFactory.fireNotifyChanged(notification);
252:                 }
253:         }
254:
255:         /**
256:          * This disposes all of the item providers created by this factory. <!--
257:          * begin-user-doc --> <!-- end-user-doc -->
258:          *
259:          * @generated
260:          */
261:         @Override
262:         public void dispose() {
263:•                if (indexDomainModelReferenceSegmentItemProvider != null) {
264:                         indexDomainModelReferenceSegmentItemProvider.dispose();
265:                 }
266:         }
267:
268: }