2009/04/15 - Apache HiveMind has been retired.

For more information, please explore the Attic.

Apache > HiveMind
Font size:      

History of Changes


Version 1.1.2 (soon)

  • addAllow for customization of "parameter index" in StrategyFactory.(JC) Fixes HIVEMIND-177.
  • add New conditional "if" attribute to <sub-modules>(KW) Thanks to Johan Lindquist. Fixes HIVEMIND-85.
  • fixHiveMind LoggingInterceptor incompatible with proxies generated by outside means (CGLIB or Javassist)(JC) Fixes HIVEMIND-176.
  • fixUsing JDK proxied service in ServicePropertyFactory doesn't work(JC) Fixes HIVEMIND-169.
  • fixdocumentation on <filter after="..."> is reverse(JC) Fixes HIVEMIND-159.
  • fixJMX Support does not work if you use the class directly as the interface(AH) Fixes HIVEMIND-171.
  • fixStart script of example classes not working because of wrong packages(AH)

Version 1.1.1 (Jan 28 2006)

  • fixPerformance bottleneck with threaded services(HLS) Fixes HIVEMIND-162.
  • fixThreadLocal object is never removed in ThreadEventNotifierImpl and holds the classloader(HLS) Fixes HIVEMIND-161.

Version 1.1 (Oct 26 2005)

  • updateChange project web site navigation(HLS)
  • updateSplit up the dist-build target so that just documentation can be built(HLS)

Version 1.1-rc-1 (Sep 23 2005)

  • addAdd several more convienience methods, related to mock objects, to HiveMindTestCase(HLS)
  • updateChange the build scripts to allow for test case classes ending in "Test", and to output source with the JavaDoc(HLS)

Version 1.1-beta-3 (Aug 22 2005)

  • addAdd getControl() method to HiveMindTestCase, to locate a managed MockControl from a mock object instance.(HLS)
  • fixAllow for null values in <invoke-parent> rule.(KW)
  • fixRegistry.getServiceIds() doesn't support concrete class service points.(JC) Thanks to Ben Fortuna. Fixes HIVEMIND-148.
  • fixUpgrade Build to use a hivebuild.properties from the users home directory.(JC) Thanks to Richard Hensley. Fixes HIVEMIND-135.
  • updateChange dist targets to use SSH passphrase for authentication.(HLS)
  • updateReorganize the examples so that they can be tracked by Clover. Fix the format of times in the JUnit Test Report.(HLS)

Version 1.1-beta-2 (Jun 28 2005)

  • addJMX Enhancements (JC) Thanks to Achim Hügen. Fixes HIVEMIND-107.
  • addAdd getModuleMessages() to Registry.(JC) Fixes HIVEMIND-91.
  • addAdd getServiceIds() Method to Registry Interface.(JC) Fixes HIVEMIND-112.
  • add Show counts of configuration points, service points and schemas in HiveDoc. (HLS)
  • add New <push-content> rule added. (KW) Thanks to Richard Hensley. Fixes HIVEMIND-126.
  • add Add JUnit tests report. (HLS) Fixes HIVEMIND-123.
  • fixIBM JDK 1.4.1 and java.net.URL.openStream causes NPE"(JC) Thanks to Michael Frericks. Fixes HIVEMIND-122.
  • fixBuilderFactory attempts to autowire java.util.List.(JC) Fixes HIVEMIND-73.
  • fixCertain classloaders (AntClassLoader for example) cause NullPointerException in impl.MessageFormatter.(JC) Thanks to Paul Russell. Fixes HIVEMIND-78.
  • fixServiceImplementationFactoryParameters.getFirstParameter should cope better with zero parameters.(JC) Thanks to Marcus Brito. Fixes HIVEMIND-105.
  • fixOrdererMessages.exception uses wrong message key.(JC) Thanks to Brian K. Wallace. Fixes HIVEMIND-101.
  • fixBean services cannot implement RegistryShutdownListener.(JC) Fixes HIVEMIND-115.
  • fix Distribution .zip doesn't contain project directory (HLS) Fixes HIVEMIND-119.
  • fixGet HiveDoc to generate into the right folder, and fix overly compressed HiveDoc output.(HLS)
  • update Much improved CSS for HiveDoc. (HLS) Thanks to Vjeran Marcinko.

Version 1.1-beta-1 (Apr 29 2005)

  • add Added an AbstractArgumentMatcher that allows ArgumentMatcher to be used as ArgumentsMatcher (that is, comparing all arguments). (HLS)
  • add Added newLocation() method to HiveMindTestCase. (HLS)
  • add Apply Achim Hügen's JMX patch. (HLS) Thanks to Achim Hügen. Fixes HIVEMIND-97.
  • fixBean services could not be autowired into other services.(JC) Fixes HIVEMIND-108.
  • fixMultiple interceptors with different names for the same interceptor factory id were treated as duplicates.(JC) Fixes HIVEMIND-102.
  • fixCore service implementations which implement RegistryShutdownListener are not notified for primitive and singleton service models.(JC) Fixes HIVEMIND-103.
  • fixRemoved a potential deadlock related to the pooled service model.(HLS) Fixes HIVEMIND-104.
  • fix Allow for running with multiple Registries. (HLS) Fixes HIVEMIND-83.
  • fix Translate unique attribute values before checking uniqueness. (KW) Thanks to Michael Frericks. Fixes HIVEMIND-100.
  • fix Cache translated values in BuilderPropertyFacet. (KW) Fixes HIVEMIND-99.
  • update Rename AdapterRegistry to StrategyRegistry, and AdapterRegistryFactory to StrategyFactory, to better reflect the relationship to the Gang-of-Four Strategy pattern.(HLS)
  • update Make the interface attribute of <service-point> optional, and default to the service point's id. (HLS)
  • update Update to Javassist 3.0. (HLS)

Version 1.1-alpha-3 (Mar 22 2005)

  • fixInterceptors can now be ordered by name rather than interceptor factory id.(JC) Fixes HIVEMIND-96.
  • fixCreated a ServiceInterceptorFactory supporting AOP Alliance MethodInterceptors.(JC) Fixes HIVEMIND-45.
  • update Upgrade Groovy to 1.0-beta-10. (HLS)
  • update Make BuilderFactory rethrow construction exceptions, rather than swallow them and return null. (HLS)

Version 1.1-alpha-2 (Feb 23 2005)

  • fix Error running examples using Ant targets. (KW) Thanks to Brian K. Wallace. Fixes HIVEMIND-88.
  • fix service: object provider throws NPE with empty locator (KW) Thanks to Trent McClenahan. Fixes HIVEMIND-60.
  • fix Allow initialization in create-instance, rules, etc. (HLS) Fixes HIVEMIND-93.
  • fix NPE when module resource does not exist (KW) Fixes HIVEMIND-81.
  • update Better, prettier HiveDoc. (HLS)
  • update Add package attribute to <module> and automatically qualify Java class and interface names into that package. (HLS)
  • update Allow the locale to be changed. (HLS)
  • update Add class: object provider (for resolving classes). (HLS)
  • update ManifestClassPath accessing deprecated variable (HLS) Thanks to Brian K. Wallace. Fixes HIVEMIND-92.
  • update Allow service interfaces to be ordinary non-interface classes. (HLS)
  • update Extend instance translator to configure properties of the instantiated instance. (HLS)

Version 1.1-alpha-1 (Jan 19 2005)

  • add Added <dependency> construct providing support for dependencies between modules. Refactoring of RegistryBuilder: Now constructs Registry using a ModuleProvider. (KW)
  • add Add visibility (public or private) to configuration points, service points and schemas. (HLS) Fixes HIVEMIND-58.
  • add Add <null> constructor parameter element to BuilderFactory service. (KW) Fixes HIVEMIND-63.
  • add Move some logic related to primitive Java types and arrays from Tapestry directly into DefaultClassResolver. (HLS) Fixes HIVEMIND-66.
  • add Add support for the ErrorLog (a simple wrapper around an ErrorHandler and a Log). Add support for setting the service's ErrorLog to BuilderFactory. (HLS)
  • add Add toString() support to ClassFab and MethodFab. (HLS)
  • add Add the hivemind.lib.StrategyFactory service implementation factory. (HLS)
  • add Added Groovy support. Module descriptors can now be defined using Groovy scripts. Although it requires some additional work in building the Registry. (KW)
  • add Support the EasyMock Class Extension, if present on the classpath, to allow classes (not just interfaces) to be mocked. (HLS)
  • add Added support for mapped configurations. A configuration schema can now specify an attribute which should be used as the key in a Map of all contributions. The BuilderFactory can inject such configurations as List or Maps. (KW)
  • add Add support for conditional contributions. (HLS)
  • add Allow services to be serialized (that is, service proxies can be serialized and deserialized). (HLS)
  • add Add hivemind.lib.ChainBuilder service, an implementation of Gang Of Four Chain of Command. (HLS)
  • add Add hivemind.lib.ChainFactory service. (HLS)
  • fix Report error if module descriptors define conflicting service or configuration points. (KW) Fixes HIVEMIND-64.
  • fix CVS connection string on website is incorrect (HLS) Thanks to Bruce Synder. Fixes HIVEMIND-56.
  • fix Properly report the actual method name when invoking a service initializer method. (HLS) Fixes HIVEMIND-68.
  • fix Add ability to set default value for non-matches in MethodMatcher. (HLS) Fixes HIVEMIND-75.
  • fix Improve MethodSignature and MethodIterator to filter out duplicate methods that differ only in terms of thrown exceptions. (HLS) Fixes HIVEMIND-76.
  • fix Change BuilderFactoryLogic to report the actual exception, not the InvocationTargetException, when an exception is thrown by a constructor or by a initializer method invocation. (HLS) Fixes HIVEMIND-77.
  • fix Smart translator properly returns attribute values as Strings when used with a <push-attribute> rule. (KW) Thanks to James Carman. Fixes HIVEMIND-15.
  • fix Attribute values are symbol-expanded by a <push-attribute> rule before being translated and pushed on the stack. (KW) Fixes HIVEMIND-57.
  • update HiveDoc is now being generated from the parsed module descriptors instead of directly from the XML files. This will allow HiveDoc generation for module descriptors in other formats. (KW)
  • update Upgrade to Forrest 0.6 (still in progress). (HLS)
  • update Re-work the HiveDoc report to work naturally at the module (not project) level. (HLS)
  • update Synchronize all access to java.beans.Introspector through a common mutex. (HLS)
  • update Clear the PropertyUtils and Introspector caches when the Registry is shutdown. (HLS)
  • update ApplicationRuntimeException will now display the location (if known) as part of its toString() method, making it much easier to track down problems in stack traces (especially deeply nested ones). (HLS)
  • update Switch Javassist to version 3.0-rc-1. (HLS)
  • update Removed the module parameter from ClassFactory.newClass() and from DefaultImplementationBuilder.buildDefaultImplementation(). (HLS)
  • update BuilderFactory now supports autowiring through constructor based dependency injection. (KW)
  • update Refactored SpringLookupFactory to identify a Spring BeanFactory directly, rather than via a SpringBeanFactorySource. (HLS)
  • update Move ContextResource from Tapestry to HiveMind. (HLS)
  • update Change HiveMindFilter load WEB-INF/hivemodule.xml if present. (HLS)

Version 1.0 (Sep 22 2004)

  • fix Ensure that the logging interceptor will work properly when wrapping around JDK dynamic proxies. (HLS) Fixes HIVEMIND-55.

