"{ Package: 'stx:libsvn' }"
AbstractSourceCodeManager subclass:#SVNSourceCodeManager
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
category:'System-SourceCodeManagement'
!
!SVNSourceCodeManager class methodsFor:'documentation'!
documentation
"
For now, this is a dummy SourceCodeManager.
It is only provided to deliver the correct versionMethodNameTemplates
and versionMethod names.
Might get more in the future.
"
! !
!SVNSourceCodeManager class methodsFor:'queries'!
isExperimental
^ OperatingSystem getLoginName ~= 'cg'.
^ true
!
managerTypeName
^ 'SVN'
!
nameOfVersionMethodForExtensions
^ #'extensionsVersion_SVN'
!
nameOfVersionMethodInClasses
^ #'version_SVN'
! !
!SVNSourceCodeManager class methodsFor:'source code access'!
loadPackageWithId: aPackageId fromRepositoryAsAutoloaded: doLoadAsAutoloaded
| retval loadBlock manager |
manager := SVN::RepositoryManager current.
loadBlock := [
| repo packageDir |
repo := manager repositoryForPackage: aPackageId.
retval := (repo notNil and:[repo exists]) ifTrue:[
repo workingCopy checkout.
packageDir := Smalltalk packageDirectoryForPackageId:aPackageId.
Smalltalk
loadPackageWithId:aPackageId
fromDirectory:packageDir
asAutoloaded:doLoadAsAutoloaded
] ifFalse:[false]
].
(Query query == true)
ifTrue:[loadBlock value]
ifFalse:[
Query
answer: true
do:[
SVN::ProgressDialog
openOn: loadBlock
title: ' Loading...'
subtitle: aPackageId asText allItalic
]
].
^retval
"Created: / 09-04-2009 / 17:20:01 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !
!SVNSourceCodeManager class methodsFor:'testing'!
isSVN
^ true
! !
!SVNSourceCodeManager class methodsFor:'documentation'!
version
^ '$Header$'
!
version_CVS
^ '$Header$'
! !