class: MCRepositoryBrowser
changed: #repositoryAdd
handle ftp-urls
show busy cursor while fetching list
--- a/MCRepositoryBrowser.st Wed Feb 12 15:53:41 2014 +0100
+++ b/MCRepositoryBrowser.st Wed Feb 12 16:37:57 2014 +0100
@@ -1,14 +1,14 @@
"{ Package: 'stx:goodies/monticello' }"
ApplicationModel subclass:#MCRepositoryBrowser
- instanceVariableNames:'repositoriesHolder packagesHolder versionsHolder
- selectedVersionHolder worker selectedVersionDetailsHolder
- selectedRepositoryHolder targetPackage targetNamespace
- lastPackage targetPackageHolder targetNamespaceNameHolder
- updateChangefileHolder selectedPackageHolder'
- classVariableNames:'LastAddedRepository LastAddedURLString'
- poolDictionaries:''
- category:'SCM-Monticello-St/X UI'
+ instanceVariableNames:'repositoriesHolder packagesHolder versionsHolder
+ selectedVersionHolder worker selectedVersionDetailsHolder
+ selectedRepositoryHolder targetPackage targetNamespace
+ lastPackage targetPackageHolder targetNamespaceNameHolder
+ updateChangefileHolder selectedPackageHolder'
+ classVariableNames:'LastAddedRepository LastAddedURLString'
+ poolDictionaries:''
+ category:'SCM-Monticello-St/X UI'
!
@@ -935,7 +935,7 @@
Dialog warn:'Invalid URL (',ex description,')'.
^ self
] do:[
- url := URL fromString:repStr.
+ url := URI fromString:repStr.
].
url isNil ifTrue:[
LastAddedURLString := repStr.
@@ -948,17 +948,27 @@
location: repStr
user: ''
password: ''
- ] ifFalse:[
- url isFileScheme ifTrue:[
- rep := MCDirectoryRepository directory:repStr.
- ].
+ ] ifFalse:[
+ url method = 'ftp' ifTrue:[
+ rep := MCFtpRepository
+ host: url host
+ directory: url path
+ user: url user
+ password: (url password ? 'anonymous')
+ ] ifFalse:[
+ url isFileScheme ifTrue:[
+ rep := MCDirectoryRepository directory:repStr.
+ ].
+ ]
].
rep isNil ifTrue:[
LastAddedURLString := repStr.
Dialog warn:'Cannot figure out access scheme from URL.'.
^ self.
+ ].
+ self withWaitCursorDo:[
+ self addRepository:rep
].
- self addRepository:rep
"Created: / 29-08-2011 / 12:25:40 / cg"
!
@@ -1242,15 +1252,15 @@
!MCRepositoryBrowser class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/goodies/monticello/MCRepositoryBrowser.st,v 1.30 2013-08-16 11:01:51 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/goodies/monticello/MCRepositoryBrowser.st,v 1.31 2014-02-12 15:37:57 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/goodies/monticello/MCRepositoryBrowser.st,v 1.30 2013-08-16 11:01:51 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/goodies/monticello/MCRepositoryBrowser.st,v 1.31 2014-02-12 15:37:57 cg Exp $'
!
version_SVN
- ^ '$Id: MCRepositoryBrowser.st,v 1.30 2013-08-16 11:01:51 cg Exp $'
+ ^ '$Id: MCRepositoryBrowser.st,v 1.31 2014-02-12 15:37:57 cg Exp $'
! !