MCVersionInfoWriter.st
author Claus Gittinger <cg@exept.de>
Sat, 20 Aug 2011 14:27:04 +0200
changeset 328 9662e4fa12be
parent 218 aa8bbc475236
child 701 b9cadb6066e1
permissions -rw-r--r--
initial checkin

"{ Package: 'stx:goodies/monticello' }"

MCWriter subclass:#MCVersionInfoWriter
	instanceVariableNames:'written'
	classVariableNames:''
	poolDictionaries:''
	category:'Monticello-Storing'
!


!MCVersionInfoWriter methodsFor:'as yet unclassified'!

isWritten: aVersionInfo
	^ self written includes: aVersionInfo
!

writeVersionInfo: aVersionInfo
        (self isWritten: aVersionInfo)
                ifTrue: [^ stream nextPutAll: '(id ', aVersionInfo id asString printString, ')'].
        stream nextPut: $(.
        #(name message id date time author) 
                do: [:sel | 
                        stream nextPutAll: sel.
                        stream nextPut: Character space.
                        ((aVersionInfo perform: sel) ifNil: ['']) printString storeOn: stream.
                        stream nextPut: $ ].
        stream nextPutAll: 'ancestors ('.
        aVersionInfo ancestors do: [:ea | self writeVersionInfo: ea].
        stream nextPutAll: ') stepChildren ('.
        aVersionInfo stepChildren do: [:ea | self writeVersionInfo: ea].
        stream nextPutAll: '))'.
        self wrote: aVersionInfo

    "Modified: / 11-09-2010 / 21:44:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!

written
	^ written ifNil: [written := Set new]
!

wrote: aVersionInfo
	self written add: aVersionInfo
! !

!MCVersionInfoWriter class methodsFor:'documentation'!

version
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCVersionInfoWriter.st,v 1.4 2011-08-20 12:27:04 cg Exp $'
!

version_CVS
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCVersionInfoWriter.st,v 1.4 2011-08-20 12:27:04 cg Exp $'
!

version_SVN
    ^ '§Id: MCVersionInfoWriter.st 7 2010-09-12 07:18:55Z vranyj1 §'
! !