package com.hubspot.blazar.base; import java.util.Map; import java.util.Set; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.Optional; public class InterProjectBuildStatus { private final long repoBuildId; private final Optional<Long> interProjectBuildId; private Optional<InterProjectBuild.State> state; private Map<Long, String> rootRepoBuilds; private final Map<Long, String> upstreamRepoBuilds; private final Map<Long, String> downstreamRepoBuilds; private final Map<Long, String> failedRepoBuilds; private Set<Module> cancelledDownstreamModules; @JsonCreator public InterProjectBuildStatus(@JsonProperty("repoBuildId") long repoBuildId, @JsonProperty("interProjectBuildId") Optional<Long> interProjectBuildId, @JsonProperty("state") Optional<InterProjectBuild.State> state, @JsonProperty("rootRepoBuilds") Map<Long, String> rootRepoBuilds, @JsonProperty("upstreamRepoBuilds") Map<Long, String> upstreamRepoBuilds, @JsonProperty("downstreamRepoBuilds") Map<Long, String> downstreamRepoBuilds, @JsonProperty("failedRepoBuilds") Map<Long, String> failedRepoBuilds, @JsonProperty("cancelledDownstreamModules") Set<Module> cancelledDownstreamModules) { this.repoBuildId = repoBuildId; this.interProjectBuildId = interProjectBuildId; this.state = state; this.rootRepoBuilds = rootRepoBuilds; this.upstreamRepoBuilds = upstreamRepoBuilds; this.downstreamRepoBuilds = downstreamRepoBuilds; this.failedRepoBuilds = failedRepoBuilds; this.cancelledDownstreamModules = cancelledDownstreamModules; } public long getRepoBuildId() { return repoBuildId; } public Optional<Long> getInterProjectBuildId() { return interProjectBuildId; } public Optional<InterProjectBuild.State> getState() { return state; } public Map<Long, String> getRootRepoBuilds() { return rootRepoBuilds; } public Map<Long, String> getUpstreamRepoBuilds() { return upstreamRepoBuilds; } public Map<Long, String> getDownstreamRepoBuilds() { return downstreamRepoBuilds; } public Map<Long, String> getFailedRepoBuilds() { return failedRepoBuilds; } public Set<Module> getCancelledDownstreamModules() { return cancelledDownstreamModules; } }