Introduce StatsAPI and it's initial implementation
[govpp.git] / adapter / vppapiclient / stat_client_stub.go
1 // Copyright (c) 2018 Cisco and/or its affiliates.
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 // +build windows darwin
16
17 package vppapiclient
18
19 import (
20         "git.fd.io/govpp.git/adapter"
21 )
22
23 // StatClient is just an stub adapter that does nothing. It builds only on Windows and OSX, where the real
24 // VPP stats API client adapter does not build. Its sole purpose is to make the compiler happy on Windows and OSX.
25 type StatClient struct{}
26
27 func NewStatClient(socketName string) *StatClient {
28         return new(StatClient)
29 }
30
31 func (*StatClient) Connect() error {
32         return adapter.ErrNotImplemented
33 }
34
35 func (*StatClient) Disconnect() error {
36         return nil
37 }
38
39 func (*StatClient) ListStats(patterns ...string) (statNames []string, err error) {
40         return nil, adapter.ErrNotImplemented
41 }
42
43 func (*StatClient) DumpStats(patterns ...string) ([]*adapter.StatEntry, error) {
44         return nil, adapter.ErrNotImplemented
45 }