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 55 public Object getValue(String prefix, String key, Field field, Configuration configuration) throws Exception {
56 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 71 throw new ConversionException(getBundle().getString("configuration-not-conversion",value,field.getDeclaringClass().getCanonicalName()));
67 72 }
68 73  
69 74 @Override
70 75 public boolean isSupported(Field field) {
71   - return field.getDeclaringClass().isEnum();
  76 + return field.getType().isEnum();
72 77 }
73 78  
74 79 private ResourceBundle getBundle(){
... ...