MCGOODSRepository.st
author Claus Gittinger <cg@exept.de>
Wed, 22 Nov 2006 14:22:33 +0100
changeset 112 1978a5c86334
child 215 d7ad7e0646c6
permissions -rw-r--r--
initial checkin
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
112
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/monticello' }"
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
MCRepository subclass:#MCGOODSRepository
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
	instanceVariableNames:'hostname port connection'
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
	classVariableNames:''
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	poolDictionaries:''
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
	category:'Monticello-Repositories'
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
!MCGOODSRepository class methodsFor:'as yet unclassified'!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
creationTemplate
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
	^
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
'MCGOODSRepository
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
	host: ''localhost''
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	port: 6100'
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
description
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
	^ 'GOODS'
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
fillInTheBlankRequest
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
	^ 'GOODS Repository:'
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
host: hostname port: portNumber
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
	^ self new
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
		host: hostname;
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
		port: portNumber
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
morphicConfigure
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
	^ self fillInTheBlankConfigure
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
! !
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
!MCGOODSRepository methodsFor:'as yet unclassified'!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
basicStoreVersion: aVersion
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
	self root at: aVersion info put: aVersion.
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
	self db commit.
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
db
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
	(connection isNil or: [connection isConnected not]) ifTrue: [connection _ KKDatabase onHost:hostname port: port].
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
	
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
	^ connection
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
description
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
	^ 'goods://', hostname asString, ':', port asString
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
host: aString
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
	hostname _ aString
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
morphicOpen: aWorkingCopy
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
	(MCRepositoryInspector repository: self workingCopy: aWorkingCopy) show
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
packages
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
	^ (self root collect: [:ea | ea package]) asSet asSortedCollection
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
port: aNumber
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
	port _ aNumber
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
root
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
	self db root ifNil: [self db root: Dictionary new].
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
	^ self db root
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
versionWithInfo: aVersionInfo ifAbsent: errorBlock
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
	^ self root at: aVersionInfo ifAbsent: errorBlock
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
versionsAvailableForPackage: aPackage
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
	^ self root asArray select: [:ea | ea package = aPackage] thenCollect: [:ea | ea info]
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
! !
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
!MCGOODSRepository class methodsFor:'documentation'!
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
version
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCGOODSRepository.st,v 1.1 2006-11-22 13:22:33 cg Exp $'
1978a5c86334 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
! !