edu.jhu.cnds.Frugal
Class FrugalManagerImpl

java.lang.Object
  |
  +--java.rmi.server.RemoteObject
        |
        +--java.rmi.server.RemoteServer
              |
              +--java.rmi.server.UnicastRemoteObject
                    |
                    +--edu.jhu.cnds.Frugal.FrugalManagerImpl

public class FrugalManagerImpl
extends java.rmi.server.UnicastRemoteObject
implements FrugalManagerRemote, java.lang.Runnable

Concrete implementation of a Frugal Manager, capable of finding a suitable Frugal Resource and returning it to the caller.

Version:
2.0
Author:
R. Sean Borgstrom
See Also:
Serialized Form

Fields inherited from class java.rmi.server.RemoteObject
ref
 
Constructor Summary
protected FrugalManagerImpl()
          This constructor performs no actions at this time.
protected FrugalManagerImpl(FrugalManagerServer backend)
          Constructs a new implementation of the Frugal Manager interface.
 
Method Summary
 java.lang.Object getAdmin()
          Returns an administrative interface for this Frugal Manager.
 FrugalResourceRemote getFrugalResource()
          Locates a suitable Frugal Resource, using a competitive strategy designed to stabilize system load and prevent memory depletion.
 void run()
          Keeps this implementation alive when not actively working.
 
Methods inherited from class java.rmi.server.UnicastRemoteObject
clone, exportObject, exportObject, exportObject, unexportObject
 
Methods inherited from class java.rmi.server.RemoteServer
getClientHost, getLog, setLog
 
Methods inherited from class java.rmi.server.RemoteObject
equals, getRef, hashCode, toString, toStub
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FrugalManagerImpl

protected FrugalManagerImpl()
                     throws java.rmi.RemoteException
This constructor performs no actions at this time.

FrugalManagerImpl

protected FrugalManagerImpl(FrugalManagerServer backend)
                     throws java.rmi.RemoteException
Constructs a new implementation of the Frugal Manager interface.
Parameters:
backend - The server that advertises this implementation on the various lookup groups.
Method Detail

getAdmin

public java.lang.Object getAdmin()
                          throws java.rmi.RemoteException
Returns an administrative interface for this Frugal Manager.
Returns:
An object implementing DestroyAdmin, Entry, JoinAdmin, and StorageLocationAdmin

run

public void run()
Keeps this implementation alive when not actively working.
Specified by:
run in interface java.lang.Runnable

getFrugalResource

public FrugalResourceRemote getFrugalResource()
                                       throws java.rmi.RemoteException
Locates a suitable Frugal Resource, using a competitive strategy designed to stabilize system load and prevent memory depletion.
Returns:
A Frugal Resource class that can perform work for the caller.