/* This file is part of ZAX. ZAX is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. ZAX is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with ZAX. If not, see <http://www.gnu.org/licenses/>. */ package com.inovex.zabbixmobile.model; import android.util.SparseArray; import com.inovex.zabbixmobile.R; public enum TriggerSeverity { ALL(R.string.severity_all, -1, 0, R.drawable.severity_not_classified), DISASTER(R.string.severity_disaster, 5, 1, R.drawable.severity_disaster), HIGH(R.string.severity_high, 4, 2, R.drawable.severity_high), AVERAGE(R.string.severity_average, 3, 3, R.drawable.severity_average), WARNING(R.string.severity_warning, 2, 4, R.drawable.severity_warning), INFORMATION(R.string.severity_information, 1, 5, R.drawable.severity_information), NOT_CLASSIFIED(R.string.severity_not_classified, 0, 6, R.drawable.severity_not_classified); private final int nameResourceId; private final int number; private final int position; private final int imageResourceId; private static final SparseArray<TriggerSeverity> valuesByNumber; private static final SparseArray<TriggerSeverity> valuesByPosition; static { valuesByNumber = new SparseArray<TriggerSeverity>( TriggerSeverity.values().length); for (TriggerSeverity t : TriggerSeverity.values()) { valuesByNumber.put(t.getNumber(), t); } valuesByPosition = new SparseArray<TriggerSeverity>( TriggerSeverity.values().length); for (TriggerSeverity t : TriggerSeverity.values()) { valuesByPosition.put(t.getPosition(), t); } } TriggerSeverity(int nameResourceId, int n, int position, int imageResourceId) { this.nameResourceId = nameResourceId; number = n; this.position = position; this.imageResourceId = imageResourceId; } public int getPosition() { return position; } public int getNameResourceId() { return nameResourceId; } public int getNumber() { return number; } public int getImageResourceId() { return imageResourceId; } public static TriggerSeverity getSeverityByNumber(int n) { return valuesByNumber.get(n); } public static TriggerSeverity getSeverityByPosition(int n) { return valuesByPosition.get(n); } @Override public String toString() { return "{" + nameResourceId + ", " + number + ", " + position + "}"; } }