Код: Выделить всё
...
alarmThreshold: 0
alarmClearThreshold: 20
suppressionAlarms:
- source: suppSource
name: suppName
Код: Выделить всё
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
@Data
@EqualsAndHashCode(exclude = {"comment"})
@NoArgsConstructor
@AllArgsConstructor
@Builder(toBuilder = true)
public class AlarmRuleFile {
private String comment;
private BasicRuleSetModel alarmThreshold;
private BasicRuleSetModel alarmClearThreshold;
private SuppressionRuleSetModel suppressionAlarms;
...
}
import java.util.List;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class BasicRuleSetModel extends AbstractRuleSetModel {
public BasicRuleSetModel(String defaultValue) {
super(defaultValue);
}
public BasicRuleSetModel(List rules, String defaultValue) {
super(rules, defaultValue);
}
}
---
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class SuppressionRuleSetModel extends AbstractRuleSetModel {
public SuppressionRuleSetModel(List defaultValue) {
super(defaultValue);
}
public SuppressionRuleSetModel(List rules, List defaultValue) {
super(rules, defaultValue);
}
}
---
import java.util.List;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
@Data
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder(toBuilder = true)
public abstract class AbstractRuleSetModel
Подробнее здесь: https://stackoverflow.com/questions/797 ... ay-of-maps