blob: 9ec62d310064873f5e7502e49047f5bc57e6099c [file] [log] [blame]
Thomas Vachuska58de4162015-09-10 16:15:33 -07001/*
2 * Copyright 2015 Open Networking Laboratory
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 */
Sho SHIMIZUe4efe452015-08-26 15:06:55 -070016package org.onosproject.ovsdb.rfc.utils;
17
18import org.onosproject.ovsdb.rfc.notation.Mutation;
19import org.onosproject.ovsdb.rfc.notation.Mutation.Mutator;
20
21public final class MutationUtil {
22
23 /**
24 * Constructs a MutationUtil object. Utility classes should not have a
25 * public or default constructor, otherwise IDE will compile unsuccessfully. This
26 * class should not be instantiated.
27 */
28 private MutationUtil() {
29 }
30
31 /**
32 * Returns a Mutation that means += .
33 * @param columnName column name
34 * @param data column value
35 * @return Mutation
36 */
37 public static Mutation sum(String columnName, Object data) {
38 Object value = TransValueUtil.getFormatData(data);
39 return new Mutation(columnName, Mutator.SUM, value);
40 }
41
42 /**
43 * Returns a Mutation that means -= .
44 * @param columnName column name
45 * @param data column value
46 * @return Mutation
47 */
48 public static Mutation difference(String columnName, Object data) {
49 Object value = TransValueUtil.getFormatData(data);
50 return new Mutation(columnName, Mutator.DIFFERENCE, value);
51 }
52
53 /**
54 * Returns a Mutation that means *= .
55 * @param columnName column name
56 * @param data column value
57 * @return Mutation
58 */
59 public static Mutation product(String columnName, Object data) {
60 Object value = TransValueUtil.getFormatData(data);
61 return new Mutation(columnName, Mutator.PRODUCT, value);
62 }
63
64 /**
65 * Returns a Mutation that means /= .
66 * @param columnName column name
67 * @param data column value
68 * @return Mutation
69 */
70 public static Mutation quotient(String columnName, Object data) {
71 Object value = TransValueUtil.getFormatData(data);
72 return new Mutation(columnName, Mutator.QUOTIENT, value);
73 }
74
75 /**
76 * Returns a Mutation that means %= .
77 * @param columnName column name
78 * @param data column value
79 * @return Mutation
80 */
81 public static Mutation remainder(String columnName, Object data) {
82 Object value = TransValueUtil.getFormatData(data);
83 return new Mutation(columnName, Mutator.REMAINDER, value);
84 }
85
86 /**
87 * Returns a Mutation that means insert .
88 * @param columnName column name
89 * @param data column value
90 * @return Mutation
91 */
92 public static Mutation insert(String columnName, Object data) {
93 Object value = TransValueUtil.getFormatData(data);
94 return new Mutation(columnName, Mutator.INSERT, value);
95 }
96
97 /**
98 * Returns a Mutation that means delete .
99 * @param columnName column name
100 * @param data column value
101 * @return Mutation
102 */
103 public static Mutation delete(String columnName, Object data) {
104 Object value = TransValueUtil.getFormatData(data);
105 return new Mutation(columnName, Mutator.DELETE, value);
106 }
107}