in src/main/java/org/apache/sling/feature/extension/apiregions/api/ApiExport.java [229:274]
JsonValue deprecationToJSON() {
final Deprecation dep = this.getDeprecation();
if ( dep.getPackageInfo() != null ) {
if ( dep.getPackageInfo().getSince() == null && dep.getPackageInfo().getForRemoval() == null && dep.getPackageInfo().getMode() == null) {
return Json.createValue(dep.getPackageInfo().getMessage());
} else {
final JsonObjectBuilder depBuilder = Json.createObjectBuilder();
depBuilder.add(MSG_KEY, dep.getPackageInfo().getMessage());
if ( dep.getPackageInfo().getSince() != null ) {
depBuilder.add(SINCE_KEY, dep.getPackageInfo().getSince());
}
if ( dep.getPackageInfo().getForRemoval() != null ) {
depBuilder.add(FOR_REMOVAL_KEY, dep.getPackageInfo().getForRemoval());
}
if ( dep.getPackageInfo().getMode() != null ) {
depBuilder.add(MODE_KEY, dep.getPackageInfo().getMode().name());
}
return depBuilder.build();
}
} else if ( !dep.getMemberInfos().isEmpty() ) {
final JsonObjectBuilder depBuilder = Json.createObjectBuilder();
final JsonObjectBuilder membersBuilder = Json.createObjectBuilder();
for(final Map.Entry<String, DeprecationInfo> memberEntry : dep.getMemberInfos().entrySet()) {
if ( memberEntry.getValue().getSince() == null && memberEntry.getValue().getForRemoval() == null && memberEntry.getValue().getMode() == null ) {
membersBuilder.add(memberEntry.getKey(), memberEntry.getValue().getMessage());
} else {
final JsonObjectBuilder mBuilder = Json.createObjectBuilder();
mBuilder.add(MSG_KEY, memberEntry.getValue().getMessage());
if ( memberEntry.getValue().getSince() != null ) {
mBuilder.add(SINCE_KEY, memberEntry.getValue().getSince());
}
if ( memberEntry.getValue().getForRemoval() != null ) {
mBuilder.add(FOR_REMOVAL_KEY, memberEntry.getValue().getForRemoval());
}
if ( memberEntry.getValue().getMode() != null ) {
mBuilder.add(MODE_KEY, memberEntry.getValue().getMode().name());
}
membersBuilder.add(memberEntry.getKey(), mBuilder);
}
}
depBuilder.add(MEMBERS_KEY, membersBuilder);
return depBuilder.build();
}
return null;
}