use of org.opennms.netmgt.collection.api.CollectionResource in project opennms by OpenNMS.
the class RrdPersistOperationBuilderTest method testCommitWithDeclaredAttribute.
@Test
public void testCommitWithDeclaredAttribute() throws Exception {
File nodeDir = m_fileAnticipator.expecting(getSnmpRrdDirectory(), m_node.getId().toString());
m_fileAnticipator.expecting(nodeDir, "rrdName" + m_rrdStrategy.getDefaultFileExtension());
m_fileAnticipator.expecting(nodeDir, "rrdName" + ".meta");
RrdRepository repository = createRrdRepository();
SnmpCollectionAgent agent = getCollectionAgent();
MockDataCollectionConfig dataCollectionConfig = new MockDataCollectionConfig();
OnmsSnmpCollection collection = new OnmsSnmpCollection(agent, new ServiceParameters(new HashMap<String, Object>()), dataCollectionConfig, m_locationAwareSnmpClient);
NodeResourceType resourceType = new NodeResourceType(agent, collection);
CollectionResource resource = new NodeInfo(resourceType, agent);
MibObject mibObject = new MibObject();
mibObject.setOid(".1.1.1.1");
mibObject.setAlias("mibObjectAlias");
mibObject.setType("counter");
mibObject.setInstance("0");
mibObject.setMaxval(null);
mibObject.setMinval(null);
SnmpCollectionSet collectionSet = new SnmpCollectionSet(agent, collection, m_locationAwareSnmpClient);
SnmpAttributeType attributeType = new NumericAttributeType(resourceType, "some-collection", mibObject, new AttributeGroupType("mibGroup", AttributeGroupType.IF_TYPE_IGNORE));
attributeType.storeResult(collectionSet, null, new SnmpResult(mibObject.getSnmpObjId(), new SnmpInstId(mibObject.getInstance()), SnmpUtils.getValueFactory().getOctetString("hello".getBytes())));
RrdPersistOperationBuilder builder = new RrdPersistOperationBuilder(m_rrdStrategy, repository, resource, "rrdName", false);
builder.declareAttribute(attributeType);
builder.commit();
}
use of org.opennms.netmgt.collection.api.CollectionResource in project opennms by OpenNMS.
the class MockCollectionResource method visit.
@Override
public void visit(CollectionSetVisitor visitor) {
for (Entry<String, String> entry : attributes.entrySet()) {
final CollectionResource resource = this;
final String attrName = entry.getKey();
final String attrValue = entry.getValue();
CollectionAttribute attribute = new CollectionAttribute() {
@Override
public CollectionResource getResource() {
return resource;
}
@Override
public String getStringValue() {
return attrValue;
}
@Override
public Double getNumericValue() {
try {
return Double.parseDouble(attrValue);
} catch (NumberFormatException | NullPointerException e) {
return null;
}
}
@Override
public String getName() {
return attrName;
}
@Override
public void storeAttribute(Persister persister) {
}
@Override
public boolean shouldPersist(ServiceParameters params) {
return true;
}
@Override
public CollectionAttributeType getAttributeType() {
return null;
}
@Override
public void visit(CollectionSetVisitor visitor) {
}
@Override
public AttributeType getType() {
return AttributeType.STRING;
}
@Override
public String getMetricIdentifier() {
return "MOCK_" + getName();
}
};
visitor.visitAttribute(attribute);
}
}
Aggregations