mercurial/HGRevisionAnnotation.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 21 Nov 2012 01:21:47 +0000
changeset 88 1ad71a063a20
child 115 b1ed2d29054b
permissions -rw-r--r--
Bunch of fixes. HGPackageModel: fixed temporary working copy creation. Must update temporary working copy to a revision the package in image is based on. HGStatus & HGCommandParser: added new status (Copied), fixed command parser to correctly parse copied file status. Added HGRevisionInfo class as interface to AbstractSourceCodeManager. HGRepository & HGWorkingCopy: improved cloning and updating.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:libscm/mercurial' }"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
Annotation subclass:#HGRevisionAnnotation
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
	instanceVariableNames:'revision'
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
	classVariableNames:''
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	poolDictionaries:''
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	category:'SCM-Mercurial-StX'
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
!HGRevisionAnnotation class methodsFor:'instance creation'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
revision: aString
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
    ^self new revision: aString
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
    "Created: / 20-11-2012 / 23:36:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
!HGRevisionAnnotation methodsFor:'accessing'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
key
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
    "superclass Annotation says that I am responsible to implement this method"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
    ^ #HGRevision:
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
    "Modified: / 20-11-2012 / 23:27:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
revision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
    ^ revision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
revision:aStringOrHGRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
    revision := aStringOrHGRevision asHGRevision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
    "Modified: / 20-11-2012 / 23:32:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
!HGRevisionAnnotation methodsFor:'accessing-pragma'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
arguments
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
    "Answer the arguments of the receiving pragma. For a pragma defined as <key1: val1 key2: val2> this will answer #(val1 val2)."
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
    ^ Array with: revision asString
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
    "Modified: / 20-11-2012 / 23:28:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
!HGRevisionAnnotation methodsFor:'initialization'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
setArguments:anArray
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
    "Ignored"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
    "Modified: / 20-11-2012 / 23:28:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
setKeyword:aSymbol
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
    "Ignored"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    "Modified: / 20-11-2012 / 23:28:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
setMethod:aCompiledMethod
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
    "Ignored"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
    "Modified: / 20-11-2012 / 23:28:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
!HGRevisionAnnotation methodsFor:'printing & storing'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
storeOn:aStream
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
    "superclass Annotation says that I am responsible to implement this method"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
    aStream nextPutAll: '(HGRevisionAnnotation revision: '.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
    revision asString storeOn: aStream.
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
    aStream nextPut:$).
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
    "Modified: / 20-11-2012 / 23:31:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
!HGRevisionAnnotation methodsFor:'processing'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
annotatesClass:aClass
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
    "Ignored"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
    "Modified: / 20-11-2012 / 23:31:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
annotatesMethod:aMethod
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
    "Ignored"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
    "Modified: / 20-11-2012 / 23:31:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
! !
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
!HGRevisionAnnotation class methodsFor:'documentation'!
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
version_HG
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
    "Never, ever change this method. Ask JV or CG why"
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
    ^thisContext method mclass theNonMetaclass instVarNamed: #revision
1ad71a063a20 Bunch of fixes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
! !