Class AbstractPersister
- java.lang.Object
-
- org.opennms.netmgt.collection.support.AbstractCollectionSetVisitor
-
- org.opennms.netmgt.collection.api.AbstractPersister
-
- All Implemented Interfaces:
CollectionSetVisitor,Persister
- Direct Known Subclasses:
AbstractEvaluatePersister,BasePersister,NewtsPersister,TcpBasePersister,TimeseriesPersister
public abstract class AbstractPersister extends AbstractCollectionSetVisitor implements Persister
Common persister code that performs the following: 1) Determines which attributes should be persisted. A stack is used to keep track of the "persist" flag for resources and groups as they are visited. 2) Delegates the persistence of numeric attributes viaPersistOperationBuilder. Subclasses must callsetBuilder(org.opennms.netmgt.collection.api.PersistOperationBuilder)with an implementation before any attributes are visited. 3) Delegates the persistence of string attributes via calls topersistStringAttribute(org.opennms.netmgt.model.ResourcePath, java.lang.String, java.lang.String).- Author:
- jwhite
-
-
Field Summary
Fields Modifier and Type Field Description protected static org.slf4j.LoggerLOG
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractPersister(ServiceParameters params, RrdRepository repository)Constructor for BasePersister.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidcommitBuilder()commitBuildervoidcompleteAttribute(CollectionAttribute attribute)completeAttributevoidcompleteGroup(AttributeGroup group)completeGroupvoidcompleteResource(CollectionResource resource)completeResourceRrdRepositorygetRepository()getRepositorybooleanisIgnorePersist()isIgnorePersistvoidpersistNumericAttribute(CollectionAttribute attribute)persistNumericAttributevoidpersistStringAttribute(CollectionAttribute attribute)persistStringAttributeprotected abstract voidpersistStringAttribute(ResourcePath path, String key, String value)booleanpopShouldPersist()popShouldPersistprotected voidpushShouldPersist(AttributeGroup group)pushShouldPersistvoidpushShouldPersist(CollectionAttribute attribute)pushShouldPersistvoidpushShouldPersist(CollectionResource resource)PushCollectionResourceinstances directly onto the stack without checkingtop()since they are the top-level resources.protected voidsetBuilder(PersistOperationBuilder builder)voidsetIgnorePersist(boolean ignore)setIgnorePersistvoidsetRepository(RrdRepository repository)setRepositoryprotected booleanshouldPersist()shouldPersistvoidstoreAttribute(CollectionAttribute attribute)storeAttributevoidvisitAttribute(CollectionAttribute attribute)visitAttributevoidvisitGroup(AttributeGroup group)visitGroupvoidvisitResource(CollectionResource resource)visitResource-
Methods inherited from class org.opennms.netmgt.collection.support.AbstractCollectionSetVisitor
completeCollectionSet, visitCollectionSet
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.opennms.netmgt.collection.api.CollectionSetVisitor
completeCollectionSet, visitCollectionSet
-
-
-
-
Constructor Detail
-
AbstractPersister
protected AbstractPersister(ServiceParameters params, RrdRepository repository)
Constructor for BasePersister.
- Parameters:
params- aServiceParametersobject.repository- aRrdRepositoryobject.
-
-
Method Detail
-
persistStringAttribute
protected abstract void persistStringAttribute(ResourcePath path, String key, String value) throws PersistException
- Throws:
PersistException
-
commitBuilder
public void commitBuilder()
commitBuilder
-
completeAttribute
public void completeAttribute(CollectionAttribute attribute)
completeAttribute
- Specified by:
completeAttributein interfaceCollectionSetVisitor- Overrides:
completeAttributein classAbstractCollectionSetVisitor- Parameters:
attribute- aorg.opennms.netmgt.collection.api.collectd.CollectionAttributeobject.
-
completeGroup
public void completeGroup(AttributeGroup group)
completeGroup
- Specified by:
completeGroupin interfaceCollectionSetVisitor- Overrides:
completeGroupin classAbstractCollectionSetVisitor- Parameters:
group- aorg.opennms.netmgt.collectd.AttributeGroupobject.
-
completeResource
public void completeResource(CollectionResource resource)
completeResource
- Specified by:
completeResourcein interfaceCollectionSetVisitor- Overrides:
completeResourcein classAbstractCollectionSetVisitor- Parameters:
resource- aCollectionResourceobject.
-
getRepository
public RrdRepository getRepository()
getRepository
- Returns:
- a
RrdRepositoryobject.
-
setRepository
public void setRepository(RrdRepository repository)
setRepository
- Parameters:
repository- aRrdRepositoryobject.
-
persistNumericAttribute
public void persistNumericAttribute(CollectionAttribute attribute)
persistNumericAttribute
- Specified by:
persistNumericAttributein interfacePersister- Parameters:
attribute- aCollectionAttributeobject.
-
persistStringAttribute
public void persistStringAttribute(CollectionAttribute attribute)
persistStringAttribute
- Specified by:
persistStringAttributein interfacePersister- Parameters:
attribute- aCollectionAttributeobject.
-
popShouldPersist
public boolean popShouldPersist()
popShouldPersist
- Returns:
- a boolean.
-
pushShouldPersist
public void pushShouldPersist(CollectionAttribute attribute)
pushShouldPersist
- Parameters:
attribute- aCollectionAttributeobject.
-
pushShouldPersist
protected void pushShouldPersist(AttributeGroup group)
pushShouldPersist
- Parameters:
group- aAttributeGroupobject.
-
pushShouldPersist
public void pushShouldPersist(CollectionResource resource)
PushCollectionResourceinstances directly onto the stack without checkingtop()since they are the top-level resources.- Parameters:
resource- aCollectionResourceobject.
-
shouldPersist
protected boolean shouldPersist()
shouldPersist
- Returns:
- a boolean.
-
storeAttribute
public void storeAttribute(CollectionAttribute attribute)
storeAttribute
- Parameters:
attribute- aCollectionAttributeobject.
-
visitAttribute
public void visitAttribute(CollectionAttribute attribute)
visitAttribute
- Specified by:
visitAttributein interfaceCollectionSetVisitor- Overrides:
visitAttributein classAbstractCollectionSetVisitor- Parameters:
attribute- aorg.opennms.netmgt.collection.api.collectd.CollectionAttributeobject.
-
visitGroup
public void visitGroup(AttributeGroup group)
visitGroup
- Specified by:
visitGroupin interfaceCollectionSetVisitor- Overrides:
visitGroupin classAbstractCollectionSetVisitor- Parameters:
group- aorg.opennms.netmgt.collectd.AttributeGroupobject.
-
visitResource
public void visitResource(CollectionResource resource)
visitResource
- Specified by:
visitResourcein interfaceCollectionSetVisitor- Overrides:
visitResourcein classAbstractCollectionSetVisitor- Parameters:
resource- aCollectionResourceobject.
-
isIgnorePersist
public boolean isIgnorePersist()
isIgnorePersist
- Returns:
- a boolean.
-
setIgnorePersist
public void setIgnorePersist(boolean ignore)
setIgnorePersist
- Parameters:
ignore- a boolean.
-
setBuilder
protected void setBuilder(PersistOperationBuilder builder)
-
-