/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 1.3.31
 *
 * Do not make changes to this file unless you know what you are doing--modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */

package com.scalien.scaliendb;

public class scaliendb_client {
  public static long imaxabs(long n) {
    return scaliendb_clientJNI.imaxabs(n);
  }

  public static imaxdiv_t imaxdiv(long numer, long denom) {
    return new imaxdiv_t(scaliendb_clientJNI.imaxdiv(numer, denom), true);
  }

  public static long strtoimax(String nptr, SWIGTYPE_p_p_char endptr, int base) {
    return scaliendb_clientJNI.strtoimax(nptr, SWIGTYPE_p_p_char.getCPtr(endptr), base);
  }

  public static java.math.BigInteger strtoumax(String nptr, SWIGTYPE_p_p_char endptr, int base) {
    return scaliendb_clientJNI.strtoumax(nptr, SWIGTYPE_p_p_char.getCPtr(endptr), base);
  }

  public static void SDBP_ResultClose(SWIGTYPE_p_void result) {
    scaliendb_clientJNI.SDBP_ResultClose(SWIGTYPE_p_void.getCPtr(result));
  }

  public static String SDBP_ResultKey(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultKey(SWIGTYPE_p_void.getCPtr(result));
  }

  public static String SDBP_ResultValue(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultValue(SWIGTYPE_p_void.getCPtr(result));
  }

  public static byte[] SDBP_ResultKeyBuffer(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultKeyBuffer(SWIGTYPE_p_void.getCPtr(result));
}

  public static byte[] SDBP_ResultValueBuffer(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultValueBuffer(SWIGTYPE_p_void.getCPtr(result));
}

  public static long SDBP_ResultSignedNumber(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultSignedNumber(SWIGTYPE_p_void.getCPtr(result));
  }

  public static long SDBP_ResultNumber(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultNumber(SWIGTYPE_p_void.getCPtr(result));
  }

  public static boolean SDBP_ResultIsConditionalSuccess(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultIsConditionalSuccess(SWIGTYPE_p_void.getCPtr(result));
  }

  public static long SDBP_ResultDatabaseID(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultDatabaseID(SWIGTYPE_p_void.getCPtr(result));
  }

  public static long SDBP_ResultTableID(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultTableID(SWIGTYPE_p_void.getCPtr(result));
  }

  public static void SDBP_ResultBegin(SWIGTYPE_p_void result) {
    scaliendb_clientJNI.SDBP_ResultBegin(SWIGTYPE_p_void.getCPtr(result));
  }

  public static void SDBP_ResultNext(SWIGTYPE_p_void result) {
    scaliendb_clientJNI.SDBP_ResultNext(SWIGTYPE_p_void.getCPtr(result));
  }

  public static boolean SDBP_ResultIsEnd(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultIsEnd(SWIGTYPE_p_void.getCPtr(result));
  }

  public static boolean SDBP_ResultIsFinished(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultIsFinished(SWIGTYPE_p_void.getCPtr(result));
  }

  public static int SDBP_ResultTransportStatus(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultTransportStatus(SWIGTYPE_p_void.getCPtr(result));
  }

  public static int SDBP_ResultCommandStatus(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultCommandStatus(SWIGTYPE_p_void.getCPtr(result));
  }

  public static long SDBP_ResultNumNodes(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultNumNodes(SWIGTYPE_p_void.getCPtr(result));
  }

  public static long SDBP_ResultNodeID(SWIGTYPE_p_void result, long n) {
    return scaliendb_clientJNI.SDBP_ResultNodeID(SWIGTYPE_p_void.getCPtr(result), n);
  }

  public static long SDBP_ResultElapsedTime(SWIGTYPE_p_void result) {
    return scaliendb_clientJNI.SDBP_ResultElapsedTime(SWIGTYPE_p_void.getCPtr(result));
  }

  public static SWIGTYPE_p_void SDBP_Create() {
    long cPtr = scaliendb_clientJNI.SDBP_Create();
    return (cPtr == 0) ? null : new SWIGTYPE_p_void(cPtr, false);
  }

  public static int SDBP_Init(SWIGTYPE_p_void client, SDBP_NodeParams params) {
    return scaliendb_clientJNI.SDBP_Init(SWIGTYPE_p_void.getCPtr(client), SDBP_NodeParams.getCPtr(params), params);
  }

  public static void SDBP_Destroy(SWIGTYPE_p_void client) {
    scaliendb_clientJNI.SDBP_Destroy(SWIGTYPE_p_void.getCPtr(client));
  }

  public static SWIGTYPE_p_void SDBP_GetResult(SWIGTYPE_p_void client) {
    long cPtr = scaliendb_clientJNI.SDBP_GetResult(SWIGTYPE_p_void.getCPtr(client));
    return (cPtr == 0) ? null : new SWIGTYPE_p_void(cPtr, false);
  }

  public static void SDBP_SetGlobalTimeout(SWIGTYPE_p_void client, long timeout) {
    scaliendb_clientJNI.SDBP_SetGlobalTimeout(SWIGTYPE_p_void.getCPtr(client), timeout);
  }

  public static void SDBP_SetMasterTimeout(SWIGTYPE_p_void client, long timeout) {
    scaliendb_clientJNI.SDBP_SetMasterTimeout(SWIGTYPE_p_void.getCPtr(client), timeout);
  }

  public static long SDBP_GetGlobalTimeout(SWIGTYPE_p_void client) {
    return scaliendb_clientJNI.SDBP_GetGlobalTimeout(SWIGTYPE_p_void.getCPtr(client));
  }

  public static long SDBP_GetMasterTimeout(SWIGTYPE_p_void client) {
    return scaliendb_clientJNI.SDBP_GetMasterTimeout(SWIGTYPE_p_void.getCPtr(client));
  }

  public static String SDBP_GetJSONConfigState(SWIGTYPE_p_void client) {
    return scaliendb_clientJNI.SDBP_GetJSONConfigState(SWIGTYPE_p_void.getCPtr(client));
  }

  public static void SDBP_WaitConfigState(SWIGTYPE_p_void client) {
    scaliendb_clientJNI.SDBP_WaitConfigState(SWIGTYPE_p_void.getCPtr(client));
  }

  public static void SDBP_SetConsistencyMode(SWIGTYPE_p_void client, int consistencyMode) {
    scaliendb_clientJNI.SDBP_SetConsistencyMode(SWIGTYPE_p_void.getCPtr(client), consistencyMode);
  }

  public static void SDBP_SetBatchMode(SWIGTYPE_p_void client, int batchMode) {
    scaliendb_clientJNI.SDBP_SetBatchMode(SWIGTYPE_p_void.getCPtr(client), batchMode);
  }

  public static void SDBP_SetBatchLimit(SWIGTYPE_p_void client, long batchLimit) {
    scaliendb_clientJNI.SDBP_SetBatchLimit(SWIGTYPE_p_void.getCPtr(client), batchLimit);
  }

  public static int SDBP_CreateDatabase(SWIGTYPE_p_void client, String name) {
    return scaliendb_clientJNI.SDBP_CreateDatabase(SWIGTYPE_p_void.getCPtr(client), name);
  }

  public static int SDBP_RenameDatabase(SWIGTYPE_p_void client, long databaseID, String name) {
    return scaliendb_clientJNI.SDBP_RenameDatabase(SWIGTYPE_p_void.getCPtr(client), databaseID, name);
  }

  public static int SDBP_DeleteDatabase(SWIGTYPE_p_void client, long databaseID) {
    return scaliendb_clientJNI.SDBP_DeleteDatabase(SWIGTYPE_p_void.getCPtr(client), databaseID);
  }

  public static int SDBP_CreateTable(SWIGTYPE_p_void client, long databaseID, long quorumID, String name) {
    return scaliendb_clientJNI.SDBP_CreateTable(SWIGTYPE_p_void.getCPtr(client), databaseID, quorumID, name);
  }

  public static int SDBP_RenameTable(SWIGTYPE_p_void client, long tableID, String name) {
    return scaliendb_clientJNI.SDBP_RenameTable(SWIGTYPE_p_void.getCPtr(client), tableID, name);
  }

  public static int SDBP_DeleteTable(SWIGTYPE_p_void client, long tableID) {
    return scaliendb_clientJNI.SDBP_DeleteTable(SWIGTYPE_p_void.getCPtr(client), tableID);
  }

  public static int SDBP_TruncateTable(SWIGTYPE_p_void client, long tableID) {
    return scaliendb_clientJNI.SDBP_TruncateTable(SWIGTYPE_p_void.getCPtr(client), tableID);
  }

  public static long SDBP_GetNumQuorums(SWIGTYPE_p_void client) {
    return scaliendb_clientJNI.SDBP_GetNumQuorums(SWIGTYPE_p_void.getCPtr(client));
  }

  public static long SDBP_GetQuorumIDAt(SWIGTYPE_p_void client, long n) {
    return scaliendb_clientJNI.SDBP_GetQuorumIDAt(SWIGTYPE_p_void.getCPtr(client), n);
  }

  public static String SDBP_GetQuorumNameAt(SWIGTYPE_p_void client, long n) {
    return scaliendb_clientJNI.SDBP_GetQuorumNameAt(SWIGTYPE_p_void.getCPtr(client), n);
  }

  public static long SDBP_GetQuorumIDByName(SWIGTYPE_p_void client, String name) {
    return scaliendb_clientJNI.SDBP_GetQuorumIDByName(SWIGTYPE_p_void.getCPtr(client), name);
  }

  public static long SDBP_GetNumDatabases(SWIGTYPE_p_void client) {
    return scaliendb_clientJNI.SDBP_GetNumDatabases(SWIGTYPE_p_void.getCPtr(client));
  }

  public static long SDBP_GetDatabaseIDAt(SWIGTYPE_p_void client, long n) {
    return scaliendb_clientJNI.SDBP_GetDatabaseIDAt(SWIGTYPE_p_void.getCPtr(client), n);
  }

  public static String SDBP_GetDatabaseNameAt(SWIGTYPE_p_void client, long n) {
    return scaliendb_clientJNI.SDBP_GetDatabaseNameAt(SWIGTYPE_p_void.getCPtr(client), n);
  }

  public static long SDBP_GetDatabaseIDByName(SWIGTYPE_p_void client, String name) {
    return scaliendb_clientJNI.SDBP_GetDatabaseIDByName(SWIGTYPE_p_void.getCPtr(client), name);
  }

  public static long SDBP_GetNumTables(SWIGTYPE_p_void client, long databaseID) {
    return scaliendb_clientJNI.SDBP_GetNumTables(SWIGTYPE_p_void.getCPtr(client), databaseID);
  }

  public static long SDBP_GetTableIDAt(SWIGTYPE_p_void client, long databaseID, long n) {
    return scaliendb_clientJNI.SDBP_GetTableIDAt(SWIGTYPE_p_void.getCPtr(client), databaseID, n);
  }

  public static String SDBP_GetTableNameAt(SWIGTYPE_p_void client, long databaseID, long n) {
    return scaliendb_clientJNI.SDBP_GetTableNameAt(SWIGTYPE_p_void.getCPtr(client), databaseID, n);
  }

  public static long SDBP_GetTableIDByName(SWIGTYPE_p_void client, long databaseID, String name) {
    return scaliendb_clientJNI.SDBP_GetTableIDByName(SWIGTYPE_p_void.getCPtr(client), databaseID, name);
  }

  public static int SDBP_Get(SWIGTYPE_p_void client, long tableID, String key) {
    return scaliendb_clientJNI.SDBP_Get(SWIGTYPE_p_void.getCPtr(client), tableID, key);
  }

  public static int SDBP_GetCStr(SWIGTYPE_p_void client, long tableID, byte[] key, int len) {
    return scaliendb_clientJNI.SDBP_GetCStr(SWIGTYPE_p_void.getCPtr(client), tableID, key, len);
  }

  public static int SDBP_Set(SWIGTYPE_p_void client, long tableID, String key, String value) {
    return scaliendb_clientJNI.SDBP_Set(SWIGTYPE_p_void.getCPtr(client), tableID, key, value);
  }

  public static int SDBP_SetCStr(SWIGTYPE_p_void client_, long tableID, byte[] key, int lenKey, byte[] value, int lenValue) {
    return scaliendb_clientJNI.SDBP_SetCStr(SWIGTYPE_p_void.getCPtr(client_), tableID, key, lenKey, value, lenValue);
  }

  public static int SDBP_Add(SWIGTYPE_p_void client, long tableID, String key, long number) {
    return scaliendb_clientJNI.SDBP_Add(SWIGTYPE_p_void.getCPtr(client), tableID, key, number);
  }

  public static int SDBP_AddCStr(SWIGTYPE_p_void client_, long tableID, byte[] key, int len, long number) {
    return scaliendb_clientJNI.SDBP_AddCStr(SWIGTYPE_p_void.getCPtr(client_), tableID, key, len, number);
  }

  public static int SDBP_Delete(SWIGTYPE_p_void client, long tableID, String key) {
    return scaliendb_clientJNI.SDBP_Delete(SWIGTYPE_p_void.getCPtr(client), tableID, key);
  }

  public static int SDBP_DeleteCStr(SWIGTYPE_p_void client_, long tableID, byte[] key, int len) {
    return scaliendb_clientJNI.SDBP_DeleteCStr(SWIGTYPE_p_void.getCPtr(client_), tableID, key, len);
  }

  public static int SDBP_SequenceSet(SWIGTYPE_p_void client, long tableID, String key, long number) {
    return scaliendb_clientJNI.SDBP_SequenceSet(SWIGTYPE_p_void.getCPtr(client), tableID, key, number);
  }

  public static int SDBP_SequenceSetCStr(SWIGTYPE_p_void client_, long tableID, byte[] key, int len, long number) {
    return scaliendb_clientJNI.SDBP_SequenceSetCStr(SWIGTYPE_p_void.getCPtr(client_), tableID, key, len, number);
  }

  public static int SDBP_SequenceNext(SWIGTYPE_p_void client, long tableID, String key) {
    return scaliendb_clientJNI.SDBP_SequenceNext(SWIGTYPE_p_void.getCPtr(client), tableID, key);
  }

  public static int SDBP_SequenceNextCStr(SWIGTYPE_p_void client, long tableID, byte[] key, int len) {
    return scaliendb_clientJNI.SDBP_SequenceNextCStr(SWIGTYPE_p_void.getCPtr(client), tableID, key, len);
  }

  public static int SDBP_ListKeys(SWIGTYPE_p_void client, long tableID, String startKey, String endKey, String prefix, long count, boolean forwardDirection, boolean skip) {
    return scaliendb_clientJNI.SDBP_ListKeys(SWIGTYPE_p_void.getCPtr(client), tableID, startKey, endKey, prefix, count, forwardDirection, skip);
  }

  public static int SDBP_ListKeysCStr(SWIGTYPE_p_void client, long tableID, byte[] startKey, int startKeyLen, byte[] endKey, int endKeyLen, byte[] prefix, int prefixLen, long count, boolean forwardDirection, boolean skip) {
    return scaliendb_clientJNI.SDBP_ListKeysCStr(SWIGTYPE_p_void.getCPtr(client), tableID, startKey, startKeyLen, endKey, endKeyLen, prefix, prefixLen, count, forwardDirection, skip);
  }

  public static int SDBP_ListKeyValues(SWIGTYPE_p_void client, long tableID, String startKey, String endKey, String prefix, long count, boolean forwardDirection, boolean skip) {
    return scaliendb_clientJNI.SDBP_ListKeyValues(SWIGTYPE_p_void.getCPtr(client), tableID, startKey, endKey, prefix, count, forwardDirection, skip);
  }

  public static int SDBP_ListKeyValuesCStr(SWIGTYPE_p_void client, long tableID, byte[] startKey, int startKeyLen, byte[] endKey, int endKeyLen, byte[] prefix, int prefixLen, long count, boolean forwardDirection, boolean skip) {
    return scaliendb_clientJNI.SDBP_ListKeyValuesCStr(SWIGTYPE_p_void.getCPtr(client), tableID, startKey, startKeyLen, endKey, endKeyLen, prefix, prefixLen, count, forwardDirection, skip);
  }

  public static int SDBP_Count(SWIGTYPE_p_void client, long tableID, String startKey, String endKey, String prefix, boolean forwardDirection) {
    return scaliendb_clientJNI.SDBP_Count(SWIGTYPE_p_void.getCPtr(client), tableID, startKey, endKey, prefix, forwardDirection);
  }

  public static int SDBP_CountCStr(SWIGTYPE_p_void client, long tableID, byte[] startKey, int startKeyLen, byte[] endKey, int endKeyLen, byte[] prefix, int prefixLen, boolean forwardDirection) {
    return scaliendb_clientJNI.SDBP_CountCStr(SWIGTYPE_p_void.getCPtr(client), tableID, startKey, startKeyLen, endKey, endKeyLen, prefix, prefixLen, forwardDirection);
  }

  public static int SDBP_Begin(SWIGTYPE_p_void client) {
    return scaliendb_clientJNI.SDBP_Begin(SWIGTYPE_p_void.getCPtr(client));
  }

  public static int SDBP_Submit(SWIGTYPE_p_void client) {
    return scaliendb_clientJNI.SDBP_Submit(SWIGTYPE_p_void.getCPtr(client));
  }

  public static int SDBP_Cancel(SWIGTYPE_p_void client) {
    return scaliendb_clientJNI.SDBP_Cancel(SWIGTYPE_p_void.getCPtr(client));
  }

  public static int SDBP_StartTransaction(SWIGTYPE_p_void client, long quorumID, String majorKey) {
    return scaliendb_clientJNI.SDBP_StartTransaction(SWIGTYPE_p_void.getCPtr(client), quorumID, majorKey);
  }

  public static int SDBP_StartTransactionCStr(SWIGTYPE_p_void client, long quorumID, byte[] majorKey, int majorKeyLen) {
    return scaliendb_clientJNI.SDBP_StartTransactionCStr(SWIGTYPE_p_void.getCPtr(client), quorumID, majorKey, majorKeyLen);
  }

  public static int SDBP_CommitTransaction(SWIGTYPE_p_void client) {
    return scaliendb_clientJNI.SDBP_CommitTransaction(SWIGTYPE_p_void.getCPtr(client));
  }

  public static int SDBP_RollbackTransaction(SWIGTYPE_p_void client) {
    return scaliendb_clientJNI.SDBP_RollbackTransaction(SWIGTYPE_p_void.getCPtr(client));
  }

  public static void SDBP_SetTrace(boolean trace) {
    scaliendb_clientJNI.SDBP_SetTrace(trace);
  }

  public static void SDBP_SetDebug(boolean debug) {
    scaliendb_clientJNI.SDBP_SetDebug(debug);
  }

  public static void SDBP_SetLogFile(String filename) {
    scaliendb_clientJNI.SDBP_SetLogFile(filename);
  }

  public static void SDBP_SetTraceBufferSize(long traceBufferSize) {
    scaliendb_clientJNI.SDBP_SetTraceBufferSize(traceBufferSize);
  }

  public static void SDBP_LogTrace(String msg) {
    scaliendb_clientJNI.SDBP_LogTrace(msg);
  }

  public static void SDBP_SetCrashReporter(boolean crashReporter) {
    scaliendb_clientJNI.SDBP_SetCrashReporter(crashReporter);
  }

  public static void SDBP_SetShardPoolSize(long shardPoolSize) {
    scaliendb_clientJNI.SDBP_SetShardPoolSize(shardPoolSize);
  }

  public static void SDBP_SetMaxConnections(long maxConnections) {
    scaliendb_clientJNI.SDBP_SetMaxConnections(maxConnections);
  }

  public static String SDBP_GetVersion() {
    return scaliendb_clientJNI.SDBP_GetVersion();
  }

  public static String SDBP_GetDebugString() {
    return scaliendb_clientJNI.SDBP_GetDebugString();
  }

}