Version 1.0-rc-2 (Sep 11 2004)

  • add Add method getSymbolValue() to RegistryInfrastructure and Module (HLS)
  • add Add clearCache() method to PropertyUtils. (HLS)
  • add Add clearCache() method to PropertyUtils. (HLS)
  • fix Fix class loader issues concerning fabricated classes in different modules. (HLS) Fixes HIVEMIND-48.
  • fix Allow symbols to be escaped rather than expanded. (HLS) Fixes HIVEMIND-47.
  • fix The previous fix was incomplete; this should close the remaining sychronization gaps. (HLS) Thanks to James Carman. Fixes HIVEMIND-44.
  • fix Class loading issue inside Tomcat. (HLS) Fixes HIVEMIND-49.
  • fix Tweak HiveMind to work properly in a JavaWebStart application. (HLS) Thanks to James Carman. Fixes HIVEMIND-10.
  • fix Handle duplicated methods in service interfaces, avoiding "attempt to redefine method" errors. (HLS) Fixes HIVEMIND-52.
  • fix Class loading issue inside Tomcat. (HLS) Fixes HIVEMIND-49.
  • fix Tweak HiveMind to work properly in a JavaWebStart application. (HLS) Thanks to James Carman. Fixes HIVEMIND-10.
  • fix Handle duplicated methods in service interfaces, avoiding "attempt to redefine method" errors. (HLS) Fixes HIVEMIND-52.
  • update Change the API for ClassFactory to take a ClassLoader, not a Module. (HLS)
  • update Change the API for ClassFactory to take a ClassLoader, not a Module. (HLS)

Version 1.0-rc-1 (Aug 25 2004)

  • add Add ability to mark attributes of an element as unique, such that duplicate values in contributions result in errors. (HLS) Thanks to Johan Lindquist. Fixes HIVEMIND-43.
  • add Add Quick Reference Sheet. (HLS) Thanks to Stefan Liebig. Fixes HIVEMIND-42.
  • add Add polling methods to Registry. (HLS) Thanks to Naresh Sikha. Fixes HIVEMIND-37.
  • add Add polling methods to BeanFactory. (HLS) Thanks to Naresh Sikha. Fixes HIVEMIND-36.
  • fix SmartTranslator should differentiate between blank strings and null input (HLS) Thanks to Michael Frericks. Fixes HIVEMIND-29.
  • fix Add checks to SchemaProcessorImpl for empty stack conditions (HLS) Fixes HIVEMIND-41.
  • fix Add parameters-occurs attribute to <service-point> element. (HLS) Fixes HIVEMIND-33.
  • fix Specify location in all module deployment descriptor parse exceptions. (HLS) Fixes HIVEMIND-23.
  • fix Add getCause() method to ApplicationRuntimeException (HLS) Thanks to Luke Blanshard. Fixes HIVEMIND-16.
  • fix Fix broken synchronization in ThreadedServiceModel and PooledServiceModel that could make them randomly fail when creating a service by invoking a factory. (HLS) Thanks to James Carman. Fixes HIVEMIND-44.
  • fix Check for <sub-module> references that do not exist. (HLS) Thanks to Johan Lindquist. Fixes HIVEMIND-34.
  • update Remove support for Simple Data Language ... it's all XML again. (HLS)
  • update Re-work part of PipelineFactory to take advantage of object references. (HLS)
  • update Make the service-id of <invoke-factory> optional and default to hivemind.BuilderFactory. (HLS)
  • update Change the hivemind.Startup configuration to take an object reference, not a service id. (HLS)
  • update Improvements to HiveBuild to properly handle changing versions or useages of artifacts. (HLS)

