CypressPackageStructure.st
author jv
Mon, 03 Sep 2012 11:09:18 +0000
changeset 8 5d48f4894483
parent 7 dce8e52bd7ea
permissions -rw-r--r--
- CypressPackageReader comment/format in: #readClassStructureFromEntry: - CypressPackageStructure added: #asChangeSet - CypressClassStructure changed: #changesOn: - CypressMethodStructure changed: #changesOn: #classStructure: - stx_goodies_cypress changed: #classNamesAndAttributes #extensionMethodNames #preRequisites - extensions ...
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     1
"{ Package: 'stx:goodies/cypress' }"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     2
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     3
CypressStructure subclass:#CypressPackageStructure
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     4
	instanceVariableNames:'classes extensions'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     5
	classVariableNames:''
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     6
	poolDictionaries:''
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     7
	category:'Cypress-Structure'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     8
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     9
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    10
CypressPackageStructure comment:'Main comment stating the purpose of this class and relevant relationship to other classes.

Possible useful expressions for doIt or printIt.

Structure:
 instVar1		type -- comment about the purpose of instVar1
 instVar2		type -- comment about the purpose of instVar2

Any further useful comments about the general approach of this implementation.'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    11
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    12
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    13
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    14
!CypressPackageStructure class methodsFor:'instance creation'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    15
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    16
fromJson: aJsonString
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    17
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    18
	^self fromJs: (CypressJsonParser parse: aJsonString)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    19
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    20
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    21
fromPackage: aCypressPackageDefinition
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    22
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    23
	^(self new) 
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    24
		fromPackage: aCypressPackageDefinition;
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    25
		yourself
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    26
! !
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    27
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    28
!CypressPackageStructure methodsFor:'accessing'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    29
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    30
classes
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    31
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    32
	classes ifNil: [ classes := OrderedCollection new ].
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    33
	^classes
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    34
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    35
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    36
extensions
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    37
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    38
	extensions ifNil: [ extensions := OrderedCollection new ].
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    39
	^extensions
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    40
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    41
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    42
packageExtension
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    43
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    44
	^self properties at: 'extension' ifAbsent: ['.package' ]
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    45
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    46
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    47
packageName
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    48
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    49
	^self name copyFrom: 1 to: (self name size - self packageExtension size)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    50
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    51
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    52
packageStructure
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    53
	^self
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    54
! !
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    55
6
65414b4bbe93 - CypressStructure
jv
parents: 5
diff changeset
    56
!CypressPackageStructure methodsFor:'converting'!
65414b4bbe93 - CypressStructure
jv
parents: 5
diff changeset
    57
8
5d48f4894483 - CypressPackageReader
jv
parents: 7
diff changeset
    58
asChangeSet
5d48f4894483 - CypressPackageReader
jv
parents: 7
diff changeset
    59
    | changeset |
5d48f4894483 - CypressPackageReader
jv
parents: 7
diff changeset
    60
5d48f4894483 - CypressPackageReader
jv
parents: 7
diff changeset
    61
    changeset := super asChangeSet.
5d48f4894483 - CypressPackageReader
jv
parents: 7
diff changeset
    62
    changeset name: (self name , ' (loaded from Cypress)').
5d48f4894483 - CypressPackageReader
jv
parents: 7
diff changeset
    63
    ^changeset
5d48f4894483 - CypressPackageReader
jv
parents: 7
diff changeset
    64
5d48f4894483 - CypressPackageReader
jv
parents: 7
diff changeset
    65
    "Created: / 03-09-2012 / 11:52:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5d48f4894483 - CypressPackageReader
jv
parents: 7
diff changeset
    66
!
5d48f4894483 - CypressPackageReader
jv
parents: 7
diff changeset
    67
6
65414b4bbe93 - CypressStructure
jv
parents: 5
diff changeset
    68
changesOn:aStream
65414b4bbe93 - CypressStructure
jv
parents: 5
diff changeset
    69
    "superclass CypressStructure says that I am responsible to implement this method"
65414b4bbe93 - CypressStructure
jv
parents: 5
diff changeset
    70
