/** * Sets the last timestamp. * * @param resource the resource * @param timestamp the timestamp */ private void setLastTimestamp(CollectionResource resource, long timestamp) { ResourcePath path = ResourceTypeUtils.getResourcePathWithRepository(m_repository, resource.getPath()); LOG.debug("Setting timestamp to {} at path {}", timestamp, path); m_resourceStorageDao.setStringAttribute(path, LAST_TIMESTAMP, Long.toString(timestamp)); } }
/** * <p>getRrdFileForDs</p> * * @param directory a {@link java.io.File} object. * @param ds a {@link java.lang.String} object. * @return a {@link java.io.File} object. */ protected static File getRrdFileForDs(File directory, String ds, String extension) { String rrdBaseName = ds; if (ResourceTypeUtils.isStoreByGroup()) { try { rrdBaseName = s_cache.getProperty(new File(directory, DS_PROPERTIES_FILE), ds); } catch (IOException e) { LOG.error("ds.properties error", e); rrdBaseName = ds; } } return new File(directory, rrdBaseName + extension); }
/** * <p>isStoreByForeignSource</p> * * @return a {@link java.lang.Boolean} object. */ private static Boolean isStoreByForeignSource() { return ResourceTypeUtils.isStoreByForeignSource(); }
private OnmsNode getNode(final OnmsResource resource, final Source source) { OnmsNode node = null; try { node = ResourceTypeUtils.getNodeFromResourceRoot(resource); } catch (final ObjectRetrievalFailureException e) { } if (node == null) { final OnmsResource otherResource = m_resourceDao.getResourceById(ResourceId.fromString(source.getResourceId()).getParent()); node = ResourceTypeUtils.getNodeFromResource(otherResource); } return node; }
if (ResourceTypeUtils.isStoreByGroup() && !ResourceTypeUtils.isResponseTime(relativePath)) { String groupName = fileName.substring(0, fileName.length() - suffixLength); Properties props = getDsProperties(resourceDir);
public OnmsResource getChildByName(final OnmsResource parent, final String name) { final OnmsNode node = ResourceTypeUtils.getNodeFromResource(parent);
if (ResourceTypeUtils.isResponseTime(resourceId)) {
private static QueryResource getResourceInfo(final OnmsResource resource, final Source source) { if (resource == null) return null; OnmsNode node = null; try { node = ResourceTypeUtils.getNodeFromResourceRoot(resource); } catch (final ObjectRetrievalFailureException e) { LOG.warn("Failed to get node info from resource: {}", resource, e); } return new QueryResource( resource.getId().toString(), resource.getParent() == null? null : resource.getParent().getId().toString(), resource.getLabel(), resource.getName(), node == null? null : new QueryNode(node.getId(), node.getForeignSource(), node.getForeignId(), node.getLabel()) ); } }
@Override public List<OnmsResource> getResourcesForParent(OnmsResource parent) { final Set<String> ifaces = getQueryableInterfaces(parent); if (NodeResourceType.isNode(parent)) { OnmsNode node = ResourceTypeUtils.getNodeFromResource(parent); return getNodeResources(parent.getPath(), ifaces, node); } else if (DomainResourceType.isDomain(parent)) { return getDomainResources(parent.getPath(), ifaces); } else { return Collections.emptyList(); } }
if (ResourceTypeUtils.isResponseTime(resourceId)) {
/** * Gets the last timestamp. * * @param resource the TCA resource * @return the last timestamp */ private long getLastTimestamp(CollectionResource resource) { long timestamp = 0; ResourcePath path = ResourceTypeUtils.getResourcePathWithRepository(m_repository, resource.getPath()); try { LOG.debug("Retrieving timestamp from path {}", path); String ts = m_resourceStorageDao.getStringAttribute(path, LAST_TIMESTAMP); if (ts != null) { timestamp = Long.parseLong(ts); } } catch (Exception e) { LOG.error("Failed to retrieve timestamp from path {}", path, e); } return timestamp; }
@Override public Persister createPersister(ServiceParameters params, RrdRepository repository, boolean dontPersistCounters, boolean forceStoreByGroup, boolean dontReorderAttributes) { if (ResourceTypeUtils.isStoreByGroup() || forceStoreByGroup) { return createGroupPersister(params, repository, dontPersistCounters, dontReorderAttributes); } else { return createOneToOnePersister(params, repository, dontPersistCounters, dontReorderAttributes); } }
/** * <p>isStoreByForeignSource</p> * * @return a {@link java.lang.Boolean} object. */ @Override public final Boolean isStoreByForeignSource() { return ResourceTypeUtils.isStoreByForeignSource(); }
private List<OnmsResource> getResourcesForParent(OnmsResource parent, boolean stopAfterFirst) { if (!NodeResourceType.isNode(parent)) { return Collections.emptyList(); } // Grab the node entity final OnmsNode node = ResourceTypeUtils.getNodeFromResource(parent); // Determine the location name final String locationName = MonitoringLocationUtils.getLocationNameOrNullIfDefault(node); // Verify the existence of the individual interfaces final LinkedList<OnmsResource> resources = new LinkedList<>(); for (final OnmsIpInterface i : node.getIpInterfaces()) { String ipAddr = InetAddressUtils.str(i.getIpAddress()); final ResourcePath path = getInterfacePath(locationName, ipAddr); if (m_resourceStorageDao.exists(path, 0)) { resources.add(createResource(locationName, i, ipAddr, path)); if (stopAfterFirst) { break; } } } return resources; }
/** {@inheritDoc} */ @Override public void persistStringAttribute(CollectionAttribute attribute) { LOG.debug("Persisting {}", attribute); CollectionResource resource = attribute.getResource(); String value = attribute.getStringValue(); if (value == null) { LOG.info("No data collected for attribute {}. Skipping.", attribute); return; } try { ResourcePath path = ResourceTypeUtils.getResourcePathWithRepository(m_repository, resource.getPath()); persistStringAttribute(path, attribute.getName(), value); } catch(PersistException e) { LOG.error("Unable to save string attribute {}.", attribute, e); } }
@Override public Persister createPersister(ServiceParameters params, RrdRepository repository, boolean dontPersistCounters, boolean forceStoreByGroup, boolean dontReorderAttributes) { if (ResourceTypeUtils.isStoreByGroup() || forceStoreByGroup) { return createGroupPersister(params, repository, dontPersistCounters); } else { return createOneToOnePersister(params, repository, dontPersistCounters); } }
/** * <p>isStoreByForeignSource</p> * * @return a {@link java.lang.Boolean} object. */ private static Boolean isStoreByForeignSource() { return ResourceTypeUtils.isStoreByForeignSource(); }
@Override public Map<String, String> doInTransaction(TransactionStatus transactionStatus) { Map<String, String> data = new HashMap<>(); ResourceId resourceId = ResourceId.fromString(resourceIdString); OnmsNode node; OnmsResource resource; if(nodeId == null){ resource = determineResourceByResourceId(resourceId); node = ResourceTypeUtils.getNodeFromResource(resource); } else { node = m_nodeDao.get(nodeId); resource = m_resourceDao.getResourceForNode(node); } data.put("nodeId", node.getNodeId()); data.put("nodeLabel", node.getLabel()); for (OnmsResource onmsResource : resource.getChildResources()) { if (resourceId.equals(onmsResource.getId())) { data.put("resourceLabel", onmsResource.getLabel()); data.put("resourceTypeLabel", onmsResource.getResourceType().getLabel()); break; } } return data; } });
ResourcePath path = ResourceTypeUtils.getResourcePathWithRepository(m_repository, m_resource.getPath()); retval = m_resourceStorageDao.getStringAttribute(path, ds); if (retval != null) {
@Override public Persister createPersister(ServiceParameters params, RrdRepository repository, boolean dontPersistCounters, boolean forceStoreByGroup, boolean dontReorderAttributes) { if (ResourceTypeUtils.isStoreByGroup() || forceStoreByGroup) { return createGroupPersister(params, repository, dontPersistCounters); } else { return createOneToOnePersister(params, repository, dontPersistCounters); } }