reports/Builder__ReportExtensionsSourceInfo.st
author Patrik Svestka <patrik.svestka@gmail.com>
Wed, 14 Nov 2018 12:50:40 +0100
branchjv
changeset 533 1bed627ec135
parent 274 b13db8438e4a
permissions -rw-r--r--
Issue #239: Fix all Smalltak/X source files to be in unicode (UTF8 without BOM) and prefixed by "{ Encoding: utf8 }" when any unicode character is present - All source *.st files are now Unicode UTF8 without BOM Files are in two groups (fileOut works this way in Smalltalk/X): - containing a unicode character have "{ Encoding: utf8 }" at the header - ASCII only are without the header
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
204
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/builder/reports' }"
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"{ NameSpace: Builder }"
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
ReportSourceInfo subclass:#ReportExtensionsSourceInfo
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:''
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'Builder-Reports-Utils'
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
264
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    13
!ReportExtensionsSourceInfo methodsFor:'accessing'!
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    14
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    15
pathNameAbsolute: aBoolean
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    16
    "Return a path (as String) to file containing the source code. The file points to the
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    17
     real source file. If `aBoolean` is true, then absolute path is returned, otherwise
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    18
     realtive path to package root is returned."
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    19
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    20
    | packageDir |
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    21
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    22
    packageDir := aBoolean 
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    23
                    ifTrue:[ (Smalltalk getPackageDirectoryForPackage: package) pathName ]
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    24
                    ifFalse: [ package asString replaceAll: $: with: Filename separator; replaceAll: $/ with: Filename separator ].
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    25
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    26
    ^ packageDir , Filename separator , 'extensions.st'.
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    27
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    28
    "
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    29
    (Builder::ReportSourceInfo forExtensionsInPackage: 'stx:libtool') pathNameAbsolute: true
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    30
    (Builder::ReportSourceInfo forExtensionsInPackage: 'stx:libtool') pathNameAbsolute: false
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    31
    "
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    32
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    33
    "Created: / 16-12-2014 / 10:27:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    34
! !
ff9647e01309 Added ReportSourceInfo>>pathNameAbsolute: aBoolean
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 204
diff changeset
    35
204
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
!ReportExtensionsSourceInfo methodsFor:'initialization'!
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
initializeWithPackage: pkg
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
    package := pkg.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
    self setup.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
    "Created: / 29-07-2013 / 18:38:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
! !
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
!ReportExtensionsSourceInfo methodsFor:'utilities'!
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
fileOutOn: streamArg
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
    "This code is stupid as it is a copy-paste of several methods here and there that
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
     files out an extension.st. But the the original code is so rubbish so I had
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
     to do it this way. Sorry."
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
    | extensions wide stream s methodsSortedByName defClass scmManagerOrNil |
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
    extensions := ProjectDefinition searchForExtensionsWithProject: package.     
274
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
    55
    extensions isEmptyOrNil ifTrue:[ ^ self ].
204
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
    wide := false.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
    stream := streamArg.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
    extensions do:[:method|
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
        wide := wide or:[method source isWideString].
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    ].
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
    wide ifTrue:[
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
        stream := EncodedStream stream: stream encoder: (CharacterEncoder encoderForUTF8).      
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
        stream nextPutAll: '"{ Encoding: utf8 }"'; cr;cr.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
    ].
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
    s := stream.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
    s nextPutAll:'"{ Package: '''.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
    s nextPutAll:package asString.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
    s nextPutAll:''' }"'; nextPutChunkSeparator; cr; cr.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
    "/ don't write a timestamp. Otherwise we would always generate a new version, even if nothing changed
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
    "/ s nextPutAll:(Smalltalk timeStamp).
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
    "/ s nextPutChunkSeparator. 
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
    "/ s cr; cr.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
    "/ sort them by name (to avoid conflicts due to SCM merge)
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
    methodsSortedByName := extensions asOrderedCollection.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
    methodsSortedByName sort:[:a :b |
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
                                |clsA clsB|
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
                                clsA := a mclass name.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
                                clsB := b mclass name.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
                                clsA < clsB ifTrue:[
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
                                    true
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
                                ] ifFalse:[
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
                                    clsA > clsB ifTrue:[
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
                                        false
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
                                    ] ifFalse:[
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
                                        a selector < b selector
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
                                    ]
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
                                ]
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
                              ].
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
    methodsSortedByName do:[:aMethod |
274
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
    95
        |cat privacy aStream|
204
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
        aStream := s.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
    aStream nextPutChunkSeparator.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
    aMethod mclass name printOn:aStream.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
"/        self printClassNameOn:aStream.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
    (privacy := aMethod privacy) ~~ #public ifTrue:[
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
        aStream space; nextPutAll:privacy; nextPutAll:'MethodsFor:'.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
    ] ifFalse:[
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
        aStream nextPutAll:' methodsFor:'.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
    ].
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
    cat := aMethod category ? ''.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
    aStream nextPutAll:cat asString storeString.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
    aStream nextPutChunkSeparator; cr; cr.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
    SmalltalkChunkFileSourceWriter new fileOutMethod:aMethod on:aStream.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
    aStream space.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
    aStream nextPutChunkSeparator.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
            aStream cr.    
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
        s cr.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
    ].
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
    scmManagerOrNil := AbstractSourceCodeManager managerForPackage: package.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
    scmManagerOrNil notNil ifTrue:[
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
        defClass := ProjectDefinition definitionClassForPackage:package.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
        defClass notNil ifTrue:[
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
            "/ make sure, an extensionVersion_XXX method is included...
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
            "/ (notice: no need to support a secondary backward compatible non-manager related version method here)
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
            (methodsSortedByName contains:[:aMethod | aMethod selector == scmManagerOrNil nameOfVersionMethodForExtensions]) ifFalse:[
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
                s nextPutLine:('!!%1 class methodsFor:''documentation''!!' bindWith:defClass name).
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
                s cr.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
                s nextChunkPut:
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
                    (scmManagerOrNil versionMethodTemplateForSmalltalkFor:(scmManagerOrNil nameOfVersionMethodForExtensions)).
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
                s space; nextPutChunkSeparator; cr.
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
            ].
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
        ].
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
    ].
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
274
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
   137
    "Modified: / 09-03-2015 / 15:55:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
204
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
!
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
validate
274
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
   141
    | extensions file |
204
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
274
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
   143
    extensions := ProjectDefinition searchForExtensionsWithProject: package.     
204
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
    file := (Smalltalk getPackageDirectoryForPackage: package) / 'extensions.st'.                       
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
274
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
   146
    extensions isEmptyOrNil ifTrue:[
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
   147
        self assert: file exists not.
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
   148
    ] ifFalse:[
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
   149
        self validateAgainstReference: file.
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
   150
    ]
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
   151
b13db8438e4a Fix in validation of extensions source info.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 264
diff changeset
   152
    "Modified: / 09-03-2015 / 15:58:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
204
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
! !
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
!ReportExtensionsSourceInfo class methodsFor:'documentation'!
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
version
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
    ^ '$Header$'
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
!
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
version_CVS
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
    ^ '$Header$'
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
! !
5450b318385a initial checkin
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164