7
dce8e52bd7ea - CypressPackageStructure
jv
parents: 6
diff changeset
    71
    classes ? #() do:[:cls | cls changesOn: aStream ].
dce8e52bd7ea - CypressPackageStructure
jv
parents: 6
diff changeset
    72
    extensions ? #() do:[:ext | ext changesOn: aStream ].
6
65414b4bbe93 - CypressStructure
jv
parents: 5
diff changeset
    73
7
dce8e52bd7ea - CypressPackageStructure
jv
parents: 6
diff changeset
    74
    "Modified: / 03-09-2012 / 10:57:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
6
65414b4bbe93 - CypressStructure
jv
parents: 5
diff changeset
    75
! !
65414b4bbe93 - CypressStructure
jv
parents: 5
diff changeset
    76
1
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    77
!CypressPackageStructure methodsFor:'initialization'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    78
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    79
fromJs: jsObject
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    80
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    81
	name := jsObject at: 'name'.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    82
	(jsObject at: 'contents') do: [:jsClassObject| | classStructure objectName |
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    83
		classStructure := (CypressClassStructure new)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    84
                		packageStructure: self;
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    85
				yourself.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    86
                (  '*.extension' match:(objectName := jsClassObject at: 'name') )
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    87
			ifTrue: [ 
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    88
				classStructure isClassExtension: true.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    89
				self extensions add: classStructure ]
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    90
			ifFalse: [
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    91
				( '*.class' match: objectName)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    92
					ifTrue: [ 
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    93
						classStructure isClassExtension: false.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    94
						self classes add: classStructure ]].
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    95
		classStructure fromJs: jsClassObject].
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    96
	properties := jsObject at: 'properties.json'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    97
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    98
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    99
fromPackage: aCypressPackageDefinition
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   100
4
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   101
        | snapshot classMap classDefinitions classStructure |
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   102
        snapshot := aCypressPackageDefinition snapshot.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   103
        name := (aCypressPackageDefinition name copy
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   104
                    replaceAll: $: with:$_;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   105
                    replaceAll: $/ with:$_;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   106
                    yourself)
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   107
                    , '.package'.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   108
        properties := Dictionary new.
6
65414b4bbe93 - CypressStructure
jv
parents: 5
diff changeset
   109
        properties at: '_stx_name' put: aCypressPackageDefinition name.
