Module class_USWebConfigServer

Singleton server holding the configuration information of the US-Web framework.

Description

Singleton server holding the configuration information of the US-Web framework.

Data Types

attribute_entry()

attribute_entry() = {attribute_name(), attribute_value()}

attribute_name()

attribute_name() = wooper:attribute_name()

attribute_value()

attribute_value() = wooper:attribute_value()

bin_directory_path()

bin_directory_path() = file_utils:bin_directory_path()

bin_domain_name()

bin_domain_name() = net_utils:bin_domain_name()

bin_host_name()

bin_host_name() = net_utils:bin_host_name()

cert_manager_pid()

cert_manager_pid() = class_USCertificateManager:manager_pid()

cert_mode()

cert_mode() = development | production

Tells whether certificate generation is in testing/staging mode or not.

cert_support()

cert_support() = no_certificates | use_existing_certificates | renew_certificates

classname()

classname() = wooper:classname()

dispatch_routes()

dispatch_routes() = cowboy_router:dispatch_routes()

dispatch_rules()

dispatch_rules() = cowboy_router:dispatch_rules()

See https://ninenines.eu/docs/en/cowboy/2.8/guide/routing/.

domain_config_table()

domain_config_table() = table(domain_id(), domain_info())

A table, associating to each domain name (e.g. <<"foo.org">>), the configuration table regarding its virtual hosts (e.g. regarding "bar.foo.org", a <<"bar">> key would correspond, associated to its vhost_config() value).

domain_id()

domain_id() = bin_domain_name() | default_domain_catch_all

To identify a domain name (or a catch-all for them).

domain_info()

domain_info() = {domain_id(), maybe(cert_manager_pid()), vhost_config_table()}

error_reason()

error_reason() = basic_utils:error_reason()

general_web_settings()

general_web_settings() = #general_web_settings{http_dispatch_rules = class_USWebConfigServer:dispatch_rules(), http_tcp_port = maybe(net_utils:tcp_port()), https_dispatch_rules = class_USWebConfigServer:dispatch_rules(), https_tcp_port = maybe(net_utils:tcp_port()), certificate_support = class_USWebConfigServer:cert_support(), https_transport_info = maybe(class_USWebConfigServer:https_transport_info()), dh_key_path = maybe(file_utils:bin_file_path()), ca_cert_key_path = maybe(file_utils:bin_file_path())}

host_match()

host_match() = route_match()

https_transport_info()

https_transport_info() = maybe({https_transport_options(), sni_info()})

https_transport_options()

https_transport_options() = ranch_ssl:opts()

instance_pid()

instance_pid() = pid()

log_analysis_settings()

log_analysis_settings() = {log_analysis_tool_name(), maybe(bin_directory_path()), maybe(bin_directory_path())}

Settings about any web access log analysis, i.e. our canonical name for the analysis tool, its (main) root directory and the directory of this helper (if any were specified): {ToolName, MaybeAnalysisToolRoot, MaybeAnalysisHelperRoot}.

log_analysis_tool_name()

log_analysis_tool_name() = atom()

maybe()

maybe(T) = basic_utils:maybe(T)

meta_web_settings()

meta_web_settings() = maybe({domain_id(), vhost_id(), bin_directory_path()})

method_argument()

method_argument() = wooper:method_argument()

method_arguments()

method_arguments() = wooper:method_arguments()

method_internal_result()

method_internal_result() = wooper:method_internal_result()

method_name()

method_name() = wooper:method_name()

module_name()

module_name() = basic_utils:module_name()

oneway_name()

oneway_name() = wooper:oneway_name()

oneway_return()

oneway_return() = wooper:oneway_return()

path_match()

path_match() = {Path::route_match(), HandlerMod::module_name(), HandlerOpts::term()}

report_generation_outcome()

report_generation_outcome() = report_generation_success | {report_generation_failed, error_reason()}

Tells whether the generation of a log analysis report succeeded.

request_name()

request_name() = wooper:request_name()

request_result()

request_result() = any()

request_result()

request_result(T) = wooper:request_result(T)

request_return()

request_return(T) = wooper:request_return(T)

requests_outcome()

requests_outcome() = wooper:requests_outcome()

route_match()

route_match() = cowboy:route_match()

route_rule()

route_rule() = {host_match(), [path_match()]}

sni_info()

sni_info() = class_USCertificateManager:sni_info()

table()

table(K, V) = map_hashtable:map_hashtable(K, V)

vhost_config_entry()

vhost_config_entry() = #vhost_config_entry{virtual_host = class_USWebConfigServer:vhost_id(), parent_host = class_USWebConfigServer:domain_id(), kind = class_USWebConfigServer:web_kind(), content_root = file_utils:bin_directory_path(), logger_pid = class_USWebLogger:logger_pid(), cert_manager_pid = maybe(class_USCertificateManager:manager_pid())}

