blob: e6d2b2a4c09a3f3c59c6703b69c4d7b76f40ab57 [file] [log] [blame]
Jordan Haltermana76f2312018-01-25 16:56:45 -08001/*
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 */
16package org.onosproject.store.primitives.resources.impl;
17
18import io.atomix.protocols.raft.event.EventType;
19import org.onlab.util.KryoNamespace;
20import org.onosproject.store.serializers.KryoNamespaces;
21
22/**
23 * Raft value events.
24 */
25public enum AtomixDistributedLockEvents implements EventType {
Jordan Halterman12421682018-02-01 17:46:09 -080026 LOCKED("lock"),
27 FAILED("fail");
Jordan Haltermana76f2312018-01-25 16:56:45 -080028
29 private final String id;
30
31 AtomixDistributedLockEvents(String id) {
32 this.id = id;
33 }
34
35 @Override
36 public String id() {
37 return id;
38 }
39
40 public static final KryoNamespace NAMESPACE = KryoNamespace.newBuilder()
41 .nextId(KryoNamespaces.BEGIN_USER_CUSTOM_ID + 50)
42 .register(LockEvent.class)
43 .register(byte[].class)
44 .build(AtomixDistributedLockEvents.class.getSimpleName());
45
46}