39 lines
1.0 KiB
Java
39 lines
1.0 KiB
Java
package io.volvox.td;
|
|
|
|
import io.quarkus.vertx.runtime.VertxProducer;
|
|
import it.tdlight.common.Init;
|
|
import it.tdlight.common.ReactiveTelegramClient;
|
|
import it.tdlight.common.utils.CantLoadLibrary;
|
|
import it.tdlight.tdlight.ClientManager;
|
|
import java.time.Duration;
|
|
import javax.enterprise.context.ApplicationScoped;
|
|
import javax.enterprise.inject.Produces;
|
|
import javax.inject.Singleton;
|
|
import org.eclipse.microprofile.config.inject.ConfigProperty;
|
|
import org.jboss.logging.Logger;
|
|
|
|
@ApplicationScoped
|
|
class TdClientProducers {
|
|
|
|
private static final Logger LOGGER = Logger.getLogger(VertxProducer.class);
|
|
|
|
@ConfigProperty(name = "td.requests.timeout")
|
|
Duration requestTimeout;
|
|
|
|
@Produces
|
|
ReactiveTelegramClient produceReactiveTelegramClient() {
|
|
try {
|
|
Init.start();
|
|
} catch (CantLoadLibrary e) {
|
|
LOGGER.error(e);
|
|
}
|
|
return ClientManager.createReactive();
|
|
}
|
|
|
|
@Produces
|
|
@Singleton
|
|
public Duration produceRequestTimeout() {
|
|
return requestTimeout;
|
|
}
|
|
}
|