Groovy Documentation

## org.codehaus.groovy.runtime
[Java] Class SocketGroovyMethods

    java.lang.Object
      org.codehaus.groovy.runtime.DefaultGroovyMethodsSupport
          org.codehaus.groovy.runtime.SocketGroovyMethods

    public class SocketGroovyMethods
    extends DefaultGroovyMethodsSupport

This class defines new groovy methods for Sockets which enhance JDK classes inside the Groovy environment.

NOTE: While this class contains many 'public' static methods, it is primarily regarded as an internal class (its internal package name suggests this also). We value backwards compatibility of these methods when used within Groovy but value less backwards compatibility at the Java method call level. I.e. future versions of Groovy may remove or move a method call in this file but would normally aim to keep the method available from within Groovy.

Method Summary
`static java.net.Socket` | `accept(java.net.ServerSocket serverSocket, Closure closure)` Accepts a connection and passes the resulting Socket to the closure which runs in a new Thread.
`static java.net.Socket` | `accept(java.net.ServerSocket serverSocket, boolean runInANewThread, Closure closure)` Accepts a connection and passes the resulting Socket to the closure which runs in a new Thread or the calling thread, as needed.
`static java.io.Writer` | `leftShift(java.net.Socket self, java.lang.Object value)` Overloads the left shift operator to provide an append mechanism to add things to the output stream of a socket
`static java.io.OutputStream` | `leftShift(java.net.Socket self, byte[] value)` Overloads the left shift operator to provide an append mechanism to add bytes to the output stream of a socket
`static java.lang.Object` | `withObjectStreams(java.net.Socket socket, Closure closure)` Creates an InputObjectStream and an OutputObjectStream from a Socket, and passes them to the closure.
`static java.lang.Object` | `withStreams(java.net.Socket socket, Closure closure)` Passes the Socket's InputStream and OutputStream to the closure.

Methods inherited from class DefaultGroovyMethodsSupport
cloneSimilarCollection, cloneSimilarMap, closeQuietly, closeWithWarning, createSimilarArray, createSimilarCollection, createSimilarCollection, createSimilarList, createSimilarMap, createSimilarOrDefaultCollection, createSimilarSet, normaliseIndex, sameType, subListBorders, subListBorders

Methods inherited from class java.lang.Object
java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()

Method Detail

### accept

    public static java.net.Socket accept(java.net.ServerSocket serverSocket, Closure closure)

  Accepts a connection and passes the resulting Socket to the closure which runs in a new Thread.
  throws:
    IOException if an IOException occurs.
  Parameters:
    `serverSocket` - a ServerSocket
    `closure` - a Closure
  Returns:
    a Socket
  See Also:
    java.net.ServerSocket#accept()
  Since:
    1.0

### accept

    public static java.net.Socket accept(java.net.ServerSocket serverSocket, boolean runInANewThread, Closure closure)

  Accepts a connection and passes the resulting Socket to the closure which runs in a new Thread or the calling thread, as needed.
  throws:
    IOException if an IOException occurs.
  Parameters:
    `serverSocket` - a ServerSocket
    `runInANewThread` - This flag should be true, if the closure should be invoked in a new thread, else false.
    `closure` - a Closure
  Returns:
    a Socket
  See Also:
    java.net.ServerSocket#accept()
  Since:
    1.7.6

### leftShift

    public static java.io.Writer leftShift(java.net.Socket self, java.lang.Object value)

  Overloads the left shift operator to provide an append mechanism to add things to the output stream of a socket
  throws:
    IOException if an IOException occurs.
  Parameters:
    `self` - a Socket
    `value` - a value to append
  Returns:
    a Writer
  Since:
    1.0

### leftShift

    public static java.io.OutputStream leftShift(java.net.Socket self, byte[] value)

  Overloads the left shift operator to provide an append mechanism to add bytes to the output stream of a socket
  throws:
    IOException if an IOException occurs.
  Parameters:
    `self` - a Socket
    `value` - a value to append
  Returns:
    an OutputStream
  Since:
    1.0

### withObjectStreams

    public static java.lang.Object withObjectStreams(java.net.Socket socket, Closure closure)

  Creates an InputObjectStream and an OutputObjectStream from a Socket, and passes them to the closure. The streams will be closed after the closure returns, even if an exception is thrown.
  throws:
    IOException if an IOException occurs.
  Parameters:
    `socket` - this Socket
    `closure` - a Closure
  Returns:
    the value returned by the closure
  Since:
    1.5.0

### withStreams

    public static java.lang.Object withStreams(java.net.Socket socket, Closure closure)

  Passes the Socket's InputStream and OutputStream to the closure. The streams will be closed after the closure returns, even if an exception is thrown.
  throws:
    IOException if an IOException occurs.
  Parameters:
    `socket` - a Socket
    `closure` - a Closure
  Returns:
    the value returned by the closure
  Since:
    1.5.2

Groovy Documentation