4
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   110
        classDefinitions := Set new.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   111
        classMap := Dictionary new.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   112
        snapshot definitions do: [:definition |  
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   113
                        definition 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   114
                                classDefinition: [:classDefinition |  classDefinitions add: classDefinition ] 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   115
                                methodDefinition: [:methodDefinition | 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   116
                                        (classMap 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   117
                                                at: methodDefinition className 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   118
                                                ifAbsent: [classMap at: methodDefinition className put: Set new]) 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   119
                                                        add: methodDefinition. ]].
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   120
        classDefinitions do: [:classDefinition |
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   121
                classStructure := (CypressClassStructure fromClassDefinition: classDefinition)
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   122
                        packageStructure: self.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   123
                (classMap removeKey: classDefinition className ifAbsent: [#()]) do: [:methodDefinition | | methodStructure |
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   124
                        methodStructure := (CypressMethodStructure fromMethodDefinition: methodDefinition)
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   125
                                packageStructure: self;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   126
                                classStructure: classStructure.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   127
                        (methodDefinition
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   128
                                instanceMethod: [:instanceMethod | classStructure instanceMethods ] 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   129
                                classMethod: [:classMethod | classStructure classMethods ])
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   130
                                        at: methodDefinition selector
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   131
                                        put: methodStructure ].
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   132
                self classes add: classStructure ].
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   133
        classMap keysAndValuesDo: [:className :methods |
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   134
                classStructure := (CypressClassStructure new name: className)
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   135
                        packageStructure: self.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   136
                methods do: [:methodDefinition | | methodStructure |
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   137
                        methodStructure := (CypressMethodStructure fromMethodDefinition: methodDefinition)
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   138
                                packageStructure: self;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   139
                                classStructure: classStructure.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   140
                        (methodDefinition
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   141
                                instanceMethod: [:instanceMethod | classStructure instanceMethods ] 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   142
                                classMethod: [:classMethod | classStructure classMethods ])
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   143
                                        at: methodDefinition selector
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   144
                                        put: methodStructure ].
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   145
                self extensions add: classStructure ].
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   146
6
65414b4bbe93 - CypressStructure
jv
parents: 5
diff changeset
   147
    "Modified: / 31-08-2012 / 19:56:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   148
! !
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   149
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   150
!CypressPackageStructure methodsFor:'snapshotting'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   151
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   152
snapshot
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   153
        | definitions |
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   154
        definitions := OrderedCollection new.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   155
        self classes do: [:classStructure |
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   156
                definitions add: classStructure asCypressClassDefinition.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   157
                (classStructure instanceMethods values asArray asSortedCollection: [:a :b | a selector <= b selector]) do: [:methodStructure |
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   158
                        definitions add: methodStructure asCypressMethodDefinition ].
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   159
                (classStructure classMethods values asArray asSortedCollection: [:a :b | a selector <= b selector]) do: [:methodStructure |
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   160
                        definitions add: methodStructure asCypressMethodDefinition ]].
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   161
        self extensions do: [:classStructure |
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   162
                (classStructure instanceMethods values asArray asSortedCollection: [:a :b | a selector <= b selector]) do: [:methodStructure |
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   163
                        definitions add: methodStructure asCypressMethodDefinition ].
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   164
                (classStructure classMethods values asArray asSortedCollection: [:a :b | a selector <= b selector]) do: [:methodStructure |
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   165
                        definitions add: methodStructure asCypressMethodDefinition ]].
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   166
        ^ CypressSnapshot definitions: definitions
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   167
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   168
    "Modified: / 30-08-2012 / 13:31:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   169
! !
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   170
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   171
!CypressPackageStructure methodsFor:'writing'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   172
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   173
writeJsonOn: aStream  indent: startIndent
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   174
4
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   175
        | indent |
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   176
        indent := startIndent.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   177
        aStream 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   178
                tab: indent;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   179
                nextPutAll: '{';
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   180
                cr.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   181
        indent := indent + 1.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   182
        aStream
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   183
                tab: indent;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   184
                nextPutAll: '"name"';
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   185
                nextPutAll: ' : ';
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   186
                nextPutAll: '"', self name, '",'.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   187
        aStream
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   188
                cr;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   189
                tab: indent;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   190
                nextPutAll: '"contents" : [';
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   191
                cr;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   192
                yourself.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   193
        1 to: self classes size do: [:index | | classStructure | 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   194
                classStructure := self classes at: index.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   195
                classStructure writeJsonOn: aStream indent: indent + 1.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   196
                (self extensions size > 0 or: [ index < self classes size]) ifTrue: [ aStream nextPutAll: ','; newLine. ]].
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   197
        1 to: self extensions size do: [:index | | classStructure | 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   198
                classStructure := self extensions at: index.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   199
                classStructure writeJsonOn: aStream indent: indent + 1.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   200
                index < self extensions size ifTrue: [ aStream nextPutAll: ','; newLine.] ].
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   201
        aStream
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   202
                cr;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   203
                tab: indent;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   204
                nextPutAll: '],';
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   205
                cr;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   206
                tab: indent;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   207
                nextPutAll: '"properties.json" : '.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   208
        self properties writeCypressJsonOn: aStream forHtml: true indent: indent.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   209
        indent := indent - 1.
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   210
        aStream 
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   211
                cr;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   212
                tab: indent;
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   213
                nextPutAll: '}'
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   214
207b76be6bcd Fixes to write a package in Cypress format
jv
parents: 1
diff changeset
   215
    "Modified: / 30-08-2012 / 14:49:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   216
! !
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   217
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   218
!CypressPackageStructure class methodsFor:'documentation'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   219
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   220
version_SVN
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   221
    ^ '$Id::                                                                                                                        $'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   222
! !