gFeed/gCat-Feeder/src/main/java/org/gcube/data/publishing/gCatFeeder/service/GCatFeeder.java

46 lines
1.8 KiB
Java

package org.gcube.data.publishing.gCatFeeder.service;
import javax.ws.rs.ApplicationPath;
import org.gcube.data.publishing.gCatFeeder.service.engine.CatalogueControllersManager;
import org.gcube.data.publishing.gCatFeeder.service.engine.CollectorsManager;
import org.gcube.data.publishing.gCatFeeder.service.engine.ExecutionManager;
import org.gcube.data.publishing.gCatFeeder.service.engine.FeederEngine;
import org.gcube.data.publishing.gCatFeeder.service.engine.impl.CatalogueControllersManagerImpl;
import org.gcube.data.publishing.gCatFeeder.service.engine.impl.CollectorsManagerImpl;
import org.gcube.data.publishing.gCatFeeder.service.engine.impl.ExecutionManagerImpl;
import org.gcube.data.publishing.gCatFeeder.service.engine.impl.FeederEngineImpl;
import org.gcube.data.publishing.gCatFeeder.service.rest.Capabilities;
import org.gcube.data.publishing.gCatFeeder.service.rest.Executions;
import org.glassfish.hk2.utilities.binding.AbstractBinder;
import org.glassfish.jersey.server.ResourceConfig;
@ApplicationPath(ServiceConstants.SERVICE_NAME)
public class GCatFeeder extends ResourceConfig{
public GCatFeeder() {
super();
AbstractBinder binder = new AbstractBinder() {
@Override
protected void configure() {
bind(FeederEngineImpl.class).to(FeederEngine.class);
bind(CatalogueControllersManagerImpl.class).to(CatalogueControllersManager.class);
bind(CollectorsManagerImpl.class).to(CollectorsManager.class);
bind(ExecutionManagerImpl.class).to(ExecutionManager.class);
}
};
register(binder);
registerClasses(Executions.class);
registerClasses(Capabilities.class);
}
public GCatFeeder(AbstractBinder binder) {
super();
register(binder);
registerClasses(Executions.class);
registerClasses(Capabilities.class);
}
}