/*
* Copyright (C) 2006-2016 DLR, Germany
*
* All rights reserved
*
* http://www.rcenvironment.de/
*/
package de.rcenvironment.toolkit.modules.statistics.api;
/**
* A category of value events. As an example, a value event category could be "Database call durations", which would then track/count
* individual value events corresponding to the various database calls.
*
* @author Robert Mischke
*
*/
public interface ValueEventCategory {
/**
* @return true if this category is enabled under the current global filter level; calling code should use this method to avoid costly
* preparations for calls that will not be registered anyway (which is the case if this method returns "false")
*/
boolean isEnabled();
/**
* Registers an event's value, for example an task's duration.
*
* @param key the key within the category
* @param value the value associated with an event
*/
void registerEvent(String key, long value);
}