SVN__CommitTask.st
author fm
Mon, 19 Oct 2009 14:52:48 +0200
changeset 492 74ff0960961c
parent 383 014a38aee2e8
child 675 cdbc7651a0a0
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
383
014a38aee2e8 *** empty log message ***
fm
parents: 282
diff changeset
     1
"{ Package: 'stx:libsvn' }"
49
033a7e409639 initial checkin
fm
parents:
diff changeset
     2
033a7e409639 initial checkin
fm
parents:
diff changeset
     3
"{ NameSpace: SVN }"
033a7e409639 initial checkin
fm
parents:
diff changeset
     4
492
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
     5
FileoutLikeTask subclass:#CommitTask
249
d150a88bc21f *** empty log message ***
fm
parents: 198
diff changeset
     6
	instanceVariableNames:'message'
49
033a7e409639 initial checkin
fm
parents:
diff changeset
     7
	classVariableNames:''
033a7e409639 initial checkin
fm
parents:
diff changeset
     8
	poolDictionaries:''
033a7e409639 initial checkin
fm
parents:
diff changeset
     9
	category:'SVN-Tasks'
033a7e409639 initial checkin
fm
parents:
diff changeset
    10
!
033a7e409639 initial checkin
fm
parents:
diff changeset
    11
033a7e409639 initial checkin
fm
parents:
diff changeset
    12
033a7e409639 initial checkin
fm
parents:
diff changeset
    13
!CommitTask methodsFor:'accessing'!
033a7e409639 initial checkin
fm
parents:
diff changeset
    14
033a7e409639 initial checkin
fm
parents:
diff changeset
    15
buildSupportFilesFor: pkgDef
033a7e409639 initial checkin
fm
parents:
diff changeset
    16
033a7e409639 initial checkin
fm
parents:
diff changeset
    17
    | common |
492
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    18
    common := #('abbrev.stc' 'Make.proto' 'Make.spec').
49
033a7e409639 initial checkin
fm
parents:
diff changeset
    19
    ^pkgDef isApplicationDefinition
492
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    20
	ifTrue:[common]
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    21
	ifFalse:[common copyWith: 'libInit.cc']
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    22
49
033a7e409639 initial checkin
fm
parents:
diff changeset
    23
    "
492
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    24
	SVN::CommitTask basicNew buildSupportFilesFor: stx_goodies_libsvn
49
033a7e409639 initial checkin
fm
parents:
diff changeset
    25
    "
033a7e409639 initial checkin
fm
parents:
diff changeset
    26
033a7e409639 initial checkin
fm
parents:
diff changeset
    27
    "Created: / 20-06-2009 / 12:03:51 / Jan Vrany <vranyj1@fel.cvut.cz>"
033a7e409639 initial checkin
fm
parents:
diff changeset
    28
!
033a7e409639 initial checkin
fm
parents:
diff changeset
    29
033a7e409639 initial checkin
fm
parents:
diff changeset
    30
message
033a7e409639 initial checkin
fm
parents:
diff changeset
    31
    ^ message
033a7e409639 initial checkin
fm
parents:
diff changeset
    32
!
033a7e409639 initial checkin
fm
parents:
diff changeset
    33
033a7e409639 initial checkin
fm
parents:
diff changeset
    34
message:aString
033a7e409639 initial checkin
fm
parents:
diff changeset
    35
    message := aString.
033a7e409639 initial checkin
fm
parents:
diff changeset
    36
! !
033a7e409639 initial checkin
fm
parents:
diff changeset
    37
033a7e409639 initial checkin
fm
parents:
diff changeset
    38
!CommitTask methodsFor:'executing'!
033a7e409639 initial checkin
fm
parents:
diff changeset
    39
033a7e409639 initial checkin
fm
parents:
diff changeset
    40
do
033a7e409639 initial checkin
fm
parents:
diff changeset
    41
033a7e409639 initial checkin
fm
parents:
diff changeset
    42
    self
492
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    43
	doUpdateWorkingCopy;
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    44
	doCommit
49
033a7e409639 initial checkin
fm
parents:
diff changeset
    45
033a7e409639 initial checkin
fm
parents:
diff changeset
    46
    "Created: / 23-03-2009 / 11:15:37 / Jan Vrany <vranyj1@fel.cvut.cz>"
033a7e409639 initial checkin
fm
parents:
diff changeset
    47
    "Modified: / 17-06-2009 / 10:16:37 / Jan Vrany <vranyj1@fel.cvut.cz>"
033a7e409639 initial checkin
fm
parents:
diff changeset
    48
!
033a7e409639 initial checkin
fm
parents:
diff changeset
    49
033a7e409639 initial checkin
fm
parents:
diff changeset
    50
