From 8e5995b3c1dd6ea2fb6079372527b60201d2f940 Mon Sep 17 00:00:00 2001 From: FabioISTI Date: Thu, 9 Apr 2020 12:11:09 +0200 Subject: [PATCH] Explicit Binding of implementeros --- .../data/transfer/service/DTService.java | 37 ++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/gcube/data/transfer/service/DTService.java b/src/main/java/org/gcube/data/transfer/service/DTService.java index 48eb7ab..ce67e3d 100644 --- a/src/main/java/org/gcube/data/transfer/service/DTService.java +++ b/src/main/java/org/gcube/data/transfer/service/DTService.java @@ -3,6 +3,23 @@ package org.gcube.data.transfer.service; import javax.ws.rs.ApplicationPath; import org.gcube.data.transfer.model.ServiceConstants; +import org.gcube.data.transfer.service.transfers.Capabilities; +import org.gcube.data.transfer.service.transfers.REST; +import org.gcube.data.transfer.service.transfers.Requests; +import org.gcube.data.transfer.service.transfers.TransferStatus; +import org.gcube.data.transfer.service.transfers.engine.AccountingManager; +import org.gcube.data.transfer.service.transfers.engine.CapabilitiesProvider; +import org.gcube.data.transfer.service.transfers.engine.PersistenceProvider; +import org.gcube.data.transfer.service.transfers.engine.PluginManager; +import org.gcube.data.transfer.service.transfers.engine.RequestManager; +import org.gcube.data.transfer.service.transfers.engine.TicketManager; +import org.gcube.data.transfer.service.transfers.engine.impl.AccountingManagerImpl; +import org.gcube.data.transfer.service.transfers.engine.impl.CapabilitiesProviderImpl; +import org.gcube.data.transfer.service.transfers.engine.impl.PersistenceProviderImpl; +import org.gcube.data.transfer.service.transfers.engine.impl.PluginManagerImpl; +import org.gcube.data.transfer.service.transfers.engine.impl.RequestManagerImpl; +import org.gcube.data.transfer.service.transfers.engine.impl.TransferTicketManagerImpl; +import org.glassfish.hk2.utilities.binding.AbstractBinder; import org.glassfish.jersey.media.multipart.MultiPartFeature; import org.glassfish.jersey.server.ResourceConfig; @@ -11,7 +28,25 @@ public class DTService extends ResourceConfig{ public DTService() { super(); - packages("org.gcube.data.transfer.service.transfers"); + + AbstractBinder binder = new AbstractBinder() { + @Override + protected void configure() { + bind(AccountingManagerImpl.class).to(AccountingManager.class); + bind(CapabilitiesProviderImpl.class).to(CapabilitiesProvider.class); + bind(PersistenceProviderImpl.class).to(PersistenceProvider.class); + bind(PluginManagerImpl.class).to(PluginManager.class); + bind(RequestManagerImpl.class).to(RequestManager.class); + bind(TransferTicketManagerImpl.class).to(TicketManager.class); + } + }; + register(binder); + + register(Capabilities.class); + register(Requests.class); + register(REST.class); + register(TransferStatus.class); +// packages("org.gcube.data.transfer.service.transfers"); packages("org.glassfish.jersey.media.multipart"); packages("org.glassfish.jersey.media.multipart.internal"); // register(ProviderLoggingListener.class);