package art.servers.signalsboardserver.configuration; import art.library.interop.serialization.Serialization; import art.library.model.devices.signalsboard.information.SignalsInformation_BOX; import art.library.model.devices.signalsboard.information.SignalsInformation_SNMP; import art.servers.Shared; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import java.io.File; import java.util.HashMap; @JsonPropertyOrder ({ "Manufacturers", }) public class ConfigurationDetail { @JsonProperty("Manufacturers") public HashMap manufacturers = new HashMap(); @JsonIgnore public void initialise() { File root = new File("data\\art.servers.signalsboardserver\\types"); for (File child : root.listFiles()) { initialise(child); } } @JsonIgnore public void initialise(File file) { if (file.isDirectory() == true) { for (File child : file.listFiles()) { ConfigurationDetail_Manufacturer manufacturer = new ConfigurationDetail_Manufacturer(); manufacturers.put(file.getName(), manufacturer); initialise(child); } } else { if (file.getName().substring(file.getName().lastIndexOf(".") + 1).equalsIgnoreCase("json")) { String modelName = file.getName().replace(".json", ""); try { ConfigurationDetail_Manufacturer manufacturer = manufacturers.get(file.getParentFile().getName()); ConfigurationDetail_Model model = (ConfigurationDetail_Model)Serialization.deserialize(ConfigurationDetail_Model.class, file); manufacturer.models.put(modelName, model); Shared.println(Shared.getApplicationName(), file.getParentFile().getName() + ", " + modelName + " : " + Shared.getMessage("success")); } catch (Exception exception) { exception.printStackTrace(); Shared.printerr(Shared.getApplicationName(), file.getParentFile().getName() + ", " + modelName + " : " + Shared.getMessage("error")); } } } } }