doCommit
033a7e409639 initial checkin
fm
parents:
diff changeset
    51
    | containers  commitInfo |
033a7e409639 initial checkin
fm
parents:
diff changeset
    52
492
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    53
    self do:
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    54
	    [ SVN::ActivityNotification notify: 'Commiting ' , self package.
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    55
	    containers := self isSelectiveFileoutTask
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    56
			ifTrue: [ self containersToFileOut ]
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    57
			ifFalse: [ #() ].
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    58
	    self synchronized:
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    59
		    [ commitInfo := (CommitCommand new)
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    60
				workingCopy: self workingCopy;
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    61
				message: message ? '<no message>';
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    62
				paths: containers;
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    63
				execute.
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    64
		     "Update the working copy. We need svn info
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    65
		     to report commited revision"
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    66
		    (UpdateCommand new)
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    67
			workingCopy: self workingCopy;
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    68
			execute ].
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    69
	    self doCompileSvnRevisionNrMethod: true.
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    70
	    SVN::ActivityNotification notify: 'Shrinking changes'.
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    71
	    (ChangeSet current)
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    72
		condenseChangesForPackage2: self package;
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    73
		condenseChangesForExtensionsInPackage: self package;
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    74
		flushChangedClassesCache;
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    75
		yourself. ].
49
033a7e409639 initial checkin
fm
parents:
diff changeset
    76
    self workingCopy commited.
033a7e409639 initial checkin
fm
parents:
diff changeset
    77
    ^ commitInfo
033a7e409639 initial checkin
fm
parents:
diff changeset
    78
033a7e409639 initial checkin
fm
parents:
diff changeset
    79
    "Created: / 11-04-2008 / 09:20:01 / Jan Vrany <vranyj1@fel.cvut.cz>"
033a7e409639 initial checkin
fm
parents:
diff changeset
    80
    "Modified: / 19-08-2009 / 12:27:44 / Jan Vrany <vranyj1@fel.cvut.cz>"
033a7e409639 initial checkin
fm
parents:
diff changeset
    81
!
033a7e409639 initial checkin
fm
parents:
diff changeset
    82
033a7e409639 initial checkin
fm
parents:
diff changeset
    83
doUpdateWorkingCopy
033a7e409639 initial checkin
fm
parents:
diff changeset
    84
033a7e409639 initial checkin
fm
parents:
diff changeset
    85
    self do:[
492
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    86
	self workingCopy ensureIsValid.
74ff0960961c *** empty log message ***
fm
parents: 383
diff changeset
    87
	self doFileOutAll
49
033a7e409639 initial checkin
fm
parents:
diff changeset
    88
    ]
033a7e409639 initial checkin
fm
parents:
diff changeset
    89
033a7e409639 initial checkin
fm
parents:
diff changeset
    90
    "Created: / 11-04-2008 / 09:19:27 / Jan Vrany <vranyj1@fel.cvut.cz>"
033a7e409639 initial checkin
fm
parents:
diff changeset
    91
    "Modified: / 17-08-2009 / 18:28:34 / Jan Vrany <vranyj1@fel.cvut.cz>"
033a7e409639 initial checkin
fm
parents:
diff changeset
    92
! !
033a7e409639 initial checkin
fm
parents:
diff changeset
    93
033a7e409639 initial checkin
fm
parents:
diff changeset
    94
!CommitTask class methodsFor:'documentation'!
033a7e409639 initial checkin
fm
parents:
diff changeset
    95
033a7e409639 initial checkin
fm
parents:
diff changeset
    96
version
033a7e409639 initial checkin
fm
parents:
diff changeset
    97
    ^ '$Header$'
198
9942a71487d0 changed: #version_SVN
fm
parents: 49
diff changeset
    98
!
9942a71487d0 changed: #version_SVN
fm
parents: 49
diff changeset
    99
9942a71487d0 changed: #version_SVN
fm
parents: 49
diff changeset
   100
version_CVS
9942a71487d0 changed: #version_SVN
fm
parents: 49
diff changeset
   101
    ^ '$Header$'
9942a71487d0 changed: #version_SVN
fm
parents: 49
diff changeset
   102
!
9942a71487d0 changed: #version_SVN
fm
parents: 49
diff changeset
   103
9942a71487d0 changed: #version_SVN
fm
parents: 49
diff changeset
   104
version_SVN
282
6ebdeeee7c53 update #version_SVN with § as keyword expansion character
fm
parents: 249
diff changeset
   105
    ^'§Id: SVN__CommitTask.st 110 2009-08-19 13:21:10Z vranyj1 §'
49
033a7e409639 initial checkin
fm
parents:
diff changeset
   106
! !