CorsConfigBuilder Class — netty Architecture
Architecture documentation for the CorsConfigBuilder class in CorsConfigBuilder.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD b18a7553_8e93_1213_6e76_c793a03529c2["CorsConfigBuilder"] 69092f29_9439_7192_86f5_0213365ca797["CorsConfigBuilder.java"] b18a7553_8e93_1213_6e76_c793a03529c2 -->|defined in| 69092f29_9439_7192_86f5_0213365ca797 0ebf3029_8309_5e65_d30b_fc5def115461["CorsConfigBuilder()"] b18a7553_8e93_1213_6e76_c793a03529c2 -->|method| 0ebf3029_8309_5e65_d30b_fc5def115461 d9452a70_7818_c51e_7cc0_e9a918d7c468["CorsConfig()"] b18a7553_8e93_1213_6e76_c793a03529c2 -->|method| d9452a70_7818_c51e_7cc0_e9a918d7c468
Relationship Graph
Source Code
codec-http/src/main/java/io/netty/handler/codec/http/cors/CorsConfigBuilder.java lines 36–420
public final class CorsConfigBuilder {
/**
* Creates a Builder instance with it's origin set to '*'.
*
* @return Builder to support method chaining.
*/
public static CorsConfigBuilder forAnyOrigin() {
return new CorsConfigBuilder();
}
/**
* Creates a {@link CorsConfigBuilder} instance with the specified origin.
*
* @return {@link CorsConfigBuilder} to support method chaining.
*/
public static CorsConfigBuilder forOrigin(final String origin) {
if ("*".equals(origin)) {
return new CorsConfigBuilder();
}
return new CorsConfigBuilder(origin);
}
/**
* Creates a {@link CorsConfigBuilder} instance with the specified origins.
*
* @return {@link CorsConfigBuilder} to support method chaining.
*/
public static CorsConfigBuilder forOrigins(final String... origins) {
return new CorsConfigBuilder(origins);
}
final Set<String> origins;
final boolean anyOrigin;
boolean allowNullOrigin;
boolean enabled = true;
boolean allowCredentials;
final Set<String> exposeHeaders = new HashSet<String>();
long maxAge;
final Set<HttpMethod> requestMethods = new HashSet<HttpMethod>();
final Set<String> requestHeaders = new HashSet<String>();
final Map<CharSequence, Callable<?>> preflightHeaders = new HashMap<CharSequence, Callable<?>>();
private boolean noPreflightHeaders;
boolean shortCircuit;
boolean allowPrivateNetwork;
/**
* Creates a new Builder instance with the origin passed in.
*
* @param origins the origin to be used for this builder.
*/
CorsConfigBuilder(final String... origins) {
this.origins = new LinkedHashSet<String>(Arrays.asList(origins));
anyOrigin = false;
}
/**
* Creates a new Builder instance allowing any origin, "*" which is the
* wildcard origin.
*
*/
CorsConfigBuilder() {
anyOrigin = true;
origins = Collections.emptySet();
}
/**
* Web browsers may set the 'Origin' request header to 'null' if a resource is loaded
* from the local file system. Calling this method will enable a successful CORS response
* with a {@code "null"} value for the CORS response header 'Access-Control-Allow-Origin'.
*
* @return {@link CorsConfigBuilder} to support method chaining.
*/
public CorsConfigBuilder allowNullOrigin() {
allowNullOrigin = true;
return this;
}
/**
* Disables CORS support.
*
Source
Frequently Asked Questions
What is the CorsConfigBuilder class?
CorsConfigBuilder is a class in the netty codebase, defined in codec-http/src/main/java/io/netty/handler/codec/http/cors/CorsConfigBuilder.java.
Where is CorsConfigBuilder defined?
CorsConfigBuilder is defined in codec-http/src/main/java/io/netty/handler/codec/http/cors/CorsConfigBuilder.java at line 36.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free