|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface IMergeProvider
A part of the Remote Store API, a merge provider takes local and remote clone data and tries to reconcile any conflicts by merging the clone data to correctly reflect the new contents of the corresponding source file.
Source files are not merged by an IMergeProvider
. This is left to the normal
Eclipse procedures. By the time the merge provider is called, the result of the source file
merge is already available.
A IMergeProvider
must not have any side effects. It must neither access the
IStoreProvider
nor the workspace resources in any way.
IMergeTask
,
IMergeResult
Method Summary | |
---|---|
IMergeTask |
createTask()
Creates a new, empty IMergeTask instance which can then be filled with
all the required data to descripe the merge task. |
IMergeResult |
merge(IMergeTask mergeTask)
Merges local and remote clone data to reflect the new contents of the corresponding source file. |
Methods inherited from interface org.electrocodeogram.cpc.core.api.provider.IProvider |
---|
getProviderName, toString |
Method Detail |
---|
IMergeResult merge(IMergeTask mergeTask) throws java.lang.IllegalArgumentException, MergeException
The concrete merging procedure is left to the implementation. A caller must not make
any assumptions about any properties of the merge process.
It is up to the implementation to decide whether to attempt a Three-Way merge. The
presence of the required data in the IMergeTask
does not guarantee that a
Three-Way merge will be executed.
mergeTask
- the merge task descriptor for this operation, never null.
java.lang.IllegalArgumentException
- if the provided IMergeTask
is not "valid".
MergeException
- if any errors occur during the merge process.IMergeTask
,
IMergeResult
IMergeTask createTask()
IMergeTask
instance which can then be filled with
all the required data to descripe the merge task.
The returned IMergeTask
is not yet "valid". It must not be passed to
merge(IMergeTask)
until all required fields have been set.
IMergeTask
instance, never null.IMergeTask
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |