Rio Project 4.2 API Documentation



org.rioproject.cybernode
Interface Cybernode

All Superinterfaces:
Administrable, EventProducer, MonitorableService, Remote, Service, ServiceBeanInstantiator, Watchable
All Known Implementing Classes:
CybernodeImpl

public interface Cybernode
extends ServiceBeanInstantiator, Service

A Cybernode represents a compute resource as a service available through the network. The Cybernode represents the capabilities of compute resource through quantitative & qualitative mechanisms. Cybernode instances dynamically discover and enlist with dynamic provisioning agents, and provide a lightweight container to instantiate dynamic services.

Author:
Dennis Reedy

Method Summary
 void enlist(Schedule schedule)
          Have the Cybernode add itself as a resource which can be used to instantiate dynamic application services.
 Schedule getSchedule()
          Get the availability schedule for the Cybernode.
 boolean isEnlisted()
          Get the enlisted state of the Cybernode
 void release(boolean terminateServices)
          Have the Cybernode remove itself as a resource which that can be used to instantiate dynamic application services.
 
Methods inherited from interface org.rioproject.core.provision.ServiceBeanInstantiator
getInetAddress, getInstantiatorUuid, getName, getServiceBeanInstances, getServiceRecords, getServiceStatement, getServiceStatements, instantiate, update
 
Methods inherited from interface net.jini.admin.Administrable
getAdmin
 
Methods inherited from interface org.rioproject.jsb.MonitorableService
monitor, ping, startHeartbeat
 
Methods inherited from interface org.rioproject.event.EventProducer
register
 
Methods inherited from interface org.rioproject.watch.Watchable
fetch, fetch
 

Method Detail

getSchedule

Schedule getSchedule()
                     throws RemoteException
Get the availability schedule for the Cybernode. The Cybernode registers and unregisters to discovered Provision Manager instances based on the declared schedule. If there is not schedule, the Cybernode is always available

Returns:
A {org.rioproject.core.Schedule} object if the Cybernode has been configured with an availability schedule, otherwise return null
Throws:
RemoteException - If communication errors occur

enlist

void enlist(Schedule schedule)
            throws RemoteException
Have the Cybernode add itself as a resource which can be used to instantiate dynamic application services. Once a Cybernode is enlisted, it will use the provided availability schedule to control when it registers and unregisters to discovered Provision Manager instances If the Cybernode is already enlisted, this method will have no effect

Parameters:
schedule - The availability schedule for the Cybernode. The Cybernode registers and unregisters to discovered Provision Manager instances based on the declared schedule. The schedule must not be null
Throws:
NullPointerException - If the schedule parameter is null
RemoteException - If communication errors occur

release

void release(boolean terminateServices)
             throws RemoteException
Have the Cybernode remove itself as a resource which that can be used to instantiate dynamic application services. If the Cybernode is already released, this method will have no effect

Parameters:
terminateServices - If this parameter is true, all services which are being hosted by the Cybernode will be terminated as a result of this method invocation
Throws:
RemoteException - If communication errors occur

isEnlisted

boolean isEnlisted()
                   throws RemoteException
Get the enlisted state of the Cybernode

Returns:
True if the Cybernode can be used to instantiate dynamic application services.
Throws:
RemoteException - If communication errors occur

Copyright © Rio Project.

Copyright © 2006-2011 Rio Project. All Rights Reserved.