writer.beginObject();
writer.prop("key", param.key());
writer.prop("description", param.description());
+ writer.prop("since", param.since());
writer.prop("required", param.isRequired());
writer.prop("defaultValue", param.defaultValue());
writer.prop("exampleValue", param.exampleValue());
create
.createParam("severity")
.setDescription("Severity")
+ .setSince("4.4")
.setDeprecatedSince("5.2")
.setRequired(false)
.setPossibleValues("BLOCKER", "INFO")
"required": false,
"defaultValue": "BLOCKER",
"exampleValue": "INFO",
+ "since":"4.4",
"deprecatedSince": "5.2",
"possibleValues": ["BLOCKER", "INFO"]
}
class NewParam {
private String key;
+ private String since;
private String deprecatedSince;
private String deprecatedKey;
private String description;
this.key = key;
}
+ public NewParam setSince(@Nullable String since) {
+ this.since = since;
+ return this;
+ }
+
public NewParam setDeprecatedSince(@Nullable String deprecatedSince) {
this.deprecatedSince = deprecatedSince;
return this;
public static final String SELECTED = "selected";
private final String key;
+ private final String since;
private final String deprecatedSince;
private final String deprecatedKey;
private final String description;
protected Param(Action action, NewParam newParam) {
this.key = newParam.key;
+ this.since = newParam.since;
this.deprecatedSince = newParam.deprecatedSince;
this.deprecatedKey = newParam.deprecatedKey;
this.description = newParam.description;
return key;
}
+ /**
+ * @since 5.3
+ */
+ @CheckForNull
+ public String since() {
+ return since;
+ }
+
/**
* @since 5.3
*/
newAction
.createParam("severity")
.setDefaultValue("MAJOR")
+ .setSince("4.4")
.setDeprecatedSince("5.3")
.setDeprecatedKey("old-severity")
.setPossibleValues("INFO", "MAJOR", "BLOCKER");
assertThat(severityParam.key()).isEqualTo("severity");
assertThat(severityParam.description()).isNull();
assertThat(severityParam.deprecatedSince()).isEqualTo("5.3");
+ assertThat(severityParam.since()).isEqualTo("4.4");
assertThat(severityParam.deprecatedKey()).isEqualTo("old-severity");
assertThat(severityParam.defaultValue()).isEqualTo("MAJOR");
assertThat(severityParam.possibleValues()).containsOnly("INFO", "MAJOR", "BLOCKER");