src/main/java/cz/frantovo/rozsireneatributy/Konfigurace.java
branchv_0
changeset 42 d2414701ce09
parent 39 ec0e970e0830
     1.1 --- a/src/main/java/cz/frantovo/rozsireneatributy/Konfigurace.java	Tue Dec 19 00:47:41 2023 +0100
     1.2 +++ b/src/main/java/cz/frantovo/rozsireneatributy/Konfigurace.java	Sun Dec 24 00:38:41 2023 +0100
     1.3 @@ -17,8 +17,11 @@
     1.4  package cz.frantovo.rozsireneatributy;
     1.5  
     1.6  import java.io.File;
     1.7 +import java.util.Arrays;
     1.8 +import java.util.HashSet;
     1.9  import java.util.LinkedList;
    1.10  import java.util.List;
    1.11 +import java.util.Set;
    1.12  
    1.13  /**
    1.14   * @author Ing. František Kučera (frantovo.cz)
    1.15 @@ -89,9 +92,32 @@
    1.16  		}
    1.17  	}
    1.18  
    1.19 +	public enum RežimZamykání {
    1.20 +		VYPNUTÉ("vypnuté", "disabled"),
    1.21 +		VOLITELNÉ("volitelné", "optional"),
    1.22 +		POVINNÉ("povinné", "mandatory");
    1.23 +
    1.24 +		private final Set<String> hodnoty = new HashSet<>();
    1.25 +
    1.26 +		private RežimZamykání(String... hodnoty) {
    1.27 +			this.hodnoty.addAll(Arrays.asList(hodnoty));
    1.28 +		}
    1.29 +
    1.30 +		public boolean odpovídá(String hodnota) {
    1.31 +			return hodnoty.contains(hodnota);
    1.32 +		}
    1.33 +
    1.34 +		public static RežimZamykání najdiRežim(String hodnota) {
    1.35 +			for (RežimZamykání režim : values()) {
    1.36 +				if (režim.odpovídá(hodnota)) return režim;
    1.37 +			}
    1.38 +			return null;
    1.39 +		}
    1.40 +	}
    1.41 +
    1.42  	private File soubor;
    1.43  
    1.44 -	private boolean povinnéZamykání = false;
    1.45 +	private RežimZamykání režimZamykání = RežimZamykání.VOLITELNÉ;
    1.46  
    1.47  	private final List<DefiniceAtributu> atributy = new LinkedList<>();
    1.48  
    1.49 @@ -103,12 +129,12 @@
    1.50  		this.soubor = soubor;
    1.51  	}
    1.52  
    1.53 -	public boolean isPovinnéZamykání() {
    1.54 -		return povinnéZamykání;
    1.55 +	public RežimZamykání getRežimZamykání() {
    1.56 +		return režimZamykání;
    1.57  	}
    1.58  
    1.59 -	public void setPovinnéZamykání(boolean povinnéZamykání) {
    1.60 -		this.povinnéZamykání = povinnéZamykání;
    1.61 +	public void setRežimZamykání(RežimZamykání režimZamykání) {
    1.62 +		this.režimZamykání = režimZamykání;
    1.63  	}
    1.64  
    1.65  	public List<DefiniceAtributu> getAtributy() {