[Catalyst] "featurizing" a catalyst app

Rodrigo rodrigolive at gmail.com
Thu Jun 25 16:45:41 GMT 2009


Hi all,
I have an application that has many "features" (or plugins, or extensions,
or bundles, or whatever, but I'll call it "feature" for uniqueness sake),
which are subsets of the app that may or may not be bundled into the
application, depending on the customer it will be shipped to.

What I'm looking for is to have a very Eclipse-like directory structure:

MyApp/features/my_first_feature_1.0.0/root/
MyApp/features/my_first_feature_1.0.0/lib/Controller
MyApp/features/my_first_feature_1.0.0/lib/Model
MyApp/features/my_first_feature_1.0.0/lib/View

MyApp/features/another_feature_1.2.0/root/
MyApp/features/another_feature_1.2.0/lib/Controller
MyApp/features/another_feature_1.2.0/lib/Model
MyApp/features/another_feature_1.2.0/lib/View

The idea is that modules contained in features should not be aware that they
are in a feature, but work like they are in the default /lib or /root.

I think the /lib part can probably be setup using this:

__PACKAGE__->config( setup_components =3D> { search_extra =3D> [ @features =
] }
);

With a little bit of code to fillup @features correctly, and some @INC
tweaking...

But how about the /root part? Can mixed-up root dirs be seen as a single
root dir easily?

cheers,
   rodrigo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.scsys.co.uk/pipermail/catalyst/attachments/20090625/7e4bf=
b46/attachment.htm


More information about the Catalyst mailing list