|
21 | 21 | import org.gradle.api.tasks.TaskAction;
|
22 | 22 |
|
23 | 23 | import org.jboss.jandex.AnnotationInstance;
|
| 24 | +import org.jboss.jandex.AnnotationValue; |
24 | 25 | import org.jboss.jandex.ClassInfo;
|
25 | 26 | import org.jboss.jandex.DotName;
|
26 | 27 | import org.jboss.jandex.Index;
|
@@ -95,8 +96,8 @@ public void generateLoggingReport() {
|
95 | 96 | }
|
96 | 97 | else {
|
97 | 98 | idRange = new IdRange(
|
98 |
| - idRangeAnnUsage.value( "min" ).asInt(), |
99 |
| - idRangeAnnUsage.value( "max" ).asInt(), |
| 99 | + asIntOrDefault( idRangeAnnUsage, "min" , 1 ), |
| 100 | + asIntOrDefault( idRangeAnnUsage, "max" , 999999 ), |
100 | 101 | true,
|
101 | 102 | loggerClassInfo.simpleName(),
|
102 | 103 | subSystem
|
@@ -129,7 +130,7 @@ private IdRange calculateIdRange(AnnotationInstance msgLoggerAnnUsage, SubSystem
|
129 | 130 |
|
130 | 131 | for ( int i = 0; i < messageAnnUsages.size(); i++ ) {
|
131 | 132 | final AnnotationInstance msgAnnUsage = messageAnnUsages.get( i );
|
132 |
| - final int msgId = msgAnnUsage.value( "id" ).asInt(); |
| 133 | + final int msgId = asIntOrDefault( msgAnnUsage, "id", -1 ); |
133 | 134 |
|
134 | 135 | if ( msgId < minId ) {
|
135 | 136 | minId = msgId;
|
@@ -332,4 +333,13 @@ public String getLabel() {
|
332 | 333 | return minValueText + " - " + maxValueText;
|
333 | 334 | }
|
334 | 335 | }
|
| 336 | + |
| 337 | + private int asIntOrDefault(AnnotationInstance instance, String param, int defaultValue) { |
| 338 | + final AnnotationValue value = instance.value( param ); |
| 339 | + if ( value == null ) { |
| 340 | + getLogger().warn( "Explicit value for [{}] was not provided at {}! ", param, instance.target() ); |
| 341 | + return defaultValue; |
| 342 | + } |
| 343 | + return value.asInt(); |
| 344 | + } |
335 | 345 | }
|
0 commit comments