org.codingmatters.poom.ci.dependency.api.RepositoryJustNextDownstreamRepositoriesGetResponse Maven / Gradle / Ivy
package org.codingmatters.poom.ci.dependency.api;
import java.util.function.Consumer;
import org.codingmatters.poom.ci.dependency.api.optional.OptionalRepositoryJustNextDownstreamRepositoriesGetResponse;
import org.codingmatters.poom.ci.dependency.api.repositoryjustnextdownstreamrepositoriesgetresponse.Status200;
import org.codingmatters.poom.ci.dependency.api.repositoryjustnextdownstreamrepositoriesgetresponse.Status400;
import org.codingmatters.poom.ci.dependency.api.repositoryjustnextdownstreamrepositoriesgetresponse.Status404;
import org.codingmatters.poom.ci.dependency.api.repositoryjustnextdownstreamrepositoriesgetresponse.Status500;
public interface RepositoryJustNextDownstreamRepositoriesGetResponse {
static Builder builder() {
return new RepositoryJustNextDownstreamRepositoriesGetResponse.Builder();
}
static RepositoryJustNextDownstreamRepositoriesGetResponse.Builder from(RepositoryJustNextDownstreamRepositoriesGetResponse value) {
if(value != null) {
return new RepositoryJustNextDownstreamRepositoriesGetResponse.Builder()
.status200(value.status200())
.status400(value.status400())
.status404(value.status404())
.status500(value.status500())
;
}
else {
return null;
}
}
Status200 status200();
Status400 status400();
Status404 status404();
Status500 status500();
RepositoryJustNextDownstreamRepositoriesGetResponse withStatus200(Status200 value);
RepositoryJustNextDownstreamRepositoriesGetResponse withStatus400(Status400 value);
RepositoryJustNextDownstreamRepositoriesGetResponse withStatus404(Status404 value);
RepositoryJustNextDownstreamRepositoriesGetResponse withStatus500(Status500 value);
int hashCode();
RepositoryJustNextDownstreamRepositoriesGetResponse changed(RepositoryJustNextDownstreamRepositoriesGetResponse.Changer changer);
OptionalRepositoryJustNextDownstreamRepositoriesGetResponse opt();
class Builder {
private Status200 status200;
private Status400 status400;
private Status404 status404;
private Status500 status500;
public RepositoryJustNextDownstreamRepositoriesGetResponse build() {
return new RepositoryJustNextDownstreamRepositoriesGetResponseImpl(this.status200, this.status400, this.status404, this.status500);
}
public RepositoryJustNextDownstreamRepositoriesGetResponse.Builder status200(Status200 status200) {
this.status200 = status200;
return this;
}
public RepositoryJustNextDownstreamRepositoriesGetResponse.Builder status200(Consumer status200) {
Status200.Builder builder = Status200.builder();
status200.accept(builder);
return this.status200(builder.build());
}
public RepositoryJustNextDownstreamRepositoriesGetResponse.Builder status400(Status400 status400) {
this.status400 = status400;
return this;
}
public RepositoryJustNextDownstreamRepositoriesGetResponse.Builder status400(Consumer status400) {
Status400.Builder builder = Status400.builder();
status400.accept(builder);
return this.status400(builder.build());
}
public RepositoryJustNextDownstreamRepositoriesGetResponse.Builder status404(Status404 status404) {
this.status404 = status404;
return this;
}
public RepositoryJustNextDownstreamRepositoriesGetResponse.Builder status404(Consumer status404) {
Status404.Builder builder = Status404.builder();
status404.accept(builder);
return this.status404(builder.build());
}
public RepositoryJustNextDownstreamRepositoriesGetResponse.Builder status500(Status500 status500) {
this.status500 = status500;
return this;
}
public RepositoryJustNextDownstreamRepositoriesGetResponse.Builder status500(Consumer status500) {
Status500.Builder builder = Status500.builder();
status500.accept(builder);
return this.status500(builder.build());
}
}
interface Changer {
RepositoryJustNextDownstreamRepositoriesGetResponse.Builder configure(RepositoryJustNextDownstreamRepositoriesGetResponse.Builder builder);
}
}