logo       

SMInstaller (was re: [ANN] Seaside 2.02): msg#01052

lang.smalltalk.squeak.general

Subject: SMInstaller (was re: [ANN] Seaside 2.02)


On Tue, 29 Oct 2002 goran.hultgren@xxxxxxxxxxx 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]





<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise