/** * An asynchronous exclusive lock which can be obtained from any node in the cluster. * <p> * When the lock is obtained, no-one else in the cluster can obtain the lock with the same name until the lock * is released. * * @author <a href="http://tfox.org">Tim Fox</a> */ @VertxGen public interface Lock { /** * Release the lock. Once the lock is released another will be able to obtain the lock. */ void release(); }
/** * Represent a Mail-Exchange-Record (MX) which was resolved for a domain. * * @author <a href="mailto:nmaurer@redhat.com">Norman Maurer</a> */ @VertxGen public interface MxRecord { /** * The priority of the MX record. */ int priority(); /** * The name of the MX record */ String name(); }
/** * Base interface for a stream. * * @author <a href="http://tfox.org">Tim Fox</a> */ @VertxGen(concrete = false) public interface StreamBase { /** * Set an exception handler. * * @param handler the handler * @return a reference to this, so the API can be used fluently */ @Fluent StreamBase exceptionHandler(@Nullable Handler<Throwable> handler); }
/** * @author <a href="mailto:nscavell@redhat.com">Nick Scavelli</a> */ @VertxGen(concrete = false) public interface Measured { /** * Whether the metrics are enabled for this measured object * * @implSpec * The default implementation returns {@code false} * * @return {@code true} if metrics are enabled */ default boolean isMetricsEnabled() { return false; } }
/** * A received datagram packet (UDP) which contains the data and information about the sender of the data itself. * * @author <a href="mailto:nmaurer@redhat.com">Norman Maurer</a> */ @VertxGen public interface DatagramPacket { /** * Returns the {@link io.vertx.core.net.SocketAddress} of the sender that sent * this {@link io.vertx.core.datagram.DatagramPacket}. * * @return the address of the sender */ SocketAddress sender(); /** * Returns the data of the {@link io.vertx.core.datagram.DatagramPacket} * * @return the data */ Buffer data(); }
/** * Represents properties of the file system. * * * @author <a href="http://tfox.org">Tim Fox</a> */ @VertxGen public interface FileSystemProps { /** * @return The total space on the file system, in bytes */ long totalSpace(); /** * @return The total un-allocated space on the file system, in bytes */ long unallocatedSpace(); /** * @return The total usable space on the file system, in bytes */ long usableSpace(); }
/** * An HTTP/2 frame. * * @author <a href="mailto:julien@julienviet.com">Julien Viet</a> */ @VertxGen public interface HttpFrame { /** * @return the 8-bit type of the frame */ @CacheReturn int type(); /** * @return the 8-bit flags specific to the frame */ @CacheReturn int flags(); /** * @return the frame payload */ @CacheReturn Buffer payload(); }
@VertxGen public interface DeliveryContext<T> {
@VertxGen public interface TimeoutStream extends ReadStream<Long> {
@VertxGen public interface SrvRecord {
@VertxGen public interface WebSocket extends WebSocketBase {
@VertxGen public interface SocketAddress {
@VertxGen public interface FileProps {
@VertxGen public interface WorkerExecutor extends Measured {
@VertxGen public interface SelfSignedCertificate {
@VertxGen public interface MessageProducer<T> extends WriteStream<T> {
@VertxGen public interface HttpServerFileUpload extends ReadStream<Buffer> {
@VertxGen public interface Counter {
@VertxGen public interface NetClient extends Measured {
@VertxGen public interface MessageConsumer<T> extends ReadStream<Message<T>> {