Skip to content

Package: ViewItemProviderAdapterFactory

ViewItemProviderAdapterFactory

nameinstructionbranchcomplexitylinemethod
ViewItemProviderAdapterFactory()
M: 0 C: 45
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 11
100%
M: 0 C: 1
100%
adapt(Notifier, Object)
M: 0 C: 5
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
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%
createControlAdapter()
M: 0 C: 12
100%
M: 0 C: 2
100%
M: 0 C: 2
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
createDateTimeDisplayAttachmentAdapter()
M: 0 C: 12
100%
M: 0 C: 2
100%
M: 0 C: 2
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
createDiagnosticAdapter()
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%
createDomainModelReferenceAdapter()
M: 0 C: 12
100%
M: 0 C: 2
100%
M: 0 C: 2
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
createFeatureDomainModelReferenceSegmentAdapter()
M: 0 C: 12
100%
M: 0 C: 2
100%
M: 0 C: 2
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
createFeaturePathDomainModelReferenceAdapter()
M: 0 C: 12
100%
M: 0 C: 2
100%
M: 0 C: 2
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
createStringToObjectMapEntryAdapter()
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%
createViewAdapter()
M: 0 C: 12
100%
M: 0 C: 2
100%
M: 0 C: 2
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
createViewModelLoadingPropertiesAdapter()
M: 0 C: 12
100%
M: 1 C: 1
50%
M: 1 C: 1
50%
M: 0 C: 3
100%
M: 0 C: 1
100%
dispose()
M: 9 C: 46
84%
M: 3 C: 15
83%
M: 3 C: 7
70%
M: 3 C: 16
84%
M: 0 C: 1
100%
fireNotifyChanged(Notification)
M: 0 C: 12
100%
M: 1 C: 1
50%
M: 1 C: 1
50%
M: 0 C: 4
100%
M: 0 C: 1
100%
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: 0 C: 6
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
getResourceLocator()
M: 0 C: 3
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
getRootAdapterFactory()
M: 2 C: 7
78%
M: 1 C: 1
50%
M: 1 C: 1
50%
M: 0 C: 1
100%
M: 0 C: 1
100%
isFactoryForType(Object)
M: 0 C: 13
100%
M: 0 C: 4
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
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: 0 C: 4
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 2
100%
M: 0 C: 1
100%

Coverage

