001package org.javasimon.console; 002 003import org.javasimon.Counter; 004import org.javasimon.CounterSample; 005import org.javasimon.Sample; 006import org.javasimon.Simon; 007import org.javasimon.Stopwatch; 008import org.javasimon.StopwatchSample; 009import org.javasimon.UnknownSample; 010 011/** 012 * Simon type enumeration 013 * 014 * @author gquintana 015 */ 016public enum SimonType { 017 018 STOPWATCH(Stopwatch.class, StopwatchSample.class), COUNTER(Counter.class, CounterSample.class), UNKNOWN(Simon.class, UnknownSample.class); 019 /** 020 * Simon Interface 021 */ 022 private final Class<? extends Simon> type; 023 /** 024 * Sample interface 025 */ 026 private final Class<? extends Sample> sampleType; 027 028 private SimonType(Class<? extends Simon> type, Class<? extends Sample> sampleType) { 029 this.type = type; 030 this.sampleType = sampleType; 031 } 032 033 public Class<? extends Simon> getType() { 034 return type; 035 } 036 037 public Class<? extends Sample> getSampleType() { 038 return sampleType; 039 } 040}