Commit graph

90 commits

Author SHA1 Message Date
Mike Bierlee e7a29f17f7 Allow register by concrete type to also get registration options
Although the currently only available option will do nothing
2016-02-03 22:24:22 +01:00
Mike Bierlee 065e7111cd Deprecate calling register() with RegistationOptions in a variadic way
Variadic options will conflict when added to resolve(). To keep the interface consistent, register should follow suit. Supply options using a list of options instead.
2016-02-03 22:17:10 +01:00
Mike Bierlee 46dddbfd46 Deprecate RegistrationOption.DO_NOT_ADD_CONCRETE_TYPE_REGISTRATION in favor of RegistrationOption.doNotAddConcreteTypeRegistration 2016-02-03 22:15:07 +01:00
Mike Bierlee def5ec2e88 Add setting persistent registration options 2016-02-03 21:28:33 +01:00
Mike Bierlee 7bd0795b3f Fix line delimiters 2016-01-06 20:28:25 +01:00
Mike Bierlee c35e494dfe Update copyrights 2016-01-06 20:18:35 +01:00
Mike Bierlee 4b1bc5077a Remove deprecated registration option 2015-12-28 22:42:23 +01:00
Mike Bierlee 4d62f3fdb0 Add registering component factories as prototype
Which makes them the opposite of singletons
2015-12-24 21:50:12 +01:00
Mike Bierlee d310640717 Register application contexts as a resolvable dependency
For those who like to play with fire
2015-12-24 20:41:05 +01:00
Mike Bierlee f206b594c8 Add autowiring of application contexts on registration 2015-12-24 20:31:26 +01:00
Mike Bierlee 2e4c688ab2 Add registeration of context components when registering via dependency container 2015-12-24 20:12:48 +01:00
Mike Bierlee 57b548aeae Add specifying components by supertype 2015-12-24 19:51:49 +01:00
Mike Bierlee 1bf1734c53 Add registration of components through factory methods
A basic version of Bean factories from the Spring framework
2015-12-24 18:45:18 +01:00
Mike Bierlee 55d3139f5b Add registration of basic dependencies through application context 2015-12-24 01:11:39 +01:00
Mike Bierlee be5eb37617 Remove public imports 2015-12-24 01:01:30 +01:00
Mike Bierlee 80916c47fb Add factory method invocation to instance factory 2015-12-23 18:32:29 +01:00
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 3e11ff1e92 Add ability to assign new instance to autowired member regardless of registration scope 2015-07-06 22:55:40 +02:00
Mike Bierlee 1ce37e6eda Add autowiring of dynamic arrays 2015-07-04 14:06:35 +02:00
Mike Bierlee 805a3ebaeb Add test for testing if autowiring still works when using resolveAll 2015-07-04 13:59:10 +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 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 24e9a67219 Add tests for registering and resolving accross threads 2015-03-28 18:01:16 +01:00
Mike Bierlee 09695e9770 Add test for testing autowire stack pop-back mechanism 2015-03-28 17:29:48 +01:00
Mike Bierlee a7ab3ea4d8 Remove unnecesary componentIsNull methods 2015-03-28 17:07:44 +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 83ad8c64c0 Add test that asserts whether autowiring a class that depends on itself works. 2015-02-23 20:01:44 +01:00
Mike Bierlee 89d82efb11 Refactor getting existing registration to separate function 2015-02-22 19:11:38 +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 1d74064c15 Reintroduce module container 2015-01-25 13:37:14 +01:00
Mike Bierlee 7ee67ee836 Specify qualifiers in Autowire UDA instead of using separate UDA 2014-12-13 23:15:43 +01:00
Mike Bierlee 1166d2811a Add @Qualifier UDA for qualifying members typed by supertype 2014-12-13 22:06:11 +01:00
Mike Bierlee 8b9c8d2774 Add ability to resolve type which has multiple registrations by qualifier 2014-11-27 00:33:13 +01:00
Mike Bierlee d6e3043c7d Prevent multiple registrations of same super- and concrete type 2014-11-26 23:37:29 +01:00
Mike Bierlee 5d7a21ae52 Add ability to register multiple concrete classes for same supertype 2014-11-26 23:22:56 +01:00
Mike Bierlee 4e8555c7da Rename and deprecate "container" module 2014-10-25 16:43:32 +02:00
Mike Bierlee b2bb6f15c4 Rename "Container" -> "DependencyContainer". Deprecate use of "Container" 2014-10-25 15:24:42 +02:00
Mike Bierlee 92db3c0405 Add "Autowired" alias for "Autowire" UDA to satisfy Spring habits 2014-10-12 17:41:09 +02:00
Mike Bierlee e19564e3cf Fix incorrect clearing of registrations 2014-10-05 13:43:57 +02:00
Mike Bierlee b38bccc03c Fix autowiring classes with non-symbolic unassignable members (such as aliases) 2014-07-09 23:15:05 +02:00
Mike Bierlee c4c57da9eb Clear all registrations after test is done 2014-06-22 17:24:08 +02:00
Mike Bierlee 627d165d6f Add mixin for boilerplate workaround 2014-06-22 17:16:07 +02:00