27 lines
688 B
Java
27 lines
688 B
Java
package org.gcube.data.access.fs;
|
|
|
|
import org.jboss.weld.environment.se.Weld;
|
|
import org.jboss.weld.environment.se.WeldContainer;
|
|
|
|
public class WeldContext {
|
|
|
|
public static final WeldContext INSTANCE = new WeldContext();
|
|
|
|
private final Weld weld;
|
|
private final WeldContainer container;
|
|
|
|
private WeldContext() {
|
|
this.weld = new Weld();
|
|
this.container = weld.initialize();
|
|
Runtime.getRuntime().addShutdownHook(new Thread() {
|
|
@Override
|
|
public void run() {
|
|
weld.shutdown();
|
|
}
|
|
});
|
|
}
|
|
|
|
public <T> T getBean(Class<T> type) {
|
|
return container.instance().select(type).get();
|
|
}
|
|
} |