1 package org.apache.maven.shared.io.logging;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.util.ArrayList;
23 import java.util.Arrays;
24 import java.util.Collections;
25 import java.util.List;
26
27
28
29
30 public final class MessageLevels
31 {
32
33
34
35
36 public static final int LEVEL_DEBUG = 0;
37
38
39
40 public static final int LEVEL_INFO = 1;
41
42
43
44 public static final int LEVEL_WARNING = 2;
45
46
47
48 public static final int LEVEL_ERROR = 3;
49
50
51
52 public static final int LEVEL_SEVERE = 4;
53
54
55
56 public static final int LEVEL_DISABLED = 5;
57
58 private static final List<String> LEVEL_NAMES;
59
60 static
61 {
62 List<String> names = new ArrayList<String>();
63 names.add( "DEBUG" );
64 names.add( "INFO" );
65 names.add( "WARN" );
66 names.add( "ERROR" );
67 names.add( "SEVERE" );
68
69 LEVEL_NAMES = Collections.unmodifiableList( names );
70 }
71
72 private MessageLevels()
73 {
74 }
75
76
77
78
79
80 public static boolean[] getLevelStates( int maxMessageLevel )
81 {
82 boolean[] states = new boolean[5];
83
84 Arrays.fill( states, false );
85
86 switch ( maxMessageLevel )
87 {
88 case ( LEVEL_DEBUG ):
89 states[LEVEL_DEBUG] = true;
90 case ( LEVEL_INFO ):
91 states[LEVEL_INFO] = true;
92 case ( LEVEL_WARNING ):
93 states[LEVEL_WARNING] = true;
94 case ( LEVEL_ERROR ):
95 states[LEVEL_ERROR] = true;
96 case ( LEVEL_SEVERE ):
97 states[LEVEL_SEVERE] = true;
98 default:
99 }
100
101 return states;
102 }
103
104
105
106
107
108 public static String getLevelLabel( int messageLevel )
109 {
110 if ( messageLevel > -1 && LEVEL_NAMES.size() > messageLevel )
111 {
112 return (String) LEVEL_NAMES.get( messageLevel );
113 }
114
115 throw new IllegalArgumentException( "Invalid message level: " + messageLevel );
116 }
117 }