Remove BPA from Makefile
[icn.git] / cmd / bpa-operator / vendor / github.com / go-openapi / spec / debug.go
1 // Copyright 2015 go-swagger maintainers
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 //    http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14
15 package spec
16
17 import (
18         "fmt"
19         "log"
20         "os"
21         "path/filepath"
22         "runtime"
23 )
24
25 var (
26         // Debug is true when the SWAGGER_DEBUG env var is not empty.
27         // It enables a more verbose logging of this package.
28         Debug = os.Getenv("SWAGGER_DEBUG") != ""
29         // specLogger is a debug logger for this package
30         specLogger *log.Logger
31 )
32
33 func init() {
34         debugOptions()
35 }
36
37 func debugOptions() {
38         specLogger = log.New(os.Stdout, "spec:", log.LstdFlags)
39 }
40
41 func debugLog(msg string, args ...interface{}) {
42         // A private, trivial trace logger, based on go-openapi/spec/expander.go:debugLog()
43         if Debug {
44                 _, file1, pos1, _ := runtime.Caller(1)
45                 specLogger.Printf("%s:%d: %s", filepath.Base(file1), pos1, fmt.Sprintf(msg, args...))
46         }
47 }