package dev.micle.xptools.config; import dev.micle.xptools.util.EnumUtils; public class OperationItem { private boolean isTag; private String id; private OperationType type; private float min; private float max; private int priority; private boolean isLast; public OperationItem(String configString) { String[] splitString = configString.split(","); if (splitString.length == 6) { isTag = splitString[0].startsWith("#"); id = isTag ? splitString[0].substring(1) : splitString[0]; type = EnumUtils.valueOf(OperationType.class, splitString[1]); min = Float.parseFloat(splitString[2]); max = Float.parseFloat(splitString[3]); priority = Integer.parseInt(splitString[4]); isLast = Boolean.parseBoolean(splitString[5]); } } public String toString() { StringBuilder builder = new StringBuilder(); if (isTag) { builder.append("#"); } builder .append(id).append(",") .append(type.toString()).append(",") .append(min).append(",").append(max).append(",") .append(priority).append(",") .append(isLast); return builder.toString(); } public boolean isTag() { return isTag; } public String getId() { return id; } public OperationType getType() { return type; } public float getMin() { return min; } public float getMax() { return max; } public float getPriority() { return priority; } public boolean isLast() { return isLast; } }