org.gridbus.broker.farming.globus
Class GlobusComputeServer

java.lang.Object
  extended by org.gridbus.broker.farming.common.Server
      extended by org.gridbus.broker.farming.common.ComputeServer
          extended by org.gridbus.broker.farming.globus.GlobusComputeServer
Direct Known Subclasses:
GT4ComputeServer

public class GlobusComputeServer
extends ComputeServer

This class represents a compute server running Globus middleware

Version:
2.0
Author:
Srikumar Venugopal (srikumar@cs.mu.oz.au)

Field Summary
 
Fields inherited from class org.gridbus.broker.farming.common.ComputeServer
ALCHEMI, ALCHEMI_0_8, BUSY, CHECKING_REQUIREMENTS, CONDOR, CONDOR_6_6_9, CONDOR_SHAREDFS, FORK, GLOBUS, GLOBUS_2_4, GLOBUS_3_2, GLOBUS_4_0, NORDUGRID, PBS, READY, SGE, STATUS_ANY, UNICORE, UNICORE_4_1, UNKNOWN, XGRID
 
Constructor Summary
GlobusComputeServer(java.lang.String hostname, java.lang.String jobManager, java.lang.Object o)
           
 
Method Summary
 boolean checkPing()
          Checks if the compute server is up
 boolean discoverProperties()
          Checks if the compute server is up, and sets all its attributes
 int getCPUFree15min()
          Returns the processors which will be free in 15 minutes.
 int getCPUFree1min()
          Returns the processors which will be free in 1 minute.
 int getCPUFree5min()
          Returns the processors which will be free in 5 minutes.
 GassServerContainer getGassServer(org.ietf.jgss.GSSCredential credential)
           
 int getGatekeeperPort()
          Returns the remote gatekeeper port.
static java.lang.String getJobManager(java.lang.String contactString)
           
 org.ietf.jgss.GSSCredential getProxy()
          Returns the proxy for this server.
 void setConfig(java.lang.Object config)
          The object o, is used to set some configuration properties for the ComputeServer, and related classes.
 void setGatekeeperPort(int gkprPt)
          Sets the remote gatekeeper port.
 void setProxy(org.ietf.jgss.GSSCredential credential)
          Sets the proxy for this server.
 
Methods inherited from class org.gridbus.broker.farming.common.ComputeServer
addJobListener, addQueue, calcJobLimit, decAllocatedJobs, discoverPropertiesGeneric, getAllocatedJobs, getArch, getAvgJobComputationTime, getAvgRateofCompletion, getBufferedJobs, getBusytime, getConfig, getContactString, getCPU, getCPUspeed, getDispatcher, getExecutingJobs, getFailedJobs, getJobLimit, getJobManager, getJobsCompletedCurrentPoll, getMaxnumjobs, getMemfree, getMemtotal, getNodeRequirements, getNumCPUs, getOS, getPrevtime, getPricePerCpuSec, getPricePerJob, getQueues, getServerStatus, getStatus, getTimeperjob, getTotalFinishedJobs, getType, getUserCredential, incAllocatedJobs, incFailedJobs, incJobsCompletedCurrentPoll, incTotalFinishedJobs, isAlive, isFirewalled, isRequirementSatisfied, notifyListeners, recoverJob, removeAllJobListeners, removeJobListener, serverTypeString, setAliveFlag, setAllocatedJobs, setArch, setAvgJobComputationTime, setBufferedJobs, setBusytime, setContactString, setDispatcher, setExecutingJobs, setFailedJobs, setFirewalled, setJobLimit, setJobManager, setJobsCompletedCurrentPoll, setMaxnumjobs, setMemtotal, setNodeRequirements, setNumCPUs, setOS, setPrevtime, setPricePerCpuSec, setPricePerJob, setQueues, setTimeperjob, setTotalFinishedJobs, setType, setUserCredential, shutdown, startMonitoring, startup, statusInt, statusString, submitJob, updateAvgRateofCompletion, updateStatus
 
Methods inherited from class org.gridbus.broker.farming.common.Server
getHostname, getServerID, setHostname, setServerID
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GlobusComputeServer

public GlobusComputeServer(java.lang.String hostname,
                           java.lang.String jobManager,
                           java.lang.Object o)
Parameters:
hostname -
jobManager -
o -
Method Detail

setConfig

public void setConfig(java.lang.Object config)
Description copied from class: ComputeServer
The object o, is used to set some configuration properties for the ComputeServer, and related classes. These properties include, the local and remote working directories. In the current implementation Object parameter is an instance of the BrokerProperties class.

Overrides:
setConfig in class ComputeServer

getJobManager

public static java.lang.String getJobManager(java.lang.String contactString)
Parameters:
contactString -
Returns:

checkPing

public boolean checkPing()
Checks if the compute server is up

Returns:
true if the server is alive

discoverProperties

public boolean discoverProperties()
Checks if the compute server is up, and sets all its attributes

Specified by:
discoverProperties in class ComputeServer
Returns:
true if the properties have been discovered

getCPUFree15min

public int getCPUFree15min()
Returns the processors which will be free in 15 minutes.

Returns:
int

getCPUFree1min

public int getCPUFree1min()
Returns the processors which will be free in 1 minute.

Returns:
# of free CPUS in 5 minutes

getCPUFree5min

public int getCPUFree5min()
Returns the processors which will be free in 5 minutes.

Returns:
# of free CPUS in 5 minutes

getGatekeeperPort

public int getGatekeeperPort()
Returns the remote gatekeeper port.

Returns:
int

setGatekeeperPort

public void setGatekeeperPort(int gkprPt)
Sets the remote gatekeeper port.

Parameters:
gkprPt - - gatekeeper port

getProxy

public org.ietf.jgss.GSSCredential getProxy()
Returns the proxy for this server.

Returns:
GSSCredential proxy object

setProxy

public void setProxy(org.ietf.jgss.GSSCredential credential)
Sets the proxy for this server.

Parameters:
credential -

getGassServer

public GassServerContainer getGassServer(org.ietf.jgss.GSSCredential credential)
Parameters:
credential -
Returns:
Returns the gass_server.(This method also starts the gass server if it is not started already)