All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.nimbusds.infinispan.persistence.dynamodb.DynamoDBTimers Maven / Gradle / Ivy

package com.nimbusds.infinispan.persistence.dynamodb;


import com.codahale.metrics.Timer;
import com.nimbusds.common.monitor.MonitorRegistries;
import net.jcip.annotations.ThreadSafe;


/**
 * DynamoDB operations timers.
 */
@ThreadSafe
class DynamoDBTimers {


	/**
	 * Times DynamoDB get operations.
	 */
	final Timer getTimer = new Timer();


	/**
	 * Times DynamoDB put operations.
	 */
	final Timer putTimer = new Timer();


	/**
	 * Times DynamoDB delete operations.
	 */
	final Timer deleteTimer = new Timer();


	/**
	 * Times DynamoDB item process operations.
	 */
	final Timer processTimer = new Timer();


	/**
	 * Times DynamoDB purge expired Infinispan entries operations.
	 */
	final Timer purgeTimer = new Timer();


	/**
	 * Creates a new set of DynamoDB operations timers.
	 *
	 * @param prefix The prefix for the timer names. Must not be
	 *               {@code null}.
	 */
	DynamoDBTimers(final String prefix) {
		MonitorRegistries.register(prefix + "dynamoDB.getTimer", getTimer);
		MonitorRegistries.register(prefix + "dynamoDB.putTimer", putTimer);
		MonitorRegistries.register(prefix + "dynamoDB.deleteTimer", deleteTimer);
		MonitorRegistries.register(prefix + "dynamoDB.processTimer", processTimer);
		MonitorRegistries.register(prefix + "dynamoDB.purgeTimer", purgeTimer);
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy