X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=third-party%2Fatomix%2Futils%2Fsrc%2Fmain%2Fjava%2Fio%2Fatomix%2Futils%2Fserializer%2FSerializer.java;fp=third-party%2Fatomix%2Futils%2Fsrc%2Fmain%2Fjava%2Fio%2Fatomix%2Futils%2Fserializer%2FSerializer.java;h=0000000000000000000000000000000000000000;hb=88b2fe8c90d9c5b2bd6b811d88396cafc5427011;hp=ec3aa6ff55f78c9d56c73251d4fe58d895299c9c;hpb=7561eca547631ad4816b8f322b6aacb9e6a5ddb7;p=controller.git diff --git a/third-party/atomix/utils/src/main/java/io/atomix/utils/serializer/Serializer.java b/third-party/atomix/utils/src/main/java/io/atomix/utils/serializer/Serializer.java deleted file mode 100644 index ec3aa6ff55..0000000000 --- a/third-party/atomix/utils/src/main/java/io/atomix/utils/serializer/Serializer.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright 2015-present Open Networking Foundation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package io.atomix.utils.serializer; - -/** - * Interface for serialization of store artifacts. - */ -public interface Serializer { - - /** - * Creates a new serializer builder. - * - * @return a new serializer builder - */ - static SerializerBuilder builder() { - return new SerializerBuilder(); - } - - /** - * Creates a new serializer builder. - * - * @param name the serializer name - * @return a new serializer builder - */ - static SerializerBuilder builder(String name) { - return new SerializerBuilder(name); - } - - /** - * Serialize the specified object. - * - * @param object object to serialize. - * @param encoded type - * @return serialized bytes. - */ - byte[] encode(T object); - - /** - * Deserialize the specified bytes. - * - * @param bytes byte array to deserialize. - * @param decoded type - * @return deserialized object. - */ - T decode(byte[] bytes); - - /** - * Creates a new Serializer instance from a Namespace. - * - * @param namespace serializer namespace - * @return Serializer instance - */ - static Serializer using(Namespace namespace) { - return new Serializer() { - @Override - public byte[] encode(T object) { - return namespace.serialize(object); - } - - @Override - public T decode(byte[] bytes) { - return namespace.deserialize(bytes); - } - }; - } - -}