Version 1.0-beta-2 (Aug 1 2004)

  • add Added a new module that contains HiveMind example code. (HLS)
  • add Added StrictErrorHandler, an implementation of ErrorHandler that always throws an ApplicationRuntimeException. (HLS)
  • fix Removed dependency on Werkz. (KW) Fixes HIVEMIND-6.
  • fix Modifed the build scripts to properly include variable info when compiling. (HLS) Thanks to Achim Hügen. Fixes HIVEMIND-21.
  • fix Typo in jar-module.xml causes broken build if junit library is missing (HLS) Thanks to Johan Lindquist. Fixes HIVEMIND-31.
  • fix Made a number of changes to ensure HiveMind compatibility with JDK 1.3. (HLS) Fixes HIVEMIND-35.
  • fix Changed some unit tests to adapt to platform line endings. (HLS) Fixes HIVEMIND-26.
  • fix Fix the HiveDoc XSL to use XML (not SDL) output. (HLS) Thanks to Johan Lindquist. Fixes HIVEMIND-46.
  • update Added link to the Jakarta mailing lists page. (HLS)
  • update Moved the Ant build scripts to a new directory, hivebuild, in preparation for making hivebuild reusable on new projects. (HLS)
  • update Added protected method constructRegistry() to HiveMindFilter. (HLS)
  • update Renamed existing 'object' translator to 'instance', and created a new 'object' translator with great flexibility. Extend BuilderFactory to add a set-object element that leverages the object translator. (HLS)
  • update Created service-property object translator. (HLS)
  • update Added a version of Registry.getService() that omits the service id (but requires that exactly one service point implements the service interface). (HLS) Thanks to Marcus Brito. Fixes HIVEMIND-20.
  • update Extended the BuilderFactory to autowire services. (HLS) Fixes HIVEMIND-22.
  • update Fixed some latent bugs related to submodules inside the constructRegistry task. Made some more improvements to the hivebuild scripts. (HLS)
  • update Updated the download location for the Forrest distribution. (HLS)
  • update Added more examples and examples documentation. (HLS)
  • update Moved the code for the Grabber Ant task into the tree and improve the build scripts to dynamically compile and use it. (HLS)

Version 1.0-beta-1 (Jun 26 2004)

  • addCreated two new services in hivemind-lib for creating default implementations of arbitrary interfaces (DefaultImplementationBuilder) and for using that to create placeholder services (PlaceholderFactory).(HLS)
  • addCreated MessageFormatter class as a wrapper around ResourceBundle and an easy way for individual packages to gain access to runtime messages. (HLS)
  • addAdded the qualified-id and id-list translators.(HLS)
  • addAdded the hivemind.lib.PipelineFactory and related code, schemas, tests and documentation. (HLS)
  • add Added service hivemind.lib.BeanFactoryBuilder. (HLS)
  • add Added FileResource. (HLS)
  • fix Enhance logging of exceptions when setting a service property to a contribution (HLS) Fixes HIVEMIND-4.
  • fix Restore the getConfiguration() and expandSymbols() methods to the Registry interface. (HLS) Fixes HIVEMIND-11.
  • fix SimpleDataLanguageParser calls the ContentHandler with a null namespace argument instead of "". That leads to some problems if you want to use transformers. (HLS) Thanks to Dieter Bogdoll. Fixes HIVEMIND-9.
  • fix Fix how certain translator messages are generated to avoid unit test failures. (HLS) Thanks to Achim Hügen. Fixes HIVEMIND-7.
  • fix Fix some typos in definition of the hivemind.lib.NameLookup service. (HLS)
  • fix Fix a mistake in the BuilderFactory's set-object element, and add integration tests. (HLS) Thanks to Naresh Sikha. Fixes HIVEMIND-25.
  • updateAdded change log. (HLS)
  • updateRefactored ClassFab and related classes for easier reuse outside of HiveMind. Added a new suite of tests related to ClassFab.(HLS)
  • updateModified the read-attribute rule to allow a translator to be specified (overriding the translator for the attribute).(HLS)
  • update Removed the <description> element from the module descriptor format; descriptions are now provided as enclosed text for element that support descriptions. (HLS)
  • update Changed the MethodMatcher classes to use a MethodSignature rather than a Method. (HLS)
  • update Changed MessageFormatter to automatically convert Throwables into their message or class name. (HLS)
  • update Extended hivemind.BuilderFactory to be able to set the ClassResolver; for a service implementation, and to autowire common properties (log, messages, serviceId, errorHandler, classResolver) if the properties are writeable and of the correct type. (HLS)
  • update Added methods newControl(), newMock(), addControl(), replayControls() and verifyControls() to HiveMindTestCase to simplify test cases that use multiple EasyMock mock objects. (HLS)
  • update Changed HiveMindFilter to log a message after it stores the registry into the servlet context. (HLS)
  • update Modify the build files to enable debugging by default. (HLS) Fixes HIVEMIND-12.
  • update Added validation of id attributes in module deployment descriptors (using ORO regular expressions). (HLS)