| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- using Codice.Client.BaseCommands.Merge;
- using PlasticGui.WorkspaceWindow.Merge;
- namespace Unity.PlasticSCM.Editor.Views.IncomingChanges.Developer
- {
- internal static class IsSolved
- {
- internal static bool Conflict(
- MergeChangeInfo changeInfo,
- MergeChangeInfo metaChangeInfo,
- MergeSolvedFileConflicts solvedFileConflicts)
- {
- if (IsDirectoryConflict(changeInfo))
- {
- if (metaChangeInfo == null)
- return IsDirectoryConflictResolved(changeInfo);
- return IsDirectoryConflictResolved(changeInfo) &&
- IsDirectoryConflictResolved(metaChangeInfo);
- }
- if (metaChangeInfo == null)
- {
- return IsFileConflictResolved(
- changeInfo, solvedFileConflicts);
- }
- return IsFileConflictResolved(changeInfo, solvedFileConflicts) &&
- IsFileConflictResolved(metaChangeInfo, solvedFileConflicts);
- }
- static bool IsFileConflictResolved(
- MergeChangeInfo changeInfo,
- MergeSolvedFileConflicts solvedFileConflicts)
- {
- if (solvedFileConflicts == null)
- return false;
- return solvedFileConflicts.IsResolved(
- changeInfo.GetMount().Id,
- changeInfo.GetRevision().ItemId);
- }
- static bool IsDirectoryConflictResolved(MergeChangeInfo changeInfo)
- {
- return changeInfo.DirectoryConflict.IsResolved();
- }
- static bool IsDirectoryConflict(MergeChangeInfo changeInfo)
- {
- return (changeInfo.DirectoryConflict != null);
- }
- }
- }
|