public class EMFModelProvider
extends org.eclipse.core.resources.mapping.ModelProvider
ModelProvider
will be used to provide the logical model associated with
EMF models.
Concretely, an EMF model can span multiple physical resources (fragmented models); this model provider can
be used to find all of these associated physical resources. Note that a model can span remote
resources that do not exist locally; these will be accounted for when using this model with a
RemoteResourceMappingContext
.
Modifier and Type | Field and Description |
---|---|
static long |
CACHE_EXPIRATION
The expiration timeout for our logical model cache values.
|
static String |
PROVIDER_ID
ID of this model provider.
|
Constructor and Description |
---|
EMFModelProvider()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
clear()
Clears the caches of this provider.
|
org.eclipse.core.resources.mapping.ResourceMapping[] |
getMappings(org.eclipse.core.resources.IResource[] resources,
org.eclipse.core.resources.mapping.ResourceMappingContext context,
org.eclipse.core.runtime.IProgressMonitor monitor) |
org.eclipse.core.resources.mapping.ResourceMapping[] |
getMappings(org.eclipse.core.resources.IResource resource,
org.eclipse.core.resources.mapping.ResourceMappingContext context,
org.eclipse.core.runtime.IProgressMonitor monitor) |
public static final String PROVIDER_ID
public static final long CACHE_EXPIRATION
returned mappings
might
reflect a stale view of the files' logical models, but we expect said logical traversals not to change
that often.
Basically, the mappings are used by the platform to determine whether a file can be moved, replaced or compared alone or if in the contrary the action's scope must be expanded, and will do so very often in short intervals. We will cache the result in order to avoid multiple identical computation to take place and hasten the whole process.
public org.eclipse.core.resources.mapping.ResourceMapping[] getMappings(org.eclipse.core.resources.IResource resource, org.eclipse.core.resources.mapping.ResourceMappingContext context, org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreException
getMappings
in class org.eclipse.core.resources.mapping.ModelProvider
org.eclipse.core.runtime.CoreException
ModelProvider.getMappings(org.eclipse.core.resources.IResource,
org.eclipse.core.resources.mapping.ResourceMappingContext,
org.eclipse.core.runtime.IProgressMonitor)
public org.eclipse.core.resources.mapping.ResourceMapping[] getMappings(org.eclipse.core.resources.IResource[] resources, org.eclipse.core.resources.mapping.ResourceMappingContext context, org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreException
getMappings
in class org.eclipse.core.resources.mapping.ModelProvider
org.eclipse.core.runtime.CoreException
public void clear()
Copyright (c) 2006, 2015 Obeo and others. All rights reserved.