SMInstaller (was re: [ANN] Seaside 2.02)
Avi Bryant
avi at beta4.com
Wed Oct 30 02:58:47 UTC 2002
On Tue, 29 Oct 2002 goran.hultgren at bluefish.se wrote:
> > (I don't necessarily recommend updating through SqueakMap, though - better
> > would be to file it in clean to a new image. Need to get that
> > SMDVSInstaller going...)
>
> Exactly! :-)
Looking at that again, I remembered what my other problem was with
#canInstall:, that I forgot to mention in my last post - since DVS files
are just .st, they get snapped up by the default installer before the DVS
installer ever gets a chance...
What I've done before in similar situations is to do a leaf-first search,
so that subclassing an existing installer (and adding narrower criteria)
is feasible.
I propose the following change to SMInstaller class:
classForPackage: aPackage
"Find the most specialized subclass that wants to handle the package."
self subclasses do:
[:ea |
(ea classForPackage: aPackage)
ifNotNilDo: [:class | ^ class]].
^ (self canInstall: aPackage) ifTrue: [self]
More information about the Squeak-dev
mailing list
|