Mike Bierlee
2ebef4c466
Refactor registration scopes into simplified instance factory
2015-12-23 17:51:55 +01:00
Mike Bierlee
ae9e0bab68
Rename RegistrationOptions -> RegistrationOption, deprecate usage of old name
2015-09-26 22:46:47 +02:00
Mike Bierlee
da16513a8d
Always register concrete type when registering type by supertype by default.
...
This deprecates ADD_CONCRETE_TYPE_REGISTRATION (see DO_NOT_ADD_CONCRETE_TYPE_REGISTRATION for reverse configuration). This also means you do not need to use qualifiers when registering single type of super type by super type.
2015-08-17 22:28:26 +02:00
Mike Bierlee
8c103df7e5
Remove deprecated module "dependency"
2015-08-16 15:50:54 +02:00
Mike Bierlee
3e11ff1e92
Add ability to assign new instance to autowired member regardless of registration scope
2015-07-06 22:55:40 +02:00
Mike Bierlee
533207226b
Use template to get member type instead
2015-07-04 14:09:05 +02:00
Mike Bierlee
1ce37e6eda
Add autowiring of dynamic arrays
2015-07-04 14:06:35 +02:00
Mike Bierlee
53fb0d8116
Add resolving all registered types of a certain super type
2015-07-04 13:53:47 +02:00
Mike Bierlee
71ac539f2a
Add canonical package module
...
This commit deprecates non-canonical package module "dependency.d".
2015-07-01 21:06:55 +02:00
Mike Bierlee
27e7b74e73
Add registration option for registering a class by concrete type when registering by supertype
2015-05-03 02:03:34 +02:00
Mike Bierlee
d23230faae
Restrict access to registration members more tightly
2015-05-03 00:54:31 +02:00
Mike Bierlee
eb05f7702f
Add registration linking
2015-05-03 00:46:51 +02:00
Mike Bierlee
a046e1fd8e
Remove unused imports
2015-03-28 18:43:03 +01:00
Mike Bierlee
ee88b68a7c
Remove unnecessary initOnce
...
The class is synchronized now. Calls to getInstance is already barricaded by the class-level monitor.
2015-03-28 17:49:30 +01:00
Mike Bierlee
9860624148
Synchronize DependencyContainer
...
The implication is that dependency containers are now always shared data. In the sense of application context, this is acceptable.
2015-03-28 16:36:02 +01:00
Mike Bierlee
8d268846ed
Change getting of singleton dependency container to be thread-safe
2015-03-28 15:04:34 +01:00
Mike Bierlee
a5f6a1dc32
Finish refactoring for now
...
It's still not perfect, but traits are real difficult to work with.
2015-03-21 14:30:04 +01:00
Mike Bierlee
29ebb3bc73
Add project identifier to module documentation
2015-03-07 12:36:59 +01:00
Mike Bierlee
06dfb0dc30
Fix imports for release builds
2015-03-07 00:47:36 +01:00
Mike Bierlee
0916e136aa
Omit parentheses
2015-02-28 17:16:35 +01:00
Mike Bierlee
264f492292
Get rid of obsolete member reference
2015-02-28 16:59:50 +01:00
Mike Bierlee
3f36b63965
Get member from instance instead
2015-02-28 16:26:57 +01:00
Mike Bierlee
3d6ab10b6d
Extracting debug info printing to separate functions
2015-02-28 16:09:32 +01:00
Mike Bierlee
58073dd160
Extract autowiring a member from autowire
2015-02-28 15:51:57 +01:00
Mike Bierlee
89d82efb11
Refactor getting existing registration to separate function
2015-02-22 19:11:38 +01:00
Mike Bierlee
f9c2e257c7
Document public API of module "registration"
2015-02-21 16:11:43 +01:00
Mike Bierlee
8ee25abc58
Document public API of module "dependency"
2015-02-21 16:02:33 +01:00
Mike Bierlee
a9bbb24fcd
Use elipses to pretend there's implementation
2015-02-21 02:38:09 +01:00
Mike Bierlee
e3009929a5
Remove deprecated @Autowired alias
2015-02-21 02:33:19 +01:00
Mike Bierlee
ad5695c774
Rename parameter InterfaceType -> SuperType
...
Direct ancestor types, which are not neccesarily interfaces, can also be used as registration type
2015-02-21 02:16:24 +01:00
Mike Bierlee
6c8e3c81b3
Remove unused exception
2015-02-21 02:14:25 +01:00
Mike Bierlee
7945cc0ea3
Document public API of module "container"
2015-02-21 02:12:27 +01:00
Mike Bierlee
f6a809c54a
Improve autowire module documentation
2015-02-21 01:18:07 +01:00
Mike Bierlee
50e754f429
Deprecate @Autowired UDA in favor of using @Autowire
...
Keeps your codebase consistent. Also this is not Spring.
2015-02-21 01:10:19 +01:00
Mike Bierlee
0d56a4e5c3
Add additional motivation to documentation.
2015-02-15 17:13:59 +01:00
Mike Bierlee
4c51fcada1
Document public API of module "autowire"
2015-02-15 16:52:10 +01:00
Mike Bierlee
586c03bd91
Remove deprecated dependency container alias
2015-02-15 14:52:50 +01:00
Mike Bierlee
e44cdf276a
Remove deprecated "autowire in constructor"
2015-02-15 14:52:01 +01:00
Mike Bierlee
cb42ebc8c1
Update copyrights
2015-01-25 21:55:02 +01:00
Mike Bierlee
36992c633a
Autowire dependencies using autowired registrations instead of letting the container handle it
...
This fixes known issue "Resolving a class registered by supertype..."
2015-01-25 21:04:17 +01:00
Mike Bierlee
5ebb5805cf
Use instantiation context to decide whether to autowire or not
2015-01-25 19:46:17 +01:00
Mike Bierlee
9d931f511b
Add registration class that will autowire instances itself
2015-01-25 15:07:11 +01:00
Mike Bierlee
82ea4369b8
Add master module "dependency"
2015-01-25 13:40:11 +01:00
Mike Bierlee
1d74064c15
Reintroduce module container
2015-01-25 13:37:14 +01:00
Mike Bierlee
99579060d3
Return resolved instances by qualifier type instead
2014-12-30 18:29:32 +01:00
Mike Bierlee
7a628c32c4
Add debug specifier to reduce verbosity of debug output
2014-12-24 00:05:42 +01:00
Mike Bierlee
77cc636e7f
Deprecate buggy work-around in favor of qualifiers
2014-12-14 19:25:08 +01:00
Mike Bierlee
2aef9a1760
Autowire using the qualifier type when resolving dependencies
...
This will make sure the members of sub-types are also autowired, when a qualifier is given.
2014-12-14 19:20:35 +01:00
Mike Bierlee
7bc0382a50
Remove left-over debugging output
2014-12-13 23:16:27 +01:00
Mike Bierlee
7ee67ee836
Specify qualifiers in Autowire UDA instead of using separate UDA
2014-12-13 23:15:43 +01:00