polygene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Niclas Hedhman (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (POLYGENE-279) Custom @Structure injection types
Date Sat, 02 Dec 2017 10:29:00 GMT

    [ https://issues.apache.org/jira/browse/POLYGENE-279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16275502#comment-16275502
] 

Niclas Hedhman commented on POLYGENE-279:
-----------------------------------------


Interesting question; It seems natural that the TransientBuilderFactory, ValueBuilderFactory
and ObjectFactory are also made into StructureComponents.

But in the previous comment, I made the assumption that regular injection is available when
creating the instances to be injected, and that those were Transients. But then there is a
chicken/egg problem... TransientBuilderFactory is needed to create the TransientBuilderFactory.

> Custom @Structure injection types
> ---------------------------------
>
>                 Key: POLYGENE-279
>                 URL: https://issues.apache.org/jira/browse/POLYGENE-279
>             Project: Polygene
>          Issue Type: New Feature
>            Reporter: Niclas Hedhman
>
> Use-case 1; UnitOfWorkFactory is currently depending on a UnitOfWorkFactory declaration
in every module where one need it injected, or otherwise one risk having the wrong visibility
established. The current behavior is a design flaw, not present in earlier Qi4j versions.
> Use-case 2; MetricsProvider should be able to create module-specific (or module-aware)
Metric instances, without having to be declared in every module where metrics are needed.
> Use-case 3; IdentityManager should be allowed to generate IDs that use module names,
without being declared in every module.
> Currently, we don't have any particular types that deal with @Structure injections, nothing
that holds the additional information needed. But there is a need to be both a singleton,
i.e. a Service as well as a unique object that is injected into the target composite.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message