From 1f4c0bdf6307fb397429981185f7b115bac3974c Mon Sep 17 00:00:00 2001 From: Minh VU Date: Fri, 18 Oct 2024 16:41:39 +0200 Subject: [PATCH] Hope it works manager like title --- src/Configuration.java | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/Configuration.java b/src/Configuration.java index 26224c3..3f804cf 100644 --- a/src/Configuration.java +++ b/src/Configuration.java @@ -9,16 +9,24 @@ import java.util.Set; public class Configuration implements fr.istic.nplouzeau.cartaylor.api.Configuration { private Set selectedParts; private CompatibilityManager compatibilityManager; + private static int NB_CATEGORY = 4; @Override public boolean isValid() { - if ( this.isComplete()){ - - return true; - + if (this.isComplete()){ + for(PartType pt: selectedParts){ + //Verifier Requirements + for(PartType require : compatibilityManager.getRequirements(pt)){ + if(!selectedParts.contains(pt)) return false; + } + //Verifier Incompabilities + for(PartType incompa : compatibilityManager.getIncompatibilities(pt)){ + if(selectedParts.contains(pt)) return false; + } } - else{ + return true; + }else{ return false; } } @@ -26,7 +34,7 @@ public class Configuration implements fr.istic.nplouzeau.cartaylor.api.Configura @Override public boolean isComplete() { - if(selectedParts.size()==4){ + if(selectedParts.size()==NB_CATEGORY){ return true; } return false;