41 lines
1.1 KiB
Go
41 lines
1.1 KiB
Go
|
/*
|
||
|
* Copyright (c) 2013 IBM Corp.
|
||
|
*
|
||
|
* All rights reserved. This program and the accompanying materials
|
||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||
|
* which accompanies this distribution, and is available at
|
||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||
|
*
|
||
|
* 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{}
|
||
|
)
|
||
|
|
||
|
func (NOOPLogger) Println(v ...interface{}) {}
|
||
|
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{}
|
||
|
)
|