mirror of
https://github.com/onyx-and-iris/vbantxt.git
synced 2025-01-17 21:10:49 +00:00
move indexOf into the vbantxt package.
improve the warning message on invalid bps value
This commit is contained in:
parent
7a844e3624
commit
ae170ca572
@ -82,12 +82,12 @@ func main() {
|
||||
}
|
||||
}
|
||||
|
||||
func createClient(host string, port int, streamname string, bps int, channel, ratelimit int) (*vbantxt.VbanTxt, error) {
|
||||
func createClient(host string, port int, streamname string, bps, channel, ratelimit int) (*vbantxt.VbanTxt, error) {
|
||||
client, err := vbantxt.New(
|
||||
host,
|
||||
port,
|
||||
streamname,
|
||||
vbantxt.WithBPSOpt(indexOf(vbantxt.BpsOpts, bps)),
|
||||
vbantxt.WithBPSOpt(bps),
|
||||
vbantxt.WithChannel(channel),
|
||||
vbantxt.WithRateLimit(time.Duration(ratelimit)*time.Millisecond))
|
||||
if err != nil {
|
||||
|
@ -15,12 +15,3 @@ func flagsPassed(flags []string) bool {
|
||||
})
|
||||
return found
|
||||
}
|
||||
|
||||
func indexOf[T comparable](collection []T, e T) int {
|
||||
for i, x := range collection {
|
||||
if x == e {
|
||||
return i
|
||||
}
|
||||
}
|
||||
return -1
|
||||
}
|
||||
|
@ -17,10 +17,11 @@ func WithRateLimit(ratelimit time.Duration) Option {
|
||||
}
|
||||
|
||||
// WithBPSOpt is a functional option to set the bps index for {VbanTx}.{Packet}.bpsIndex
|
||||
func WithBPSOpt(bpsIndex int) Option {
|
||||
func WithBPSOpt(bps int) Option {
|
||||
return func(vt *VbanTxt) {
|
||||
if bpsIndex < 0 || bpsIndex >= len(BpsOpts) {
|
||||
log.Warnf("invalid bpsIndex %d, defaulting to 0", bpsIndex)
|
||||
bpsIndex := indexOf(BpsOpts, bps)
|
||||
if bpsIndex == -1 {
|
||||
log.Warnf("invalid bps value %d, expected one of %v, defaulting to 0", bps, BpsOpts)
|
||||
return
|
||||
}
|
||||
vt.packet.bpsIndex = bpsIndex
|
||||
|
Loading…
Reference in New Issue
Block a user