SkillAgentSearch skills...

Injector

IoC Container - Dependency Injector for Java/Scala

Install / Use

/learn @vicboma1/Injector
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Injector

Build StatusCoverage Status Maven Central Analytics

IoC Container - Dependency Injector for Java/Scala/Kotlin

Main Test

POJO's

Implementation

@AsSingleton                                                           
public class Verify implements IVerify {

    @Inject
    public String verify;

    public Verify(){}

    @PostConstruct
    public void initialize() {
        this.verify = " PostConstruct initialize \n";
    }

    @PreDispose
    public void dispose() {
        this.verify += " PreDestroy destroy ";
    }

    @Override
    public String toString() {
        return "POJO{" +"core.verify='" + verify + '\'' +'}';
    }
}

API

@ToSingleton(toClass = "core.verify.Verify")
public interface IVerify {
    String toString();
}

Statements

As Singleton

Verify pojoAsSingleton = new Verify();
injector.map().toValue(String.class, "Test");
injector.injectInto(pojoAsSingleton);
injector.map().asSingleton(Verify.class);
Verify verifyAsSingleton = injector.getInstance(Verify.class);

To Singleton

IVerify pojoToSingleton = new Verify();
injector.map().toValue(String.class, "Test");
injector.injectInto(pojoToSingleton);
injector.map().toSingleton(IVerify.class,Verify.class);
IVerify verifyToSingleton = injector.getInstance(IVerify.class);

To Prototype

IVerify pojoToPrototype = new Verify();
injector.map().toValue(String.class, "Test");
injector.injectInto(pojoToPrototype);
injector.map().toPrototype(IVerify.class,Verify.class);
IVerify verifyToPrototype = injector.getInstance(IVerify.class);

ToValue

IVerify pojoToValue = new Verify();
injector.map().toValue(String.class, "Test");
injector.injectInto(pojoToValue);
injector.map().toValue(IVerify.class,pojoToValue);
IVerify verifyToValue = injector.getInstance(IVerify.class);

Automatic Injection with ToSingleton annotation in IVerify.class

IVerify pojoAutoToSingleton = new Verify();
injector.map().toValue(String.class, "Test");
injector.injectInto(pojoAutoToSingleton);
IVerify verifyAutoToSingleton = injector.getInstance(IVerify.class);

Automatic Injection with AsSingleton annotation in Verify.class

Verify pojoAutoAsSingleton = new Verify();
injector.map().toValue(String.class, "Test");
injector.injectInto(pojoAutoAsSingleton);
Verify verifyAutoAsSingleton = injector.getInstance(Verify.class);

Related Skills

View on GitHub
GitHub Stars4
CategoryDevelopment
Updated6y ago
Forks0

Languages

Java

Security Score

70/100

Audited on Aug 13, 2019

No findings