[ 
https://issues.apache.org/jira/browse/HIVEMIND-116?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Johan Lindquist updated HIVEMIND-116:
-------------------------------------

    Attachment: hivemind-116-117.patch

Please find the patch attached providing one of the possible solutions to this. 

Note that due to the nature of this enhancement, it also fixes HIVEMIND-117

Comments are appreciated.

> add destroy-method attribute to the construct element of BuilderFactory
> -----------------------------------------------------------------------
>
>                 Key: HIVEMIND-116
>                 URL: https://issues.apache.org/jira/browse/HIVEMIND-116
>             Project: HiveMind
>          Issue Type: New Feature
>          Components: framework
>    Affects Versions: 1.1
>            Reporter: Richard Hensley
>         Attachments: hivemind-116-117.patch
>
>
> In order to keep object agnostic of container, please add attributes to the 
> BuilderFactory contruct element that support the standard lifecycle 
> management of Hivemind. This request is for the destroy step in the life 
> cycle of a service. This attribute could be used instead of 
> RegistryShutdownListener and Discardable.
> The following is a specification should be a reasonable start.
> add a destroy-method attribute to the construct element recognized by 
> BuilderFactory
> When the destroy-method is specified, the method must be a public void method 
> taking no parameters. This method is called when the registry is shutdown for 
> primitive, singleton, and pooled services. This method is
> called when the thread is cleaned up for a threaded service. When 
> autowire-service is enabled and destroy-method is not specified, 
> BuilderFactory will introspect for a method called destroyService() and
> treat it as a destroy-method. In the case of singleton and pooled services, 
> if the service implements the RegistryShutdownListener, the destroy-method is 
> called before the RegistryShutdownListener.registryDidShutdown() method. In 
> the case of threaded services, if the service implements the Discardable 
> interface, the destroy-method is called before the
> Discardable.threadDidDiscardService() method.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to