blob: 3cbabc2dea87f73985e14e3e8f01f326e4da4387 [file] [log] [blame]
Shravan Ambatibb6b4452016-05-04 13:25:28 -07001/**
2 * Copyright 2016 Open Networking Laboratory
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 */
15package org.onosproject.kafkaintegration.converter;
16
17import org.onosproject.event.Event;
18
Yuta HIGUCHI9efba1e2016-07-09 11:07:13 -070019import com.google.protobuf.GeneratedMessageV3;
Shravan Ambatibb6b4452016-05-04 13:25:28 -070020
21/**
22 *
Sanjana Agarwalcb4a3db2016-07-14 11:42:48 -070023 * APIs for converting between ONOS event objects and protobuf data objects.
Shravan Ambatibb6b4452016-05-04 13:25:28 -070024 *
25 */
26public interface EventConverter {
27
28 /**
29 * Converts ONOS specific event data to a format that is suitable for export
30 * to Kafka.
31 *
32 * @param event ONOS Event object
Sanjana Agarwalcb4a3db2016-07-14 11:42:48 -070033 * @return converted data in protobuf format.
Shravan Ambatibb6b4452016-05-04 13:25:28 -070034 */
Yuta HIGUCHI9efba1e2016-07-09 11:07:13 -070035 // FIXME reconsider return type, something similar to "OnosEvent"?
36 GeneratedMessageV3 convertToProtoMessage(Event<?, ?> event);
Shravan Ambatibb6b4452016-05-04 13:25:28 -070037}