- java.lang.Object
 - 
- io.helidon.webserver.cors.CrossOriginConfig
 
 
- 
public class CrossOriginConfig extends Object
Represents information about cross origin request sharing. Applications can obtain a new instance in three ways:- Use a 
Builderexplicitly.Obtain a suitable builder by:
- getting a new builder using the static 
builder()method, - initializing a builder from an existing 
CrossOriginConfiginstance using the staticbuilder(CrossOriginConfig)method, or - initializing a builder from a 
Confignode, invokingConfig.as(io.helidon.common.GenericType<T>)usingcorsConfig.as(CrossOriginConfig::builder).get() 
buildmethod to create the instance. - getting a new builder using the static 
 - Invoke the static 
create(Config)method, passing a config node containing the cross-origin information to be converted. This is a convenience method equivalent to creating a builder using the config node and then invokingbuild(). - Invoke the static 
create()method which returns aCrossOriginConfiginstance which implements the default CORS behavior. 
- See Also:
 MappedCrossOriginConfig
 - Use a 
 
- 
- 
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCrossOriginConfig.BuilderBuilder forCrossOriginConfig. 
- 
Field Summary
Fields Modifier and Type Field Description static StringACCESS_CONTROL_ALLOW_CREDENTIALSHeader Access-Control-Allow-Credentials.static StringACCESS_CONTROL_ALLOW_HEADERSHeader Access-Control-Allow-Headers.static StringACCESS_CONTROL_ALLOW_METHODSHeader Access-Control-Allow-Methods.static StringACCESS_CONTROL_ALLOW_ORIGINHeader Access-Control-Allow-Origin.static StringACCESS_CONTROL_EXPOSE_HEADERSHeader Access-Control-Expose-Headers.static StringACCESS_CONTROL_MAX_AGEHeader Access-Control-Max-Age.static StringACCESS_CONTROL_REQUEST_HEADERSHeader Access-Control-Request-Headers.static StringACCESS_CONTROL_REQUEST_METHODHeader Access-Control-Request-Method.static StringCORS_PATHS_CONFIG_KEYKey for the node within the CORS config that contains the list of path information.static longDEFAULT_AGEDefault cache expiration in seconds. 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanallowCredentials()String[]allowHeaders()String[]allowMethods()String[]allowOrigins()static CrossOriginConfig.Builderbuilder()static CrossOriginConfig.Builderbuilder(Config config)Creates a newCrossOriginConfig.Builderusing the provided config node.static CrossOriginConfig.Builderbuilder(CrossOriginConfig original)Initializes a newCrossOriginConfig.Builderfrom the values in an existingCrossOriginConfigobject.static CrossOriginConfigcreate()Creates a newCrossOriginConfiginstance which represents the default CORS behavior.static CrossOriginConfigcreate(Config corsConfig)Creates a newCrossOriginConfiginstance based on the provided configuration node.String[]exposeHeaders()booleanisEnabled()booleanmatches(String method)Reports whether the specified HTTP method name matches thisCrossOriginConfig.longmaxAgeSeconds()StringpathPattern()StringtoString() 
 - 
 
- 
- 
Field Detail
- 
CORS_PATHS_CONFIG_KEY
public static final String CORS_PATHS_CONFIG_KEY
Key for the node within the CORS config that contains the list of path information.- See Also:
 - Constant Field Values
 
 
- 
ACCESS_CONTROL_ALLOW_HEADERS
public static final String ACCESS_CONTROL_ALLOW_HEADERS
Header Access-Control-Allow-Headers.- See Also:
 - Constant Field Values
 
 
- 
ACCESS_CONTROL_ALLOW_METHODS
public static final String ACCESS_CONTROL_ALLOW_METHODS
Header Access-Control-Allow-Methods.- See Also:
 - Constant Field Values
 
 
