/** * Service for management of the agents instrumentation. * * @author Marius Oehler * */ @ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IAgentInstrumentationService { /** * Triggers the update process of the instrumentation for the given platforms. If a given * platform has pending instrumentation they are applied. The {@link InstrumentationStatus} of * the given platforms are {@link InstrumentationStatus#UP_TO_DATE} after this method returned. * * @param updatePlatformIds * {@link Collection} of IDs of {@link PlatformIdent}s to update */ void updateInstrumentation(Collection<Long> updatePlatformIds); }
/** * Binds services if client is connected. */ private void bindServices() { if (client.isConnected()) { int agentStorageServiceId = IAgentStorageService.class.getAnnotation(ServiceInterface.class).serviceId(); agentStorageService = ObjectSpace.getRemoteObject(client, agentStorageServiceId, IAgentStorageService.class); ((RemoteObject) agentStorageService).setNonBlocking(true); ((RemoteObject) agentStorageService).setTransmitReturnValue(false); int agentServiceServiceId = IAgentService.class.getAnnotation(ServiceInterface.class).serviceId(); agentService = ObjectSpace.getRemoteObject(client, agentServiceServiceId, IAgentService.class); ((RemoteObject) agentService).setNonBlocking(false); ((RemoteObject) agentService).setTransmitReturnValue(true); int keepAliveServiceId = IKeepAliveService.class.getAnnotation(ServiceInterface.class).serviceId(); keepAliveService = ObjectSpace.getRemoteObject(client, keepAliveServiceId, IKeepAliveService.class); ((RemoteObject) keepAliveService).setNonBlocking(true); ((RemoteObject) keepAliveService).setTransmitReturnValue(false); } }
/** * This service is used by the Agents to send their data objects to and it is used by all the * graphical interfaces to request these data objects and a part of the domain model. * * @author Patrice Bouillet * */ @ServiceInterface(exporter = ServiceExporterType.RMI, serviceId = 2) public interface IAgentStorageService extends Remote { /** * Data Objects are used for all transmissions between the Agent(s), the CMR and the user * interface. * * @param dataObjects * The list containing all the data objects. */ void addDataObjects(List<? extends DefaultData> dataObjects); }
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface ITimerDataAccessService {
@ServiceInterface(exporter = ServiceExporterType.RMI, serviceId = 3) public interface IKeepAliveService extends Remote {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IJmxDataAccessService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface ISpanService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IInfluxDBService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IBusinessContextManagementService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface ICmrManagementService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IAlertService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface ISqlDataAccessService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IServerStatusService {
@ServiceInterface(exporter = ServiceExporterType.RMI, serviceId = 4) public interface IAgentService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IHttpTimerDataAccessService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IGlobalDataAccessService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IExceptionDataAccessService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IInvocationDataAccessService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IConfigurationInterfaceService {
@ServiceInterface(exporter = ServiceExporterType.HTTP) public interface IStorageService {