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

com.veraxsystems.vxipmi.transport.Messenger Maven / Gradle / Ivy

The newest version!
package com.veraxsystems.vxipmi.transport;

import java.io.IOException;

/**
 * Low level connection handler.
 * 
 */
public interface Messenger {
    /**
     * Sends {@link UdpMessage}.
     *
     * @param message
     *            - {@link UdpMessage} to send.
     * @throws IOException
     *             when sending of the message fails
     */
    void send(UdpMessage message) throws IOException;

    /**
     * Registers listener in the {@link Messenger} so it will be notified via
     * {@link UdpListener#notifyMessage(UdpMessage)} when new message arrives.
     *
     * @param listener
     *            - {@link UdpListener} to register.
     */
    void register(UdpListener listener);

    /**
     * Unregisters listener from {@link Messenger} so it no longer will be
     * notified.
     *
     * @param listener
     *            - {@link UdpListener} to unregister
     */
    void unregister(UdpListener listener);

    /**
     * Closes the connection.
     */
    void closeConnection();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy