/* * Copyright (c) 2008 Stiftung Deutsches Elektronen-Synchrotron, * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY. * * THIS SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "../AS IS" BASIS. * WITHOUT WARRANTY OF ANY KIND, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED * TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR PARTICULAR PURPOSE AND * NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE * FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * THE USE OR OTHER DEALINGS IN THE SOFTWARE. SHOULD THE SOFTWARE PROVE DEFECTIVE * IN ANY RESPECT, THE USER ASSUMES THE COST OF ANY NECESSARY SERVICING, REPAIR OR * CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. * NO USE OF ANY SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. * DESY HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, * OR MODIFICATIONS. * THE FULL LICENSE SPECIFYING FOR THE SOFTWARE THE REDISTRIBUTION, MODIFICATION, * USAGE AND OTHER RIGHTS AND OBLIGATIONS IS INCLUDED WITH THE DISTRIBUTION OF THIS * PROJECT IN THE FILE LICENSE.HTML. IF THE LICENSE IS NOT INCLUDED YOU MAY FIND A COPY * AT HTTP://WWW.DESY.DE/LEGAL/LICENSE.HTM */ package org.csstudio.dal.simple; /** Description of the 'severity' of a value. * <p> * The severity code is usually meant to indicate if the process variable * that provided a value was 'ok', or in various states of warning or error. * <p> * Different implementations might have more or fewer warning and error states. * To allow the implementation of generic tools, we define generic * states 'OK', 'Minor', 'Major' and 'Invalid' as follows: * <ul> * <li>OK - The 'normal' severity, indicating that the process variable is * fine. * <li>Minor - A severity that indicates a minor warning. The process variable * is valid, but its value might be close to some trip threshold. * Some applications might indicate this by displaying the value * in yellow. * <li>Major - A severity that indicates a major warning. The process variable * is valid, but its value might have exceeded some trip threshold. * Some applications might indicate this by displaying the value * in red. * <li>Invalid - A severity that indicates an error. The process variable * is probably invalid. The value could be a bad or old reading, * Some applications might indicate this by displaying the value * in grey. * </ul> * @author Kay Kasemir */ public interface Severity { /** @return Returns the textual representation for this severity. */ public String getSeverityInfo(); /** @return Returns the textual representation of the description. */ public String descriptionToString(); /** @return Returns <code>true</code> if this severity is in * the 'OK' category. */ public boolean isOK(); /** @return Returns <code>true</code> if this severity is in * the 'Minor' category. */ public boolean isMinor(); /** @return Returns <code>true</code> if this severity is in * the 'Major' category. */ public boolean isMajor(); /** @return Returns <code>true</code> if this severity is in * the 'Invalid' category. */ public boolean isInvalid(); /** @return Returns <code>true</code> if the associated value is meaningful, * <code>false</code> if the value represents for example a 'disconnected' * state and thus has no numeric value. */ public boolean hasValue(); }