Re: Plug-ins
Re: Plug-ins
- Subject: Re: Plug-ins
- From: Clark Mueller <email@hidden>
- Date: Mon, 19 Mar 2007 21:45:43 -0600
I've tried this out and refactored my app, and it looks like this
solution will do exactly what I need. Thanks Chuck!
Clark
On 19 Mar 07, at 1:03 PM, Chuck Hill wrote:
On Mar 19, 2007, at 11:58 AM, Clark Mueller wrote:
Chuck,
So what I'm looking for then is something like this?
Core.framework -> MyAppComponents.framework ->
CustomerComponents.framework -> MyPrettyEmptyAppWrapper.woa
Yes.
Then at build time,
Heck, at runtime if you want. I build with a generic, empty custom
framework. One build for all clients. Then I just copy in their
custom framework.
I can tell my app to include CustomerComponents.framework and
MyAppComponents.framework on its classpath, and then if
CustomerComponents.framework is present, it will override anything
like named in MyAppComponents.framework?
Yep. It can also use CustomOrderItem.java instead of
OrderItem.java if you need to change something generated from the
EOModel.
I'll definitely take a look at GVC.SiteMaker this afternoon. Looks
like a lot to take in. :-)
There is a lot of other stuff there too. Concentrate on the
CoreApplication class. It has the code, or pointers to the code,
that is relevant.
Chuck
On 19 Mar 07, at 11:48 AM, Chuck Hill wrote:
Clark,
For one option, take a look at the source of GVC.SiteMaker:
http://sourceforge.net/projects/gvcsitemaker
The fundamental idea is this:
Core.framework -> Custom.framework -> App.woa
The Core implements the EOs and the customizable (replaceable)
pages / components. Custom implements client specific subclasses
of these. The App can me mostly empty. It is not in
GVC.SiteMaker, but it could be could be. The contents of
Custom.framework are found automagically. This does not cover
WebServer Resources, as I don't use them. :-)
Chuck
On Mar 19, 2007, at 9:45 AM, Clark Mueller wrote:
Hey everybody,
I'd like to build some flavor of plug-in architecture for an
application that is used by a few clients, some of whom have
very specific needs. I would basically like to just re-implement
whole components from my application on a case-by-case basis,
and I want the custom implementations to be able to ride
independently of any modifications that I make to the base
application (so that I can build a plugin for someone, or so
they can do it themselves without me needing to be involved or
worried about overwriting changes). I've thought of two ways I
might do this:
1. Re-implement/override the WOResourceManager so that I can
tell it to prioritize components from some specific search path.
How might I go about doing such a thing, such that whenever the
resource manager gets called, it adds foo/path to its resources
search path?
2. Build each plugin as a bundle containing the .wo, the Java
class, and any additional resources. Then, "inject" these
bundles into the application from a specific path at application
startup time. Is there an easy way to do this, or would it
always entail overriding WOResourceManager?
Any thoughts on which method is better and how they might be
accomplished, or if they both suck? Sorry for the lengthy post. :-)
Thanks,
Clark
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40global-village.net
This email sent to email@hidden
--
Practical WebObjects - for developers who want to increase their
overall knowledge of WebObjects or who are trying to solve
specific problems.
http://www.global-village.net/products/practical_webobjects
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40global-village.net
This email sent to email@hidden
--
Practical WebObjects - for developers who want to increase their
overall knowledge of WebObjects or who are trying to solve specific
problems.
http://www.global-village.net/products/practical_webobjects
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden