Permalink
Commits on Oct 28, 2011
  1. Removed changes that made it through the latest rebase process but sh…

    …ouldn't be contained anymore
    committed Oct 28, 2011
  2. Added AsDoc for all public methods of InjectionMapping and removed so…

    …me oddities in its API discovered during documentation writing
    committed Oct 27, 2011
  3. Adds MappingEvent.POST_MAPPING_REMOVE dispatched by the injector imme…

    …diately after removing a mapping in Injector#unmap
    committed Oct 27, 2011
  4. Fixes bug that caused the DescribeTypeJSON detection to throw and pre…

    …vent using the injector in Flash Player < 10.1
    committed Oct 25, 2011
  5. Adds support for unsealing mappings by using a secret key returned by…

    … the call to InjectionMapping#seal()
    committed Oct 19, 2011
  6. Adds FactoryProvider, a dependency provider that accepts another depe…

    …ndency provider's class and creates a new instance of it with dependencies injected into for each call to DependencyProvider#apply, enabling custom providers with their own dependencies.
    committed Oct 9, 2011
  7. instance construction events PRE_CONSTRUCT and POST_CONSTRUCT are als…

    …o dispatched during Injector#injectInto, now.
    committed Oct 8, 2011
  8. Implemented dispatching of events for three phases of instance creati…

    …on: POST_INSTANTIATE, PRE_CONSTRUCT and POST_CONSTRUCT
    committed Oct 8, 2011
  9. Implemented InjectionMapping#seal, preventing any changes to the mapp…

    …ing, including unmapping it in the injector.
    committed Oct 7, 2011
  10. Renamed InjectionRule to InjectionMapping and removed all mentions of…

    … "rule" in the source and tests code
    committed Oct 6, 2011
  11. Moved InjectionPointConfig#apply to Injector#applyMapping as preparat…

    …ion of removing InjectionPointConfig
    committed Oct 6, 2011
  12. Removed InjectionRule#toRule. The replacement is InjectionRule#setPro…

    …vider(new OtherRuleProvider(rule));
    committed Oct 3, 2011
  13. Added support for soft mappings that only get used if no ancestor-inj…

    …ector has a mapping for the request in question
    committed Oct 3, 2011
  14. Completely changed how dependencies are resolved, simplifying things …

    …like child injectors and soft mappings and increasing performance by another ~25%
    
    With this change, all mappings to providers are stored in a dictionary per injector and updated by the InjectionRule on provider-change. The InjectionPointConfigs got an apply-method that iterates over the injectors until it finds a provider-mapping and then applies it directly, removing several levels of indirection from the process.
    committed Oct 2, 2011
  15. Re-integrated named injections into the default injector. All mapping…

    …s now have an optional "name" parameter again. This changed shaved off about 150 LOC and is preparation for vast changes to dependency resolution.
    committed Oct 2, 2011
  16. Some optimizations in DescribeTypeJSONReflector, leading to about 25%…

    … performance improvement
    committed Oct 2, 2011
  17. Removed parameter "constructingInjector" from DependencyProvider#appl…

    …y and moved the only usage into the SingletonProvider's ctor, simplifying the DependencyProvider interface
    committed Sep 30, 2011
  18. Changed dependency providers to allow access to the class whose depen…

    …dencies are to be provided
    
    This change enables providing different values based on the class requesting a dependency. A major use-case is a logger that's pre-configured for the class it is used in.
    committed Sep 30, 2011
  19. Changed InjectionPoint#applyInjection to not return anything. Introdu…

    …ced ConstructorInjectionPoint#createInstance and made NoParamsConstructorInjectionPoint inherit from that instead.
    committed Sep 23, 2011
  20. Further small speed increases in injector, gaining another ~20% or so.

    Specifically, turned array of injection points into a linked list and changed method (and ctor) parameter values gathering to reuse one array instance instead of creating and discarding a new instance for each injection.
    committed Sep 23, 2011