ResourceContainer resourceContainer = inventoryManager.getResourceContainer(resource.getId());
// if we've already checked this resource then just check the children
if (!rootMemberCheckedSet.contains(resource.getId())) {
ConfigurationFacet resourceComponent = null;
ResourceType resourceType = resource.getResourceType();
boolean debugEnabled = log.isDebugEnabled();
if (resourceContainer != null && resourceContainer.getAvailability() != null
&& resourceContainer.getAvailability().getAvailabilityType() == AvailabilityType.UP) {
if (resourceContainer.supportsFacet(ConfigurationFacet.class)) {
try {
resourceComponent = resourceContainer.createResourceComponentProxy(ConfigurationFacet.class,
FacetLockType.NONE, CONFIGURATION_CHECK_TIMEOUT, true, false, true);
} catch (PluginContainerException e) {
// Expecting when the resource does not support configuration management
// Should never happen after above check
}
}
if (resourceComponent != null) {
// Only report availability for committed resources; don't bother with new, ignored or deleted resources.
if (resource.getInventoryStatus() == InventoryStatus.COMMITTED
&& resourceType.getResourceConfigurationDefinition() != null) {
long t1 = System.currentTimeMillis();
if (debugEnabled) {
log.debug("Checking for updated Resource configuration for " + resource + "...");
}
try {
Configuration liveConfiguration = resourceComponent.loadResourceConfiguration();
if (liveConfiguration != null) {
ConfigurationDefinition configurationDefinition = resourceType
.getResourceConfigurationDefinition();