public class DefaultProcessingUnitInstance extends AbstractGridComponent implements InternalProcessingUnitInstance
adminDEFAULT_HISTORY_SIZE, DEFAULT_MONITOR_INTERVAL| Constructor and Description |
|---|
DefaultProcessingUnitInstance(ServiceID serviceID,
PUDetails puDetails,
PUServiceBean puServiceBean,
InternalAdmin admin,
JVMDetails jvmDetails) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
addSpaceInstanceIfMatching(SpaceInstance spaceInstance)
Adds a space instance only if it is one that the processing unit has started.
|
void |
decrement()
Decrements the instance (and destroying it in the process).
|
void |
destroy()
Destroy the instance.
|
void |
disableLRMIMonitoring() |
void |
enableLRMIMonitoring() |
LRMIMonitoringDetails |
fetchLRMIMonitoringDetails() |
Map<String,AsyncPollingEventContainerServiceDetails> |
getAsyncPollingEventContainerDetails()
Returns a map of
AsyncPollingEventContainerServiceDetails
keyed by their ServiceDetails.getId(). |
int |
getBackupId()
Returns the backup id of the processing unit instance.
|
ClusterInfo |
getClusterInfo()
Returns the cluster info of the processing unit instance.
|
long |
getCurrentTimeInMillis() |
SpaceServiceDetails |
getEmbeddedSpaceDetails()
Returns the embedded space service details as described by the service started within the
processing unit.
|
SpaceServiceDetails[] |
getEmbeddedSpacesDetails()
Returns the embedded space service details as described by the service started within the
processing unit.
|
Map<String,EventContainerServiceDetails> |
getEventContainerDetails()
Returns a map of
EventContainerServiceDetails keyed by their
ServiceDetails.getId(). |
GridServiceContainer |
getGridServiceContainer()
Returns the
GridServiceContainer the processing unit is
running on. |
ServiceID |
getGridServiceContainerServiceID() |
String |
getId()
Returns the Processing unit instance Identifier
|
int |
getInstanceId()
Returns the instance id of the processing unit instance.
|
JeeServiceDetails |
getJeeDetails()
Returns the jee service details of the jee container that was started within this processing
unit.
|
JVMStatistics |
getJVMStatistics() |
ProcessingUnitInstanceStatistics |
getLastStatistics()
This method is non-blocking and should used in conjunction with
ProcessingUnitInstance.getStatistics() or
StatisticsMonitor.setStatisticsInterval(long, java.util.concurrent.TimeUnit) |
MemberAliveIndicatorStatus |
getMemberAliveIndicatorStatus() |
MemcachedServiceDetails |
getMemcachedDetails() |
String |
getName()
Returns the name of the processing unit.
|
NIODetails |
getNIODetails() |
NIOStatistics |
getNIOStatistics() |
Map<String,NotifyEventContainerServiceDetails> |
getNotifyEventContainerDetails()
Returns a map of
NotifyEventContainerServiceDetails
keyed by their ServiceDetails.getId(). |
OSDetails |
getOSDetails() |
OSStatistics |
getOSStatistics() |
ProcessingUnitPartition |
getPartition()
Returns the processing unit partition this processing unit instance is part of.
|
Map<String,PollingEventContainerServiceDetails> |
getPollingEventContainerDetails()
Returns a map of
PollingEventContainerServiceDetails
keyed by their ServiceDetails.getId(). |
ProcessingUnit |
getProcessingUnit()
Returns the processing unit this processing unit instance belongs to.
|
String |
getProcessingUnitInstanceName()
Get this processing unit instance String representation.
If this processing unit instance represents a Space instance, this method will return a similar result to SpaceInstance.getSpaceInstanceName(), but with the processing unit name as the Space name. |
String |
getProcessingUnitInstanceSimpleName() |
BeanLevelProperties |
getProperties()
Return the properties the processing unit was deployed with.
|
PUServiceBean |
getPUServiceBean() |
RemotingServiceDetails |
getRemotingDetails()
Returns the remoting service details (the exporter) if configured within the processing
unit.
|
Map<String,ServiceDetails> |
getServiceDetailsByServiceId()
Returns a map of service details by service id.
|
ServiceDetails |
getServiceDetailsByServiceId(String serviceId)
Returns the service details for a specific service id.
|
Map<String,ServiceDetails[]> |
getServiceDetailsByServiceType()
Returns a map of service details by service type.
|
ServiceID |
getServiceID() |
ServiceDetails[] |
getServicesDetails() |
ServiceDetails[] |
getServicesDetailsByServiceType(String serviceType)
Returns the service details by a service type
ServiceDetails.getServiceType(). |
SpaceServiceDetails[] |
getSpaceDetails()
Returns the space service details as described by the service started within the processing
unit.
|
SpaceInstance |
getSpaceInstance()
Returns a space instance that was started within the processing unit instance.
|
SpaceInstance[] |
getSpaceInstances()
Returns all the space instances that were started within the processing unit instance.
|
ProcessingUnitInstanceStatistics |
getStatistics()
Returns the processing unit instance statistics.
|
long |
getStatisticsIntervalMilliseconds() |
String |
getUid()
Returns the unique id of the grid component.
|
Future<Object> |
invoke(String serviceBeanName,
Map<String,Object> namedArgs) |
boolean |
isEmbeddedSpaces()
Returns
true if there are embedded spaces started within this processing unit. |
boolean |
isJee()
Returns
true if this processing unit is a jee processing unit. |
boolean |
isMonitoring()
Returns
true if statistics are now being monitored. |
boolean |
isUndeploying() |
Iterator<ServiceDetails> |
iterator() |
void |
relocate()
Relocates the instance to any suitable
GridServiceContainer. |
void |
relocate(GridServiceContainer gridServiceContainerToRelocateTo)
Relocates the instance to the provided
GridServiceContainer. |
ProcessingUnitInstance |
relocateAndWait()
Relocates the any suitable
GridServiceContainer. |
ProcessingUnitInstance |
relocateAndWait(GridServiceContainer gridServiceContainerToRelocateTo)
Relocates the instance to the provided
GridServiceContainer. |
ProcessingUnitInstance |
relocateAndWait(GridServiceContainer gridServiceContainerToRelocateTo,
long timeout,
TimeUnit timeUnit)
Relocates the instance to the provided
GridServiceContainer. |
ProcessingUnitInstance |
relocateAndWait(long timeout,
TimeUnit timeUnit)
Relocates the any suitable
GridServiceContainer. |
void |
removeSpaceInstance(String uid) |
void |
restart()
Restarts the processing unit instance.
|
ProcessingUnitInstance |
restartAndWait()
Restarts the processing unit instance and waits indefinitely for the restarted processing
unit instance returning it.
|
ProcessingUnitInstance |
restartAndWait(long timeout,
TimeUnit timeUnit)
Restarts the processing unit instance and waits for the restarted processing unit instance
returning it for the provided timeout.
|
void |
runGc() |
void |
setClusterInfo(ClusterInfo clusterInfo) |
void |
setGridServiceContainer(GridServiceContainer gridServiceContainer) |
void |
setMemberAliveIndicatorStatus(org.jini.rio.monitor.ServiceFaultDetectionEvent serviceFaultDetectionEvent) |
void |
setProcessingUnit(ProcessingUnit processingUnit) |
void |
setProcessingUnitPartition(ProcessingUnitPartition processingUnitPartition) |
void |
setStatisticsHistorySize(int historySize)
Sets the history size of number of statistics stored.
|
void |
setStatisticsInterval(long interval,
TimeUnit timeUnit)
Sets the statistics interval, automatically updating the monitoring scheduled tasks if
monitoring is enabled.
|
void |
startStatisticsMonitor()
Starts the statistics monitor, starting a scheduled monitor that polls for statistics.
|
void |
stopStatisticsMonitor()
Stops the statistics monitor.
|
SpaceInstance |
waitForSpaceInstance() |
SpaceInstance |
waitForSpaceInstance(long timeout,
TimeUnit timeUnit) |
addZone, assertStateChangesPermitted, getAdmin, getJVMDetails, getMachine, getOperatingSystem, getTransport, getVirtualMachine, getZones, isDiscovered, setDiscovered, setMachine, setOperatingSystem, setTransport, setVirtualMachineclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEach, spliteratorgetAdminsetDiscoveredisDiscoveredsetMachinegetMachinesetTransportgetTransportsetOperatingSystemgetOperatingSystemgetJVMDetailssetVirtualMachinegetVirtualMachineaddZonepublic DefaultProcessingUnitInstance(ServiceID serviceID, PUDetails puDetails, PUServiceBean puServiceBean, InternalAdmin admin, JVMDetails jvmDetails)
public String getUid()
GridComponentgetUid in interface GridComponentgetUid in interface InternalVirtualMachineInfoProviderpublic String getId()
ProcessingUnitInstancegetId in interface ProcessingUnitInstancepublic int getInstanceId()
ProcessingUnitInstancegetInstanceId in interface ProcessingUnitInstancepublic int getBackupId()
ProcessingUnitInstancegetBackupId in interface ProcessingUnitInstancepublic ServiceID getServiceID()
getServiceID in interface InternalProcessingUnitInstancepublic ProcessingUnit getProcessingUnit()
ProcessingUnitInstancegetProcessingUnit in interface ProcessingUnitInstancepublic String getName()
ProcessingUnitInstancegetName in interface ProcessingUnitInstancepublic String getProcessingUnitInstanceName()
ProcessingUnitInstanceSpaceInstance.getSpaceInstanceName(), but with the processing unit name as the Space name.
Otherwise, it will return: {Processing unit name} [instance id] - the name of this processing
unit (see ProcessingUnitInstance.getName()) and the instance id (see ProcessingUnitInstance.getInstanceId()); for
example, MyPU [3]getProcessingUnitInstanceName in interface ProcessingUnitInstancepublic String getProcessingUnitInstanceSimpleName()
getProcessingUnitInstanceSimpleName in interface InternalProcessingUnitInstancepublic void setProcessingUnit(ProcessingUnit processingUnit)
setProcessingUnit in interface InternalProcessingUnitInstancepublic ClusterInfo getClusterInfo()
ProcessingUnitInstancegetClusterInfo in interface ProcessingUnitInstancepublic BeanLevelProperties getProperties()
ProcessingUnitInstancegetProperties in interface ProcessingUnitInstancepublic Iterator<ServiceDetails> iterator()
iterator in interface Iterable<ServiceDetails>public Map<String,EventContainerServiceDetails> getEventContainerDetails()
ProcessingUnitInstanceEventContainerServiceDetails keyed by their
ServiceDetails.getId().getEventContainerDetails in interface ProcessingUnitInstancepublic Map<String,PollingEventContainerServiceDetails> getPollingEventContainerDetails()
ProcessingUnitInstancePollingEventContainerServiceDetails
keyed by their ServiceDetails.getId().getPollingEventContainerDetails in interface ProcessingUnitInstancepublic Map<String,NotifyEventContainerServiceDetails> getNotifyEventContainerDetails()
ProcessingUnitInstanceNotifyEventContainerServiceDetails
keyed by their ServiceDetails.getId().getNotifyEventContainerDetails in interface ProcessingUnitInstancepublic Map<String,AsyncPollingEventContainerServiceDetails> getAsyncPollingEventContainerDetails()
ProcessingUnitInstanceAsyncPollingEventContainerServiceDetails
keyed by their ServiceDetails.getId().getAsyncPollingEventContainerDetails in interface ProcessingUnitInstancepublic SpaceServiceDetails[] getSpaceDetails()
ProcessingUnitInstancegetSpaceDetails in interface ProcessingUnitInstancepublic SpaceServiceDetails getEmbeddedSpaceDetails()
ProcessingUnitInstancenull if no embedded space was started within the processing
unit.getEmbeddedSpaceDetails in interface ProcessingUnitInstancepublic SpaceServiceDetails[] getEmbeddedSpacesDetails()
ProcessingUnitInstancegetEmbeddedSpacesDetails in interface ProcessingUnitInstancepublic ServiceDetails[] getServicesDetails()
public ServiceID getGridServiceContainerServiceID()
getGridServiceContainerServiceID in interface InternalProcessingUnitInstancepublic void setGridServiceContainer(GridServiceContainer gridServiceContainer)
setGridServiceContainer in interface InternalProcessingUnitInstancepublic GridServiceContainer getGridServiceContainer()
ProcessingUnitInstanceGridServiceContainer the processing unit is
running on.getGridServiceContainer in interface ProcessingUnitInstancepublic void setProcessingUnitPartition(ProcessingUnitPartition processingUnitPartition)
setProcessingUnitPartition in interface InternalProcessingUnitInstancepublic ProcessingUnitPartition getPartition()
ProcessingUnitInstancegetPartition in interface ProcessingUnitInstancepublic PUServiceBean getPUServiceBean()
getPUServiceBean in interface InternalProcessingUnitInstancepublic boolean isEmbeddedSpaces()
ProcessingUnitInstancetrue if there are embedded spaces started within this processing unit.isEmbeddedSpaces in interface ProcessingUnitInstancepublic SpaceInstance getSpaceInstance()
ProcessingUnitInstancenull if no embedded space instances were started (or none has been detected
yet).getSpaceInstance in interface ProcessingUnitInstancepublic SpaceInstance[] getSpaceInstances()
ProcessingUnitInstancegetSpaceInstances in interface ProcessingUnitInstancepublic SpaceInstance waitForSpaceInstance()
waitForSpaceInstance in interface ProcessingUnitInstancepublic SpaceInstance waitForSpaceInstance(long timeout, TimeUnit timeUnit)
waitForSpaceInstance in interface ProcessingUnitInstancepublic boolean addSpaceInstanceIfMatching(SpaceInstance spaceInstance)
InternalProcessingUnitInstanceaddSpaceInstanceIfMatching in interface InternalProcessingUnitInstancepublic void removeSpaceInstance(String uid)
removeSpaceInstance in interface InternalProcessingUnitInstancepublic boolean isJee()
ProcessingUnitInstancetrue if this processing unit is a jee processing unit.isJee in interface ProcessingUnitInstancepublic JeeServiceDetails getJeeDetails()
ProcessingUnitInstancegetJeeDetails in interface ProcessingUnitInstancepublic MemcachedServiceDetails getMemcachedDetails()
getMemcachedDetails in interface ProcessingUnitInstancepublic RemotingServiceDetails getRemotingDetails()
ProcessingUnitInstancegetRemotingDetails in interface ProcessingUnitInstancepublic ServiceDetails getServiceDetailsByServiceId(String serviceId)
ProcessingUnitInstancegetServiceDetailsByServiceId in interface ProcessingUnitInstancepublic Map<String,ServiceDetails> getServiceDetailsByServiceId()
ProcessingUnitInstancegetServiceDetailsByServiceId in interface ProcessingUnitInstancepublic ServiceDetails[] getServicesDetailsByServiceType(String serviceType)
ProcessingUnitInstanceServiceDetails.getServiceType().getServicesDetailsByServiceType in interface ProcessingUnitInstancepublic Map<String,ServiceDetails[]> getServiceDetailsByServiceType()
ProcessingUnitInstancegetServiceDetailsByServiceType in interface ProcessingUnitInstancepublic void destroy()
ProcessingUnitInstancedestroy in interface ProcessingUnitInstancepublic void relocate(GridServiceContainer gridServiceContainerToRelocateTo)
ProcessingUnitInstanceGridServiceContainer.
Note, the current processing instance is unusable once this call has been made. If the
relocated processing unit instance is needed, or waiting for the relocation is required, use
ProcessingUnitInstance.relocateAndWait(org.openspaces.admin.gsc.GridServiceContainer) or ProcessingUnitInstance.relocateAndWait(org.openspaces.admin.gsc.GridServiceContainer, long,
java.util.concurrent.TimeUnit).
relocate in interface ProcessingUnitInstancepublic ProcessingUnitInstance relocateAndWait(GridServiceContainer gridServiceContainerToRelocateTo)
ProcessingUnitInstanceGridServiceContainer.
The relocated instance will be returned waiting for it indefinitely.relocateAndWait in interface ProcessingUnitInstancepublic ProcessingUnitInstance relocateAndWait(GridServiceContainer gridServiceContainerToRelocateTo, long timeout, TimeUnit timeUnit)
ProcessingUnitInstanceGridServiceContainer.
The relocated instance will be returned waiting for it for the provided timeout.relocateAndWait in interface ProcessingUnitInstancepublic void relocate()
ProcessingUnitInstanceGridServiceContainer.
Note, the current processing instance is unusable once this call has been made. If the
relocated processing unit instance is needed, or waiting for the relocation is required, use
ProcessingUnitInstance.relocateAndWait() or ProcessingUnitInstance.relocateAndWait(long, java.util.concurrent.TimeUnit)
.
relocate in interface ProcessingUnitInstancepublic ProcessingUnitInstance relocateAndWait()
ProcessingUnitInstanceGridServiceContainer. The
relocated instance will be returned waiting for it indefinitely.relocateAndWait in interface ProcessingUnitInstancepublic ProcessingUnitInstance relocateAndWait(long timeout, TimeUnit timeUnit)
ProcessingUnitInstanceGridServiceContainer. The
relocated instance will be returned waiting for it for the provided timeout.relocateAndWait in interface ProcessingUnitInstancepublic void restart()
ProcessingUnitInstanceNote, the current processing unit instance is unusable once this call has been made. If
the restarted processing unit instance is needed, or waiting for the restart is required, use
ProcessingUnitInstance.restartAndWait() or ProcessingUnitInstance.restartAndWait(long, java.util.concurrent.TimeUnit).
restart in interface ProcessingUnitInstancepublic ProcessingUnitInstance restartAndWait()
ProcessingUnitInstancerestartAndWait in interface ProcessingUnitInstanceProcessingUnitInstance.restart()public ProcessingUnitInstance restartAndWait(long timeout, TimeUnit timeUnit)
ProcessingUnitInstancerestartAndWait in interface ProcessingUnitInstanceProcessingUnitInstance.restart()public void decrement()
ProcessingUnitInstancedecrement in interface ProcessingUnitInstanceProcessingUnit.canDecrementInstance()public ProcessingUnitInstanceStatistics getLastStatistics()
InternalProcessingUnitInstanceProcessingUnitInstance.getStatistics() or
StatisticsMonitor.setStatisticsInterval(long, java.util.concurrent.TimeUnit)getLastStatistics in interface InternalProcessingUnitInstancepublic ProcessingUnitInstanceStatistics getStatistics()
ProcessingUnitInstancegetStatistics in interface ProcessingUnitInstancepublic void setStatisticsInterval(long interval,
TimeUnit timeUnit)
StatisticsMonitorsetStatisticsInterval in interface StatisticsMonitorpublic long getStatisticsIntervalMilliseconds()
getStatisticsIntervalMilliseconds in interface InternalProcessingUnitInstancepublic void setClusterInfo(ClusterInfo clusterInfo)
setClusterInfo in interface InternalProcessingUnitInstancepublic void setStatisticsHistorySize(int historySize)
StatisticsMonitorsetStatisticsHistorySize in interface StatisticsMonitorpublic void startStatisticsMonitor()
StatisticsMonitorstartStatisticsMonitor in interface StatisticsMonitorpublic void stopStatisticsMonitor()
StatisticsMonitorstopStatisticsMonitor in interface StatisticsMonitorpublic boolean isMonitoring()
StatisticsMonitortrue if statistics are now being monitored.isMonitoring in interface StatisticsMonitorpublic NIODetails getNIODetails() throws RemoteException
getNIODetails in interface InternalTransportInfoProviderRemoteExceptionpublic NIOStatistics getNIOStatistics() throws RemoteException
getNIOStatistics in interface InternalTransportInfoProviderRemoteExceptionpublic void enableLRMIMonitoring()
throws RemoteException
enableLRMIMonitoring in interface InternalTransportInfoProviderRemoteExceptionpublic void disableLRMIMonitoring()
throws RemoteException
disableLRMIMonitoring in interface InternalTransportInfoProviderRemoteExceptionpublic LRMIMonitoringDetails fetchLRMIMonitoringDetails() throws RemoteException
fetchLRMIMonitoringDetails in interface InternalTransportInfoProviderRemoteExceptionpublic long getCurrentTimeInMillis()
throws RemoteException
getCurrentTimeInMillis in interface InternalOperatingSystemInfoProviderRemoteExceptionpublic OSDetails getOSDetails() throws RemoteException
getOSDetails in interface InternalOperatingSystemInfoProviderRemoteExceptionpublic OSStatistics getOSStatistics() throws RemoteException
getOSStatistics in interface InternalOperatingSystemInfoProviderRemoteExceptionpublic JVMStatistics getJVMStatistics() throws RemoteException
getJVMStatistics in interface InternalVirtualMachineInfoProviderRemoteExceptionpublic void runGc()
throws RemoteException
runGc in interface InternalVirtualMachineInfoProviderRemoteExceptionpublic Future<Object> invoke(String serviceBeanName, Map<String,Object> namedArgs)
invoke in interface InternalProcessingUnitInstancepublic boolean isUndeploying()
isUndeploying in interface InternalProcessingUnitInstancepublic void setMemberAliveIndicatorStatus(org.jini.rio.monitor.ServiceFaultDetectionEvent serviceFaultDetectionEvent)
setMemberAliveIndicatorStatus in interface InternalProcessingUnitInstancepublic MemberAliveIndicatorStatus getMemberAliveIndicatorStatus()
getMemberAliveIndicatorStatus in interface ProcessingUnitInstanceCopyright © GigaSpaces.