blob: 46ca0b843988020336f49e9af6a387eb9729a3cb [file] [log] [blame]
Jordan Halterman2bf177c2017-06-29 01:49:08 -07001/*
Jordan Halterman00e92da2018-05-22 23:05:52 -07002 * Copyright 2018-present Open Networking Foundation
Jordan Halterman2bf177c2017-06-29 01:49:08 -07003 *
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 */
Jordan Halterman00e92da2018-05-22 23:05:52 -070016package org.onosproject.store.primitives.impl;
Jordan Halterman2bf177c2017-06-29 01:49:08 -070017
18import org.onosproject.store.service.Serializer;
19
20/**
Jordan Halterman00e92da2018-05-22 23:05:52 -070021 * Atomix serializer.
Jordan Halterman2bf177c2017-06-29 01:49:08 -070022 */
Jordan Halterman00e92da2018-05-22 23:05:52 -070023public class AtomixSerializerAdapter implements io.atomix.utils.serializer.Serializer {
Jordan Halterman2bf177c2017-06-29 01:49:08 -070024 private final Serializer serializer;
25
26 public AtomixSerializerAdapter(Serializer serializer) {
27 this.serializer = serializer;
28 }
29
30 @Override
31 public <T> byte[] encode(T object) {
32 return serializer.encode(object);
33 }
34
35 @Override
36 public <T> T decode(byte[] bytes) {
37 return serializer.decode(bytes);
38 }
Jordan Halterman00e92da2018-05-22 23:05:52 -070039}