vhost_config_table()

vhost_config_table() = table(vhost_id(), vhost_config_entry())

A table, associating, to each virtual host identifier, its settings.

vhost_id()

vhost_id() = bin_host_name() | without_vhost | default_vhost_catch_all

void()

void() = basic_utils:void()

web_analysis_info()

web_analysis_info() = #web_analysis_info{tool = class_USWebConfigServer:log_analysis_tool_name(), update_tool_path = maybe(file_utils:bin_executable_path()), report_tool_path = file_utils:bin_executable_path(), template_content = binary(), conf_dir = file_utils:bin_directory_path(), state_dir = file_utils:bin_directory_path(), web_content_dir = file_utils:bin_directory_path()}

web_kind()

web_kind() = static | meta | nitrogen

The various kinds of websites:

- static: a basic, static website to be served (the default)

- meta: a website generated, if requested, by US-Web, to browse conveniently all the other hosted websites

- nitrogen: a Nitrogen-based, dynamic website (see http://nitrogenproject.com)

Function Index

addKeyValueToAttribute/4
addToAttribute/3
appendToAttribute/3
concatToAttribute/3
decrementAttribute/2
deleteFromAttribute/3
executeConstOneway/2
executeConstOneway/3
executeConstOnewayAs/3
executeConstOnewayAs/4
executeConstRequest/2
executeConstRequest/3
executeConstRequestAs/3
executeConstRequestAs/4
executeOneway/2
executeOneway/3
executeOnewayAs/3
executeOnewayAs/4
executeRequest/2
executeRequest/3
executeRequestAs/3
executeRequestAs/4
getAttribute/2
getAttributes/2
getMaybeAttribute/2
get_execution_target/0
hasAttribute/2
incrementAttribute/2
is_wooper_debug/0
popFromAttribute/2
removeAttribute/2
setAttribute/3
setAttributes/2
subtractFromAttribute/3
swapInAttribute/3
toggleAttribute/2
wooper_destruct/1
wooper_effective_method_execution/4
wooper_execute_method/3
wooper_execute_method_as/4
wooper_get_class_specific_attributes/0
wooper_handle_local_oneway_execution/3
wooper_handle_local_request_execution/3
wooper_handle_remote_oneway_execution/3
wooper_handle_remote_request_execution/4
wooper_main_loop/1

Function Details

addKeyValueToAttribute/4

addKeyValueToAttribute(State::wooper:state(), AttributeName::attribute_name(), Key::table:key(), Value::table:value()) -> wooper:state()

addToAttribute/3

addToAttribute(State::wooper:state(), AttributeName::attribute_name(), Value::attribute_value()) -> wooper:state()

appendToAttribute/3

appendToAttribute(State::wooper:state(), AttributeName::attribute_name(), Element::attribute_value()) -> wooper:state()

concatToAttribute/3

concatToAttribute(State::wooper:state(), AttributeName::attribute_name(), List::attribute_value()) -> wooper:state()

decrementAttribute/2

decrementAttribute(State::wooper:state(), AttributeName::attribute_name()) -> wooper:state()

deleteFromAttribute/3

deleteFromAttribute(State::wooper:state(), AttributeName::attribute_name(), Element::attribute_value()) -> wooper:state()

executeConstOneway/2

executeConstOneway(State::wooper:state(), OnewayAtom::oneway_name()) -> void()

executeConstOneway/3

executeConstOneway(State::wooper:state(), OnewayAtom::oneway_name(), ArgumentList::method_arguments()) -> void()

executeConstOnewayAs/3

executeConstOnewayAs(State::wooper:state(), Classname::classname(), OnewayAtom::oneway_name()) -> void()

executeConstOnewayAs/4

executeConstOnewayAs(State::wooper:state(), Classname::classname(), OnewayAtom::oneway_name(), ArgumentList::method_arguments()) -> void()

executeConstRequest/2

executeConstRequest(State::wooper:state(), RequestAtom::request_name()) -> method_internal_result()

executeConstRequest/3

executeConstRequest(State::wooper:state(), RequestAtom::request_name(), ArgumentList::method_arguments()) -> method_internal_result()

executeConstRequestAs/3

executeConstRequestAs(State::wooper:state(), ParentClassname::classname(), RequestAtom::request_name()) -> method_internal_result()

executeConstRequestAs/4

executeConstRequestAs(State::wooper:state(), Classname::classname(), RequestAtom::request_name(), ArgumentList::method_arguments()) -> method_internal_result()

executeOneway/2

executeOneway(State::wooper:state(), OnewayAtom::oneway_name()) -> wooper:state()

executeOneway/3

executeOneway(State::wooper:state(), OnewayAtom::oneway_name(), ArgumentList::method_arguments()) -> wooper:state()

executeOnewayAs/3

executeOnewayAs(State::wooper:state(), ParentClassname::classname(), OnewayAtom::oneway_name()) -> wooper:state()

executeOnewayAs/4

executeOnewayAs(State::wooper:state(), Classname::classname(), OnewayAtom::oneway_name(), ArgumentList::method_arguments()) -> wooper:state()

executeRequest/2

executeRequest(State::wooper:state(), RequestAtom::request_name()) -> {wooper:state(), method_internal_result()}

executeRequest/3

executeRequest(State::wooper:state(), RequestAtom::request_name(), ArgumentList::method_arguments()) -> {wooper:state(), method_internal_result()}

executeRequestAs/3

executeRequestAs(State::wooper:state(), ParentClassname::classname(), RequestAtom::request_name()) -> {wooper:state(), method_internal_result()}

executeRequestAs/4

executeRequestAs(State::wooper:state(), Classname::classname(), RequestAtom::request_name(), ArgumentList::method_arguments()) -> {wooper:state(), method_internal_result()}

getAttribute/2

getAttribute(State::wooper:state(), AttributeName::attribute_name()) -> attribute_value()

getAttributes/2

getAttributes(State::wooper:state(), AttributeNameList::[attribute_name()]) -> [attribute_value()]

getMaybeAttribute/2

getMaybeAttribute(State::wooper:state(), AttributeName::attribute_name()) -> maybe(attribute_value())

get_execution_target/0

get_execution_target() -> development

hasAttribute/2

hasAttribute(State::wooper:state(), AttributeName::attribute_name()) -> boolean()

incrementAttribute/2

incrementAttribute(State::wooper:state(), AttributeName::attribute_name()) -> wooper:state()

is_wooper_debug/0

is_wooper_debug() -> boolean()

popFromAttribute/2

popFromAttribute(State::wooper:state(), AttributeName::attribute_name()) -> {wooper:state(), attribute_value()}

removeAttribute/2

removeAttribute(State::wooper:state(), AttributeName::attribute_name()) -> wooper:state()

setAttribute/3

setAttribute(State::wooper:state(), AttributeName::attribute_name(), AttributeValue::attribute_value()) -> wooper:state()

setAttributes/2

setAttributes(State::wooper:state(), ListOfAttributePairs::[attribute_entry()]) -> wooper:state()

subtractFromAttribute/3

subtractFromAttribute(State::wooper:state(), AttributeName::attribute_name(), Value::attribute_value()) -> wooper:state()

swapInAttribute/3

swapInAttribute(State::wooper:state(), AttributeName::attribute_name(), NewAttributeValue::attribute_value()) -> {wooper:state(), attribute_value()}

toggleAttribute/2

toggleAttribute(State::wooper:state(), BooleanAttributeName::attribute_name()) -> wooper:state()

wooper_destruct/1

wooper_destruct(State::wooper:state()) -> wooper:state()

wooper_effective_method_execution/4

wooper_effective_method_execution(SelectedModule::module(), MethodAtom::method_name(), State::wooper:state(), Parameters::method_arguments()) -> {wooper:state(), method_internal_result()}

wooper_execute_method/3

wooper_execute_method(MethodAtom::method_name(), Parameters::method_arguments(), State::wooper:state()) -> {wooper:state(), method_internal_result()}

wooper_execute_method_as/4

wooper_execute_method_as(ParentClassname::classname(), MethodAtom::method_name(), Parameters::method_arguments(), State::wooper:state()) -> {wooper:state(), method_internal_result()}

wooper_get_class_specific_attributes/0

wooper_get_class_specific_attributes() -> [wooper_info:attribute_spec()]

wooper_handle_local_oneway_execution/3

wooper_handle_local_oneway_execution(OnewayAtom::method_name(), State::wooper:state(), ArgumentList::method_arguments()) -> wooper:state()

wooper_handle_local_request_execution/3

wooper_handle_local_request_execution(RequestAtom::method_name(), State::wooper:state(), ArgumentList::method_arguments()) -> {wooper:state(), method_internal_result()}

wooper_handle_remote_oneway_execution/3

wooper_handle_remote_oneway_execution(OnewayAtom::method_name(), State::wooper:state(), ArgumentList::method_arguments()) -> wooper:state()

wooper_handle_remote_request_execution/4

wooper_handle_remote_request_execution(RequestAtom::method_name(), State::wooper:state(), ArgumentList::method_arguments(), CallerPid::pid()) -> wooper:state()

wooper_main_loop/1

wooper_main_loop(State::wooper:state()) -> deleted


Generated by EDoc