AF-IOC 1.3.0
A powerful 'Inversion Of Control' (IOC) framework

Like Guice? Know Spring? Then you'll love afIoc!

  • Injection - the way you want it!
    • field injection
    • standard ctor injection
    • serialisation ctor injection - new make(|This|in) { in(this) }
  • Distributed service configuration between pods and modules
    • configure any service from any pod / module
    • configure via simple Lists and Maps
  • Override everything
    • override services and configuration, even override your overrides!
    • replace real services with test services
    • set sensible application defaults and let your users override them
  • True lazy loading
    • services are proxied to ensure nothing is created until you actually use it
    • make circular service dependencies a thing of the past!
  • Advise services with aspects
    • intercept method calls to your services
    • apply cross cutting concerns such as authorisation, transactions and logging
  • Extensible
    • inject your own objects, not just services
  • Designed to help YOU the developer!
    • simple API - 1 facet and 4 registry methods and you're away!
    • over 75 bespoke and informative Err messages!
    • Extensively tested: - All tests passed! [29 tests, 159 methods, 234 verifies]

Read more...

Install

To install AF-IOC with Fantom Pod Manager, cut'n'paste the following into a cmd prompt, terminal or shell:

Or to install AF-IOC with the Fantom Repository Manager (fanr), cut'n'paste the following into a cmd prompt, terminal or shell:

Or to install manually, download the pod file and copy it to the %FAN_HOME%/lib/fan/ directory.

afIoc.pod (387.38 kB)

Use

To use AF-IOC in a Fantom project, add a dependency to the project's build.fan:

depends = ["sys 1.0", ..., "afIoc 1.3.0 - 1.3"]

Documentation

Information

Meta information on the AF-IOC pod:

Published by
Steve Eynon
Organisation
Alien-Factory
Pod file size
387.38 kB
Licence
BSD 2-Clause License
Built on
28th May 2013
Source code
at https://bitbucket.org/SlimerDude/afioc
Depends on
compiler, concurrent, sys
Referenced by
Javascript Compatible
No

Dependency Graph

  Use mouse to re-position pods

Release History

There have been 39 releases of AF-IOC: