GigaSpaces XAP 10.0.1 API

org.openspaces.grid.esm
Class ESMImpl

java.lang.Object
  extended by org.jini.rio.resources.servicecore.ServiceProvider
      extended by org.jini.rio.jsb.ServiceBeanAdapter
          extended by org.openspaces.grid.esm.ESMImpl
All Implemented Interfaces:
com.gigaspaces.grid.esm.ESM, com.gigaspaces.grid.gsa.AgentIdAware, com.gigaspaces.grid.zone.GridZoneProvider, com.gigaspaces.internal.dump.InternalDumpProvider, com.gigaspaces.internal.jvm.JVMInfoProvider, com.gigaspaces.internal.log.InternalLogProvider, com.gigaspaces.internal.os.OSInfoProvider, com.gigaspaces.lrmi.nio.info.NIOInfoProvider, com.gigaspaces.security.service.RemoteSecuredService, com.gigaspaces.security.service.SecuredService, ServiceProxyAccessor, Remote, MBeanRegistration, NotificationBroadcaster, NotificationEmitter, Administrable, ProxyAccessor, ServerProxyTrust, org.jini.rio.core.jsb.ServiceBean, org.jini.rio.core.jsb.ServiceState, org.jini.rio.core.MonitorableService, org.jini.rio.event.EventProducer, org.jini.rio.jsb.ServiceBeanAdapterMBean, org.jini.rio.resources.servicecore.Service, org.jini.rio.watch.Watchable, AdminEventListener, MachineAddedEventListener, MachineLifecycleEventListener, MachineRemovedEventListener, ProcessingUnitAddedEventListener, ProcessingUnitRemovedEventListener

public class ESMImpl
extends org.jini.rio.jsb.ServiceBeanAdapter
implements ESM, com.gigaspaces.security.service.RemoteSecuredService, ProcessingUnitRemovedEventListener, ProcessingUnitAddedEventListener, MachineLifecycleEventListener


Nested Class Summary
static class ESMImpl.PendingElasticPropertiesUpdate
           
 
Nested classes/interfaces inherited from class org.jini.rio.jsb.ServiceBeanAdapter
org.jini.rio.jsb.ServiceBeanAdapter.SnapshotThread
 
Field Summary
protected  GigaSpace managementSpace
           
 
Fields inherited from class org.jini.rio.jsb.ServiceBeanAdapter
activationID, computeResource, computeResourceObserver, context, contextClassLoader, contextMgr, joiner, jsbState, logDirName, mbeanNoticationInfoList, mbeanServer, objectName, proxy, serviceBeanComponent, serviceClassLoader, serviceID, slaThresholdEventAdapter, snapshotter, state, store, uuid
 
Fields inherited from class org.jini.rio.resources.servicecore.ServiceProvider
eventTable, watchRegistry
 
Constructor Summary
ESMImpl()
          Create an ESM
ESMImpl(String[] configArgs, LifeCycle lifeCycle)
          Create an ESM launched from the ServiceStarter framework
 
Method Summary
 void advertise()
           
protected  void bootstrap(String[] configArgs)
           
protected  Object createProxy()
           
 void destroy(boolean force)
           
 void disableAgentFailureDetection(String processingUnitName, long timeout, TimeUnit timeunit)
          Disables failure detection for the agent on the machine that called this method.
 void disableLRMIMonitoring()
           
 byte[] dumpBytes(String file, long from, int length)
           
 void enableAgentFailureDetection(String processingUnitName)
          Enables failure detection for the agent on the machine that called this method.
 void enableLRMIMonitoring()
           
 com.gigaspaces.lrmi.LRMIMonitoringDetails fetchLRMIMonitoringDetails()
           
 com.gigaspaces.internal.dump.InternalDumpResult generateDump(String cause, Map<String,Object> context)
           
 com.gigaspaces.internal.dump.InternalDumpResult generateDump(String cause, Map<String,Object> context, String... contributors)
           
 int getAgentId()
           
 long getCurrentTimestamp()
           
 String getGSAServiceID()
           
 com.gigaspaces.internal.jvm.JVMDetails getJVMDetails()
           
 com.gigaspaces.internal.jvm.JVMStatistics getJVMStatistics()
           
 String[] getManagedProcessingUnits()
           
 com.gigaspaces.lrmi.nio.info.NIODetails getNIODetails()
           
 com.gigaspaces.lrmi.nio.info.NIOStatistics getNIOStatistics()
           
 com.gigaspaces.internal.os.OSDetails getOSDetails()
           
 com.gigaspaces.internal.os.OSStatistics getOSStatistics()
           
 ScaleStrategyConfig getProcessingUnitScaleStrategyConfig(String processingUnitName)
           
 Remote getRemoteApi(String processingUnitName, String apiName)
           
 org.jini.rio.monitor.event.Events getScaleStrategyEvents(long cursor, int maxNumberOfEvents)
           
 String[] getZones()
           
 void initialize(org.jini.rio.core.jsb.ServiceBeanContext context)
           
 boolean isManagingProcessingUnit(String processingUnitName)
           
 boolean isManagingProcessingUnitAndScaleNotInProgress(String processingUnitName)
           
 boolean isServiceSecured()
           
 LogEntries logEntriesDirect(LogEntryMatcher matcher)
           
 SecurityContext login(CredentialsProvider credentialsProvider)
           
 SecurityContext login(SecurityContext securityContext)
           
 void machineAdded(Machine machine)
          Called when a machine is added.
 void machineRemoved(Machine machine)
          Called when a machine is removed.
 void processingUnitAdded(ProcessingUnit pu)
          A callback indicating that a Processing Unit was added (deployed/discovered).
 void processingUnitRemoved(ProcessingUnit pu)
          A callback indicating that a Processing Unit was removed (undeployed).
 void runGc()
           
 void setProcessingUnitElasticProperties(String puName, Map<String,String> properties)
           
 void setProcessingUnitScaleStrategy(String puName, ScaleStrategyConfig scaleStrategyConfig)
           
 
Methods inherited from class org.jini.rio.jsb.ServiceBeanAdapter
addAttribute, addAttributes, addNotificationListener, cleanClassLoaders, createObjectName, destroy, destroyJMX, doAdvertise, doInitialize, doStart, exportDo, getAdmin, getAdminExporter, getAssociationManagement, getAssociations, getDiscoveryManager, getExportedProxy, getExporter, getExporter, getJoinManager, getLookupGroups, getNotificationBroadcasterSupport, getNotificationInfo, getProxy, getProxyVerifier, getServiceBeanContext, getServiceID, getServiceProxy, getSLAEventHandler, getStarted, getStartTime, getState, getUuid, getWatchUI, initialize, initializeJMX, monitor, ping, postDeregister, postRegister, preDeregister, preRegister, removeNotificationListener, removeNotificationListener, setLookupGroups, start, startHeartbeat, stop, unadvertise, undeployEvent
 
Methods inherited from class org.jini.rio.resources.servicecore.ServiceProvider
fetch, fetch, getConfiguration, getEventTable, getWatchRegistry, register, setConfiguration, setWatchRegistry
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.jini.admin.Administrable
getAdmin
 
Methods inherited from interface org.jini.rio.core.MonitorableService
monitor, ping, startHeartbeat
 
Methods inherited from interface org.jini.rio.event.EventProducer
register
 
Methods inherited from interface org.jini.rio.watch.Watchable
fetch, fetch
 

Field Detail

managementSpace

protected GigaSpace managementSpace
Constructor Detail

ESMImpl

public ESMImpl()
        throws Exception
Create an ESM

Throws:
Exception

ESMImpl

public ESMImpl(String[] configArgs,
               LifeCycle lifeCycle)
        throws Exception
Create an ESM launched from the ServiceStarter framework

Throws:
Exception
Method Detail

bootstrap

protected void bootstrap(String[] configArgs)
                  throws Exception
Throws:
Exception

initialize

public void initialize(org.jini.rio.core.jsb.ServiceBeanContext context)
                throws Exception
Specified by:
initialize in interface org.jini.rio.core.jsb.ServiceBean
Overrides:
initialize in class org.jini.rio.jsb.ServiceBeanAdapter
Throws:
Exception

advertise

public void advertise()
               throws IOException
Specified by:
advertise in interface org.jini.rio.core.jsb.ServiceBean
Specified by:
advertise in interface org.jini.rio.jsb.ServiceBeanAdapterMBean
Overrides:
advertise in class org.jini.rio.jsb.ServiceBeanAdapter
Throws:
IOException

destroy

public void destroy(boolean force)
Specified by:
destroy in interface org.jini.rio.core.jsb.ServiceBean
Specified by:
destroy in interface org.jini.rio.jsb.ServiceBeanAdapterMBean
Overrides:
destroy in class org.jini.rio.jsb.ServiceBeanAdapter

createProxy

protected Object createProxy()
Overrides:
createProxy in class org.jini.rio.jsb.ServiceBeanAdapter

getAgentId

public int getAgentId()
               throws RemoteException
Specified by:
getAgentId in interface com.gigaspaces.grid.gsa.AgentIdAware
Throws:
RemoteException

getGSAServiceID

public String getGSAServiceID()
                       throws RemoteException
Specified by:
getGSAServiceID in interface com.gigaspaces.grid.gsa.AgentIdAware
Throws:
RemoteException

getNIODetails

public com.gigaspaces.lrmi.nio.info.NIODetails getNIODetails()
                                                      throws RemoteException
Specified by:
getNIODetails in interface com.gigaspaces.lrmi.nio.info.NIOInfoProvider
Throws:
RemoteException

getNIOStatistics

public com.gigaspaces.lrmi.nio.info.NIOStatistics getNIOStatistics()
                                                            throws RemoteException
Specified by:
getNIOStatistics in interface com.gigaspaces.lrmi.nio.info.NIOInfoProvider
Throws:
RemoteException

enableLRMIMonitoring

public void enableLRMIMonitoring()
                          throws RemoteException
Specified by:
enableLRMIMonitoring in interface com.gigaspaces.lrmi.nio.info.NIOInfoProvider
Throws:
RemoteException

disableLRMIMonitoring

public void disableLRMIMonitoring()
                           throws RemoteException
Specified by:
disableLRMIMonitoring in interface com.gigaspaces.lrmi.nio.info.NIOInfoProvider
Throws:
RemoteException

fetchLRMIMonitoringDetails

public com.gigaspaces.lrmi.LRMIMonitoringDetails fetchLRMIMonitoringDetails()
                                                                     throws RemoteException
Specified by:
fetchLRMIMonitoringDetails in interface com.gigaspaces.lrmi.nio.info.NIOInfoProvider
Throws:
RemoteException

getCurrentTimestamp

public long getCurrentTimestamp()
                         throws RemoteException
Specified by:
getCurrentTimestamp in interface com.gigaspaces.internal.os.OSInfoProvider
Throws:
RemoteException

getOSDetails

public com.gigaspaces.internal.os.OSDetails getOSDetails()
                                                  throws RemoteException
Specified by:
getOSDetails in interface com.gigaspaces.internal.os.OSInfoProvider
Throws:
RemoteException

getOSStatistics

public com.gigaspaces.internal.os.OSStatistics getOSStatistics()
                                                        throws RemoteException
Specified by:
getOSStatistics in interface com.gigaspaces.internal.os.OSInfoProvider
Throws:
RemoteException

getJVMDetails

public com.gigaspaces.internal.jvm.JVMDetails getJVMDetails()
                                                     throws RemoteException
Specified by:
getJVMDetails in interface com.gigaspaces.internal.jvm.JVMInfoProvider
Throws:
RemoteException

getJVMStatistics

public com.gigaspaces.internal.jvm.JVMStatistics getJVMStatistics()
                                                           throws RemoteException
Specified by:
getJVMStatistics in interface com.gigaspaces.internal.jvm.JVMInfoProvider
Throws:
RemoteException

runGc

public void runGc()
           throws RemoteException
Specified by:
runGc in interface com.gigaspaces.internal.jvm.JVMInfoProvider
Throws:
RemoteException

getZones

public String[] getZones()
                  throws RemoteException
Specified by:
getZones in interface com.gigaspaces.grid.zone.GridZoneProvider
Throws:
RemoteException

logEntriesDirect

public LogEntries logEntriesDirect(LogEntryMatcher matcher)
                            throws RemoteException,
                                   IOException
Specified by:
logEntriesDirect in interface com.gigaspaces.internal.log.InternalLogProvider
Throws:
RemoteException
IOException

dumpBytes

public byte[] dumpBytes(String file,
                        long from,
                        int length)
                 throws RemoteException,
                        IOException
Specified by:
dumpBytes in interface com.gigaspaces.internal.dump.InternalDumpProvider
Throws:
RemoteException
IOException

generateDump

public com.gigaspaces.internal.dump.InternalDumpResult generateDump(String cause,
                                                                    Map<String,Object> context)
                                                             throws RemoteException,
                                                                    com.gigaspaces.internal.dump.InternalDumpException
Specified by:
generateDump in interface com.gigaspaces.internal.dump.InternalDumpProvider
Throws:
RemoteException
com.gigaspaces.internal.dump.InternalDumpException

generateDump

public com.gigaspaces.internal.dump.InternalDumpResult generateDump(String cause,
                                                                    Map<String,Object> context,
                                                                    String... contributors)
                                                             throws RemoteException,
                                                                    com.gigaspaces.internal.dump.InternalDumpException
