Rename away.... I don't think any of those describe as correctly as (the name I named it, I dare not utter its name) the purpose of the Interface, but whatever we want to call it is ok.
> -----Original Message----- > From: Hani Suleiman [mailto:[EMAIL PROTECTED] > Sent: Tuesday, February 25, 2003 11:47 PM > To: [EMAIL PROTECTED] > Subject: Re: [OS-webwork] Programmatic configuration > > > Eww, what a horrible name, ProgrammableConfiguration! How about > ModifiableConfiguration? DynamicConfiguration? SettableConfiguration? > > On Wednesday, February 26, 2003, at 08:27 AM, Jason Carreira wrote: > > > I checked in the first pass at programmatic configuration. > The way it > > works is that any class, like DefaultConfiguration, which > implements > > Configuration can be registered with the ConfigurationFactory. The > > only method in the Configuration Interface is (now): > > > > public void init(ProgrammableConfiguration configurationManager) > > throws ConfigurationException; > > > > ProgrammableConfiguration is an Interface with this signature: > > > > public interface ProgrammableConfiguration { > > void addPackageContext(String name, PackageContext > > packageContext); > > > > void removePackageContext(String name); > > > > Set getPackageContextNames(); > > > > PackageContext getPackageContext(String name); > > > > Map getPackageContexts(); > > > > void reload() throws ConfigurationException; > > > > void buildRuntimeConfiguration(); > > > > Interceptor getInterceptor(String clazz) throws > > ConfigurationException; > > > > void destroy(); > > } > > > > The configuration implementation (and there are 2 now, the > > DefaultConfiguration and SimpleConfiguration which has some > hard-coded > > configuration for tests) uses the addPackageContext() method to add > > configurations as it builds them by whatever means during > its init() > > method. This is called during the reload() method of > > ConfigurationManager (which implements ProgrammableConfiguration) > > which also calls buildRuntimeConfiguration() afterwards. > The idea here > > is that the ProgrammableConfiguration keeps the programmatic > > configuration and runtime configuration separate, then builds the > > runtime from the programmatic when instructed to do so. > This lets you > > edit the programmatic configuration without interfering with the > > runtime configuration until you're done, then tell it to > > buildRuntimeConfiguration(). > > > > More on this later. Take a look if you're interested. Comments and > > suggestions welcomed. > > > > Jason > > > > -- > > Jason Carreira > > Technical Architect, Notiva Corp. > > phone: 585.240.2793 > > fax: 585.272.8118 > > email: [EMAIL PROTECTED] > > --- > > Notiva - optimizing trade relationships (tm) > > > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by: Scholarships for Techies! Can't > > afford IT training? All 2003 ictp students receive > scholarships. Get > > hands-on training in Microsoft, Cisco, Sun, Linux/UNIX, and more. > > www.ictp.com/training/sourceforge.asp > > _______________________________________________ > > Opensymphony-webwork mailing list > > [EMAIL PROTECTED] > > https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork > > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Scholarships for Techies! > Can't afford IT training? All 2003 ictp students receive > scholarships. Get hands-on training in Microsoft, Cisco, Sun, > Linux/UNIX, and more. www.ictp.com/training/sourceforge.asp > _______________________________________________ > Opensymphony-webwork mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork > ------------------------------------------------------- This SF.net email is sponsored by: Scholarships for Techies! Can't afford IT training? All 2003 ictp students receive scholarships. Get hands-on training in Microsoft, Cisco, Sun, Linux/UNIX, and more. www.ictp.com/training/sourceforge.asp _______________________________________________ Opensymphony-webwork mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork