Represents an opaque type that consists of a key-value pair which can be used to set multiple keys in the context.
Represents an opaque type that consists of a key-value pair which can be used to set multiple keys in the context.
Retrieve the current definition of a key.
Retrieve the current definition of a key.
NoSuchElementException
when the key is undefined
in the current request-local context.
Tells whether key
is defined in the current request-local
context.
Tells whether key
is defined in the current request-local
context.
Retrieve the current definition of a key, but only if it is defined in the current request-local context.
Retrieve the current definition of a key, but only if it is defined in the current request-local context.
Retrieve the current definition of a key if it is defined.
Retrieve the current definition of a key if it is defined.
If it is not defined, orElse
is evaluated and returned.
Bind multiple key-value pairs.
Bind multiple key-value pairs. Keys later in the collection take precedent over keys earlier in the collection.
Bind two keys and values in the scope of fn
.
Bind two keys and values in the scope of fn
.
Bind value
to key
in the scope of fn
.
Bind value
to key
in the scope of fn
.
Unbind the passed-in keys, in the scope of fn
.
Unbind the passed-in keys, in the scope of fn
.
Unbind the passed-in key, in the scope of fn
.
Unbind the passed-in key, in the scope of fn
.
Clears all bindings in the scope of fn
.
Clears all bindings in the scope of fn
.
For example:
context.let(Key1, "value1") { context.let(Key2, "something else") { context.letClearAll { // context.contains(Key1) == false // context.contains(Key2) == false } // context(Key1) == "value1" // context(Key2) == "something else" } }
A java-friendly key constructor.
A type of context that is local to the process. The type of Key is also unique (generative) to each instance of this context, so that keys cannot be used across different instances of this context type.