"{ Package: 'stx:goodies/monticello' }"
Object subclass:#MCMerger
instanceVariableNames:'conflicts'
classVariableNames:''
poolDictionaries:''
category:'Monticello-Merging'
!
!MCMerger methodsFor:'as yet unclassified'!
addConflictWithOperation: anOperation
self conflicts add: (MCConflict operation: anOperation)
!
applyTo: anObject
self isMerged ifFalse: [self error: 'You must resolve all the conflicts first'].
conflicts do: [:ea | ea applyTo: anObject]
!
conflicts
^ conflicts ifNil: [conflicts _ OrderedCollection new]
!
isMerged
^ self conflicts allSatisfy: [:ea | ea isResolved]
!
load
| loader |
loader _ MCPackageLoader new.
loader provisions addAll: self provisions.
self applyTo: loader.
loader load
!
loadWithNameLike: baseName
| loader |
loader _ MCPackageLoader new.
loader provisions addAll: self provisions.
self applyTo: loader.
loader loadWithNameLike: baseName
!
mergedSnapshot
^ MCPatcher apply: self to: self baseSnapshot
!
operations
^ #()
!
provisions
^ #()
! !
!MCMerger class methodsFor:'documentation'!
version
^ '$Header: /cvs/stx/stx/goodies/monticello/MCMerger.st,v 1.1 2006-11-22 13:08:20 cg Exp $'
! !