- 
ACCESS_CONTROL_ALLOW_CREDENTIALS
public static final String ACCESS_CONTROL_ALLOW_CREDENTIALS
Header Access-Control-Allow-Credentials.- See Also:
 - Constant Field Values
 
 
- 
ACCESS_CONTROL_MAX_AGE
public static final String ACCESS_CONTROL_MAX_AGE
Header Access-Control-Max-Age.- See Also:
 - Constant Field Values
 
 
- 
ACCESS_CONTROL_EXPOSE_HEADERS
public static final String ACCESS_CONTROL_EXPOSE_HEADERS
Header Access-Control-Expose-Headers.- See Also:
 - Constant Field Values
 
 
- 
ACCESS_CONTROL_ALLOW_ORIGIN
public static final String ACCESS_CONTROL_ALLOW_ORIGIN
Header Access-Control-Allow-Origin.- See Also:
 - Constant Field Values
 
 
- 
ACCESS_CONTROL_REQUEST_HEADERS
public static final String ACCESS_CONTROL_REQUEST_HEADERS
Header Access-Control-Request-Headers.- See Also:
 - Constant Field Values
 
 
- 
ACCESS_CONTROL_REQUEST_METHOD
public static final String ACCESS_CONTROL_REQUEST_METHOD
Header Access-Control-Request-Method.- See Also:
 - Constant Field Values
 
 
- 
DEFAULT_AGE
public static final long DEFAULT_AGE
Default cache expiration in seconds.- See Also:
 - Constant Field Values
 
 
 - 
 
- 
Method Detail
- 
builder
public static CrossOriginConfig.Builder builder()
- Returns:
 - a new builder for basic cross origin config
 
 
- 
builder
public static CrossOriginConfig.Builder builder(Config config)
Creates a newCrossOriginConfig.Builderusing the provided config node.Although this method is equivalent to
builder().config(config)it conveniently combines those two steps for use as a method reference.- Parameters:
 config- node containing cross-origin information- Returns:
 - new 
CrossOriginConfig.Builderinstance based on the configuration 
 
- 
builder
public static CrossOriginConfig.Builder builder(CrossOriginConfig original)
Initializes a newCrossOriginConfig.Builderfrom the values in an existingCrossOriginConfigobject.- Parameters:
 original- the existing cross-origin config object- Returns:
 - new Builder initialized from the existing object's settings
 
 
- 
create
public static CrossOriginConfig create()
Creates a newCrossOriginConfiginstance which represents the default CORS behavior.- Returns:
 - new default 
CrossOriginConfiginstance 
 
- 
create
public static CrossOriginConfig create(Config corsConfig)
Creates a newCrossOriginConfiginstance based on the provided configuration node.- Parameters:
 corsConfig- node containing CORS information- Returns:
 - new 
CrossOriginConfigbased on the configuration 
 
- 
pathPattern
public String pathPattern()
- Returns:
 - the configured path expression; defaults to a "match-everything" pattern
 
 
- 
isEnabled
public boolean isEnabled()
- Returns:
 - whether this cross-origin config is enabled
 
 
- 
allowOrigins
public String[] allowOrigins()
- Returns:
 - the allowed origins
 
 
- 
allowHeaders
public String[] allowHeaders()
- Returns:
 - the allowed headers
 
 
- 
exposeHeaders
public String[] exposeHeaders()
- Returns:
 - headers OK to expose in responses
 
 
- 
allowMethods
public String[] allowMethods()
- Returns:
 - allowed methods
 
 
- 
allowCredentials
public boolean allowCredentials()
- Returns:
 - allowed credentials
 
 
- 
maxAgeSeconds
public long maxAgeSeconds()
- Returns:
 - maximum age
 
 
- 
matches
public boolean matches(String method)
Reports whether the specified HTTP method name matches thisCrossOriginConfig.- Parameters:
 method- HTTP method name to check- Returns:
 - true if this 
CrossOriginConfigmatches the specified method; false otherwise 
 
 - 
 
 -