me.snowdrop.istio.api.networking.v1alpha3.HTTPRouteFluentImpl Maven / Gradle / Ivy
package me.snowdrop.istio.api.networking.v1alpha3;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.ArrayList;
import java.lang.String;
import com.fasterxml.jackson.databind.JsonDeserializer;
import io.fabric8.kubernetes.api.builder.Predicate;
import java.util.LinkedHashMap;
import io.fabric8.kubernetes.api.builder.BaseFluent;
import java.util.List;
import com.fasterxml.jackson.databind.SerializerProvider;
import java.lang.Boolean;
import java.lang.Override;
import me.snowdrop.istio.api.Duration;
import javax.validation.Valid;
import java.lang.Long;
import java.util.Collection;
import java.lang.Object;
import java.util.Map;
import me.snowdrop.istio.api.DurationBuilder;
import me.snowdrop.istio.api.DurationFluentImpl;
import io.fabric8.kubernetes.api.builder.Nested;
import com.fasterxml.jackson.databind.JsonSerializer;
import java.lang.Deprecated;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.core.JsonParser;
import java.lang.Integer;
public class HTTPRouteFluentImpl> extends io.fabric8.kubernetes.api.builder.BaseFluent implements HTTPRouteFluent{
private Map appendHeaders;
private Map appendRequestHeaders;
private Map appendResponseHeaders;
private CorsPolicyBuilder corsPolicy;
private HTTPFaultInjectionBuilder fault;
private HeadersBuilder headers;
private List match;
private DestinationBuilder mirror;
private HTTPRedirectBuilder redirect;
private List removeRequestHeaders;
private List removeResponseHeaders;
private HTTPRetryBuilder retries;
private HTTPRewriteBuilder rewrite;
private List route;
private DurationBuilder timeout;
private Boolean websocketUpgrade;
public HTTPRouteFluentImpl(){
}
public HTTPRouteFluentImpl(HTTPRoute instance){
this.withAppendHeaders(instance.getAppendHeaders());
this.withAppendRequestHeaders(instance.getAppendRequestHeaders());
this.withAppendResponseHeaders(instance.getAppendResponseHeaders());
this.withCorsPolicy(instance.getCorsPolicy());
this.withFault(instance.getFault());
this.withHeaders(instance.getHeaders());
this.withMatch(instance.getMatch());
this.withMirror(instance.getMirror());
this.withRedirect(instance.getRedirect());
this.withRemoveRequestHeaders(instance.getRemoveRequestHeaders());
this.withRemoveResponseHeaders(instance.getRemoveResponseHeaders());
this.withRetries(instance.getRetries());
this.withRewrite(instance.getRewrite());
this.withRoute(instance.getRoute());
this.withTimeout(instance.getTimeout());
this.withWebsocketUpgrade(instance.getWebsocketUpgrade());
}
public A addToAppendHeaders(String key,String value){
if(this.appendHeaders == null && key != null && value != null) { this.appendHeaders = new LinkedHashMap(); }
if(key != null && value != null) {this.appendHeaders.put(key, value);} return (A)this;
}
public A addToAppendHeaders(Map map){
if(this.appendHeaders == null && map != null) { this.appendHeaders = new LinkedHashMap(); }
if(map != null) { this.appendHeaders.putAll(map);} return (A)this;
}
public A removeFromAppendHeaders(String key){
if(this.appendHeaders == null) { return (A) this; }
if(key != null && this.appendHeaders != null) {this.appendHeaders.remove(key);} return (A)this;
}
public A removeFromAppendHeaders(Map map){
if(this.appendHeaders == null) { return (A) this; }
if(map != null) { for(Object key : map.keySet()) {if (this.appendHeaders != null){this.appendHeaders.remove(key);}}} return (A)this;
}
public Map getAppendHeaders(){
return this.appendHeaders;
}
public A withAppendHeaders(Map appendHeaders){
if (appendHeaders == null) { this.appendHeaders = null;} else {this.appendHeaders = new LinkedHashMap(appendHeaders);} return (A) this;
}
public Boolean hasAppendHeaders(){
return this.appendHeaders != null;
}
public A addToAppendRequestHeaders(String key,String value){
if(this.appendRequestHeaders == null && key != null && value != null) { this.appendRequestHeaders = new LinkedHashMap(); }
if(key != null && value != null) {this.appendRequestHeaders.put(key, value);} return (A)this;
}
public A addToAppendRequestHeaders(Map map){
if(this.appendRequestHeaders == null && map != null) { this.appendRequestHeaders = new LinkedHashMap(); }
if(map != null) { this.appendRequestHeaders.putAll(map);} return (A)this;
}
public A removeFromAppendRequestHeaders(String key){
if(this.appendRequestHeaders == null) { return (A) this; }
if(key != null && this.appendRequestHeaders != null) {this.appendRequestHeaders.remove(key);} return (A)this;
}
public A removeFromAppendRequestHeaders(Map map){
if(this.appendRequestHeaders == null) { return (A) this; }
if(map != null) { for(Object key : map.keySet()) {if (this.appendRequestHeaders != null){this.appendRequestHeaders.remove(key);}}} return (A)this;
}
public Map getAppendRequestHeaders(){
return this.appendRequestHeaders;
}
public A withAppendRequestHeaders(Map appendRequestHeaders){
if (appendRequestHeaders == null) { this.appendRequestHeaders = null;} else {this.appendRequestHeaders = new LinkedHashMap(appendRequestHeaders);} return (A) this;
}
public Boolean hasAppendRequestHeaders(){
return this.appendRequestHeaders != null;
}
public A addToAppendResponseHeaders(String key,String value){
if(this.appendResponseHeaders == null && key != null && value != null) { this.appendResponseHeaders = new LinkedHashMap(); }
if(key != null && value != null) {this.appendResponseHeaders.put(key, value);} return (A)this;
}
public A addToAppendResponseHeaders(Map map){
if(this.appendResponseHeaders == null && map != null) { this.appendResponseHeaders = new LinkedHashMap(); }
if(map != null) { this.appendResponseHeaders.putAll(map);} return (A)this;
}
public A removeFromAppendResponseHeaders(String key){
if(this.appendResponseHeaders == null) { return (A) this; }
if(key != null && this.appendResponseHeaders != null) {this.appendResponseHeaders.remove(key);} return (A)this;
}
public A removeFromAppendResponseHeaders(Map map){
if(this.appendResponseHeaders == null) { return (A) this; }
if(map != null) { for(Object key : map.keySet()) {if (this.appendResponseHeaders != null){this.appendResponseHeaders.remove(key);}}} return (A)this;
}
public Map getAppendResponseHeaders(){
return this.appendResponseHeaders;
}
public A withAppendResponseHeaders(Map appendResponseHeaders){
if (appendResponseHeaders == null) { this.appendResponseHeaders = null;} else {this.appendResponseHeaders = new LinkedHashMap(appendResponseHeaders);} return (A) this;
}
public Boolean hasAppendResponseHeaders(){
return this.appendResponseHeaders != null;
}
/**
* This method has been deprecated, please use method buildCorsPolicy instead.
* @return The buildable object.
*/
@Deprecated public CorsPolicy getCorsPolicy(){
return this.corsPolicy!=null?this.corsPolicy.build():null;
}
public CorsPolicy buildCorsPolicy(){
return this.corsPolicy!=null?this.corsPolicy.build():null;
}
public A withCorsPolicy(CorsPolicy corsPolicy){
_visitables.remove(this.corsPolicy);
if (corsPolicy!=null){ this.corsPolicy= new CorsPolicyBuilder(corsPolicy); _visitables.add(this.corsPolicy);} return (A) this;
}
public Boolean hasCorsPolicy(){
return this.corsPolicy != null;
}
public HTTPRouteFluent.CorsPolicyNested withNewCorsPolicy(){
return new CorsPolicyNestedImpl();
}
public HTTPRouteFluent.CorsPolicyNested withNewCorsPolicyLike(CorsPolicy item){
return new CorsPolicyNestedImpl(item);
}
public HTTPRouteFluent.CorsPolicyNested editCorsPolicy(){
return withNewCorsPolicyLike(getCorsPolicy());
}
public HTTPRouteFluent.CorsPolicyNested editOrNewCorsPolicy(){
return withNewCorsPolicyLike(getCorsPolicy() != null ? getCorsPolicy(): new CorsPolicyBuilder().build());
}
public HTTPRouteFluent.CorsPolicyNested editOrNewCorsPolicyLike(CorsPolicy item){
return withNewCorsPolicyLike(getCorsPolicy() != null ? getCorsPolicy(): item);
}
/**
* This method has been deprecated, please use method buildFault instead.
* @return The buildable object.
*/
@Deprecated public HTTPFaultInjection getFault(){
return this.fault!=null?this.fault.build():null;
}
public HTTPFaultInjection buildFault(){
return this.fault!=null?this.fault.build():null;
}
public A withFault(HTTPFaultInjection fault){
_visitables.remove(this.fault);
if (fault!=null){ this.fault= new HTTPFaultInjectionBuilder(fault); _visitables.add(this.fault);} return (A) this;
}
public Boolean hasFault(){
return this.fault != null;
}
public HTTPRouteFluent.FaultNested withNewFault(){
return new FaultNestedImpl();
}
public HTTPRouteFluent.FaultNested withNewFaultLike(HTTPFaultInjection item){
return new FaultNestedImpl(item);
}
public HTTPRouteFluent.FaultNested editFault(){
return withNewFaultLike(getFault());
}
public HTTPRouteFluent.FaultNested editOrNewFault(){
return withNewFaultLike(getFault() != null ? getFault(): new HTTPFaultInjectionBuilder().build());
}
public HTTPRouteFluent.FaultNested editOrNewFaultLike(HTTPFaultInjection item){
return withNewFaultLike(getFault() != null ? getFault(): item);
}
/**
* This method has been deprecated, please use method buildHeaders instead.
* @return The buildable object.
*/
@Deprecated public Headers getHeaders(){
return this.headers!=null?this.headers.build():null;
}
public Headers buildHeaders(){
return this.headers!=null?this.headers.build():null;
}
public A withHeaders(Headers headers){
_visitables.remove(this.headers);
if (headers!=null){ this.headers= new HeadersBuilder(headers); _visitables.add(this.headers);} return (A) this;
}
public Boolean hasHeaders(){
return this.headers != null;
}
public HTTPRouteFluent.HeadersNested withNewHeaders(){
return new HeadersNestedImpl();
}
public HTTPRouteFluent.HeadersNested withNewHeadersLike(Headers item){
return new HeadersNestedImpl(item);
}
public HTTPRouteFluent.HeadersNested editHeaders(){
return withNewHeadersLike(getHeaders());
}
public HTTPRouteFluent.HeadersNested editOrNewHeaders(){
return withNewHeadersLike(getHeaders() != null ? getHeaders(): new HeadersBuilder().build());
}
public HTTPRouteFluent.HeadersNested editOrNewHeadersLike(Headers item){
return withNewHeadersLike(getHeaders() != null ? getHeaders(): item);
}
public A addToMatch(int index,HTTPMatchRequest item){
if (this.match == null) {this.match = new ArrayList();}
HTTPMatchRequestBuilder builder = new HTTPMatchRequestBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.match.add(index >= 0 ? index : match.size(), builder); return (A)this;
}
public A setToMatch(int index,HTTPMatchRequest item){
if (this.match == null) {this.match = new ArrayList();}
HTTPMatchRequestBuilder builder = new HTTPMatchRequestBuilder(item);
if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
if (index < 0 || index >= match.size()) { match.add(builder); } else { match.set(index, builder);}
return (A)this;
}
public A addToMatch(HTTPMatchRequest... items){
if (this.match == null) {this.match = new ArrayList();}
for (HTTPMatchRequest item : items) {HTTPMatchRequestBuilder builder = new HTTPMatchRequestBuilder(item);_visitables.add(builder);this.match.add(builder);} return (A)this;
}
public A addAllToMatch(Collection items){
if (this.match == null) {this.match = new ArrayList();}
for (HTTPMatchRequest item : items) {HTTPMatchRequestBuilder builder = new HTTPMatchRequestBuilder(item);_visitables.add(builder);this.match.add(builder);} return (A)this;
}
public A removeFromMatch(HTTPMatchRequest... items){
for (HTTPMatchRequest item : items) {HTTPMatchRequestBuilder builder = new HTTPMatchRequestBuilder(item);_visitables.remove(builder);if (this.match != null) {this.match.remove(builder);}} return (A)this;
}
public A removeAllFromMatch(Collection items){
for (HTTPMatchRequest item : items) {HTTPMatchRequestBuilder builder = new HTTPMatchRequestBuilder(item);_visitables.remove(builder);if (this.match != null) {this.match.remove(builder);}} return (A)this;
}
/**
* This method has been deprecated, please use method buildMatch instead.
* @return The buildable object.
*/
@Deprecated public List getMatch(){
return build(match);
}
public List buildMatch(){
return build(match);
}
public HTTPMatchRequest buildMatch(int index){
return this.match.get(index).build();
}
public HTTPMatchRequest buildFirstMatch(){
return this.match.get(0).build();
}
public HTTPMatchRequest buildLastMatch(){
return this.match.get(match.size() - 1).build();
}
public HTTPMatchRequest buildMatchingMatch(io.fabric8.kubernetes.api.builder.Predicate predicate){
for (HTTPMatchRequestBuilder item: match) { if(predicate.apply(item)){return item.build();} } return null;
}
public A withMatch(List match){
if (this.match != null) { _visitables.removeAll(this.match);}
if (match != null) {this.match = new ArrayList(); for (HTTPMatchRequest item : match){this.addToMatch(item);}} else { this.match = null;} return (A) this;
}
public A withMatch(HTTPMatchRequest... match){
if (this.match != null) {this.match.clear();}
if (match != null) {for (HTTPMatchRequest item :match){ this.addToMatch(item);}} return (A) this;
}
public Boolean hasMatch(){
return match != null && !match.isEmpty();
}
public HTTPRouteFluent.MatchNested addNewMatch(){
return new MatchNestedImpl();
}
public HTTPRouteFluent.MatchNested addNewMatchLike(HTTPMatchRequest item){
return new MatchNestedImpl(-1, item);
}
public HTTPRouteFluent.MatchNested setNewMatchLike(int index,HTTPMatchRequest item){
return new MatchNestedImpl(index, item);
}
public HTTPRouteFluent.MatchNested editMatch(int index){
if (match.size() <= index) throw new RuntimeException("Can't edit match. Index exceeds size.");
return setNewMatchLike(index, buildMatch(index));
}
public HTTPRouteFluent.MatchNested editFirstMatch(){
if (match.size() == 0) throw new RuntimeException("Can't edit first match. The list is empty.");
return setNewMatchLike(0, buildMatch(0));
}
public HTTPRouteFluent.MatchNested editLastMatch(){
int index = match.size() - 1;
if (index < 0) throw new RuntimeException("Can't edit last match. The list is empty.");
return setNewMatchLike(index, buildMatch(index));
}
public HTTPRouteFluent.MatchNested editMatchingMatch(io.fabric8.kubernetes.api.builder.Predicate predicate){
int index = -1;
for (int i=0;i withNewMirror(){
return new MirrorNestedImpl();
}
public HTTPRouteFluent.MirrorNested withNewMirrorLike(Destination item){
return new MirrorNestedImpl(item);
}
public HTTPRouteFluent.MirrorNested editMirror(){
return withNewMirrorLike(getMirror());
}
public HTTPRouteFluent.MirrorNested editOrNewMirror(){
return withNewMirrorLike(getMirror() != null ? getMirror(): new DestinationBuilder().build());
}
public HTTPRouteFluent.MirrorNested editOrNewMirrorLike(Destination item){
return withNewMirrorLike(getMirror() != null ? getMirror(): item);
}
/**
* This method has been deprecated, please use method buildRedirect instead.
* @return The buildable object.
*/
@Deprecated public HTTPRedirect getRedirect(){
return this.redirect!=null?this.redirect.build():null;
}
public HTTPRedirect buildRedirect(){
return this.redirect!=null?this.redirect.build():null;
}
public A withRedirect(HTTPRedirect redirect){
_visitables.remove(this.redirect);
if (redirect!=null){ this.redirect= new HTTPRedirectBuilder(redirect); _visitables.add(this.redirect);} return (A) this;
}
public Boolean hasRedirect(){
return this.redirect != null;
}
public A withNewRedirect(String authority,String uri){
return (A)withRedirect(new HTTPRedirect(authority, uri));
}
public HTTPRouteFluent.RedirectNested withNewRedirect(){
return new RedirectNestedImpl();
}
public HTTPRouteFluent.RedirectNested withNewRedirectLike(HTTPRedirect item){
return new RedirectNestedImpl(item);
}
public HTTPRouteFluent.RedirectNested editRedirect(){
return withNewRedirectLike(getRedirect());
}
public HTTPRouteFluent.RedirectNested editOrNewRedirect(){
return withNewRedirectLike(getRedirect() != null ? getRedirect(): new HTTPRedirectBuilder().build());
}
public HTTPRouteFluent.RedirectNested editOrNewRedirectLike(HTTPRedirect item){
return withNewRedirectLike(getRedirect() != null ? getRedirect(): item);
}
public A addToRemoveRequestHeaders(int index,String item){
if (this.removeRequestHeaders == null) {this.removeRequestHeaders = new ArrayList();}
this.removeRequestHeaders.add(index, item);
return (A)this;
}
public A setToRemoveRequestHeaders(int index,String item){
if (this.removeRequestHeaders == null) {this.removeRequestHeaders = new ArrayList();}
this.removeRequestHeaders.set(index, item); return (A)this;
}
public A addToRemoveRequestHeaders(String... items){
if (this.removeRequestHeaders == null) {this.removeRequestHeaders = new ArrayList();}
for (String item : items) {this.removeRequestHeaders.add(item);} return (A)this;
}
public A addAllToRemoveRequestHeaders(Collection items){
if (this.removeRequestHeaders == null) {this.removeRequestHeaders = new ArrayList();}
for (String item : items) {this.removeRequestHeaders.add(item);} return (A)this;
}
public A removeFromRemoveRequestHeaders(String... items){
for (String item : items) {if (this.removeRequestHeaders!= null){ this.removeRequestHeaders.remove(item);}} return (A)this;
}
public A removeAllFromRemoveRequestHeaders(Collection items){
for (String item : items) {if (this.removeRequestHeaders!= null){ this.removeRequestHeaders.remove(item);}} return (A)this;
}
public List getRemoveRequestHeaders(){
return this.removeRequestHeaders;
}
public String getRemoveRequestHeader(int index){
return this.removeRequestHeaders.get(index);
}
public String getFirstRemoveRequestHeader(){
return this.removeRequestHeaders.get(0);
}
public String getLastRemoveRequestHeader(){
return this.removeRequestHeaders.get(removeRequestHeaders.size() - 1);
}
public String getMatchingRemoveRequestHeader(io.fabric8.kubernetes.api.builder.Predicate predicate){
for (String item: removeRequestHeaders) { if(predicate.apply(item)){return item;} } return null;
}
public A withRemoveRequestHeaders(List removeRequestHeaders){
if (this.removeRequestHeaders != null) { _visitables.removeAll(this.removeRequestHeaders);}
if (removeRequestHeaders != null) {this.removeRequestHeaders = new ArrayList(); for (String item : removeRequestHeaders){this.addToRemoveRequestHeaders(item);}} else { this.removeRequestHeaders = null;} return (A) this;
}
public A withRemoveRequestHeaders(String... removeRequestHeaders){
if (this.removeRequestHeaders != null) {this.removeRequestHeaders.clear();}
if (removeRequestHeaders != null) {for (String item :removeRequestHeaders){ this.addToRemoveRequestHeaders(item);}} return (A) this;
}
public Boolean hasRemoveRequestHeaders(){
return removeRequestHeaders != null && !removeRequestHeaders.isEmpty();
}
public A addToRemoveResponseHeaders(int index,String item){
if (this.removeResponseHeaders == null) {this.removeResponseHeaders = new ArrayList();}
this.removeResponseHeaders.add(index, item);
return (A)this;
}
public A setToRemoveResponseHeaders(int index,String item){
if (this.removeResponseHeaders == null) {this.removeResponseHeaders = new ArrayList();}
this.removeResponseHeaders.set(index, item); return (A)this;
}
public A addToRemoveResponseHeaders(String... items){
if (this.removeResponseHeaders == null) {this.removeResponseHeaders = new ArrayList();}
for (String item : items) {this.removeResponseHeaders.add(item);} return (A)this;
}
public A addAllToRemoveResponseHeaders(Collection items){
if (this.removeResponseHeaders == null) {this.removeResponseHeaders = new ArrayList();}
for (String item : items) {this.removeResponseHeaders.add(item);} return (A)this;
}
public A removeFromRemoveResponseHeaders(String... items){
for (String item : items) {if (this.removeResponseHeaders!= null){ this.removeResponseHeaders.remove(item);}} return (A)this;
}
public A removeAllFromRemoveResponseHeaders(Collection items){
for (String item : items) {if (this.removeResponseHeaders!= null){ this.removeResponseHeaders.remove(item);}} return (A)this;
}
public List getRemoveResponseHeaders(){
return this.removeResponseHeaders;
}
public String getRemoveResponseHeader(int index){
return this.removeResponseHeaders.get(index);
}
public String getFirstRemoveResponseHeader(){
return this.removeResponseHeaders.get(0);
}
public String getLastRemoveResponseHeader(){
return this.removeResponseHeaders.get(removeResponseHeaders.size() - 1);
}
public String getMatchingRemoveResponseHeader(io.fabric8.kubernetes.api.builder.Predicate predicate){
for (String item: removeResponseHeaders) { if(predicate.apply(item)){return item;} } return null;
}
public A withRemoveResponseHeaders(List removeResponseHeaders){
if (this.removeResponseHeaders != null) { _visitables.removeAll(this.removeResponseHeaders);}
if (removeResponseHeaders != null) {this.removeResponseHeaders = new ArrayList(); for (String item : removeResponseHeaders){this.addToRemoveResponseHeaders(item);}} else { this.removeResponseHeaders = null;} return (A) this;
}
public A withRemoveResponseHeaders(String... removeResponseHeaders){
if (this.removeResponseHeaders != null) {this.removeResponseHeaders.clear();}
if (removeResponseHeaders != null) {for (String item :removeResponseHeaders){ this.addToRemoveResponseHeaders(item);}} return (A) this;
}
public Boolean hasRemoveResponseHeaders(){
return removeResponseHeaders != null && !removeResponseHeaders.isEmpty();
}
/**
* This method has been deprecated, please use method buildRetries instead.
* @return The buildable object.
*/
@Deprecated public HTTPRetry getRetries(){
return this.retries!=null?this.retries.build():null;
}
public HTTPRetry buildRetries(){
return this.retries!=null?this.retries.build():null;
}
public A withRetries(HTTPRetry retries){
_visitables.remove(this.retries);
if (retries!=null){ this.retries= new HTTPRetryBuilder(retries); _visitables.add(this.retries);} return (A) this;
}
public Boolean hasRetries(){
return this.retries != null;
}
public HTTPRouteFluent.RetriesNested withNewRetries(){
return new RetriesNestedImpl();
}
public HTTPRouteFluent.RetriesNested withNewRetriesLike(HTTPRetry item){
return new RetriesNestedImpl(item);
}
public HTTPRouteFluent.RetriesNested editRetries(){
return withNewRetriesLike(getRetries());
}
public HTTPRouteFluent.RetriesNested editOrNewRetries(){
return withNewRetriesLike(getRetries() != null ? getRetries(): new HTTPRetryBuilder().build());
}
public HTTPRouteFluent.RetriesNested editOrNewRetriesLike(HTTPRetry item){
return withNewRetriesLike(getRetries() != null ? getRetries(): item);
}
/**
* This method has been deprecated, please use method buildRewrite instead.
* @return The buildable object.
*/
@Deprecated public HTTPRewrite getRewrite(){
return this.rewrite!=null?this.rewrite.build():null;
}
public HTTPRewrite buildRewrite(){
return this.rewrite!=null?this.rewrite.build():null;
}
public A withRewrite(HTTPRewrite rewrite){
_visitables.remove(this.rewrite);
if (rewrite!=null){ this.rewrite= new HTTPRewriteBuilder(rewrite); _visitables.add(this.rewrite);} return (A) this;
}
public Boolean hasRewrite(){
return this.rewrite != null;
}
public A withNewRewrite(String authority,String uri){
return (A)withRewrite(new HTTPRewrite(authority, uri));
}
public HTTPRouteFluent.RewriteNested withNewRewrite(){
return new RewriteNestedImpl();
}
public HTTPRouteFluent.RewriteNested withNewRewriteLike(HTTPRewrite item){
return new RewriteNestedImpl(item);
}
public HTTPRouteFluent.RewriteNested editRewrite(){
return withNewRewriteLike(getRewrite());
}
public HTTPRouteFluent.RewriteNested editOrNewRewrite(){
return withNewRewriteLike(getRewrite() != null ? getRewrite(): new HTTPRewriteBuilder().build());
}
public HTTPRouteFluent.RewriteNested editOrNewRewriteLike(HTTPRewrite item){
return withNewRewriteLike(getRewrite() != null ? getRewrite(): item);
}
public A addToRoute(int index,HTTPRouteDestination item){
if (this.route == null) {this.route = new ArrayList();}
HTTPRouteDestinationBuilder builder = new HTTPRouteDestinationBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.route.add(index >= 0 ? index : route.size(), builder); return (A)this;
}
public A setToRoute(int index,HTTPRouteDestination item){
if (this.route == null) {this.route = new ArrayList();}
HTTPRouteDestinationBuilder builder = new HTTPRouteDestinationBuilder(item);
if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);}
if (index < 0 || index >= route.size()) { route.add(builder); } else { route.set(index, builder);}
return (A)this;
}
public A addToRoute(HTTPRouteDestination... items){
if (this.route == null) {this.route = new ArrayList();}
for (HTTPRouteDestination item : items) {HTTPRouteDestinationBuilder builder = new HTTPRouteDestinationBuilder(item);_visitables.add(builder);this.route.add(builder);} return (A)this;
}
public A addAllToRoute(Collection items){
if (this.route == null) {this.route = new ArrayList();}
for (HTTPRouteDestination item : items) {HTTPRouteDestinationBuilder builder = new HTTPRouteDestinationBuilder(item);_visitables.add(builder);this.route.add(builder);} return (A)this;
}
public A removeFromRoute(HTTPRouteDestination... items){
for (HTTPRouteDestination item : items) {HTTPRouteDestinationBuilder builder = new HTTPRouteDestinationBuilder(item);_visitables.remove(builder);if (this.route != null) {this.route.remove(builder);}} return (A)this;
}
public A removeAllFromRoute(Collection items){
for (HTTPRouteDestination item : items) {HTTPRouteDestinationBuilder builder = new HTTPRouteDestinationBuilder(item);_visitables.remove(builder);if (this.route != null) {this.route.remove(builder);}} return (A)this;
}
/**
* This method has been deprecated, please use method buildRoute instead.
* @return The buildable object.
*/
@Deprecated public List getRoute(){
return build(route);
}
public List buildRoute(){
return build(route);
}
public HTTPRouteDestination buildRoute(int index){
return this.route.get(index).build();
}
public HTTPRouteDestination buildFirstRoute(){
return this.route.get(0).build();
}
public HTTPRouteDestination buildLastRoute(){
return this.route.get(route.size() - 1).build();
}
public HTTPRouteDestination buildMatchingRoute(io.fabric8.kubernetes.api.builder.Predicate predicate){
for (HTTPRouteDestinationBuilder item: route) { if(predicate.apply(item)){return item.build();} } return null;
}
public A withRoute(List route){
if (this.route != null) { _visitables.removeAll(this.route);}
if (route != null) {this.route = new ArrayList(); for (HTTPRouteDestination item : route){this.addToRoute(item);}} else { this.route = null;} return (A) this;
}
public A withRoute(HTTPRouteDestination... route){
if (this.route != null) {this.route.clear();}
if (route != null) {for (HTTPRouteDestination item :route){ this.addToRoute(item);}} return (A) this;
}
public Boolean hasRoute(){
return route != null && !route.isEmpty();
}
public HTTPRouteFluent.RouteNested addNewRoute(){
return new RouteNestedImpl();
}
public HTTPRouteFluent.RouteNested addNewRouteLike(HTTPRouteDestination item){
return new RouteNestedImpl(-1, item);
}
public HTTPRouteFluent.RouteNested setNewRouteLike(int index,HTTPRouteDestination item){
return new RouteNestedImpl(index, item);
}
public HTTPRouteFluent.RouteNested editRoute(int index){
if (route.size() <= index) throw new RuntimeException("Can't edit route. Index exceeds size.");
return setNewRouteLike(index, buildRoute(index));
}
public HTTPRouteFluent.RouteNested editFirstRoute(){
if (route.size() == 0) throw new RuntimeException("Can't edit first route. The list is empty.");
return setNewRouteLike(0, buildRoute(0));
}
public HTTPRouteFluent.RouteNested editLastRoute(){
int index = route.size() - 1;
if (index < 0) throw new RuntimeException("Can't edit last route. The list is empty.");
return setNewRouteLike(index, buildRoute(index));
}
public HTTPRouteFluent.RouteNested editMatchingRoute(io.fabric8.kubernetes.api.builder.Predicate predicate){
int index = -1;
for (int i=0;i withNewTimeout(){
return new TimeoutNestedImpl();
}
public HTTPRouteFluent.TimeoutNested withNewTimeoutLike(Duration item){
return new TimeoutNestedImpl(item);
}
public HTTPRouteFluent.TimeoutNested editTimeout(){
return withNewTimeoutLike(getTimeout());
}
public HTTPRouteFluent.TimeoutNested editOrNewTimeout(){
return withNewTimeoutLike(getTimeout() != null ? getTimeout(): new DurationBuilder().build());
}
public HTTPRouteFluent.TimeoutNested editOrNewTimeoutLike(Duration item){
return withNewTimeoutLike(getTimeout() != null ? getTimeout(): item);
}
public Boolean isWebsocketUpgrade(){
return this.websocketUpgrade;
}
public A withWebsocketUpgrade(Boolean websocketUpgrade){
this.websocketUpgrade=websocketUpgrade; return (A) this;
}
public Boolean hasWebsocketUpgrade(){
return this.websocketUpgrade != null;
}
public A withNewWebsocketUpgrade(String arg1){
return (A)withWebsocketUpgrade(new Boolean(arg1));
}
public A withNewWebsocketUpgrade(boolean arg1){
return (A)withWebsocketUpgrade(new Boolean(arg1));
}
public boolean equals(Object o){
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
if (!super.equals(o)) return false;
HTTPRouteFluentImpl that = (HTTPRouteFluentImpl) o;
if (appendHeaders != null ? !appendHeaders.equals(that.appendHeaders) :that.appendHeaders != null) return false;
if (appendRequestHeaders != null ? !appendRequestHeaders.equals(that.appendRequestHeaders) :that.appendRequestHeaders != null) return false;
if (appendResponseHeaders != null ? !appendResponseHeaders.equals(that.appendResponseHeaders) :that.appendResponseHeaders != null) return false;
if (corsPolicy != null ? !corsPolicy.equals(that.corsPolicy) :that.corsPolicy != null) return false;
if (fault != null ? !fault.equals(that.fault) :that.fault != null) return false;
if (headers != null ? !headers.equals(that.headers) :that.headers != null) return false;
if (match != null ? !match.equals(that.match) :that.match != null) return false;
if (mirror != null ? !mirror.equals(that.mirror) :that.mirror != null) return false;
if (redirect != null ? !redirect.equals(that.redirect) :that.redirect != null) return false;
if (removeRequestHeaders != null ? !removeRequestHeaders.equals(that.removeRequestHeaders) :that.removeRequestHeaders != null) return false;
if (removeResponseHeaders != null ? !removeResponseHeaders.equals(that.removeResponseHeaders) :that.removeResponseHeaders != null) return false;
if (retries != null ? !retries.equals(that.retries) :that.retries != null) return false;
if (rewrite != null ? !rewrite.equals(that.rewrite) :that.rewrite != null) return false;
if (route != null ? !route.equals(that.route) :that.route != null) return false;
if (timeout != null ? !timeout.equals(that.timeout) :that.timeout != null) return false;
if (websocketUpgrade != null ? !websocketUpgrade.equals(that.websocketUpgrade) :that.websocketUpgrade != null) return false;
return true;
}
public class CorsPolicyNestedImpl extends CorsPolicyFluentImpl> implements HTTPRouteFluent.CorsPolicyNested,io.fabric8.kubernetes.api.builder.Nested{
private final CorsPolicyBuilder builder;
CorsPolicyNestedImpl(CorsPolicy item){
this.builder = new CorsPolicyBuilder(this, item);
}
CorsPolicyNestedImpl(){
this.builder = new CorsPolicyBuilder(this);
}
public N and(){
return (N) HTTPRouteFluentImpl.this.withCorsPolicy(builder.build());
}
public N endCorsPolicy(){
return and();
}
}
public class FaultNestedImpl extends HTTPFaultInjectionFluentImpl> implements HTTPRouteFluent.FaultNested,io.fabric8.kubernetes.api.builder.Nested{
private final HTTPFaultInjectionBuilder builder;
FaultNestedImpl(HTTPFaultInjection item){
this.builder = new HTTPFaultInjectionBuilder(this, item);
}
FaultNestedImpl(){
this.builder = new HTTPFaultInjectionBuilder(this);
}
public N and(){
return (N) HTTPRouteFluentImpl.this.withFault(builder.build());
}
public N endFault(){
return and();
}
}
public class HeadersNestedImpl extends HeadersFluentImpl> implements HTTPRouteFluent.HeadersNested,io.fabric8.kubernetes.api.builder.Nested{
private final HeadersBuilder builder;
HeadersNestedImpl(Headers item){
this.builder = new HeadersBuilder(this, item);
}
HeadersNestedImpl(){
this.builder = new HeadersBuilder(this);
}
public N and(){
return (N) HTTPRouteFluentImpl.this.withHeaders(builder.build());
}
public N endHeaders(){
return and();
}
}
public class MatchNestedImpl extends HTTPMatchRequestFluentImpl> implements HTTPRouteFluent.MatchNested,io.fabric8.kubernetes.api.builder.Nested{
private final HTTPMatchRequestBuilder builder;
private final int index;
MatchNestedImpl(int index,HTTPMatchRequest item){
this.index = index;
this.builder = new HTTPMatchRequestBuilder(this, item);
}
MatchNestedImpl(){
this.index = -1;
this.builder = new HTTPMatchRequestBuilder(this);
}
public N and(){
return (N) HTTPRouteFluentImpl.this.setToMatch(index, builder.build());
}
public N endMatch(){
return and();
}
}
public class MirrorNestedImpl extends DestinationFluentImpl> implements HTTPRouteFluent.MirrorNested,io.fabric8.kubernetes.api.builder.Nested{
private final DestinationBuilder builder;
MirrorNestedImpl(Destination item){
this.builder = new DestinationBuilder(this, item);
}
MirrorNestedImpl(){
this.builder = new DestinationBuilder(this);
}
public N and(){
return (N) HTTPRouteFluentImpl.this.withMirror(builder.build());
}
public N endMirror(){
return and();
}
}
public class RedirectNestedImpl extends HTTPRedirectFluentImpl> implements HTTPRouteFluent.RedirectNested,io.fabric8.kubernetes.api.builder.Nested{
private final HTTPRedirectBuilder builder;
RedirectNestedImpl(HTTPRedirect item){
this.builder = new HTTPRedirectBuilder(this, item);
}
RedirectNestedImpl(){
this.builder = new HTTPRedirectBuilder(this);
}
public N and(){
return (N) HTTPRouteFluentImpl.this.withRedirect(builder.build());
}
public N endRedirect(){
return and();
}
}
public class RetriesNestedImpl extends HTTPRetryFluentImpl> implements HTTPRouteFluent.RetriesNested,io.fabric8.kubernetes.api.builder.Nested{
private final HTTPRetryBuilder builder;
RetriesNestedImpl(HTTPRetry item){
this.builder = new HTTPRetryBuilder(this, item);
}
RetriesNestedImpl(){
this.builder = new HTTPRetryBuilder(this);
}
public N and(){
return (N) HTTPRouteFluentImpl.this.withRetries(builder.build());
}
public N endRetries(){
return and();
}
}
public class RewriteNestedImpl extends HTTPRewriteFluentImpl> implements HTTPRouteFluent.RewriteNested,io.fabric8.kubernetes.api.builder.Nested{
private final HTTPRewriteBuilder builder;
RewriteNestedImpl(HTTPRewrite item){
this.builder = new HTTPRewriteBuilder(this, item);
}
RewriteNestedImpl(){
this.builder = new HTTPRewriteBuilder(this);
}
public N and(){
return (N) HTTPRouteFluentImpl.this.withRewrite(builder.build());
}
public N endRewrite(){
return and();
}
}
public class RouteNestedImpl extends HTTPRouteDestinationFluentImpl> implements HTTPRouteFluent.RouteNested,io.fabric8.kubernetes.api.builder.Nested{
private final HTTPRouteDestinationBuilder builder;
private final int index;
RouteNestedImpl(int index,HTTPRouteDestination item){
this.index = index;
this.builder = new HTTPRouteDestinationBuilder(this, item);
}
RouteNestedImpl(){
this.index = -1;
this.builder = new HTTPRouteDestinationBuilder(this);
}
public N and(){
return (N) HTTPRouteFluentImpl.this.setToRoute(index, builder.build());
}
public N endRoute(){
return and();
}
}
public class TimeoutNestedImpl extends DurationFluentImpl> implements HTTPRouteFluent.TimeoutNested,io.fabric8.kubernetes.api.builder.Nested{
private final DurationBuilder builder;
TimeoutNestedImpl(Duration item){
this.builder = new DurationBuilder(this, item);
}
TimeoutNestedImpl(){
this.builder = new DurationBuilder(this);
}
public N and(){
return (N) HTTPRouteFluentImpl.this.withTimeout(builder.build());
}
public N endTimeout(){
return and();
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy