Rio Project 4.2 API Documentation



org.rioproject.system
Interface ComputeResourceAdmin

All Known Subinterfaces:
CybernodeAdmin
All Known Implementing Classes:
CybernodeAdminImpl, CybernodeAdminProxy

public interface ComputeResourceAdmin

The ComputeResourceAdmin provides an administrative interface for a ComputeResource

Author:
Dennis Reedy

Method Summary
 ComputeResourceUtilization getComputeResourceUtilization()
          Get the ComputeResourceUtilization for the compute resource
 ComputeResourceUtilization getComputeResourceUtilization(Uuid serviceUuid)
          Get the ComputeResourceUtilization for an instantiated service
 MeasuredResource[] getMeasuredResources()
          Get the MeasuredResource components for the ComputeResource
 PlatformCapability[] getPlatformCapabilties()
          Get the PlatformCapability components for the ComputeResource
 long getReportInterval()
          Get the reportInterval property which controls how often the ComputeResource will inform registered Observers of a state change.
 ResourceCapability getResourceCapability()
          Get the ResourceCapability for the compute resource
 SLA[] getSLAs()
          Get the system SLAs which provide control information for the MeasurableCapability components the ComputeResource contains
 double getUtilization()
          Get the resource's utilization.
 void setReportInterval(long reportInterval)
          Set the reportInterval property which controls how often the ComputeResource will inform registered Observers of a state change.
 boolean setSLA(SLA serviceLevelAgreement)
          Set the SLA for a MeasurableCapability contained within the ComputeResource
 

Method Detail

setSLA

boolean setSLA(SLA serviceLevelAgreement)
               throws RemoteException
Set the SLA for a MeasurableCapability contained within the ComputeResource

Parameters:
serviceLevelAgreement - The SLA for the ComputeResource
Returns:
True if updated, false otherwise
Throws:
RemoteException - If communication errors occur

getSLAs

SLA[] getSLAs()
              throws RemoteException
Get the system SLAs which provide control information for the MeasurableCapability components the ComputeResource contains

Returns:
The system SLA for each MeasurableCapability contained within the ComputeResource
Throws:
RemoteException - If communication errors occur

getPlatformCapabilties

PlatformCapability[] getPlatformCapabilties()
                                            throws RemoteException
Get the PlatformCapability components for the ComputeResource

Returns:
The PlatformCapability components for the ComputeResource
Throws:
RemoteException - If communication errors occur

getMeasuredResources

MeasuredResource[] getMeasuredResources()
                                        throws RemoteException
Get the MeasuredResource components for the ComputeResource

Returns:
Array of MeasuredResource instances that correspond to MeasurableCapability components
Throws:
RemoteException - If communication errors occur

getUtilization

double getUtilization()
                      throws RemoteException
Get the resource's utilization. ComputeResource quantitative behavior is represented by MeasurableCapability objects. MeasurableCapability objects produce a relative value which represents the percentage of the capability being measured. This value is referred to as a MeasurableCapability utilization. This method returns the aggregate of all computed utilizations

Returns:
The ComputeResource's utilization
Throws:
RemoteException - If communication errors occur

getResourceCapability

ResourceCapability getResourceCapability()
                                         throws RemoteException
Get the ResourceCapability for the compute resource

Returns:
The ResourceCapability for the compute resource. The ResourceCapability class provides the utilization, platform and measurable capabilities for a compute resource.
Throws:
RemoteException - If communication errors occur

getComputeResourceUtilization

ComputeResourceUtilization getComputeResourceUtilization()
                                                         throws RemoteException
Get the ComputeResourceUtilization for the compute resource

Returns:
The ComputeResourceUtilization for the compute resource. This object represents a snapshot of the depletion-oriented resources on the compute resource. A new ComputeResourceUtilization is created each time this method is invoked
Throws:
RemoteException - If communication errors occur

getComputeResourceUtilization

ComputeResourceUtilization getComputeResourceUtilization(Uuid serviceUuid)
                                                         throws RemoteException
Get the ComputeResourceUtilization for an instantiated service

Parameters:
serviceUuid - The Uuid of an instantiated service
Returns:
The ComputeResourceUtilization for the service identified by the serviceUuid. If the identified service is contained within the Cybernode, the returned ComputeResourceUtilization will be the same as the value returned from getComputeResourceUtilization().

If the identified service has been executed in it's own process, the returned value will represent the ComputeResourceUtilization for that process.

If no instantiated service can be found, a null is returned.

Throws:
RemoteException - If communication errors occur

getReportInterval

long getReportInterval()
                       throws RemoteException
Get the reportInterval property which controls how often the ComputeResource will inform registered Observers of a state change. A state change is determined if any of the MeasurableCapability components contained within this ComputeResource provide an update in the interval specified by the reportInterval property

Returns:
The interval controlling when the ComputeResource reports change of state
Throws:
RemoteException - If communication errors occur

setReportInterval

void setReportInterval(long reportInterval)
                       throws RemoteException
Set the reportInterval property which controls how often the ComputeResource will inform registered Observers of a state change. A state change is determined if any of the MeasurableCapability components contained within this ComputeResource provide an update in the interval specified by the reportInterval property.

Note: MeasurableCapability components contained within the ComputeResource may have reportRates greater than then the reportInterval. If this is the case, the ComputeResource will only report state changes if the values reported by the contained MeasurableCapability objects change.

Parameters:
reportInterval - The interval controlling when the ComputeResource reports change of state to registered Observers
Throws:
IllegalArgumentException - if the reportInterval < 0
RemoteException - If communication errors occur

Copyright © Rio Project.

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