Commit b1d017ee6f8d4d2e8f31dfaf0784de5fb4e49f2c

Authored by Dancovich
1 parent da9f1827
Exists in master

Corrigido bug do extrator de ENUM onde valores não informados causavam

NullPointerException ao invés de usar o valor padrão.
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/implementation/ConfigurationEnumValueExtractor.java
@@ -55,20 +55,25 @@ public class ConfigurationEnumValueExtractor implements ConfigurationValueExtrac @@ -55,20 +55,25 @@ public class ConfigurationEnumValueExtractor implements ConfigurationValueExtrac
55 public Object getValue(String prefix, String key, Field field, Configuration configuration) throws Exception { 55 public Object getValue(String prefix, String key, Field field, Configuration configuration) throws Exception {
56 String value = configuration.getString(prefix + key); 56 String value = configuration.getString(prefix + key);
57 57
58 - Object enums[] = field.getDeclaringClass().getEnumConstants();  
59 -  
60 - for (int i=0; i<enums.length; i++){  
61 - if (enums[i].getClass().getSimpleName().equalsIgnoreCase(value)){  
62 - return enums[i]; 58 + if (value!=null){
  59 + Object enums[] = field.getDeclaringClass().getEnumConstants();
  60 +
  61 + for (int i=0; i<enums.length; i++){
  62 + if (enums[i].getClass().getSimpleName().equalsIgnoreCase(value)){
  63 + return enums[i];
  64 + }
63 } 65 }
64 } 66 }
  67 + else{
  68 + return null;
  69 + }
65 70
66 throw new ConversionException(getBundle().getString("configuration-not-conversion",value,field.getDeclaringClass().getCanonicalName())); 71 throw new ConversionException(getBundle().getString("configuration-not-conversion",value,field.getDeclaringClass().getCanonicalName()));
67 } 72 }
68 73
69 @Override 74 @Override
70 public boolean isSupported(Field field) { 75 public boolean isSupported(Field field) {
71 - return field.getDeclaringClass().isEnum(); 76 + return field.getType().isEnum();
72 } 77 }
73 78
74 private ResourceBundle getBundle(){ 79 private ResourceBundle getBundle(){