Date: 2004-07-02T08:40:08 Editor: NareshSikha <[EMAIL PROTECTED]> Wiki: Jakarta HiveMind Wiki Page: FeatureRequest URL: http://wiki.apache.org/jakarta-hivemind/FeatureRequest
no comment Change Log: ------------------------------------------------------------------------------ @@ -147,9 +147,9 @@ The descriptor files found throughout the industry have a file name that is indicative of the root element it contains. This seems natural and doesn't introduce the 'hive' semantic into what would otherwise be a regular .jar file of classes and interfaces. -== Allow for multiple entry points into the Registry == +== Allow for multiple access points into the Registry == -A good litmus test of any architecture is its ability to be viewed from multiple angles. Hivemind lives up to this test by exposing the Registry API and the <set-service/>/Java Bean property methods of obtaining Services. Why not allow (and advocate) other means such as JNDI? An interesting article on theserverside.com attests to JNDI's often overlooked capabilities (http://www.theserverside.com/news/thread.tss?thread_id=26932). A quick example of how this might look for Services would be: +A good litmus test of any architecture is its ability to be viewed from multiple angles. Hivemind lives up to this test by exposing the Registry API and the <set-service/>/Java Bean property methods of obtaining Services. Why not allow (and advocate) other means such as JNDI? An interesting article on theserverside.com attests to JNDI's often overlooked capabilities (http://www.theserverside.com/news/thread.tss?thread_id=26932). A quick example of how this might look for Services and Configurations would be: {{{ Context c = new InitialContext(); @@ -157,4 +157,32 @@ MyConfiguration mc = (MyConfiguration) c.lookup("configuration:" + MyConfiguration.class.getName()); }}} +== Deliver distinct products for API, SPI, and Reference Implementation == +=== Registry as an API === + +{{{ +import org.apache.hivemind.Registry; +import org.apache.hivemind.impl.RegistryBuilder; + +Registr r = RegistryBuilder.constructDefaultRegistry(); +}}} + +also requires the entire Hivemind framework .jar file. It could be replaced with + +{{{ +import org.apache.registry.*; + +RegistryFactory rf = RegistryFactory.newInstance(); +Registry r = rf.getRegistry(); +}}} + +which would only require a org-apache-registry.jar file. In addition to this factory developers would need access to the SPI for manipulating modules so + +{{{ +import org.apache.registry.*; +import org.apache.registry.spi.*; + +public class MyObjectFactory implements ServiceImplementationFactory { +... +}}} --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
