Files
SAE32_2024/src/fr/monlouyan/bakefile/BakeCLI.java

65 lines
1.5 KiB
Java

package fr.monlouyan.bakefile;
import java.util.List;
import java.util.ArrayList;
/**
* Gestion des arguments de la ligne de commande
*
* @author Moncef STITI
* @version 1.0
* @date 03/02/2025
* @see Main
*/
public class BakeCLI {
/*
* Mode debug activé ou non
*/
private static boolean debug;
/*
* Liste des arguments passés en ligne de commande
*/
private static List<String> targets;
/**
* Constructeur de la classe BakeCLI
*
* @param args Les arguments passés en ligne de commande
* @return void
* @see Main
*/
public BakeCLI(String[] args){
debug = false;
targets = new ArrayList<>();
parseArgs(args);
}
/**
* Permet de parcourir les arguments passés en ligne de commande, d'activer le mode debug et de récupérer les autres arguments
* @param args
* @return void
*/
private void parseArgs(String[] args){
for (String arg : args){
if (arg.equals("-d")){
debug = true;
} else {
targets.add(arg);
}
}
}
/**
* Permet de savoir si le mode debug est activé ou non.
* @return true si le mode debug est activé, false sinon
*/
public static boolean isDebug(){ return debug; }
/**
* Permet de récupérer les arguments autres que "-d" passés en ligne de commande
* @return
*/
public static List<String> getTargets(){ return targets; }
}