public class GassServer extends BaseServer
GassServer
class acts as a basic multi-threaded HTTPS
server that handles GASS requests.Modifier and Type | Field and Description |
---|---|
static int |
CLIENT_SHUTDOWN_ENABLE |
private java.util.Hashtable |
jobOutputs |
private static org.apache.commons.logging.Log |
logger |
private int |
options |
static int |
READ_ENABLE |
static java.lang.String |
SHUTDOWN_STR |
static int |
STDERR_ENABLE |
static int |
STDOUT_ENABLE |
static int |
WRITE_ENABLE |
_server, accept, authorization, credentials, deactivator, gssMode, SO_TIMEOUT, timeout, url
Constructor and Description |
---|
GassServer()
Starts Gass Server with default user credentials.
|
GassServer(boolean secure,
int port)
Starts Gass Server on given port and mode.
|
GassServer(org.ietf.jgss.GSSCredential cred,
int port)
Starts Gass Server on given port and given credentials.
|
GassServer(int port)
Starts Gass Server on given port with default user credentials.
|
Modifier and Type | Method and Description |
---|---|
protected java.io.OutputStream |
getJobOutputStream(java.lang.String id) |
int |
getOptions()
Returns current options of the server.
|
protected void |
handleConnection(java.net.Socket socket)
This method needs to be implemented by subclasses.
|
private void |
init() |
void |
registerJobOutputStream(java.lang.String lb,
java.io.OutputStream out)
Registers a output stream with a job.
|
void |
setOptions(int options)
Sets the options of the gass server such
as enabling client shutdown, etc.
|
static void |
shutdown(org.ietf.jgss.GSSCredential cred,
GlobusURL gassURL)
Shutdowns a remote gass server.
|
java.lang.String |
toString() |
void |
unregisterJobOutputStream(java.lang.String lb)
Unregisters a job output stream for specified output label.
|
void |
unregisterJobOutputStream(java.lang.String lb,
java.io.OutputStream out)
Unregisters a job output stream.
|
getCredentials, getHost, getHostname, getPort, getProtocol, getTimeout, getURL, initialize, registerDefaultDeactivator, run, setAuthorization, setGssMode, setTimeout, shutdown, start, unregisterDefaultDeactivator, wrapSocket
private static org.apache.commons.logging.Log logger
public static final int READ_ENABLE
public static final int WRITE_ENABLE
public static final int STDOUT_ENABLE
public static final int STDERR_ENABLE
public static final int CLIENT_SHUTDOWN_ENABLE
public static final java.lang.String SHUTDOWN_STR
private java.util.Hashtable jobOutputs
private int options
public GassServer() throws java.io.IOException
java.io.IOException
public GassServer(int port) throws java.io.IOException
port
- port of the server, if 0 it will be dynamically assignedjava.io.IOException
public GassServer(org.ietf.jgss.GSSCredential cred, int port) throws java.io.IOException
cred
- credentials to use. if null default user credentials
will be usedport
- port of the server, if 0 it will be dynamically assignedjava.io.IOException
public GassServer(boolean secure, int port) throws java.io.IOException
secure
- if true starts server in secure mode, otherwise unsecureport
- port of the server, if 0 it will be dynamically assignedjava.io.IOException
private void init()
public void setOptions(int options)
options
- server optionspublic int getOptions()
public void registerJobOutputStream(java.lang.String lb, java.io.OutputStream out)
lb
- job label as described above.out
- the output stream to redirect output to.public void unregisterJobOutputStream(java.lang.String lb)
lb
- job output label.public void unregisterJobOutputStream(java.lang.String lb, java.io.OutputStream out)
protected java.io.OutputStream getJobOutputStream(java.lang.String id)
protected void handleConnection(java.net.Socket socket)
BaseServer
handleConnection
in class BaseServer
public java.lang.String toString()
toString
in class java.lang.Object
public static void shutdown(org.ietf.jgss.GSSCredential cred, GlobusURL gassURL) throws java.io.IOException, org.ietf.jgss.GSSException
cred
- credentials to use.gassURL
- the url of the remote gass server.java.io.IOException
org.ietf.jgss.GSSException