package org.dyndns.jkiddo.guice; import org.dyndns.jkiddo.logic.interfaces.IImageStoreReader; import org.dyndns.jkiddo.service.dpap.server.DPAPResource; import org.dyndns.jkiddo.service.dpap.server.IImageLibrary; import org.dyndns.jkiddo.service.dpap.server.ImageItemManager; import com.google.inject.AbstractModule; import com.google.inject.name.Names; public class DPAPModule extends AbstractModule { private final Integer hostingPort; private final IImageStoreReader imageStoreReader; public DPAPModule(final Integer hostingPort, final IImageStoreReader imageStoreReader) { super(); this.hostingPort = hostingPort; this.imageStoreReader = imageStoreReader; } @Override protected void configure() { bind(Integer.class).annotatedWith(Names.named(DPAPResource.DPAP_SERVER_PORT_NAME)).toInstance(hostingPort); bind(IImageLibrary.class).to(DPAPResource.class).asEagerSingleton(); bind(ImageItemManager.class).annotatedWith(Names.named(DPAPResource.DPAP_RESOURCE)).to(ImageItemManager.class); bind(IImageStoreReader.class).toInstance(imageStoreReader); } }