All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.xnio.channels.BoundServerChannel Maven / Gradle / Ivy

There is a newer version: 3.8.16.Final
Show newest version

package org.xnio.channels;

import java.net.SocketAddress;
import java.util.Collection;
import org.xnio.IoFuture;
import org.xnio.ChannelListener;

/**
 * A server that is bound to one or more local addresses.
 *
 * @since 1.2
 */
public interface BoundServerChannel extends CloseableChannel {
    /**
     * Get the channels representing the individual bound servers.  The collection is a snapshot view of the bound
     * channels; modifications to the collection are not allowed.  However the channels within the collection are
     * live references to the bindings that exist at the time this method is called; these channels may be closed
     * to unbind the channel.
     *
     * @return the channels
     */
    Collection getChannels();

    /**
     * Add a binding.  The returned channel may be used to close the binding.
     *
     * @param address the address to bind to
     * @return a future channel representing the binding
     */
    IoFuture bind(SocketAddress address);

    /** {@inheritDoc} */
    ChannelListener.Setter getCloseSetter();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy