ref #8385 Fix potential NPE
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / preference / PreferencesUtil.java
index 3b5d2e516ae7e3997589b6ffea58ba0565e35278..2e98c3ba489b56bd1b6247e2699c3796dfd20c54 100644 (file)
@@ -1444,53 +1444,54 @@ public class PreferencesUtil implements IPreferenceKeys {
             return config;
          } else{
              String configString = preference.getValue();
-             String[] configArray = configString.split(";");
-
-             for (String configItem: configArray){
-                 String[] keyValue = configItem.split(":");
-                 String keyString = keyValue[0];
-                 String valueString = null;
-                 if (keyValue.length>1){
-                      valueString = keyValue[1];
-                 }
-                 if (keyString.equals("ignoreImportOfExistingSpecimen")){
-                     config.setIgnoreImportOfExistingSpecimen(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("addIndividualsAssociationsSuchAsSpecimenAndObservations")){
-                     config.setAddIndividualsAssociationsSuchAsSpecimenAndObservations(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("reuseExistingTaxaWhenPossible")){
-                     config.setReuseExistingTaxaWhenPossible(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("ignoreAuthorship")){
-                     config.setIgnoreAuthorship(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("addMediaAsMediaSpecimen")){
-                     config.setAddMediaAsMediaSpecimen(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("reuseExistingMetaData")){
-                     config.setReuseExistingMetaData(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("reuseExistingDescriptiveGroups")){
-                     config.setReuseExistingDescriptiveGroups(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("allowReuseOtherClassifications")){
-                     config.setAllowReuseOtherClassifications(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("deduplicateReferences")){
-                     config.setDeduplicateReferences(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("deduplicateClassifications")){
-                     config.setDeduplicateClassifications(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("moveNewTaxaToDefaultClassification")){
-                     config.setMoveNewTaxaToDefaultClassification(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("mapUnitIdToCatalogNumber")){
-                     config.setMapUnitIdToCatalogNumber(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("mapUnitIdToAccessionNumber")){
-                     config.setMapUnitIdToAccessionNumber(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("mapUnitIdToBarcode")){
-                     config.setMapUnitIdToBarcode(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("overwriteExistingSpecimens")){
-                     config.setOverwriteExistingSpecimens(Boolean.valueOf(valueString));
-                 }else if (keyString.equals("nomenclaturalCode")){
+             if(configString!=null){
+                 String[] configArray = configString.split(";");
+
+                 for (String configItem: configArray){
+                     String[] keyValue = configItem.split(":");
+                     String keyString = keyValue[0];
+                     String valueString = null;
+                     if (keyValue.length>1){
+                         valueString = keyValue[1];
+                     }
+                     if (keyString.equals("ignoreImportOfExistingSpecimen")){
+                         config.setIgnoreImportOfExistingSpecimen(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("addIndividualsAssociationsSuchAsSpecimenAndObservations")){
+                         config.setAddIndividualsAssociationsSuchAsSpecimenAndObservations(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("reuseExistingTaxaWhenPossible")){
+                         config.setReuseExistingTaxaWhenPossible(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("ignoreAuthorship")){
+                         config.setIgnoreAuthorship(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("addMediaAsMediaSpecimen")){
+                         config.setAddMediaAsMediaSpecimen(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("reuseExistingMetaData")){
+                         config.setReuseExistingMetaData(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("reuseExistingDescriptiveGroups")){
+                         config.setReuseExistingDescriptiveGroups(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("allowReuseOtherClassifications")){
+                         config.setAllowReuseOtherClassifications(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("deduplicateReferences")){
+                         config.setDeduplicateReferences(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("deduplicateClassifications")){
+                         config.setDeduplicateClassifications(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("moveNewTaxaToDefaultClassification")){
+                         config.setMoveNewTaxaToDefaultClassification(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("mapUnitIdToCatalogNumber")){
+                         config.setMapUnitIdToCatalogNumber(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("mapUnitIdToAccessionNumber")){
+                         config.setMapUnitIdToAccessionNumber(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("mapUnitIdToBarcode")){
+                         config.setMapUnitIdToBarcode(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("overwriteExistingSpecimens")){
+                         config.setOverwriteExistingSpecimens(Boolean.valueOf(valueString));
+                     }else if (keyString.equals("nomenclaturalCode")){
                          config.setNomenclaturalCode(NomenclaturalCode.fromString(valueString));
-                 }else{
-                     logger.debug("This key of the abcd configurator needs to be added to the transformer: " + keyString);
+                     }else{
+                         logger.debug("This key of the abcd configurator needs to be added to the transformer: " + keyString);
+                     }
                  }
-
              }
-        }
+         }
         return config;
     }