E
- target external project data typeI
- target ide project data typepublic interface ProjectDataService<E,I>
Order
annotation where the smaller value corresponds to earlier execution;
Modifier and Type | Field and Description |
---|---|
static ExtensionPointName<ProjectDataService<?,?>> |
EP_NAME |
Modifier and Type | Method and Description |
---|---|
Computable<java.util.Collection<I>> |
computeOrphanData(java.util.Collection<DataNode<E>> toImport,
ProjectData projectData,
Project project,
IdeModifiableModelsProvider modelsProvider)
Compute orphan data.
|
Key<E> |
getTargetDataKey() |
void |
importData(java.util.Collection<DataNode<E>> toImport,
ProjectData projectData,
Project project,
IdeModifiableModelsProvider modelsProvider)
It's assumed that given data nodes present at the ide when this method returns.
|
default void |
onFailureImport(Project project) |
default void |
onSuccessImport(java.util.Collection<DataNode<E>> imported,
ProjectData projectData,
Project project,
IdeModelsProvider modelsProvider) |
default void |
postProcess(java.util.Collection<DataNode<E>> toImport,
ProjectData projectData,
Project project,
IdeModifiableModelsProvider modelsProvider) |
void |
removeData(Computable<java.util.Collection<I>> toRemove,
java.util.Collection<DataNode<E>> toIgnore,
ProjectData projectData,
Project project,
IdeModifiableModelsProvider modelsProvider)
Asks to remove all given ide project entities.
|
static final ExtensionPointName<ProjectDataService<?,?>> EP_NAME
Key<E> getTargetDataKey()
void importData(java.util.Collection<DataNode<E>> toImport, ProjectData projectData, Project project, IdeModifiableModelsProvider modelsProvider)
toImport
- project
- Computable<java.util.Collection<I>> computeOrphanData(java.util.Collection<DataNode<E>> toImport, ProjectData projectData, Project project, IdeModifiableModelsProvider modelsProvider)
void removeData(Computable<java.util.Collection<I>> toRemove, java.util.Collection<DataNode<E>> toIgnore, ProjectData projectData, Project project, IdeModifiableModelsProvider modelsProvider)
ProjectDataService
might be configured for a target entity type, there is a possible case
that the entities have already been removed when this method is called. Then it's necessary to cleanup auxiliary data (if any)
or just return otherwise.toRemove
- project entities to removeproject
- target projectdefault void postProcess(java.util.Collection<DataNode<E>> toImport, ProjectData projectData, Project project, IdeModifiableModelsProvider modelsProvider)
default void onSuccessImport(java.util.Collection<DataNode<E>> imported, ProjectData projectData, Project project, IdeModelsProvider modelsProvider)
default void onFailureImport(Project project)