本文整理了Java中io.vertx.core.Context.addCloseHook()
方法的一些代码示例,展示了Context.addCloseHook()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Context.addCloseHook()
方法的具体详情如下:
包路径:io.vertx.core.Context
类名称:Context
方法名:addCloseHook
暂无
代码示例来源:origin: eclipse-vertx/vert.x
@Override
public void start(Future<Void> startFuture) throws Exception {
this.context.addCloseHook(closeable);
startFuture.fail("Fail to deploy.");
}
};
代码示例来源:origin: eclipse-vertx/vert.x
private <T> LocalRegistrationResult<T> addLocalRegistration(String address, HandlerRegistration<T> registration,
boolean replyHandler, boolean localOnly) {
Objects.requireNonNull(address, "address");
Context context = Vertx.currentContext();
boolean hasContext = context != null;
if (!hasContext) {
// Embedded
context = vertx.getOrCreateContext();
}
registration.setHandlerContext(context);
HandlerHolder<T> holder = new HandlerHolder<>(metrics, registration, replyHandler, localOnly, context);
ConcurrentCyclicSequence<HandlerHolder> handlers = new ConcurrentCyclicSequence<HandlerHolder>().add(holder);
ConcurrentCyclicSequence<HandlerHolder> actualHandlers = handlerMap.merge(
address,
handlers,
(old, prev) -> old.add(prev.first()));
if (hasContext) {
HandlerEntry entry = new HandlerEntry<>(address, registration);
context.addCloseHook(entry);
}
boolean newAddress = handlers == actualHandlers;
return new LocalRegistrationResult<>(holder, newAddress);
}
代码示例来源:origin: io.vertx/vertx-core
@Override
public void start(Future<Void> startFuture) throws Exception {
this.context.addCloseHook(closeable);
startFuture.fail("Fail to deploy.");
}
};
代码示例来源:origin: io.vertx/vertx-rx-java
public void addCloseHook(Closeable hook) {
delegate.addCloseHook(hook);
}
代码示例来源:origin: io.vertx/vertx-core
private <T> LocalRegistrationResult<T> addLocalRegistration(String address, HandlerRegistration<T> registration,
boolean replyHandler, boolean localOnly) {
Objects.requireNonNull(address, "address");
Context context = Vertx.currentContext();
boolean hasContext = context != null;
if (!hasContext) {
// Embedded
context = vertx.getOrCreateContext();
}
registration.setHandlerContext(context);
HandlerHolder<T> holder = new HandlerHolder<>(metrics, registration, replyHandler, localOnly, context);
ConcurrentCyclicSequence<HandlerHolder> handlers = new ConcurrentCyclicSequence<HandlerHolder>().add(holder);
ConcurrentCyclicSequence<HandlerHolder> actualHandlers = handlerMap.merge(
address,
handlers,
(old, prev) -> old.add(prev.first()));
if (hasContext) {
HandlerEntry entry = new HandlerEntry<>(address, registration);
context.addCloseHook(entry);
}
boolean newAddress = handlers == actualHandlers;
return new LocalRegistrationResult<>(holder, newAddress);
}
代码示例来源:origin: vert-x3/vertx-rx
public void addCloseHook(Closeable hook) {
delegate.addCloseHook(hook);
}
代码示例来源:origin: vietj/advanced-vertx-guide
public ContextCloseHook(Vertx vertx) {
this.context = vertx.getOrCreateContext();
// Get notified when this context closes
context.addCloseHook(this);
}
代码示例来源:origin: io.vertx/vertx-jdbc-client
private void setupCloseHook() {
Context ctx = Vertx.currentContext();
if (ctx != null && ctx.owner() == vertx) {
ctx.addCloseHook(holder::close);
}
}
代码示例来源:origin: io.vertx/vertx-cassandra-client
public CassandraClientImpl(Vertx vertx, String dataSourceName, CassandraClientOptions cassandraClientOptions) {
this.vertx = vertx;
cassandraHolder = lookupHolder(dataSourceName, cassandraClientOptions);
Context ctx = Vertx.currentContext();
if (ctx != null && ctx.owner() == vertx) {
ctx.addCloseHook(v -> {
cassandraHolder.close();
v.handle(Future.succeededFuture());
});
}
}
代码示例来源:origin: mewna/catnip
@Override
public <T> MessageConsumer<T> on(@Nonnull final EventType<T> type) {
final MessageConsumer<T> consumer = catnip().dispatchManager().createConsumer(type.key());
context.addCloseHook(consumer::unregister);
return consumer;
}
代码示例来源:origin: io.reactiverse/reactive-pg-client
public PgConnectionFactory(Context context,
boolean registerCloseHook,
PgConnectOptions options) {
hook = this::close;
this.registerCloseHook = registerCloseHook;
ctx = context;
if (registerCloseHook) {
ctx.addCloseHook(hook);
}
NetClientOptions netClientOptions = new NetClientOptions(options);
// Make sure ssl=false as we will use STARTLS
netClientOptions.setSsl(false);
this.sslMode = options.getSslMode();
this.hostnameVerificationAlgorithm = netClientOptions.getHostnameVerificationAlgorithm();
this.trustOptions = netClientOptions.getTrustOptions();
this.host = options.getHost();
this.port = options.getPort();
this.database = options.getDatabase();
this.username = options.getUser();
this.password = options.getPassword();
this.cachePreparedStatements = options.getCachePreparedStatements();
this.pipeliningLimit = options.getPipeliningLimit();
this.isUsingDomainSocket = options.isUsingDomainSocket();
this.client = context.owner().createNetClient(netClientOptions);
}
代码示例来源:origin: reactiverse/reactive-pg-client
public PgConnectionFactory(Context context,
boolean registerCloseHook,
PgConnectOptions options) {
hook = this::close;
this.registerCloseHook = registerCloseHook;
ctx = context;
if (registerCloseHook) {
ctx.addCloseHook(hook);
}
NetClientOptions netClientOptions = new NetClientOptions(options);
// Make sure ssl=false as we will use STARTLS
netClientOptions.setSsl(false);
this.sslMode = options.getSslMode();
this.hostnameVerificationAlgorithm = netClientOptions.getHostnameVerificationAlgorithm();
this.trustOptions = netClientOptions.getTrustOptions();
this.host = options.getHost();
this.port = options.getPort();
this.database = options.getDatabase();
this.username = options.getUser();
this.password = options.getPassword();
this.cachePreparedStatements = options.getCachePreparedStatements();
this.pipeliningLimit = options.getPipeliningLimit();
this.isUsingDomainSocket = options.isUsingDomainSocket();
this.client = context.owner().createNetClient(netClientOptions);
}
内容来源于网络,如有侵权,请联系作者删除!