package fi.iki.mkuokkanen.seda.api; import static com.google.common.base.Preconditions.checkArgument; import static com.google.common.base.Preconditions.checkNotNull; import javax.inject.Inject; import javax.inject.Named; import org.eclipse.jetty.server.Connector; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.ServerConnector; import com.google.inject.Provider; /** * Provides proper Jetty Connector * * @author mkuokkanen */ public class ConnectorProvider implements Provider<Connector> { private final Server server; private final int port; private final String host; /** * Default constructor * * @param server * @param port * @param host */ @Inject public ConnectorProvider(Server server, @Named("api.port") int port, @Named("api.host") String host) { this.server = checkNotNull(server); checkArgument(port > 0); this.port = port; this.host = host; } @Override public Connector get() { ServerConnector connector = new ServerConnector(server); connector.setHost(host); connector.setPort(port); return connector; } }