2019-12-01 21:35:19 +00:00
|
|
|
/*
|
2022-06-07 17:48:23 +00:00
|
|
|
* Copyright (c) 2021 IBM Corp and others.
|
2019-12-01 21:35:19 +00:00
|
|
|
*
|
|
|
|
* All rights reserved. This program and the accompanying materials
|
2022-06-07 17:48:23 +00:00
|
|
|
* are made available under the terms of the Eclipse Public License v2.0
|
|
|
|
* and Eclipse Distribution License v1.0 which accompany this distribution.
|
|
|
|
*
|
|
|
|
* The Eclipse Public License is available at
|
|
|
|
* https://www.eclipse.org/legal/epl-2.0/
|
|
|
|
* and the Eclipse Distribution License is available at
|
|
|
|
* http://www.eclipse.org/org/documents/edl-v10.php.
|
2019-12-01 21:35:19 +00:00
|
|
|
*
|
|
|
|
* Contributors:
|
|
|
|
* Seth Hoenig
|
|
|
|
* Allan Stockdill-Mander
|
|
|
|
* Mike Robertson
|
|
|
|
*/
|
|
|
|
|
|
|
|
package mqtt
|
|
|
|
|
|
|
|
type (
|
|
|
|
// Logger interface allows implementations to provide to this package any
|
|
|
|
// object that implements the methods defined in it.
|
|
|
|
Logger interface {
|
|
|
|
Println(v ...interface{})
|
|
|
|
Printf(format string, v ...interface{})
|
|
|
|
}
|
|
|
|
|
|
|
|
// NOOPLogger implements the logger that does not perform any operation
|
|
|
|
// by default. This allows us to efficiently discard the unwanted messages.
|
|
|
|
NOOPLogger struct{}
|
|
|
|
)
|
|
|
|
|
2021-09-01 18:40:28 +00:00
|
|
|
func (NOOPLogger) Println(v ...interface{}) {}
|
2019-12-01 21:35:19 +00:00
|
|
|
func (NOOPLogger) Printf(format string, v ...interface{}) {}
|
|
|
|
|
|
|
|
// Internal levels of library output that are initialised to not print
|
|
|
|
// anything but can be overridden by programmer
|
|
|
|
var (
|
|
|
|
ERROR Logger = NOOPLogger{}
|
|
|
|
CRITICAL Logger = NOOPLogger{}
|
|
|
|
WARN Logger = NOOPLogger{}
|
|
|
|
DEBUG Logger = NOOPLogger{}
|
|
|
|
)
|