3 import dst.ass2.di.impl.InjectionControllerImpl;
6 * Creates and provides {@link IInjectionController} instances.
8 public class InjectionControllerFactory {
9 private static IInjectionController standalone = null;
12 * Returns the singleton {@link IInjectionController} instance.<br/>
13 * If none is available, a new one is created.
15 * @return the instance
17 public static synchronized IInjectionController getStandAloneInstance() {
18 if (standalone == null) {
19 standalone = getNewStandaloneInstance();
25 * Returns the singleton {@link IInjectionController} instance for processing objects modified by an
26 * {@link dst.ass2.di.agent.InjectorAgent InjectorAgent}.<br/>
27 * If none is available, a new one is created.
29 * @return the instance
31 public static synchronized IInjectionController getTransparentInstance() {
37 * Creates and returns a new {@link IInjectionController} instance.
39 * @return the newly created instance
41 public static IInjectionController getNewStandaloneInstance() {
42 return new InjectionControllerImpl();
46 * Creates and returns a new {@link IInjectionController} instance for processing objects modified by an
47 * {@link dst.ass2.di.agent.InjectorAgent InjectorAgent}.<br/>
49 * @return the instance
51 public static IInjectionController getNewTransparentInstance() {