kinetic-c  v0.12.0
Seagate Kinetic Protocol Client Library for C
kinetic_builder.h
Go to the documentation of this file.
1 /*
2 * kinetic-c
3 * Copyright (C) 2015 Seagate Technology.
4 *
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License
7 * as published by the Free Software Foundation; either version 2
8 * of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18 *
19 */
20 
21 #ifndef _KINETIC_BUILDER_H
22 #define _KINETIC_BUILDER_H
23 
24 #include "kinetic_types_internal.h"
25 
26 /* Operations with non-standard timeouts. */
27 typedef enum {
33 
34 /*******************************************************************************
35  * Standard Client Operations
36 *******************************************************************************/
37 KineticStatus KineticBuilder_BuildNoop(KineticOperation* op);
38 KineticStatus KineticBuilder_BuildPut(KineticOperation* const op,
39  KineticEntry* const entry);
40 KineticStatus KineticBuilder_BuildGet(KineticOperation* const op,
41  KineticEntry* const entry);
42 KineticStatus KineticBuilder_BuildGetNext(KineticOperation* const op,
43  KineticEntry* const entry);
44 KineticStatus KineticBuilder_BuildGetPrevious(KineticOperation* const op,
45  KineticEntry* const entry);
46 KineticStatus KineticBuilder_BuildFlush(KineticOperation* const op);
47 KineticStatus KineticBuilder_BuildDelete(KineticOperation* const op,
48  KineticEntry* const entry);
49 KineticStatus KineticBuilder_BuildGetKeyRange(KineticOperation* const op,
50  KineticKeyRange* range, ByteBufferArray* buffers);
51 KineticStatus KineticBuilder_BuildP2POperation(KineticOperation* const op,
52  KineticP2P_Operation* const p2pOp);
53 
54 /*******************************************************************************
55  * Admin Client Operations
56 *******************************************************************************/
57 KineticStatus KineticBuilder_BuildGetLog(KineticOperation* const op,
59 KineticStatus KineticBuilder_BuildSetPin(KineticOperation* const op,
60  ByteArray old_pin, ByteArray new_pin, bool lock);
61 KineticStatus KineticBuilder_BuildErase(KineticOperation* const op,
62  bool secure_erase, ByteArray* pin);
63 KineticStatus KineticBuilder_BuildLockUnlock(KineticOperation* const op,
64  bool lock, ByteArray* pin);
65 KineticStatus KineticBuilder_BuildSetACL(KineticOperation* const op,
66  struct ACL *ACLs);
67 KineticStatus KineticBuilder_BuildSetClusterVersion(KineticOperation* const op,
68  int64_t new_cluster_version);
69 KineticStatus KineticBuilder_BuildUpdateFirmware(KineticOperation* const op,
70  const char* fw_path);
71 
72 #endif // _KINETIC_BUILDER_H
Structure for handling generic arrays of bytes.
Definition: byte_array.h:34
KineticStatus KineticBuilder_BuildErase(KineticOperation *const op, bool secure_erase, ByteArray *pin)
KineticStatus KineticBuilder_BuildFlush(KineticOperation *const op)
KineticStatus KineticBuilder_BuildLockUnlock(KineticOperation *const op, bool lock, ByteArray *pin)
KineticStatus KineticBuilder_BuildP2POperation(KineticOperation *const op, KineticP2P_Operation *const p2pOp)
KineticStatus KineticBuilder_BuildSetClusterVersion(KineticOperation *const op, int64_t new_cluster_version)
KineticStatus KineticBuilder_BuildSetPin(KineticOperation *const op, ByteArray old_pin, ByteArray new_pin, bool lock)
KineticStatus KineticBuilder_BuildGetPrevious(KineticOperation *const op, KineticEntry *const entry)
KineticStatus KineticBuilder_BuildGetLog(KineticOperation *const op, Com__Seagate__Kinetic__Proto__Command__GetLog__Type type, ByteArray name, KineticLogInfo **info)
KineticStatus KineticBuilder_BuildUpdateFirmware(KineticOperation *const op, const char *fw_path)
KineticStatus KineticBuilder_BuildNoop(KineticOperation *op)
Com__Seagate__Kinetic__Proto__Command__GetLog__Type
Definition: kinetic.pb-c.h:161
Kinetic object instance.
KineticStatus KineticBuilder_BuildGet(KineticOperation *const op, KineticEntry *const entry)
Kinetic Key Range request structure.
Base log info structure which is allocated by client and passed to KineticAdminClient_GetLog.
KineticStatus KineticBuilder_BuildGetNext(KineticOperation *const op, KineticEntry *const entry)
Com__Seagate__Kinetic__Proto__Command__Security__ACL ** ACLs
ACL struct array.
KineticStatus KineticBuilder_BuildPut(KineticOperation *const op, KineticEntry *const entry)
KineticStatus KineticBuilder_BuildGetKeyRange(KineticOperation *const op, KineticKeyRange *range, ByteBufferArray *buffers)
KineticStatus
Kinetic status codes.
KineticStatus KineticBuilder_BuildDelete(KineticOperation *const op, KineticEntry *const entry)
KineticStatus KineticBuilder_BuildSetACL(KineticOperation *const op, struct ACL *ACLs)
KineticOperation_NonstandardTimeout