|
Lines 6-18
Link Here
|
| 6 |
import org.eclipse.emf.common.util.EList; |
6 |
import org.eclipse.emf.common.util.EList; |
| 7 |
import org.eclipse.emf.ecore.EObject; |
7 |
import org.eclipse.emf.ecore.EObject; |
| 8 |
import org.eclipse.emf.ecore.EReference; |
8 |
import org.eclipse.emf.ecore.EReference; |
|
|
9 |
import org.eclipse.emf.ecore.resource.Resource; |
| 10 |
import org.eclipse.emf.ecore.resource.ResourceSet; |
| 9 |
import org.eclipse.emf.ecore.util.EcoreUtil; |
11 |
import org.eclipse.emf.ecore.util.EcoreUtil; |
| 10 |
import org.eclipse.emf.ecp.core.ECPProject; |
12 |
import org.eclipse.emf.ecp.core.ECPProject; |
| 11 |
import org.eclipse.emf.ecp.core.util.ECPModelContext; |
13 |
import org.eclipse.emf.ecp.core.util.ECPModelContext; |
|
|
14 |
import org.eclipse.emf.ecp.core.util.ECPModelContextProvider; |
| 12 |
import org.eclipse.emf.ecp.spi.core.DefaultProvider; |
15 |
import org.eclipse.emf.ecp.spi.core.DefaultProvider; |
| 13 |
import org.eclipse.emf.ecp.spi.core.InternalProject; |
16 |
import org.eclipse.emf.ecp.spi.core.InternalProject; |
| 14 |
import org.eclipse.emf.ecp.spi.core.InternalRepository; |
17 |
import org.eclipse.emf.ecp.spi.core.InternalRepository; |
| 15 |
import org.eclipse.emf.ecp.spi.core.util.InternalChildrenList; |
18 |
import org.eclipse.emf.ecp.spi.core.util.InternalChildrenList; |
|
|
19 |
import org.eclipse.emf.ecp.spi.core.util.ModelWrapper; |
| 16 |
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; |
20 |
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; |
| 17 |
import org.eclipse.emf.emfstore.client.model.Configuration; |
21 |
import org.eclipse.emf.emfstore.client.model.Configuration; |
| 18 |
import org.eclipse.emf.emfstore.client.model.ProjectSpace; |
22 |
import org.eclipse.emf.emfstore.client.model.ProjectSpace; |
|
Lines 359-362
Link Here
|
| 359 |
} |
363 |
} |
| 360 |
return null; |
364 |
return null; |
| 361 |
} |
365 |
} |
|
|
366 |
|
| 367 |
@Override |
| 368 |
public ECPModelContext getModelContext(Object element) { |
| 369 |
if (element instanceof ECPModelContext) { |
| 370 |
return (ECPModelContext) element; |
| 371 |
} |
| 372 |
|
| 373 |
if (element instanceof ECPModelContextProvider) { |
| 374 |
return ((ECPModelContextProvider) element).getModelContext(element); |
| 375 |
} |
| 376 |
|
| 377 |
if (element instanceof ModelWrapper) { |
| 378 |
return ((ModelWrapper<?, ?>) element).getContext(); |
| 379 |
} |
| 380 |
|
| 381 |
if (element instanceof EObject) { |
| 382 |
EObject eObject = (EObject) element; |
| 383 |
ProjectSpace ps = WorkspaceManager.getProjectSpace(eObject); |
| 384 |
if (ps != null) { |
| 385 |
ECPModelContext context = getModelContextFromAdapter(ps.getProject()); |
| 386 |
if (context != null) { |
| 387 |
return context; |
| 388 |
} |
| 389 |
} |
| 390 |
element = eObject.eResource(); |
| 391 |
} |
| 392 |
|
| 393 |
if (element instanceof Resource) { |
| 394 |
Resource resource = (Resource) element; |
| 395 |
ECPModelContext context = getModelContextFromAdapter(resource); |
| 396 |
if (context != null) { |
| 397 |
return context; |
| 398 |
} |
| 399 |
|
| 400 |
element = resource.getResourceSet(); |
| 401 |
} |
| 402 |
|
| 403 |
if (element instanceof ResourceSet) { |
| 404 |
ResourceSet resourceSet = (ResourceSet) element; |
| 405 |
ECPModelContext context = getModelContextFromAdapter(resourceSet); |
| 406 |
if (context != null) { |
| 407 |
return context; |
| 408 |
} |
| 409 |
} |
| 410 |
|
| 411 |
return null; |
| 412 |
} |
| 362 |
} |
413 |
} |