package dmg.util ; import javax.security.auth.Subject; import java.io.InputStream; import java.io.OutputStream; import java.io.Reader; import java.io.Writer; import java.net.InetAddress; import java.net.Socket; public interface StreamEngine { /** * * @return {@link Subject} associated with the connections */ Subject getSubject() ; /** * * @return Socket object associated with the connections */ Socket getSocket() ; /** * * @return local InetAddress */ InetAddress getLocalAddress(); /** * * @return remote InetAddress */ InetAddress getInetAddress() ; /** * * @return socket input stream */ InputStream getInputStream() ; /** * * @return return socket output stream */ OutputStream getOutputStream() ; Reader getReader() ; Writer getWriter() ; /** Returns the terminal type (vt100, vt220, etc). */ String getTerminalType(); /** * Returns the terminal width. * * 0 indicates that the width is unknown. */ int getTerminalWidth(); /** * Returns the terminal height. * * 0 indicates that the height is unknown. */ int getTerminalHeight(); }