1 package org.synchronoss.cpo.core.enums;
2
3 /*-
4 * [[
5 * core
6 * ==
7 * Copyright (C) 2003 - 2026 Exaxis LLC, Synchronoss Technologies Inc
8 * ==
9 * This program is free software: you can redistribute it and/or modify
10 * it under the terms of the GNU Lesser General Public License as
11 * published by the Free Software Foundation, either version 3 of the
12 * License, or (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Lesser Public License for more details.
18 *
19 * You should have received a copy of the GNU General Lesser Public
20 * License along with this program. If not, see
21 * <http://www.gnu.org/licenses/lgpl-3.0.html>.
22 * ]]
23 */
24
25 /** The kinds of operation a CPO function group can perform against a datasource. */
26 public enum Crud {
27 /**
28 * Identifies the operation to be processed by the CPO. CREATE signifies that the CPO will try to
29 * add the object to the datasource.
30 */
31 CREATE("CREATE"),
32
33 /**
34 * Identifies the operation to be processed by CPO. UPDATE signifies that the CPO will try to
35 * update the object in the datasource.
36 */
37 UPDATE("UPDATE"),
38
39 /**
40 * Identifies the operation to be processed by CPO. DELETE signifies that the CPO will try to
41 * delete the object in the datasource.
42 */
43 DELETE("DELETE"),
44
45 /**
46 * Identifies the operation to be processed by CPO. RETRIEVE signifies that the CPO will try to
47 * retrieve a single object from the datasource.
48 */
49 RETRIEVE("RETRIEVE"),
50
51 /**
52 * Identifies the operation to be processed by CPO. LIST signifies that the CPO will try to
53 * retrieve one or more objects from the datasource.
54 */
55 LIST("LIST"),
56
57 /**
58 * Identifies the operation to be processed by CPO. UPSERT signifies that the CPO will try to add
59 * or update the object in the datasource.
60 */
61 UPSERT("UPSERT"),
62
63 /**
64 * Identifies the operation to be processed by CPO. EXIST signifies that the CPO will check to see
65 * if the object exists in the datasource.
66 */
67 EXIST("EXIST"),
68
69 /**
70 * Identifies the operation to be processed by the CPO. EXECUTE signifies that the CPO will try to
71 * execute a function or procedure in the datasource.
72 */
73 EXECUTE("EXECUTE");
74
75 /** The string operation in this enum */
76 public final String operation;
77
78 Crud(String operation) {
79 this.operation = operation;
80 }
81 }