class SecureHeaders::ClearSiteData
Constants
- ALL_TYPES
- CACHE
Valid `types`
- COOKIES
- EXECUTION_CONTEXTS
- HEADER_NAME
- STORAGE
Public Class Methods
make_header(config = nil, user_agent = nil)
click to toggle source
Public: make an Clear-Site-Data header name, value pair
Returns nil if not configured, returns header name and value if configured.
# File lib/secure_headers/headers/clear_site_data.rb, line 18 def make_header(config = nil, user_agent = nil) case config when nil, OPT_OUT, [] # noop when Array [HEADER_NAME, make_header_value(config)] when true [HEADER_NAME, make_header_value(ALL_TYPES)] end end
make_header_value(types)
click to toggle source
Public: Transform a Clear-Site-Data config (an Array of Strings) into a String that can be used as the value for the Clear-Site-Data header.
types - An Array of String of types of data to clear.
Returns a String of quoted values that are comma separated.
# File lib/secure_headers/headers/clear_site_data.rb, line 48 def make_header_value(types) types.map { |t| %("#{t}") }.join(", ") end
validate_config!(config)
click to toggle source
# File lib/secure_headers/headers/clear_site_data.rb, line 29 def validate_config!(config) case config when nil, OPT_OUT, true # valid when Array unless config.all? { |t| t.is_a?(String) } raise ClearSiteDataConfigError.new("types must be Strings") end else raise ClearSiteDataConfigError.new("config must be an Array of Strings or `true`") end end