package rocks.inspectit.shared.all.cmr.service; import rocks.inspectit.shared.all.cmr.model.JmxDefinitionDataIdent; import rocks.inspectit.shared.all.cmr.model.MethodIdent; import rocks.inspectit.shared.all.cmr.model.PlatformIdent; import rocks.inspectit.shared.all.cmr.model.SensorTypeIdent; import rocks.inspectit.shared.all.communication.data.cmr.ApplicationData; import rocks.inspectit.shared.all.communication.data.cmr.BusinessTransactionData; /** * Interface for the cached data service. Provides platform, sensor, method ident and business * context from the cache. * * @author Ivan Senic * */ public interface ICachedDataService { /** * Returns the mapped {@link PlatformIdent} object for the passed platform id. * * @param platformId * The long value. * @return The {@link PlatformIdent} object. */ PlatformIdent getPlatformIdentForId(long platformId); /** * Returns the mapped {@link SensorTypeIdent} object for the passed sensor type id. * * @param sensorTypeId * The long value. * @return The {@link SensorTypeIdent} object. */ SensorTypeIdent getSensorTypeIdentForId(long sensorTypeId); /** * Returns the mapped {@link MethodIdent} object for the passed method id. * * @param methodId * The long value. * @return The {@link MethodIdent} object. */ MethodIdent getMethodIdentForId(long methodId); /** * Returns the mapped {@link JmxDefinitionDataIdent} object for the passed jmDefinitionData id. * * @param jmxDefinitionDataId * The long value. * @return The {@link JmxDefinitionDataIdent} object. */ JmxDefinitionDataIdent getJmxDefinitionDataIdentForId(long jmxDefinitionDataId); /** * Retrieves the {@link IApplicationDefinition} for the given identifier. * * @param id * unique identifier of the application definition * @return Returns the application definition for the given id or null if no applicaiton * definition for the id exists. */ ApplicationData getApplicationForId(int id); /** * Retrieves the {@link BusinessTransactionDefinition} for the given application and business * transaction identifiers. * * @param appId * unique identifier of the application definition * @param businessTxId * unique identifier of the business transaction definition * @return Returns the business transaction definition or null if no business transaction * definition for the given pair of identifiers exists. */ BusinessTransactionData getBusinessTransactionForId(int appId, int businessTxId); }