/** * Caches result set on the CMR for the given storage under given hash. * * @param cmrRepositoryDefinition {@link CmrRepositoryDefinition} to cache results on. * @param storageData {@link StorageData} * @param results Results to cache * @param hash Hash to use */ private void cacheQueryResultOnCmr( CmrRepositoryDefinition cmrRepositoryDefinition, StorageData storageData, List<E> results, int hash) { try { cmrRepositoryDefinition.getStorageService().cacheStorageData(storageData, results, hash); } catch (BusinessException e) { // NOPMD NOCHK // ignore also if caching fails } }
/** {@inheritDoc} */ @Override public boolean test(Object receiver, String property, Object[] args, Object expectedValue) { CmrRepositoryDefinition cmrRepositoryDefinition = null; if (receiver instanceof ICmrRepositoryProvider) { cmrRepositoryDefinition = ((ICmrRepositoryProvider) receiver).getCmrRepositoryDefinition(); } else if (receiver instanceof ICmrRepositoryAndAgentProvider) { cmrRepositoryDefinition = ((ICmrRepositoryAndAgentProvider) receiver).getCmrRepositoryDefinition(); } else if (receiver instanceof IStorageDataProvider) { cmrRepositoryDefinition = ((IStorageDataProvider) receiver).getCmrRepositoryDefinition(); } else if (receiver instanceof IInputDefinitionProvider) { RepositoryDefinition repository = ((IInputDefinitionProvider) receiver).getInputDefinition().getRepositoryDefinition(); if (repository instanceof CmrRepositoryDefinition) { cmrRepositoryDefinition = (CmrRepositoryDefinition) repository; } else { return false; } } else if ("anyOnline".equals(property)) { for (CmrRepositoryDefinition cmr : InspectIT.getDefault().getCmrRepositoryManager().getCmrRepositoryDefinitions()) { if (cmr.getOnlineStatus().equals(OnlineStatus.ONLINE)) { return true; } } return false; } else { return false; } if ("onlineStatus".equals(property)) { if ("ONLINE".equals(expectedValue)) { return cmrRepositoryDefinition.getOnlineStatus() == OnlineStatus.ONLINE; } else if ("OFFLINE".equals(expectedValue)) { return cmrRepositoryDefinition.getOnlineStatus() == OnlineStatus.OFFLINE; } else if ("CHECKING".equals(expectedValue)) { return cmrRepositoryDefinition.getOnlineStatus() == OnlineStatus.CHECKING; } } else if ("recordingActive".equals(property)) { if (expectedValue instanceof Boolean) { if (cmrRepositoryDefinition.getOnlineStatus() != OnlineStatus.OFFLINE) { boolean recordingActive = cmrRepositoryDefinition.getStorageService().getRecordingState() != RecordingState.OFF; return ((Boolean) expectedValue).booleanValue() == recordingActive; } else { return false; } } } return false; }