1: /**
2: * Copyright (c) 2011-2015 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: * EclipseSource Muenchen GmbH - initial API and implementation
13: */
14: package org.eclipse.emf.ecp.view.spi.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.ecp.view.spi.model.VViewPackage;
25: import org.eclipse.emf.ecp.view.spi.model.util.ViewAdapterFactory;
26: import org.eclipse.emf.edit.domain.EditingDomain;
27: import org.eclipse.emf.edit.provider.ChangeNotifier;
28: import org.eclipse.emf.edit.provider.ChildCreationExtenderManager;
29: import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
30: import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
31: import org.eclipse.emf.edit.provider.IChangeNotifier;
32: import org.eclipse.emf.edit.provider.IChildCreationExtender;
33: import org.eclipse.emf.edit.provider.IDisposable;
34: import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
35: import org.eclipse.emf.edit.provider.IItemLabelProvider;
36: import org.eclipse.emf.edit.provider.IItemPropertySource;
37: import org.eclipse.emf.edit.provider.INotifyChangedListener;
38: import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
39: import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
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: *
49: * @since 1.2
50: * <!-- end-user-doc -->
51: * @generated
52: */
53: public class ViewItemProviderAdapterFactory extends ViewAdapterFactory implements ComposeableAdapterFactory,
54:         IChangeNotifier, IDisposable, IChildCreationExtender {
55:         /**
56:          * This keeps track of the root adapter factory that delegates to this adapter factory.
57:          * <!-- begin-user-doc -->
58:          * <!-- end-user-doc -->
59:          *
60:          * @generated
61:          */
62:         protected ComposedAdapterFactory parentAdapterFactory;
63:
64:         /**
65:          * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
66:          * <!-- begin-user-doc -->
67:          * <!-- end-user-doc -->
68:          *
69:          * @generated
70:          */
71:         protected IChangeNotifier changeNotifier = new ChangeNotifier();
72:
73:         /**
74:          * This helps manage the child creation extenders.
75:          * <!-- begin-user-doc -->
76:          * <!-- end-user-doc -->
77:          *
78:          * @generated
79:          */
80:         protected ChildCreationExtenderManager childCreationExtenderManager = new ChildCreationExtenderManager(
81:                 ViewEditPlugin.INSTANCE, VViewPackage.eNS_URI);
82:
83:         /**
84:          * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
85:          * <!-- begin-user-doc -->
86:          * <!-- end-user-doc -->
87:          *
88:          * @generated
89:          */
90:         protected Collection<Object> supportedTypes = new ArrayList<>();
91:
92:         /**
93:          * This constructs an instance.
94:          * <!-- begin-user-doc -->
95:          * <!-- end-user-doc -->
96:          *
97:          * @generated
98:          */
99:         public ViewItemProviderAdapterFactory() {
100:                 supportedTypes.add(IEditingDomainItemProvider.class);
101:                 supportedTypes.add(IStructuredItemContentProvider.class);
102:                 supportedTypes.add(ITreeItemContentProvider.class);
103:                 supportedTypes.add(IItemLabelProvider.class);
104:                 supportedTypes.add(IItemPropertySource.class);
105:         }
106:
107:         /**
108:          * This keeps track of the one adapter used for all {@link org.eclipse.emf.ecp.view.spi.model.VDiagnostic}
109:          * instances.
110:          * <!-- begin-user-doc -->
111:          * <!-- end-user-doc -->
112:          *
113:          * @generated
114:          */
115:         protected DiagnosticItemProvider diagnosticItemProvider;
116:
117:         /**
118:          * This creates an adapter for a {@link org.eclipse.emf.ecp.view.spi.model.VDiagnostic}.
119:          * <!-- begin-user-doc -->
120:          * <!-- end-user-doc -->
121:          *
122:          * @generated
123:          */
124:         @Override
125:         public Adapter createDiagnosticAdapter() {
126:•                if (diagnosticItemProvider == null) {
127:                         diagnosticItemProvider = new DiagnosticItemProvider(this);
128:                 }
129:
130:                 return diagnosticItemProvider;
131:         }
132:
133:         /**
134:          * This keeps track of the one adapter used for all {@link org.eclipse.emf.ecp.view.spi.model.VDomainModelReference}
135:          * instances.
136:          * <!-- begin-user-doc -->
137:          *
138:          * @since 1.21
139:          * <!-- end-user-doc -->
140:          *
141:          * @generated
142:          */
143:         protected DomainModelReferenceItemProvider domainModelReferenceItemProvider;
144:
145:         /**
146:          * This creates an adapter for a {@link org.eclipse.emf.ecp.view.spi.model.VDomainModelReference}.
147:          * <!-- begin-user-doc -->
148:          * <!-- end-user-doc -->
149:          *
150:          * @generated
151:          */
152:         @Override
153:         public Adapter createDomainModelReferenceAdapter() {
154:•                if (domainModelReferenceItemProvider == null) {
155:                         domainModelReferenceItemProvider = new DomainModelReferenceItemProvider(this);
156:                 }
157:
158:                 return domainModelReferenceItemProvider;
159:         }
160:
161:         /**
162:          * This keeps track of the one adapter used for all {@link org.eclipse.emf.ecp.view.spi.model.VView} instances.
163:          * <!-- begin-user-doc -->
164:          * <!-- end-user-doc -->
165:          *
166:          * @generated
167:          */
168:         protected ViewItemProvider viewItemProvider;
169:
170:         /**
171:          * This creates an adapter for a {@link org.eclipse.emf.ecp.view.spi.model.VView}.
172:          * <!-- begin-user-doc -->
173:          * <!-- end-user-doc -->
174:          *
175:          * @generated
176:          */
177:         @Override
178:         public Adapter createViewAdapter() {
179:•                if (viewItemProvider == null) {
180:                         viewItemProvider = new ViewItemProvider(this);
181:                 }
182:
183:                 return viewItemProvider;
184:         }
185:
186:         /**
187:          * This keeps track of the one adapter used for all {@link org.eclipse.emf.ecp.view.spi.model.VControl} instances.
188:          * <!-- begin-user-doc -->
189:          * <!-- end-user-doc -->
190:          *
191:          * @generated
192:          */
193:         protected ControlItemProvider controlItemProvider;
194:
195:         /**
196:          * This creates an adapter for a {@link org.eclipse.emf.ecp.view.spi.model.VControl}.
197:          * <!-- begin-user-doc -->
198:          * <!-- end-user-doc -->
199:          *
200:          * @generated
201:          */
202:         @Override
203:         public Adapter createControlAdapter() {
204:•                if (controlItemProvider == null) {
205:                         controlItemProvider = new ControlItemProvider(this);
206:                 }
207:
208:                 return controlItemProvider;
209:         }
210:
211:         /**
212:          * This keeps track of the one adapter used for all
213:          * {@link org.eclipse.emf.ecp.view.spi.model.VViewModelLoadingProperties} instances.
214:          * <!-- begin-user-doc -->
215:          *
216:          * @since 1.7
217:          * <!-- end-user-doc -->
218:          * @generated
219:          */
220:         protected ViewModelLoadingPropertiesItemProvider viewModelLoadingPropertiesItemProvider;
221:
222:         /**
223:          * This creates an adapter for a {@link org.eclipse.emf.ecp.view.spi.model.VViewModelLoadingProperties}.
224:          * <!-- begin-user-doc -->
225:          * <!-- end-user-doc -->
226:          *
227:          * @generated
228:          */
229:         @Override
230:         public Adapter createViewModelLoadingPropertiesAdapter() {
231:•                if (viewModelLoadingPropertiesItemProvider == null) {
232:                         viewModelLoadingPropertiesItemProvider = new ViewModelLoadingPropertiesItemProvider(this);
233:                 }
234:
235:                 return viewModelLoadingPropertiesItemProvider;
236:         }
237:
238:         /**
239:          * This keeps track of the one adapter used for all {@link java.util.Map.Entry} instances.
240:          * <!-- begin-user-doc -->
241:          *
242:          * @since 1.7
243:          * <!-- end-user-doc -->
244:          * @generated
245:          */
246:         protected StringToObjectMapEntryItemProvider stringToObjectMapEntryItemProvider;
247:
248:         /**
249:          * This creates an adapter for a {@link java.util.Map.Entry}.
250:          * <!-- begin-user-doc -->
251:          * <!-- end-user-doc -->
252:          *
253:          * @generated
254:          */
255:         @Override
256:         public Adapter createStringToObjectMapEntryAdapter() {
257:•                if (stringToObjectMapEntryItemProvider == null) {
258:                         stringToObjectMapEntryItemProvider = new StringToObjectMapEntryItemProvider(this);
259:                 }
260:
261:                 return stringToObjectMapEntryItemProvider;
262:         }
263:
264:         /**
265:          * This keeps track of the one adapter used for all
266:          * {@link org.eclipse.emf.ecp.view.spi.model.VDateTimeDisplayAttachment} instances.
267:          * <!-- begin-user-doc -->
268:          *
269:          * @since 1.8
270:          * <!-- end-user-doc -->
271:          * @generated
272:          */
273:         protected DateTimeDisplayAttachmentItemProvider dateTimeDisplayAttachmentItemProvider;
274:
275:         /**
276:          * This creates an adapter for a {@link org.eclipse.emf.ecp.view.spi.model.VDateTimeDisplayAttachment}.
277:          * <!-- begin-user-doc -->
278:          * <!-- end-user-doc -->
279:          *
280:          * @generated
281:          */
282:         @Override
283:         public Adapter createDateTimeDisplayAttachmentAdapter() {
284:•                if (dateTimeDisplayAttachmentItemProvider == null) {
285:                         dateTimeDisplayAttachmentItemProvider = new DateTimeDisplayAttachmentItemProvider(this);
286:                 }
287:
288:                 return dateTimeDisplayAttachmentItemProvider;
289:         }
290:
291:         /**
292:          * This keeps track of the one adapter used for all
293:          * {@link org.eclipse.emf.ecp.view.spi.model.VFeatureDomainModelReferenceSegment} instances.
294:          * <!-- begin-user-doc -->
295:          *
296:          * @since 1.19
297:          * <!-- end-user-doc -->
298:          * @generated
299:          */
300:         protected FeatureDomainModelReferenceSegmentItemProvider featureDomainModelReferenceSegmentItemProvider;
301:
302:         /**
303:          * This creates an adapter for a {@link org.eclipse.emf.ecp.view.spi.model.VFeatureDomainModelReferenceSegment}.
304:          * <!-- begin-user-doc -->
305:          * <!-- end-user-doc -->
306:          *
307:          * @generated
308:          */
309:         @Override
310:         public Adapter createFeatureDomainModelReferenceSegmentAdapter() {
311:•                if (featureDomainModelReferenceSegmentItemProvider == null) {
312:                         featureDomainModelReferenceSegmentItemProvider = new FeatureDomainModelReferenceSegmentItemProvider(this);
313:                 }
314:
315:                 return featureDomainModelReferenceSegmentItemProvider;
316:         }
317:
318:         /**
319:          * This keeps track of the one adapter used for all
320:          * {@link org.eclipse.emf.ecp.view.spi.model.VFeaturePathDomainModelReference} instances.
321:          * <!-- begin-user-doc -->
322:          * <!-- end-user-doc -->
323:          *
324:          * @generated
325:          */
326:         protected FeaturePathDomainModelReferenceItemProvider featurePathDomainModelReferenceItemProvider;
327:
328:         /**
329:          * This creates an adapter for a {@link org.eclipse.emf.ecp.view.spi.model.VFeaturePathDomainModelReference}.
330:          * <!-- begin-user-doc -->
331:          * <!-- end-user-doc -->
332:          *
333:          * @generated
334:          */
335:         @Override
336:         public Adapter createFeaturePathDomainModelReferenceAdapter() {
337:•                if (featurePathDomainModelReferenceItemProvider == null) {
338:                         featurePathDomainModelReferenceItemProvider = new FeaturePathDomainModelReferenceItemProvider(this);
339:                 }
340:
341:                 return featurePathDomainModelReferenceItemProvider;
342:         }
343:
344:         /**
345:          * This returns the root adapter factory that contains this factory.
346:          * <!-- begin-user-doc -->
347:          * <!-- end-user-doc -->
348:          *
349:          * @generated
350:          */
351:         @Override
352:         public ComposeableAdapterFactory getRootAdapterFactory() {
353:•                return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
354:         }
355:
356:         /**
357:          * This sets the composed adapter factory that contains this factory.
358:          * <!-- begin-user-doc -->
359:          * <!-- end-user-doc -->
360:          *
361:          * @generated
362:          */
363:         @Override
364:         public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
365:                 this.parentAdapterFactory = parentAdapterFactory;
366:         }
367:
368:         /**
369:          * <!-- begin-user-doc -->
370:          * <!-- end-user-doc -->
371:          *
372:          * @generated
373:          */
374:         @Override
375:         public boolean isFactoryForType(Object type) {
376:•                return supportedTypes.contains(type) || super.isFactoryForType(type);
377:         }
378:
379:         /**
380:          * This implementation substitutes the factory itself as the key for the adapter.
381:          * <!-- begin-user-doc -->
382:          * <!-- end-user-doc -->
383:          *
384:          * @generated
385:          */
386:         @Override
387:         public Adapter adapt(Notifier notifier, Object type) {
388:                 return super.adapt(notifier, this);
389:         }
390:
391:         /**
392:          * <!-- begin-user-doc -->
393:          * <!-- end-user-doc -->
394:          *
395:          * @generated
396:          */
397:         @Override
398:         public Object adapt(Object object, Object type) {
399:•                if (isFactoryForType(type)) {
400:                         final Object adapter = super.adapt(object, type);
401:•                        if (!(type instanceof Class<?>) || ((Class<?>) type).isInstance(adapter)) {
402:                                 return adapter;
403:                         }
404:                 }
405:
406:                 return null;
407:         }
408:
409:         /**
410:          * <!-- begin-user-doc -->
411:          * <!-- end-user-doc -->
412:          *
413:          * @generated
414:          */
415:         public List<IChildCreationExtender> getChildCreationExtenders() {
416:                 return childCreationExtenderManager.getChildCreationExtenders();
417:         }
418:
419:         /**
420:          * <!-- begin-user-doc -->
421:          * <!-- end-user-doc -->
422:          *
423:          * @generated
424:          */
425:         @Override
426:         public Collection<?> getNewChildDescriptors(Object object, EditingDomain editingDomain) {
427:                 return childCreationExtenderManager.getNewChildDescriptors(object, editingDomain);
428:         }
429:
430:         /**
431:          * <!-- begin-user-doc -->
432:          * <!-- end-user-doc -->
433:          *
434:          * @generated
435:          */
436:         @Override
437:         public ResourceLocator getResourceLocator() {
438:                 return childCreationExtenderManager;
439:         }
440:
441:         /**
442:          * This adds a listener.
443:          * <!-- begin-user-doc -->
444:          * <!-- end-user-doc -->
445:          *
446:          * @generated
447:          */
448:         @Override
449:         public void addListener(INotifyChangedListener notifyChangedListener) {
450:                 changeNotifier.addListener(notifyChangedListener);
451:         }
452:
453:         /**
454:          * This removes a listener.
455:          * <!-- begin-user-doc -->
456:          * <!-- end-user-doc -->
457:          *
458:          * @generated
459:          */
460:         @Override
461:         public void removeListener(INotifyChangedListener notifyChangedListener) {
462:                 changeNotifier.removeListener(notifyChangedListener);
463:         }
464:
465:         /**
466:          * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
467:          * <!-- begin-user-doc -->
468:          * <!-- end-user-doc -->
469:          *
470:          * @generated
471:          */
472:         @Override
473:         public void fireNotifyChanged(Notification notification) {
474:                 changeNotifier.fireNotifyChanged(notification);
475:
476:•                if (parentAdapterFactory != null) {
477:                         parentAdapterFactory.fireNotifyChanged(notification);
478:                 }
479:         }
480:
481:         /**
482:          * This disposes all of the item providers created by this factory.
483:          * <!-- begin-user-doc -->
484:          * <!-- end-user-doc -->
485:          *
486:          * @generated
487:          */
488:         @Override
489:         public void dispose() {
490:•                if (diagnosticItemProvider != null) {
491:                         diagnosticItemProvider.dispose();
492:                 }
493:•                if (domainModelReferenceItemProvider != null) {
494:                         domainModelReferenceItemProvider.dispose();
495:                 }
496:•                if (featurePathDomainModelReferenceItemProvider != null) {
497:                         featurePathDomainModelReferenceItemProvider.dispose();
498:                 }
499:•                if (viewItemProvider != null) {
500:                         viewItemProvider.dispose();
501:                 }
502:•                if (controlItemProvider != null) {
503:                         controlItemProvider.dispose();
504:                 }
505:•                if (viewModelLoadingPropertiesItemProvider != null) {
506:                         viewModelLoadingPropertiesItemProvider.dispose();
507:                 }
508:•                if (stringToObjectMapEntryItemProvider != null) {
509:                         stringToObjectMapEntryItemProvider.dispose();
510:                 }
511:•                if (dateTimeDisplayAttachmentItemProvider != null) {
512:                         dateTimeDisplayAttachmentItemProvider.dispose();
513:                 }
514:•                if (featureDomainModelReferenceSegmentItemProvider != null) {
515:                         featureDomainModelReferenceSegmentItemProvider.dispose();
516:                 }
517:         }
518:
519: }