private void updateInventoryStatus(Resource resource, InventoryStatus newStatus, long now) { resource.setInventoryStatus(newStatus); resource.setItime(now); resource.setAgentSynchronizationNeeded(); }
@Override public void deleteResourceDriftDefinition(Subject subject, int resourceId, int driftDefId) { authorizeOrFail(subject, resourceId, "Can not delete drifts"); DriftDefinition doomed = entityManager.getReference(DriftDefinition.class, driftDefId); doomed.getResource().setAgentSynchronizationNeeded(); entityManager.remove(doomed); return; }
public void createSchedulesForExistingResources(ResourceType type, MeasurementDefinition newDefinition) { List<Resource> resources = type.getResources(); if (resources != null) { for (Resource res : resources) { res.setAgentSynchronizationNeeded(); MeasurementSchedule sched = new MeasurementSchedule(newDefinition, res); sched.setInterval(newDefinition.getDefaultInterval()); entityManager.persist(sched); } } return; }
sched.getResource().setAgentSynchronizationNeeded(); entityManager.remove(sched); schedIter.remove();
@Override public Resource updateResource(Subject user, Resource resource) { Resource persistedResource = entityManager.find(Resource.class, resource.getId()); if (persistedResource == null) { throw new ResourceNotFoundException(resource.getId()); } if (!authorizationManager.hasResourcePermission(user, Permission.MODIFY_RESOURCE, resource.getId())) { throw new PermissionException("You do not have permission to modify Resource with id " + resource.getId() + "."); } /*if (getResourceByParentAndKey(user, resource.getParentResource(), resource.getResourceKey()) != null) * { throw new ResourceAlreadyExistsException("Resource with key '" + resource.getName() + "' already * exists");}*/ // On name change make sure we update the ancestry as the name is part of the ancestry string if (!persistedResource.getName().equals(resource.getName())) { persistedResource.setName(resource.getName()); updateAncestry(persistedResource); } persistedResource.setLocation(resource.getLocation()); persistedResource.setDescription(resource.getDescription()); persistedResource.setAgentSynchronizationNeeded(); persistedResource.setModifiedBy(user.getName()); return entityManager.merge(persistedResource); }
@Override public void completePluginConfigurationUpdate(PluginConfigurationUpdate update) { // use EJB3 reference to ourself so that transaction semantics are correct ConfigurationUpdateResponse response = configurationManager.executePluginConfigurationUpdate(update); Resource resource = update.getResource(); // link to the newer, persisted configuration object -- regardless of errors resource.setAgentSynchronizationNeeded(); resource.setPluginConfiguration(update.getConfiguration()); if (response.getStatus() == ConfigurationUpdateStatus.SUCCESS) { update.setStatus(ConfigurationUpdateStatus.SUCCESS); resource.setConnected(true); removeAnyExistingInvalidPluginConfigurationErrors(resource); // Flush before merging to ensure the update has been persisted and avoid StaleStateExceptions. entityManager.flush(); entityManager.merge(update); } else { handlePluginConfiguratonUpdateRemoteException(resource, response.getStatus().toString(), response.getErrorMessage()); update.setStatus(response.getStatus()); update.setErrorMessage(response.getErrorMessage()); } }
existingResource.setInventoryStatus(InventoryStatus.COMMITTED); existingResource.setPluginConfiguration(updatedResource.getPluginConfiguration()); existingResource.setAgentSynchronizationNeeded();
driftDef.getResource().setAgentSynchronizationNeeded();