assertEquals("ENABLED", state.toString());
assertEquals(1, state.ordinal());
+ // setLogLevelType(String name)
fixture.setLogLevelType("==");
assertEquals("LOGLEVEL_ONLY", fixture.getLogLevelType().name());
assertEquals("==", fixture.getLogLevelType().getShortName());
assertEquals("<=", fixture.getLogLevelType().getShortName());
fixture.setLogLevelType("");
- assertEquals("LOGLEVEL_NONE", fixture.getLogLevelType().name());
+ assertEquals("LOGLEVEL_ALL", fixture.getLogLevelType().name());
assertEquals("", fixture.getLogLevelType().getShortName());
fixture.setLogLevelType(LogLevelType.LOGLEVEL_ONLY);
assertEquals("LOGLEVEL_ONLY", fixture.getLogLevelType().name());
assertEquals("==", fixture.getLogLevelType().getShortName());
+
+ fixture.setLogLevelType(LogLevelType.LOGLEVEL);
+ assertEquals("LOGLEVEL", fixture.getLogLevelType().name());
+ assertEquals("<=", fixture.getLogLevelType().getShortName());
+
+ fixture.setLogLevelType(LogLevelType.LOGLEVEL_ALL);
+ assertEquals("LOGLEVEL_ALL", fixture.getLogLevelType().name());
+ assertEquals("", fixture.getLogLevelType().getShortName());
+
+ fixture.setLogLevelType(LogLevelType.LOGLEVEL_NONE);
+ assertEquals("LOGLEVEL_NONE", fixture.getLogLevelType().name());
+ assertEquals("", fixture.getLogLevelType().getShortName());
+
+ // setLogLevelType(String name)
+ // machine interface
+ fixture.setLogLevelType("SINGLE");
+ assertEquals("LOGLEVEL_ONLY", fixture.getLogLevelType().name());
+ assertEquals("SINGLE", fixture.getLogLevelType().getMiName());
+
+ fixture.setLogLevelType("RANGE");
+ assertEquals("LOGLEVEL", fixture.getLogLevelType().name());
+ assertEquals("RANGE", fixture.getLogLevelType().getMiName());
+
+ fixture.setLogLevelType("ALL");
+ assertEquals("LOGLEVEL_ALL", fixture.getLogLevelType().name());
+ assertEquals("ALL", fixture.getLogLevelType().getMiName());
+
+ fixture.setLogLevelType("UNKNOWN");
+ assertEquals("LOGLEVEL_NONE", fixture.getLogLevelType().name());
+ assertEquals("UNKNOWN", fixture.getLogLevelType().getMiName());
+
}
/**
*********************************************************************/
package org.eclipse.linuxtools.internal.lttng2.control.core.model;
+
/**
- * <p>
* Type of log Level enumeration.
- * </p>
*
* @author Bernd Hufmann
*/
// Enum definition
// ------------------------------------------------------------------------
/** range of log levels [0,logLevel] */
- LOGLEVEL("<="), //$NON-NLS-1$
+ LOGLEVEL("<=", "RANGE"), //$NON-NLS-1$ //$NON-NLS-2$
+
+ /** all log level */
+ LOGLEVEL_ALL("", "ALL"), //$NON-NLS-1$//$NON-NLS-2$
/** single log level */
- LOGLEVEL_ONLY("=="), //$NON-NLS-1$
+ LOGLEVEL_ONLY("==", "SINGLE"), //$NON-NLS-1$ //$NON-NLS-2$
/** no log level */
- LOGLEVEL_NONE(""); //$NON-NLS-1$
+ LOGLEVEL_NONE("", "UNKNOWN"); //$NON-NLS-1$ //$NON-NLS-2$
// ------------------------------------------------------------------------
// Constuctors
/**
* Private constructor
- * @param name the name of state
+ *
+ * @param name
+ * the name of state
*/
- private LogLevelType(String shortName) {
+ private LogLevelType(String shortName, String miName) {
fShortName = shortName;
+ fMiName = miName;
}
- // ------------------------------------------------------------------------
+ // ------------------------------------------------------------------------
// Attributes
// ------------------------------------------------------------------------
/**
* Name of enum.
*/
private final String fShortName;
+ private final String fMiName;
// ------------------------------------------------------------------------
// Accessors
return fShortName;
}
+ /**
+ * @return machine interface name string
+ */
+ public String getMiName() {
+ return fMiName;
+ }
+
+ // ------------------------------------------------------------------------
+ // Utility
+ // ------------------------------------------------------------------------
+ /**
+ * Return the corresponding {@link LogLevelType} to String "name"
+ *
+ * @param name
+ * String to compare to retrieve the good LogLevelType
+ * @return the corresponding {@link LogLevelType}
+ */
+ public static LogLevelType valueOfString(String name) {
+ if (name == null) {
+ throw new IllegalArgumentException();
+ }
+ for (LogLevelType lltype : LogLevelType.values()) {
+ if (!lltype.equals(LOGLEVEL_NONE)) {
+ boolean isEqual = lltype.fShortName.equalsIgnoreCase(name) || lltype.fMiName.equalsIgnoreCase(name);
+ if (isEqual) {
+ return lltype;
+ }
+ }
+ }
+
+ // No match
+ return LogLevelType.LOGLEVEL_NONE;
+ }
}