in src/main/java/org/apache/sling/distribution/impl/CompositeDistributionResponse.java [49:80]
public CompositeDistributionResponse(List<DistributionResponse> distributionResponses, int packagesCount, long packagseSize, long exportTime) {
super(DistributionRequestState.DISTRIBUTED, null);
this.packagesCount = packagesCount;
this.packagseSize = packagseSize;
this.queuesCount = distributionResponses.size();
this.exportTime = exportTime;
if (distributionResponses.isEmpty()) {
state = DistributionRequestState.DROPPED;
this.info = DistributionResponseInfo.NONE;
} else {
state = DistributionRequestState.DISTRIBUTED;
StringBuilder messageBuilder = new StringBuilder("[");
for (DistributionResponse response : distributionResponses) {
state = aggregatedState(state, response.getState());
messageBuilder.append(response.getMessage()).append(", ");
}
int lof = messageBuilder.lastIndexOf(", ");
messageBuilder.replace(lof, lof + 2, "]");
message = messageBuilder.toString();
this.info = new DistributionResponseInfo() {
@NotNull @Override public String getId() {
List<String> ids = new ArrayList<>();
for (DistributionResponse response : distributionResponses) {
if (response.getDistributionInfo() != null) {
ids.add(response.getDistributionInfo().getId());
}
}
return ids.toString();
}
};
}
}