Class IndexStorageStrategy
- java.lang.Object
-
- org.opennms.netmgt.collection.support.IndexStorageStrategy
-
- All Implemented Interfaces:
StorageStrategy
- Direct Known Subclasses:
FrameRelayStorageStrategy,HostFileSystemStorageStrategy,JexlIndexStorageStrategy,SiblingColumnStorageStrategy,XmlStorageStrategy
public class IndexStorageStrategy extends Object implements StorageStrategy
-
-
Field Summary
Fields Modifier and Type Field Description protected StorageStrategyServicem_storageStrategyService
-
Constructor Summary
Constructors Constructor Description IndexStorageStrategy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ResourcePathgetRelativePathForAttribute(ResourcePath resourceParent, String instance)getRelativePathForAttributeStringgetResourceNameFromIndex(CollectionResource resource)This functions translate resourceIndex into a "unique" and "non-variable" name that could be identify a resource, as described earlier.StringgetResourceTypeName()getResourceTypeNamevoidsetParameters(List<Parameter> parameterCollection)setParametersvoidsetResourceTypeName(String name)setResourceTypeNamevoidsetStorageStrategyService(StorageStrategyService agent)Add to a strategy the possibility to get additional information using SNMP when is necessary.
-
-
-
Field Detail
-
m_storageStrategyService
protected StorageStrategyService m_storageStrategyService
-
-
Method Detail
-
getRelativePathForAttribute
public final ResourcePath getRelativePathForAttribute(ResourcePath resourceParent, String instance)
getRelativePathForAttribute
- Specified by:
getRelativePathForAttributein interfaceStorageStrategy- Parameters:
resourceParent- aStringobject.instance- aStringobject.- Returns:
- a
Pathobject.
-
setResourceTypeName
public final void setResourceTypeName(String name)
setResourceTypeName
- Specified by:
setResourceTypeNamein interfaceStorageStrategy- Parameters:
name- aStringobject.
-
getResourceTypeName
public final String getResourceTypeName()
getResourceTypeName
- Returns:
- a
Stringobject.
-
getResourceNameFromIndex
public String getResourceNameFromIndex(CollectionResource resource)
This functions translate resourceIndex into a "unique" and "non-variable" name that could be identify a resource, as described earlier. This method could be expensive because it could require send SNMP queries and make complicated functions to build the name. So you must try to call it only when is necessary.- Specified by:
getResourceNameFromIndexin interfaceStorageStrategy- Parameters:
resource- aCollectionResourceobject- Returns:
- a
Stringobject.
-
setStorageStrategyService
public final void setStorageStrategyService(StorageStrategyService agent)
Add to a strategy the possibility to get additional information using SNMP when is necessary. There are complex tables on some MIBs where indexes depends on indexes from other tables (indirect indexing). For this kind of resources we must send some additional SNMP queries to build a unique name.- Specified by:
setStorageStrategyServicein interfaceStorageStrategy- Parameters:
agent- aorg.opennms.netmgt.config.StorageStrategyServiceobject.
-
setParameters
public void setParameters(List<Parameter> parameterCollection) throws IllegalArgumentException
setParameters
- Specified by:
setParametersin interfaceStorageStrategy- Parameters:
parameterCollection- aListobject.- Throws:
IllegalArgumentException
-
-