Skip to main content

Handler

Abstractor processor of Records. Like Loggers, it can also have its own level and filters.

Properties

filters

Filtering
since 0.1.0
</>
Handler.filters: table

A set of Filters added to this handler with Handler:addFilter

level

Filtering
since 0.1.0
</>
Handler.level: Level

Set the lowest level of Records that this handler will handle.

formatter

since 0.1.0
</>
Handler.formatter: Formatter

The formatter to use when processing messages produced by Records.

Functions

new

since 0.1.0
</>
Handler.new() → Handler

Abstract. Creates a new handler.

setLevel

Filtering
since 0.1.0
</>
Handler:setLevel(levelLevel) → ()

Set the lowest level of Records that this handler will handle.

isEnabledFor

Filtering
since 0.2.0
</>
Handler:isEnabledFor(levelLevel) → ()

Returns whether this handler will filter Records with the given Level according to its Handler.level.

addFilter

Filtering
since 0.1.0
</>
Handler:addFilter(filterFilter) → ()

Adds a Filter to this handler.

removeFilter

Filtering
since 0.1.0
</>
Handler:removeFilter(filterFilter) → ()

Removes a Filter from this handler.

filter

Filtering
since 0.1.0
</>
Handler:filter(recordRecord) → boolean

Checks if the level of the given record using Handler:isEnabledFor. If it is, each filter added by Handler:addFilter is called in turn. If any filter function returns false or nil, this function returns false. Otherwise, this function returns true.

setFormatter

since 0.1.0
</>
Handler:setFormatter(formatterFormatter) → ()

Sets the formatter to be used by the handler.

handle

since 0.1.0
</>
Handler:handle(recordRecord) → ()

Calls Handler:filter and if it passes, then Handler:emit.

emit

since 0.1.0
</>
Handler:emit(_recordRecord) → ()

Abstract. Performs the record-handling logic.

Show raw api
{
    "functions": [
        {
            "name": "new",
            "desc": "Abstract. Creates a new handler.",
            "params": [],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "Handler"
                }
            ],
            "function_type": "static",
            "since": "0.1.0",
            "source": {
                "line": 41,
                "path": "Logging/Handler/init.lua"
            }
        },
        {
            "name": "setLevel",
            "desc": "Set the lowest level of [Record]s that this handler will handle.",
            "params": [
                {
                    "name": "level",
                    "desc": "",
                    "lua_type": "Level"
                }
            ],
            "returns": [],
            "function_type": "method",
            "tags": [
                "Filtering"
            ],
            "since": "0.1.0",
            "source": {
                "line": 60,
                "path": "Logging/Handler/init.lua"
            }
        },
        {
            "name": "isEnabledFor",
            "desc": "Returns whether this handler will filter [Record]s with the given [Level] according to its [Handler.level].",
            "params": [
                {
                    "name": "level",
                    "desc": "",
                    "lua_type": "Level"
                }
            ],
            "returns": [],
            "function_type": "method",
            "tags": [
                "Filtering"
            ],
            "since": "0.2.0",
            "source": {
                "line": 70,
                "path": "Logging/Handler/init.lua"
            }
        },
        {
            "name": "addFilter",
            "desc": "Adds a [Filter] to this handler.",
            "params": [
                {
                    "name": "filter",
                    "desc": "",
                    "lua_type": "Filter"
                }
            ],
            "returns": [],
            "function_type": "method",
            "tags": [
                "Filtering"
            ],
            "since": "0.1.0",
            "source": {
                "line": 80,
                "path": "Logging/Handler/init.lua"
            }
        },
        {
            "name": "removeFilter",
            "desc": "Removes a [Filter] from this handler.",
            "params": [
                {
                    "name": "filter",
                    "desc": "",
                    "lua_type": "Filter"
                }
            ],
            "returns": [],
            "function_type": "method",
            "tags": [
                "Filtering"
            ],
            "since": "0.1.0",
            "source": {
                "line": 91,
                "path": "Logging/Handler/init.lua"
            }
        },
        {
            "name": "filter",
            "desc": "Checks if the level of the given record using [Handler:isEnabledFor].\nIf it is, each filter added by [Handler:addFilter] is called in turn.\nIf any filter function returns false or nil, this function returns false.\nOtherwise, this function returns true.",
            "params": [
                {
                    "name": "record",
                    "desc": "",
                    "lua_type": "Record"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "boolean"
                }
            ],
            "function_type": "method",
            "tags": [
                "Filtering"
            ],
            "since": "0.1.0",
            "source": {
                "line": 105,
                "path": "Logging/Handler/init.lua"
            }
        },
        {
            "name": "setFormatter",
            "desc": "Sets the formatter to be used by the handler.",
            "params": [
                {
                    "name": "formatter",
                    "desc": "",
                    "lua_type": "Formatter"
                }
            ],
            "returns": [],
            "function_type": "method",
            "since": "0.1.0",
            "source": {
                "line": 124,
                "path": "Logging/Handler/init.lua"
            }
        },
        {
            "name": "handle",
            "desc": "Calls [Handler:filter] and if it passes, then [Handler:emit].",
            "params": [
                {
                    "name": "record",
                    "desc": "",
                    "lua_type": "Record"
                }
            ],
            "returns": [],
            "function_type": "method",
            "since": "0.1.0",
            "source": {
                "line": 133,
                "path": "Logging/Handler/init.lua"
            }
        },
        {
            "name": "emit",
            "desc": "Abstract. Performs the record-handling logic.",
            "params": [
                {
                    "name": "_record",
                    "desc": "",
                    "lua_type": "Record"
                }
            ],
            "returns": [],
            "function_type": "method",
            "since": "0.1.0",
            "source": {
                "line": 145,
                "path": "Logging/Handler/init.lua"
            }
        }
    ],
    "properties": [
        {
            "name": "filters",
            "desc": "A set of [Filter]s added to this handler with [Handler:addFilter]",
            "lua_type": "table",
            "tags": [
                "Filtering"
            ],
            "since": "0.1.0",
            "source": {
                "line": 20,
                "path": "Logging/Handler/init.lua"
            }
        },
        {
            "name": "level",
            "desc": "Set the lowest level of [Record]s that this handler will handle.",
            "lua_type": "Level",
            "tags": [
                "Filtering"
            ],
            "since": "0.1.0",
            "source": {
                "line": 28,
                "path": "Logging/Handler/init.lua"
            }
        },
        {
            "name": "formatter",
            "desc": "The formatter to use when processing messages produced by [Record]s.",
            "lua_type": "Formatter",
            "since": "0.1.0",
            "source": {
                "line": 35,
                "path": "Logging/Handler/init.lua"
            }
        }
    ],
    "types": [],
    "name": "Handler",
    "desc": "Abstractor processor of [Record]s. Like [Logger]s, it can also have its own level and filters.",
    "source": {
        "line": 5,
        "path": "Logging/Handler/init.lua"
    }
}