...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package logger
16
17 import (
18 "bytes"
19 )
20
21
22
23 type Buffer struct {
24 buffer bytes.Buffer
25 stream *Stream
26 }
27
28
29 func NewBuffer() *Buffer {
30 b := &Buffer{
31 stream: NewStream(),
32 }
33
34 b.stream.writer = &b.buffer
35
36 return b
37 }
38
39
40 func (b *Buffer) SetStreamHandler(handler StreamHandler) *Buffer {
41 b.stream.SetStreamHandler(handler)
42 return b
43 }
44
45
46 func (b *Buffer) GetBuffer() *bytes.Buffer {
47 b.stream.RLock()
48 defer b.stream.RUnlock()
49
50 return &b.buffer
51 }
52
53
54 func (b *Buffer) Length() int {
55 b.stream.RLock()
56 defer b.stream.RUnlock()
57
58 return b.buffer.Len()
59 }
60
61
62 func (b *Buffer) String() string {
63 b.stream.RLock()
64 defer b.stream.RUnlock()
65
66 return b.buffer.String()
67 }
68
69
70
71
72 func (b *Buffer) Bytes() []byte {
73 b.stream.RLock()
74 defer b.stream.RUnlock()
75
76 return b.buffer.Bytes()
77 }
78
79
80 func (b *Buffer) Reset() {
81 b.stream.Lock()
82 defer b.stream.Unlock()
83
84 b.buffer.Reset()
85 }
86
87
88 func (b *Buffer) Enable() Handler {
89 return b.stream.Enable()
90 }
91
92
93 func (b *Buffer) Disable() Handler {
94 return b.stream.Disable()
95 }
96
97
98 func (b *Buffer) IsEnabled() bool {
99 return b.stream.IsEnabled()
100 }
101
102
103 func (b *Buffer) SetFormatter(formatter *Formatter) Handler {
104 return b.stream.SetFormatter(formatter)
105 }
106
107
108 func (b *Buffer) GetFormatter() *Formatter {
109 return b.stream.GetFormatter()
110 }
111
112
113 func (b *Buffer) SetLevel(level int) Handler {
114 return b.stream.SetLevel(level)
115 }
116
117
118 func (b *Buffer) SetMinimumLevel(level int) Handler {
119 return b.stream.SetMinimumLevel(level)
120 }
121
122
123 func (b *Buffer) GetMinimumLevel() int {
124 return b.stream.GetMinimumLevel()
125 }
126
127
128 func (b *Buffer) SetMaximumLevel(level int) Handler {
129 return b.stream.SetMaximumLevel(level)
130 }
131
132
133 func (b *Buffer) GetMaximumLevel() int {
134 return b.stream.GetMaximumLevel()
135 }
136
137
138 func (b *Buffer) SetLevelRange(min, max int) Handler {
139 return b.stream.SetLevelRange(min, max)
140 }
141
142
143 func (b *Buffer) GetLevelRange() (min, max int) {
144 return b.stream.GetLevelRange()
145 }
146
147
148 func (b *Buffer) Emit(record *Record) error {
149 return b.stream.Emit(record)
150 }
151
152
153 func (b *Buffer) Close() error {
154 return b.stream.Close()
155 }
156
View as plain text