@@ -29,7 +29,7 @@ import (
29
29
"github.com/sirupsen/logrus"
30
30
)
31
31
32
- type Serialhub struct {
32
+ type serialhub struct {
33
33
// Opened serial ports.
34
34
ports map [* serport ]bool
35
35
mu sync.Mutex
@@ -38,26 +38,22 @@ type Serialhub struct {
38
38
OnUnregister func (port * serport )
39
39
}
40
40
41
- // NewSerialHub creates a new serial hub
42
- // It is used to manage serial ports and their connections.
43
- func NewSerialHub () * Serialhub {
44
- return & Serialhub {
41
+ func newSerialHub () * serialhub {
42
+ return & serialhub {
45
43
ports : make (map [* serport ]bool ),
46
44
}
47
45
}
48
46
49
- // SerialPortList is the serial port list
50
- type SerialPortList struct {
47
+ type serialPortList struct {
51
48
Ports []* SpPortItem
52
49
portsLock sync.Mutex
53
50
54
51
OnList func ([]byte ) `json:"-"`
55
52
OnErr func (string ) `json:"-"`
56
53
}
57
54
58
- // NewSerialPortList creates a new serial port list
59
- func NewSerialPortList () * SerialPortList {
60
- return & SerialPortList {}
55
+ func newSerialPortList () * serialPortList {
56
+ return & serialPortList {}
61
57
}
62
58
63
59
// SpPortItem is the serial port item
@@ -75,7 +71,7 @@ type SpPortItem struct {
75
71
}
76
72
77
73
// Register serial ports from the connections.
78
- func (sh * Serialhub ) Register (port * serport ) {
74
+ func (sh * serialhub ) Register (port * serport ) {
79
75
sh .mu .Lock ()
80
76
//log.Print("Registering a port: ", p.portConf.Name)
81
77
sh .OnRegister (port )
@@ -84,7 +80,7 @@ func (sh *Serialhub) Register(port *serport) {
84
80
}
85
81
86
82
// Unregister requests from connections.
87
- func (sh * Serialhub ) Unregister (port * serport ) {
83
+ func (sh * serialhub ) Unregister (port * serport ) {
88
84
sh .mu .Lock ()
89
85
//log.Print("Unregistering a port: ", p.portConf.Name)
90
86
sh .OnUnregister (port )
@@ -94,7 +90,7 @@ func (sh *Serialhub) Unregister(port *serport) {
94
90
sh .mu .Unlock ()
95
91
}
96
92
97
- func (sh * Serialhub ) FindPortByName (portname string ) (* serport , bool ) {
93
+ func (sh * serialhub ) FindPortByName (portname string ) (* serport , bool ) {
98
94
sh .mu .Lock ()
99
95
defer sh .mu .Unlock ()
100
96
@@ -109,7 +105,7 @@ func (sh *Serialhub) FindPortByName(portname string) (*serport, bool) {
109
105
}
110
106
111
107
// List broadcasts a Json representation of the ports found
112
- func (sp * SerialPortList ) List () {
108
+ func (sp * serialPortList ) List () {
113
109
sp .portsLock .Lock ()
114
110
ls , err := json .MarshalIndent (sp , "" , "\t " )
115
111
sp .portsLock .Unlock ()
@@ -122,7 +118,7 @@ func (sp *SerialPortList) List() {
122
118
}
123
119
124
120
// Run is the main loop for port discovery and management
125
- func (sp * SerialPortList ) Run () {
121
+ func (sp * serialPortList ) Run () {
126
122
for retries := 0 ; retries < 10 ; retries ++ {
127
123
sp .runSerialDiscovery ()
128
124
@@ -132,7 +128,7 @@ func (sp *SerialPortList) Run() {
132
128
logrus .Errorf ("Failed restarting serial discovery. Giving up..." )
133
129
}
134
130
135
- func (sp * SerialPortList ) runSerialDiscovery () {
131
+ func (sp * serialPortList ) runSerialDiscovery () {
136
132
// First ensure that all the discoveries are available
137
133
if err := Tools .Download ("builtin" , "serial-discovery" , "latest" , "keep" ); err != nil {
138
134
logrus .Errorf ("Error downloading serial-discovery: %s" , err )
@@ -176,13 +172,13 @@ func (sp *SerialPortList) runSerialDiscovery() {
176
172
logrus .Errorf ("Serial discovery stopped." )
177
173
}
178
174
179
- func (sp * SerialPortList ) reset () {
175
+ func (sp * serialPortList ) reset () {
180
176
sp .portsLock .Lock ()
181
177
defer sp .portsLock .Unlock ()
182
178
sp .Ports = []* SpPortItem {}
183
179
}
184
180
185
- func (sp * SerialPortList ) add (addedPort * discovery.Port ) {
181
+ func (sp * serialPortList ) add (addedPort * discovery.Port ) {
186
182
if addedPort .Protocol != "serial" {
187
183
return
188
184
}
@@ -226,7 +222,7 @@ func (sp *SerialPortList) add(addedPort *discovery.Port) {
226
222
})
227
223
}
228
224
229
- func (sp * SerialPortList ) remove (removedPort * discovery.Port ) {
225
+ func (sp * serialPortList ) remove (removedPort * discovery.Port ) {
230
226
sp .portsLock .Lock ()
231
227
defer sp .portsLock .Unlock ()
232
228
@@ -237,7 +233,7 @@ func (sp *SerialPortList) remove(removedPort *discovery.Port) {
237
233
}
238
234
239
235
// MarkPortAsOpened marks a port as opened by the user
240
- func (sp * SerialPortList ) MarkPortAsOpened (portname string ) {
236
+ func (sp * serialPortList ) MarkPortAsOpened (portname string ) {
241
237
sp .portsLock .Lock ()
242
238
defer sp .portsLock .Unlock ()
243
239
port := sp .getPortByName (portname )
@@ -247,7 +243,7 @@ func (sp *SerialPortList) MarkPortAsOpened(portname string) {
247
243
}
248
244
249
245
// MarkPortAsClosed marks a port as no more opened by the user
250
- func (sp * SerialPortList ) MarkPortAsClosed (portname string ) {
246
+ func (sp * serialPortList ) MarkPortAsClosed (portname string ) {
251
247
sp .portsLock .Lock ()
252
248
defer sp .portsLock .Unlock ()
253
249
port := sp .getPortByName (portname )
@@ -256,7 +252,7 @@ func (sp *SerialPortList) MarkPortAsClosed(portname string) {
256
252
}
257
253
}
258
254
259
- func (sp * SerialPortList ) getPortByName (portname string ) * SpPortItem {
255
+ func (sp * serialPortList ) getPortByName (portname string ) * SpPortItem {
260
256
for _ , port := range sp .Ports {
261
257
if port .Name == portname {
262
258
return port
@@ -265,13 +261,13 @@ func (sp *SerialPortList) getPortByName(portname string) *SpPortItem {
265
261
return nil
266
262
}
267
263
268
- func (h * Hub ) spErr (err string ) {
264
+ func (h * hub ) spErr (err string ) {
269
265
//log.Println("Sending err back: ", err)
270
266
//sh.hub.broadcastSys <- []byte(err)
271
267
h .broadcastSys <- []byte ("{\" Error\" : \" " + err + "\" }" )
272
268
}
273
269
274
- func (h * Hub ) spClose (portname string ) {
270
+ func (h * hub ) spClose (portname string ) {
275
271
if myport , ok := h .serialHub .FindPortByName (portname ); ok {
276
272
h .broadcastSys <- []byte ("Closing serial port " + portname )
277
273
myport .Close ()
@@ -280,7 +276,7 @@ func (h *Hub) spClose(portname string) {
280
276
}
281
277
}
282
278
283
- func (h * Hub ) spWrite (arg string ) {
279
+ func (h * hub ) spWrite (arg string ) {
284
280
// we will get a string of comXX asdf asdf asdf
285
281
//log.Println("Inside spWrite arg: " + arg)
286
282
arg = strings .TrimPrefix (arg , " " )
0 commit comments