Specified by:
generateDump in interface com.gigaspaces.internal.dump.InternalDumpProvider
Throws:
RemoteException
com.gigaspaces.internal.dump.InternalDumpException

getManagedProcessingUnits

public String[] getManagedProcessingUnits()
Specified by:
getManagedProcessingUnits in interface com.gigaspaces.grid.esm.ESM

isServiceSecured

public boolean isServiceSecured()
                         throws RemoteException
Specified by:
isServiceSecured in interface com.gigaspaces.security.service.SecuredService
Throws:
RemoteException

login

public SecurityContext login(CredentialsProvider credentialsProvider)
                      throws SecurityException,
                             RemoteException
Specified by:
login in interface com.gigaspaces.security.service.SecuredService
Throws:
SecurityException
RemoteException

login

public SecurityContext login(SecurityContext securityContext)
                      throws RemoteException
Specified by:
login in interface com.gigaspaces.security.service.RemoteSecuredService
Throws:
RemoteException

setProcessingUnitScaleStrategy

public void setProcessingUnitScaleStrategy(String puName,
                                           ScaleStrategyConfig scaleStrategyConfig)

getScaleStrategyEvents

public org.jini.rio.monitor.event.Events getScaleStrategyEvents(long cursor,
                                                                int maxNumberOfEvents)

setProcessingUnitElasticProperties

public void setProcessingUnitElasticProperties(String puName,
                                               Map<String,String> properties)
                                        throws RemoteException
Throws:
RemoteException

processingUnitRemoved

public void processingUnitRemoved(ProcessingUnit pu)
Description copied from interface: ProcessingUnitRemovedEventListener
A callback indicating that a Processing Unit was removed (undeployed).

Specified by:
processingUnitRemoved in interface ProcessingUnitRemovedEventListener

processingUnitAdded

public void processingUnitAdded(ProcessingUnit pu)
Description copied from interface: ProcessingUnitAddedEventListener
A callback indicating that a Processing Unit was added (deployed/discovered).

Specified by:
processingUnitAdded in interface ProcessingUnitAddedEventListener

machineAdded

public void machineAdded(Machine machine)
Description copied from interface: MachineAddedEventListener
Called when a machine is added.

Specified by:
machineAdded in interface MachineAddedEventListener

machineRemoved

public void machineRemoved(Machine machine)
Description copied from interface: MachineRemovedEventListener
Called when a machine is removed.

Specified by:
machineRemoved in interface MachineRemovedEventListener

getProcessingUnitScaleStrategyConfig

public ScaleStrategyConfig getProcessingUnitScaleStrategyConfig(String processingUnitName)
                                                         throws RemoteException
Throws:
RemoteException

isManagingProcessingUnit

public boolean isManagingProcessingUnit(String processingUnitName)
                                 throws RemoteException
Specified by:
isManagingProcessingUnit in interface com.gigaspaces.grid.esm.ESM
Throws:
RemoteException

isManagingProcessingUnitAndScaleNotInProgress

public boolean isManagingProcessingUnitAndScaleNotInProgress(String processingUnitName)
                                                      throws RemoteException
Specified by:
isManagingProcessingUnitAndScaleNotInProgress in interface com.gigaspaces.grid.esm.ESM
Throws:
RemoteException

getRemoteApi

public Remote getRemoteApi(String processingUnitName,
                           String apiName)
                    throws RemoteException
Throws:
RemoteException

disableAgentFailureDetection

public void disableAgentFailureDetection(String processingUnitName,
                                         long timeout,
                                         TimeUnit timeunit)
                                  throws RemoteException
Description copied from interface: ESM
Disables failure detection for the agent on the machine that called this method. This suppresses the creation of a new machine instead of the specified GSA if it is no longer running. It does not suppress the healing of GSCs on that GSA. Once the specified timeout expires, the failure detection is enabled automatically.

Throws:
RemoteException
See Also:
MachinesSlaEnforcementEndpoint#disableAgentFailureDetection(GridServiceAgent)

enableAgentFailureDetection

public void enableAgentFailureDetection(String processingUnitName)
                                 throws RemoteException
Description copied from interface: ESM
Enables failure detection for the agent on the machine that called this method.

Throws:
RemoteException
See Also:
MachinesSlaEnforcementEndpoint#enableAgentFailureDetection(GridServiceAgent)

GigaSpaces XAP 10.0.1 API

Copyright © GigaSpaces.