blob: ba714aff2e45c8dd0c26e0e70cca4c7e6546fd58 [file] [log] [blame]
Madan Jampani08822c42014-11-04 17:17:46 -08001package org.onlab.onos.store.service.impl;
2
3import org.onlab.onos.store.service.WriteResult;
4
Madan Jampani686fa182014-11-04 23:16:27 -08005/**
6 * Result of a write operation executed on the DatabaseStateMachine.
7 */
Madan Jampani08822c42014-11-04 17:17:46 -08008public class InternalWriteResult {
9
10 public enum Status {
11 OK,
12 ABORTED,
13 NO_SUCH_TABLE,
Yuta HIGUCHI361664e2014-11-06 17:28:47 -080014 PREVIOUS_VERSION_MISMATCH,
Madan Jampani08822c42014-11-04 17:17:46 -080015 PREVIOUS_VALUE_MISMATCH
16 }
17
18 private final Status status;
19 private final WriteResult result;
20
Yuta HIGUCHI361664e2014-11-06 17:28:47 -080021 public static InternalWriteResult ok(WriteResult result) {
22 return new InternalWriteResult(Status.OK, result);
23 }
24
Madan Jampani08822c42014-11-04 17:17:46 -080025 public InternalWriteResult(Status status, WriteResult result) {
26 this.status = status;
27 this.result = result;
28 }
29
30 public Status status() {
31 return status;
32 }
33
34 public WriteResult result() {
35 return result;
36 }
37}