Blame view

go/src/themaru/vendor/github.com/gin-gonic/gin/mode.go 1.92 KB
476d2547e   김태훈   태마루 시스템 설정 / 업데이트...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
  // Copyright 2014 Manu Martinez-Almeida.  All rights reserved.
  // Use of this source code is governed by a MIT style
  // license that can be found in the LICENSE file.
  
  package gin
  
  import (
  	"io"
  	"os"
  
  	"github.com/gin-gonic/gin/binding"
  )
  
  // EnvGinMode indicates environment name for gin mode.
  const EnvGinMode = "GIN_MODE"
  
  const (
  	// DebugMode indicates gin mode is debug.
  	DebugMode = "debug"
  	// ReleaseMode indicates gin mode is release.
  	ReleaseMode = "release"
  	// TestMode indicates gin mode is test.
  	TestMode = "test"
  )
  const (
  	debugCode = iota
  	releaseCode
  	testCode
  )
  
  // DefaultWriter is the default io.Writer used by Gin for debug output and
  // middleware output like Logger() or Recovery().
  // Note that both Logger and Recovery provides custom ways to configure their
  // output io.Writer.
  // To support coloring in Windows use:
  // 		import "github.com/mattn/go-colorable"
  // 		gin.DefaultWriter = colorable.NewColorableStdout()
  var DefaultWriter io.Writer = os.Stdout
  
  // DefaultErrorWriter is the default io.Writer used by Gin to debug errors
  var DefaultErrorWriter io.Writer = os.Stderr
  
  var ginMode = debugCode
  var modeName = DebugMode
  
  func init() {
  	mode := os.Getenv(EnvGinMode)
  	SetMode(mode)
  }
  
  // SetMode sets gin mode according to input string.
  func SetMode(value string) {
  	switch value {
  	case DebugMode, "":
  		ginMode = debugCode
  	case ReleaseMode:
  		ginMode = releaseCode
  	case TestMode:
  		ginMode = testCode
  	default:
  		panic("gin mode unknown: " + value)
  	}
  	if value == "" {
  		value = DebugMode
  	}
  	modeName = value
  }
  
  // DisableBindValidation closes the default validator.
  func DisableBindValidation() {
  	binding.Validator = nil
  }
  
  // EnableJsonDecoderUseNumber sets true for binding.EnableDecoderUseNumberto to
  // call the UseNumber method on the JSON Decoder instance.
  func EnableJsonDecoderUseNumber() {
  	binding.EnableDecoderUseNumber = true
  }
  
  // Mode returns currently gin mode.
  func Mode() string {
  	return modeName
  }