Module locus

Data Types

custom_fetcher()

custom_fetcher() = {custom_fetcher, module(), Args::term()}

database_edition()

database_edition() = maxmind_database_edition()

database_entry()

database_entry() = locus_mmdb_data:value()

database_error()

database_error() = database_unknown | database_not_loaded

database_info()

database_info() = #{metadata := database_metadata(), source := database_source(), version := database_version()}

database_metadata()

database_metadata() = locus_mmdb_metadata:t()

database_source()

database_source() = locus_loader:source()

database_url()

database_url() = unicode:chardata()

database_version()

database_version() = calendar:datetime()

ip_address_prefix()

ip_address_prefix() = locus_mmdb_tree:ip_address_prefix()

legacy_maxmind_database_edition()

legacy_maxmind_database_edition() = atom()

maxmind_database_edition()

maxmind_database_edition() = {maxmind, atom() | unicode:chardata()} | legacy_maxmind_database_edition()

Function Index

await_loader/1Like await_loader/1 but with a default timeout of 30 seconds.
await_loader/2Blocks caller execution until either readiness is achieved or the default timeout is triggered.
await_loaders/2Like await_loader/2 but it can concurrently await status from more than one database.
check/1Analyzes a loaded database for corruption or incompatibility.
get_info/1Returns the properties of a currently loaded database.
get_info/2Returns a specific property of a currently loaded database.
loader_child_spec/2Like :loader_child_spec/2 but with default options.
loader_child_spec/3Like :loader_child_spec/3 but with default child id.
loader_child_spec/4Returns a supervisor child spec for a database loader under id DatabaseId with options Opts.
lookup/2Looks-up info on IPv4 and IPv6 addresses.
start_loader/2Like :start_loader/3 but with default options.
start_loader/3Starts a database loader under id DatabaseId with options Opts.
stop_loader/1Stops the database loader under id DatabaseId.

Function Details

await_loader/1

await_loader(DatabaseId) -> {ok, LoadedVersion} | {error, Reason}

Like await_loader/1 but with a default timeout of 30 seconds.

Returns:

See also: await_loader/2.

await_loader/2

await_loader(DatabaseId, Timeout) -> {ok, LoadedVersion} | {error, Reason}

Blocks caller execution until either readiness is achieved or the default timeout is triggered.

Returns:

See also: await_loader/1, await_loaders/2.

await_loaders/2

await_loaders(DatabaseIds, Timeout) -> {ok, Successes} | {error, {ErrorPerDatabase, PartialSuccesses}}

Like await_loader/2 but it can concurrently await status from more than one database.

Returns:

See also: await_loader/2.

check/1

check(DatabaseId) -> ok | {error, Error} | {validation_warnings, [ValidationWarning, ...]} | {validation_errors, [ValidationError, ...], [ValidationWarning]}

Analyzes a loaded database for corruption or incompatibility.

Returns:

get_info/1

get_info(DatabaseId) -> {ok, Info} | {error, Error}

Returns the properties of a currently loaded database.

Returns:

See also: get_info/2.

get_info/2

get_info(DatabaseId, Property) -> {ok, Value} | {error, Error}

Returns a specific property of a currently loaded database.

Returns:

See also: get_info/1.

loader_child_spec/2

loader_child_spec(DatabaseId, LoadFrom) -> ChildSpec | no_return()

Like :loader_child_spec/2 but with default options

Returns:

See also: await_loader/1, await_loader/2, loader_child_spec/3, start_loader/2.

loader_child_spec/3

loader_child_spec(DatabaseId, LoadFrom, Opts) -> ChildSpec | no_return()

Like :loader_child_spec/3 but with default child id

Returns:

See also: await_loader/1, await_loader/2, loader_child_spec/2, loader_child_spec/4, start_loader/3.

loader_child_spec/4

loader_child_spec(ChildId, DatabaseId, LoadFrom, Opts) -> ChildSpec | no_return()

Returns a supervisor child spec for a database loader under id DatabaseId with options Opts.

Returns:

See also: await_loader/1, await_loader/2, loader_child_spec/3, start_loader/3.

lookup/2

lookup(DatabaseId, Address) -> {ok, Entry} | not_found | {error, Error}

Looks-up info on IPv4 and IPv6 addresses.

Returns:

start_loader/2

start_loader(DatabaseId, LoadFrom) -> ok | {error, Error}

Like :start_loader/3 but with default options

Returns:

See also: await_loader/1, await_loader/2, start_loader/1, start_loader/3.

start_loader/3

start_loader(DatabaseId, LoadFrom, Opts) -> ok | {error, Error}

Starts a database loader under id DatabaseId with options Opts.

Returns:

See also: await_loader/1, await_loader/2, start_loader/1, start_loader/2.

stop_loader/1

stop_loader(DatabaseId) -> ok | {error, Error}

Stops the database loader under id DatabaseId.

Returns ok in case of success, {error, not_found} otherwise.


Generated by EDoc