ref #8648: default handling in name details preference - continue
authorKatja Luther <k.luther@bgbm.org>
Wed, 6 Nov 2019 10:03:10 +0000 (11:03 +0100)
committerKatja Luther <k.luther@bgbm.org>
Wed, 6 Nov 2019 10:03:10 +0000 (11:03 +0100)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/NameDetailsViewAdminConfiguration.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/NameDetailsConfigurator.java

index 19f52983de8a98bf4db553e64ca3002900218b5b..b9ae234c5ec6a72efdc3e385fcc0a4b3536b5df2 100755 (executable)
@@ -67,7 +67,7 @@ public class NameDetailsViewAdminConfiguration extends NameDetailsViewConfigurat
         //NameDetailsConfigurator config = createNameDetailsViewConfig();
         String value = nameDetailsConfig.toString();
 
-        if (nameDetailsConfig.equals(new NameDetailsConfigurator()) && isAllowOverride){
+        if (nameDetailsConfig.isDefault() && isAllowOverride){
             service.remove(CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.NameDetailsView));
 
             return true;
index 082bd41757e266359853d0b7785b76a3c9f9c771..d5db7462be35be9030024f067db7c8450ce8b62f 100644 (file)
@@ -18,7 +18,7 @@ import java.lang.reflect.Field;
 public class NameDetailsConfigurator {
 
     boolean isAllowOverride = true;
-   // boolean isSimpleDetailsViewActivated = true;
+
 
     boolean isTaxonSectionActivated = true;
     boolean isLSIDActivated = true;
@@ -367,4 +367,17 @@ public class NameDetailsConfigurator {
         this.isNomenclaturalStatusRuleConsideredCodeEditionActivated = isRuleConsideredCodeEditionActivated;
     }
 
+
+    public boolean isDefault(){
+        boolean result = true;
+        for (Field field: this.getClass().getDeclaredFields()){
+           try {
+            result = result &&field.getBoolean(this);
+        } catch (IllegalArgumentException | IllegalAccessException e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }
+        }
+        return result;
+    }
 }