private Map<String, ResourceType> getGenericIndexResourceTypeMap(SnmpCollectionAgent agent) { if (m_genericIndexResourceTypes == null) { Collection<org.opennms.netmgt.config.datacollection.ResourceType> configuredResourceTypes = getDataCollectionConfigDao().getConfiguredResourceTypes().values(); Map<String,ResourceType> resourceTypes = new HashMap<String,ResourceType>(); for (org.opennms.netmgt.config.datacollection.ResourceType configuredResourceType : configuredResourceTypes) { try { resourceTypes.put(configuredResourceType.getName(), new GenericIndexResourceType(agent, this, configuredResourceType)); } catch (IllegalArgumentException e) { LOG.warn("Ignoring resource type {} ({}) because it is not properly configured.", configuredResourceType.getLabel(), configuredResourceType.getName()); } } m_genericIndexResourceTypes = resourceTypes; } return m_genericIndexResourceTypes; }
@Override public Map<String, ResourceType> getResourceTypes() { final Map<String, ResourceType> resourceTypesByName = new HashMap<>(); resourceTypesByName.putAll(DataCollectionConfigFactory.getInstance().getConfiguredResourceTypes()); final ResourceTypes configuredResourceTypes = getObject(); if (configuredResourceTypes != null) { configuredResourceTypes.getResourceTypes().stream().forEach(r -> resourceTypesByName.put(r.getName(), r)); } return resourceTypesByName; }
/** * Gets the group for resource type. * * @param configFile the configuration file * @param resourceType the resource type * @return the group for resource type */ private String getGroupForResourceType(File configFile, final String resourceType) { DatacollectionGroup g = getDataCollectionGroup(configFile); if (g.getResourceTypes().stream().filter(r -> r.getName().equals(resourceType)).count() > 0) { return g.getName(); } return null; }
} catch (ClassNotFoundException e) { throw new ObjectRetrievalFailureException(StorageStrategy.class, className, "Could not load class '" + className + "' for resource type '" + resourceType.getName() + "'", e); } catch (InstantiationException e) { throw new ObjectRetrievalFailureException(StorageStrategy.class, className, "Could not instantiate class '" + className + "' for resource type '" + resourceType.getName() + "'", e); } catch (IllegalAccessException e) { throw new ObjectRetrievalFailureException(StorageStrategy.class, className, "Could not instantiate class '" + className + "' for resource type '" + resourceType.getName() + "'", e); storageStrategy.setResourceTypeName(resourceType.getName()); resourceType.getName(), resourceType.getLabel(), resourceType.getResourceLabel(),
@Override public boolean delete() { Object resourceTypeId = resourceTypeTable.getValue(); if (resourceTypeId != null) { ResourceType resourceType = resourceTypeTable.getResourceType(resourceTypeId); Set<String> groups = getParentGroups(dataCollectionConfigDao, resourceType.getName()); if (!groups.isEmpty()) { final String msg = "The resourceType cannot be deleted because it is being referenced by:\n" + groups.toString(); Notification.show(msg, Notification.Type.WARNING_MESSAGE); return false; } logger.info("SNMP ResourceType " + resourceType.getName() + " has been removed."); resourceTypeTable.select(null); resourceTypeTable.removeItem(resourceTypeId); resourceTypeTable.refreshRowCache(); } return true; } @Override
@Override public boolean save() { ResourceType resourceType = resourceTypeForm.getResourceType(); if (!isNew && !resourceType.getName().equals(resourceTypeForm.getResourceTypeName())) { Set<String> groups = getParentGroups(dataCollectionConfigDao, resourceType.getName()); if (!groups.isEmpty()) { final String msg = "The resourceType cannot be renamed because it is being referenced by:\n" + groups.toString(); Notification.show(msg, Notification.Type.WARNING_MESSAGE); return false; } } logger.info("Resource Type " + resourceType.getName() + " has been " + (isNew ? "created." : "updated.")); try { resourceTypeForm.commit(); resourceTypeForm.setReadOnly(true); resourceTypeTable.refreshRowCache(); return true; } catch (CommitException e) { String msg = "Can't save the changes: " + e.getMessage(); logger.error(msg); Notification.show(msg, Notification.Type.ERROR_MESSAGE); return false; } } @Override
@Override public boolean delete() { Object resourceTypeId = resourceTypeTable.getValue(); if (resourceTypeId != null) { ResourceType resourceType = resourceTypeTable.getResourceType(resourceTypeId); Set<String> groups = getParentGroups(dataCollectionConfigDao, resourceType.getName()); if (!groups.isEmpty()) { final String msg = "The resourceType cannot be deleted because it is being referenced by:\n" + groups.toString(); Notification.show(msg, Notification.Type.WARNING_MESSAGE); return false; } logger.info("SNMP ResourceType " + resourceType.getName() + " has been removed."); resourceTypeTable.select(null); resourceTypeTable.removeItem(resourceTypeId); resourceTypeTable.refreshRowCache(); } return true; } @Override
@Override public boolean save() { ResourceType resourceType = resourceTypeForm.getResourceType(); if (!isNew && !resourceType.getName().equals(resourceTypeForm.getResourceTypeName())) { Set<String> groups = getParentGroups(dataCollectionConfigDao, resourceType.getName()); if (!groups.isEmpty()) { final String msg = "The resourceType cannot be renamed because it is being referenced by:\n" + groups.toString(); Notification.show(msg, Notification.Type.WARNING_MESSAGE); return false; } } logger.info("Resource Type " + resourceType.getName() + " has been " + (isNew ? "created." : "updated.")); try { resourceTypeForm.commit(); resourceTypeForm.setReadOnly(true); resourceTypeTable.refreshRowCache(); return true; } catch (CommitException e) { String msg = "Can't save the changes: " + e.getMessage(); logger.error(msg); Notification.show(msg, Notification.Type.ERROR_MESSAGE); return false; } } @Override
@Override public void visitResourceType(final ResourceType resourceType) { final ResourceTypeImpl type = new ResourceTypeImpl(resourceType.getName(), resourceType.getLabel()); if (resourceType.getResourceLabel() != null && !resourceType.getResourceLabel().trim().isEmpty()) { type.setResourceLabelTemplate(resourceType.getResourceLabel());
/** * <p>Constructor for GenericIndexResourceType.</p> * * @param agent a {@link org.opennms.netmgt.collection.api.CollectionAgent} object. * @param snmpCollection a {@link org.opennms.netmgt.collectd.OnmsSnmpCollection} object. * @param resourceType a {@link org.opennms.netmgt.config.datacollection.ResourceType} object. */ public GenericIndexResourceType(SnmpCollectionAgent agent, OnmsSnmpCollection snmpCollection, org.opennms.netmgt.config.datacollection.ResourceType resourceType) throws IllegalArgumentException { super(agent, snmpCollection); Assert.notNull(resourceType, "resourceType argument must not be null"); m_name = resourceType.getName(); instantiatePersistenceSelectorStrategy(resourceType.getPersistenceSelectorStrategy().getClazz()); instantiateStorageStrategy(resourceType.getStorageStrategy().getClazz()); m_storageStrategy.setParameters(resourceType.getStorageStrategy().getParameters()); m_persistenceSelectorStrategy.setParameters(resourceType.getPersistenceSelectorStrategy().getParameters()); m_resourceType = resourceType; }
if (typeName.equals("string") && resourceType != null) { for (ResourceType rs : dcGroup.getResourceTypes()) { if (rs.getName().equals(resourceType) && rs.getResourceLabel().equals("${index}")) { rs.setResourceLabel("${" + v.getId() + "} (${index})");
if (typeName.equals("string") && resourceType != null) { for (ResourceType rs : dcGroup.getResourceTypes()) { if (rs.getName().equals(resourceType) && rs.getResourceLabel().equals("${index}")) { rs.setResourceLabel("${" + v.getId() + "} (${index})");
resourceTypes.add(type.getName());
public WmiResourceType(CollectionAgent agent, ResourceType resourceType){ m_resourceType = resourceType.getName(); instantiatePersistenceSelector(resourceType.getPersistenceSelectorStrategy().getClazz()); instantiateStorageStrategy(resourceType.getStorageStrategy().getClazz()); m_storageStrategy.setParameters(resourceType.getStorageStrategy().getParameters()); m_persistenceSelectorStrategy.setParameters(resourceType.getPersistenceSelectorStrategy().getParameters()); }
public WmiResourceType(CollectionAgent agent, ResourceType resourceType){ m_resourceType = resourceType.getName(); instantiatePersistenceSelector(resourceType.getPersistenceSelectorStrategy().getClazz()); instantiateStorageStrategy(resourceType.getStorageStrategy().getClazz()); m_storageStrategy.setParameters(resourceType.getStorageStrategy().getParameters()); m_persistenceSelectorStrategy.setParameters(resourceType.getPersistenceSelectorStrategy().getParameters()); }
resourceTypes.add(type.getName());
GenericIndexResourceType resourceType = new GenericIndexResourceType(agent, snmpCollection, rt); resourceA = new GenericIndexResource(resourceType, rt.getName(), new SnmpInstId("1.2.3.4.5.6.7.8.9.1.1")); resourceA.setAttributeValue(attributeType, snmpValue); resourceB = new GenericIndexResource(resourceType, rt.getName(), new SnmpInstId("1.2.3.4.5.6.7.8.9.1.2"));