blob: c7af374d6c34339af97007bee1528a84c6a9f672 [file] [log] [blame]
Devmalya Paul495b94a2019-08-27 19:42:00 -04001/*
2 * Copyright 2018-present Open Networking Foundation
3
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7
8 * http://www.apache.org/licenses/LICENSE-2.0
9
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package adapterif
18
19import (
20 "context"
21
Scott Bakerc6e54cb2019-11-04 09:31:25 -080022 "github.com/opencord/voltha-protos/v2/go/voltha"
Devmalya Paul495b94a2019-08-27 19:42:00 -040023)
24
25// CoreProxy interface for voltha-go coreproxy.
26type CoreProxy interface {
27 UpdateCoreReference(deviceID string, coreReference string)
28 DeleteCoreReference(deviceID string)
29 // getCoreTopic(deviceID string) kafka.Topic
30 //GetAdapterTopic(args ...string) kafka.Topic
31 // getAdapterTopic(args ...string) kafka.Topic
32 RegisterAdapter(ctx context.Context, adapter *voltha.Adapter, deviceTypes *voltha.DeviceTypes) error
33 DeviceUpdate(ctx context.Context, device *voltha.Device) error
34 PortCreated(ctx context.Context, deviceID string, port *voltha.Port) error
35 PortsStateUpdate(ctx context.Context, deviceID string, operStatus voltha.OperStatus_OperStatus) error
36 DeleteAllPorts(ctx context.Context, deviceID string) error
37 DeviceStateUpdate(ctx context.Context, deviceID string,
38 connStatus voltha.ConnectStatus_ConnectStatus, operStatus voltha.OperStatus_OperStatus) error
39
Naga Manjunath7615e552019-10-11 22:35:47 +053040 DevicePMConfigUpdate(ctx context.Context, pmConfigs *voltha.PmConfigs) error
Devmalya Paul495b94a2019-08-27 19:42:00 -040041 ChildDeviceDetected(ctx context.Context, parentDeviceID string, parentPortNo int,
42 childDeviceType string, channelID int, vendorID string, serialNumber string, onuID int64) (*voltha.Device, error)
43
44 ChildDevicesLost(ctx context.Context, parentDeviceID string) error
45 ChildDevicesDetected(ctx context.Context, parentDeviceID string) error
46 GetDevice(ctx context.Context, parentDeviceID string, deviceID string) (*voltha.Device, error)
47 GetChildDevice(ctx context.Context, parentDeviceID string, kwargs map[string]interface{}) (*voltha.Device, error)
48 GetChildDevices(ctx context.Context, parentDeviceID string) (*voltha.Devices, error)
49 SendPacketIn(ctx context.Context, deviceID string, port uint32, pktPayload []byte) error
David Bainbridgebe7cac12019-10-23 19:53:07 +000050 DeviceReasonUpdate(ctx context.Context, deviceID string, deviceReason string) error
Chaitrashree G Sded0a832020-01-09 20:21:48 -050051 PortStateUpdate(ctx context.Context, deviceID string, pType voltha.Port_PortType, portNo uint32,
52 operStatus voltha.OperStatus_OperStatus) error
Devmalya Paul495b94a2019-08-27 19:42:00 -040053}