okuyama.imdst.client
クラス OkuyamaClient

java.lang.Object
  上位を拡張 okuyama.imdst.client.OkuyamaClient
直系の既知のサブクラス:
ClientRedirector, ImdstKeyValueClient, OkuyamaQueueClient

public class OkuyamaClient
extends java.lang.Object

MasterNodeと通信を行うクライアント
ユーザ開発アプリケーションが利用する想定.

使い方)

// Create Okuyama Client Instance
OkuyamaClient okuyamaClient = new OkuyamaClient();

try {
   // --------------
   // Connecting MasterNode
   okuyamaClient.connect(args[1], port);

   // Multi MasterNode
   // String[] infos = {"MasterNode01:PortNo","MasterNode02:PortNo","MasterNode03:PortNo"};
   // okuyamaClient.setConnectionInfos(infos);
   // okuyamaClient.autoConnect();


   // --------------
   // Set Value
   if (okuyamaClient.setValue("datasavekey_001", "savedatavalue_001")) {

     System.out.println("setValue - Success");
   } else {

     System.out.println("setValue - Error");
   }


   // --------------
   // Get Value
   String[] getRet = okuyamaClient.getValue("datasavekey_001");
   if (getRet[0].equals("true")) {

     // Data exists
     // Value is displayed
     System.out.println(ret[1]);
   } else if (getRet[0].equals("false")) {
   
     // Data not found
   } else if (getRet[0].equals("error")) {

     // Server error
     // ErrorMessage is displayed
     System.out.println(ret[1]);
   }


   // --------------
   // Set Value & Tag
   String[] tags = {"tag1", "tag2"};
   if (!okuyamaClient.setValue("datasavekey_001", tags, "savedatavalue_001")) {

     System.out.println("setValue - Error");
   } else {

     System.out.println("setValue - Success");
   }


   // --------------
   // Tag Get
   Object[] ret = okuyamaClient.getTagKeys("tag1");
   if (ret[0].equals("true")) {

     // Data exists
     String[] keys = (String[])ret[1];
     for (int idx = 0; idx < keys.length; idx++) {

       // Key is displayed
       System.out.println(keys[idx]);
     }
   } else if (ret[0].equals("false")) {

     // Data not found
   } else if (ret[0].equals("error")) {

     // Server error
     // ErrorMessage is displayed
     System.out.println(ret[1]);
   }


   // --------------
   // Remove Data
   String[] ret = okuyamaClient.removeValue("datasavekey_001");
   if (ret[0].equals("true")) {

     // Remove success
     // Removed data is displayed
     System.out.println(ret[1]);
   } else if (ret[0].equals("false")) {
  
     // Data not found
   } else if (ret[0].equals("error")) {
  
     // Server error
     // ErrorMessage is displayed
     System.out.println(ret[1]);
  
   }


   // --------------
   // Add New Value
   String[] retParam = okuyamaClient.setNewValue("NewKey", "value999");
   if(retParam[0].equals("false")) {
  
     // Register Error
     System.out.println(retParam[1]);
   } else {
  
     System.out.println("Register Success");
   }

} catch (OkuyamaClientException oce) {
   oce.printStackTrace();
} finally {
   try {
     // --------------
     // Close
     okuyamaClient.close();
   } catch (OkuyamaClientException oce2) {
     oce2.printStackTrace();
     okuyamaClient = null;
   }
}

作成者:
T.Okuyama

フィールドの概要
protected static java.lang.String blankStr
           
protected  java.io.BufferedReader br
           
protected static java.lang.String byteDataKeysSep
           
protected  boolean compressMode
           
protected static java.lang.String connectDefaultEncoding
           
protected static java.lang.String connectExitStr
           
protected  java.lang.StringBuilder getValueServerReqBuf
           
protected  int initParamConnectionTimeout
           
protected  java.lang.String initParamEncoding
           
protected  java.lang.String[] initParamMasterNodes
           
protected  int initParamOpenTimeout
           
protected  int initParamPort
           
protected  java.lang.String initParamServer
           
protected  java.util.ArrayList masterNodesList
           
protected  int maxKeySize
           
protected  int maxValueSize
           
protected  java.lang.String nowConnectServerInfo
           
protected  double okuyamaVersionNo
           
protected  java.io.PrintWriter pw
           
protected  int saveSize
           
static java.lang.String SEARCH_VALUE_TYPE_AND
           
static java.lang.String SEARCH_VALUE_TYPE_OR
           
protected static java.lang.String sepStr
           
protected  java.lang.StringBuilder setValueServerReqBuf
           
protected  java.net.Socket socket
           
protected static java.lang.String tagKeySep
           
protected  java.lang.String transactionCode
           
protected  boolean useAutoConnect
           
 
コンストラクタの概要
OkuyamaClient()
          コンストラクタ
OkuyamaClient(int keyMaxSize)
          コンストラクタ
 
メソッドの概要
 void autoConnect()
          設定されたMasterNodeの接続情報を元に自動的に接続を行う.
 boolean clearDictionaryCharacters()
          検索用の辞書Indexを全てクリアする.
 void close()
          MasterNodeとの接続を切断.
 void connect(java.lang.String server, int port)
          接続処理.
 void connect(java.lang.String server, int port, java.lang.String encoding)
          接続処理.
 void connect(java.lang.String server, int port, java.lang.String encoding, int openTimeout, int connectionTimeout)
          接続処理.
protected  byte[] dataDecoding(byte[] datas)
           
protected  byte[] dataEncoding(byte[] datas)
           
 java.lang.Object[] decrValue(java.lang.String keyStr, long value)
          MasterNodeへデータの減算を要求する.
 void endTransaction()
          Transactionを終了する.
protected  byte[] execCompress(byte[] bytes)
           
protected  byte[] execDecompres(byte[] bytes)
           
protected  java.lang.Object[] getByteData(java.lang.String keyStr)
          MasterNodeからKeyでデータを取得する(バイナリ).
 java.lang.Object[] getByteValue(java.lang.String keyStr)
          MasterNodeからKeyでValueを取得する(バイナリ).
 java.lang.Object[] getByteValueVer2(java.lang.String keyStr)
          MasterNodeからKeyでValueを取得する(バイナリ).
 java.lang.String[] getMultiTagKeys(java.lang.String[] tagList)
          MasterNodeからTag値を渡すことで紐付くKey値の配列を取得する
複数のTagを指定することで、一度に関連する値を取得可能
複数のTagに紐付く値はマージされて1つとなる(※複数のTagはAND指定の扱いとなる)
AND指定.
 java.lang.String[] getMultiTagKeys(java.lang.String[] tagList, boolean margeType)
          MasterNodeからTag値を渡すことで紐付くKey値の配列を取得する
複数のTagを指定することで、一度に関連する値を取得可能
複数のTagに紐付く値はマージされて1つとなる
引数のmargeTypeを指定することで、ANDとORを切り替えることが出来る
AND指定.
 java.lang.String[] getMultiTagKeys(java.lang.String[] tagList, boolean margeType, boolean noExistsData)
          MasterNodeからTag値を渡すことで紐付くKey値の配列を取得する
複数のTagを指定することで、一度に関連する値を取得可能
複数のTagに紐付く値はマージされて1つとなる
引数のmargeTypeを指定することで、ANDとORを切り替えることが出来る
 OkuyamaResultSet getMultiTagKeysResult(java.lang.String[] tagList)
          MasterNodeからTagを複数を指定することで紐付くKeyが取得可能な、OkuyamaResultSetを取得する.
 OkuyamaResultSet getMultiTagKeysResult(java.lang.String[] tagList, boolean margeType)
          MasterNodeからTagを複数を指定することで紐付くKeyが取得可能な、OkuyamaResultSetを取得する.
 java.util.Map getMultiTagValues(java.lang.String[] tagList)
          MasterNodeからTag値を渡すことで紐付くValue値の集合を取得する.
 java.util.Map getMultiTagValues(java.lang.String[] tagList, boolean margeType)
          MasterNodeからTag値を渡すことで紐付くValue値の集合を取得する
複数のTagを指定することで、一度に関連する値を取得可能
複数のTagに紐付く値はマージされて1つとなる
引数のmargeTypeを指定することで、ANDとORを切り替えることが出来る
文字列エンコーディング指定なし.
 java.util.Map getMultiTagValues(java.lang.String[] tagList, boolean margeType, java.lang.String encoding)
          MasterNodeからTag値を渡すことで紐付くValue値の集合を取得する
複数のTagを指定することで、一度に関連する値を取得可能
複数のTagに紐付く値はマージされて1つとなる
引数のmargeTypeを指定することで、ANDとORを切り替えることが出来る
 java.util.Map getMultiValue(java.lang.String[] keyStrList)
          MasterNodeからKey値の配列を渡すことでValue値の集合を取得する.
 java.util.Map getMultiValue(java.lang.String[] keyStrList, java.lang.String encoding)
          MasterNodeからKey値の配列を渡すことでValue値の集合を取得する.
protected  java.lang.String getNowTransactionCode()
          トランザクションを開始している場合、自身のトランザクションを一意に表す コードを返す.
 java.lang.Object[] getObjectValue(java.lang.String keyStr)
          MasterNodeからKeyでValueを取得する.
 java.lang.Object[] getObjectValueAndUpdateExpireTime(java.lang.String keyStr)
          MasterNodeからKeyでValueを取得する.
 java.lang.String[] getOkuyamaVersion()
          クライアントが接続しているokuyamaのバージョン名を返す.
 java.lang.Object[] getTagKeys(java.lang.String tagStr)
          MasterNodeからTagでKey値配列を取得する.
 java.lang.Object[] getTagKeys(java.lang.String tagStr, boolean noExistsData)
          MasterNodeからTagでKey値配列を取得する.
 java.lang.Object[] getTagKeys(java.lang.String tagStr, boolean noExistsData, boolean decodeKey)
          MasterNodeからTagでKey値配列を取得する.
 OkuyamaResultSet getTagKeysResult(java.lang.String tagStr)
          MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
 OkuyamaResultSet getTagKeysResult(java.lang.String tagStr, double[] targetRange, int cehckType)
          MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
 OkuyamaResultSet getTagKeysResult(java.lang.String tagStr, double[] targetRange, int cehckType, java.lang.String encoding)
          MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
 OkuyamaResultSet getTagKeysResult(java.lang.String tagStr, java.lang.String encoding)
          MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
 OkuyamaResultSet getTagKeysResult(java.lang.String tagStr, java.lang.String matchPattern, int cehckType)
          MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
 OkuyamaResultSet getTagKeysResult(java.lang.String tagStr, java.lang.String matchPattern, int cehckType, java.lang.String encoding)
          MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
 OkuyamaResultSet getTagKeysResult(java.lang.String tagStr, UserDataFilter filter)
          MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
 OkuyamaResultSet getTagKeysResult(java.lang.String tagStr, UserDataFilter filter, java.lang.String encoding)
          MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
 java.util.Map getTagValues(java.lang.String tagStr)
          MasterNodeからTag値を渡すことで紐付くValue値の集合を取得する.
 java.util.Map getTagValues(java.lang.String tagStr, java.lang.String encoding)
          MasterNodeからTag値を渡すことで紐付くValue値の集合を取得する.
 java.lang.Object[] getTargetIndexTagKeys(java.lang.String tagStr, java.lang.String bucketIndex)
          MasterNodeからTagとKey格納bucketのIndexを使用してKey値配列を取得する.
 java.lang.String[] getValue(java.lang.String keyStr)
          MasterNodeからKeyでValueを取得する.
 java.lang.String[] getValue(java.lang.String keyStr, java.lang.String encoding)
          MasterNodeからKeyでValueを取得する.
 java.lang.String[] getValueAndUpdateExpireTime(java.lang.String keyStr)
          MasterNodeからKeyでValueを取得する.
 java.lang.String[] getValueAndUpdateExpireTime(java.lang.String keyStr, java.lang.String encoding)
          MasterNodeからKeyでValueを取得する.
 java.lang.String[] getValueScript(java.lang.String keyStr, java.lang.String scriptStr)
          MasterNodeからKeyでValueを取得する.
 java.lang.String[] getValueScript(java.lang.String keyStr, java.lang.String scriptStr, java.lang.String encoding)
          MasterNodeからKeyでデータを取得する.
 java.lang.String[] getValueScriptForUpdate(java.lang.String keyStr, java.lang.String scriptStr)
          MasterNodeからKeyでValueを取得する.
 java.lang.String[] getValueScriptForUpdate(java.lang.String keyStr, java.lang.String scriptStr, java.lang.String encoding)
          MasterNodeからKeyでデータを取得する.
 java.lang.String[] getValueVersionCheck(java.lang.String keyStr)
          MasterNodeからKeyでValueを取得する.
 java.lang.String[] getValueVersionCheck(java.lang.String keyStr, java.lang.String encoding)
          MasterNodeからKeyでValueを取得する.
 java.lang.Object[] incrValue(java.lang.String keyStr, long value)
          MasterNodeへデータの加算を要求する.
 boolean initClient()
          Clientを初期化する.
 java.lang.String[] lockData(java.lang.String keyStr, int lockingTime, int waitLockTime)
          データのLockを依頼する.
 java.lang.Object[] readByteValue(java.lang.String keyStr)
          MasterNodeからKeyでデータを取得する(バイナリ).
protected  java.lang.Object[] readSearchValueResponse(java.lang.String[] searchCharacterList, java.lang.String searchType, java.lang.String prefix)
          MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
protected  java.lang.Object[] readSearchValueResponse(java.lang.String[] searchCharacterList, java.lang.String searchType, java.lang.String prefix, int searchIndexLen)
          MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
 java.lang.String[] releaseLockData(java.lang.String keyStr)
          データのLock解除を依頼する.
 boolean removeSearchIndex(java.lang.String keyStr)
          全文検索用のIndexを削除する。
 boolean removeSearchIndex(java.lang.String keyStr, int indexLength)
          全文検索用のIndexを削除する。
 boolean removeSearchIndex(java.lang.String keyStr, java.lang.String indexPrefix)
          全文検索用のIndexを削除する。
 boolean removeSearchIndex(java.lang.String keyStr, java.lang.String indexPrefix, int indexLength)
          全文検索用のIndexを削除する。
 boolean removeTagFromKey(java.lang.String keyStr, java.lang.String tagStr)
          MasterNodeへKey値とTag値を指定してTagの紐付きを削除する.
 java.lang.String[] removeValue(java.lang.String keyStr)
          MasterNodeからKeyでValueを削除する.
 java.lang.String[] removeValue(java.lang.String keyStr, java.lang.String encoding)
          MasterNodeからKeyでデータを削除する.
 java.lang.Object[] searchValue(java.lang.String[] searchCharacterList, java.lang.String searchType)
          MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
 java.lang.Object[] searchValue(java.lang.String[] searchCharacterList, java.lang.String searchType, int searchIndexLen)
          MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
 java.lang.Object[] searchValue(java.lang.String[] searchCharacterList, java.lang.String searchType, java.lang.String prefix)
          MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
 java.lang.Object[] searchValue(java.lang.String[] searchCharacterList, java.lang.String searchType, java.lang.String prefix, int searchIndexLen)
          MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
 boolean sendByteValue(java.lang.String keyStr, byte[] values)
          MasterNodeへデータを送信する(バイナリデータ).
protected  void sendSearchValueRequest(java.lang.String[] searchCharacterList, java.lang.String searchType)
          MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
protected  void sendSearchValueRequest(java.lang.String[] searchCharacterList, java.lang.String searchType, int searchIndexLen)
          MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
protected  void sendSearchValueRequest(java.lang.String[] searchCharacterList, java.lang.String searchType, java.lang.String prefix, int searchIndexLen)
          MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
 boolean setByteValue(java.lang.String keyStr, byte[] values)
          MasterNodeへデータを登録要求する(バイナリデータ).
 boolean setByteValue(java.lang.String keyStr, byte[] values, java.lang.Integer expireTime)
          MasterNodeへデータを登録要求する(バイナリデータ).
 boolean setByteValue(java.lang.String keyStr, java.lang.String[] tagStrs, byte[] values)
          MasterNodeへデータを登録要求する(バイナリデータ).
 boolean setByteValue(java.lang.String keyStr, java.lang.String[] tagStrs, byte[] values, java.lang.Integer expireTime)
          MasterNodeへデータを登録要求する(バイナリデータ).
 void setCompressMode(boolean flg)
          データ保存時の圧縮指定.
 void setConnectionInfos(java.lang.String[] masterNodes)
          MasterNodeの接続情報を設定する.
 boolean setDictionaryCharacters(java.lang.String[] characterList)
          検索用の辞書Indexを設定する.
 void setMethodTimeoutTime(int time)
          MasterNodeとのコネクション確立後の処理依頼に対するタイムアウト時間.
 java.lang.String[] setNewValue(java.lang.String keyStr, java.lang.String value)
          MasterNodeへ新規データを登録要求する.
 java.lang.String[] setNewValue(java.lang.String keyStr, java.lang.String[] tags, java.lang.String value)
          MasterNodeへ新規データを登録要求する.
 java.lang.String[] setNewValue(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.String value, java.lang.String encode, java.lang.Integer expireTime)
          MasterNodeへ新規データを登録要求する.
 java.lang.String[] setNewValue(java.lang.String keyStr, java.lang.String value, java.lang.Integer expireTime)
          MasterNodeへ新規データを登録要求する.
 java.lang.String[] setNewValue(java.lang.String keyStr, java.lang.String value, java.lang.String encode)
          MasterNodeへ新規データを登録要求する.
 java.lang.String[] setNewValue(java.lang.String keyStr, java.lang.String value, java.lang.String encode, java.lang.Integer expireTime)
          MasterNodeへ新規データを登録要求する.
protected  void setNowTransactionCode(java.lang.String transactionCode)
          他のクライアントが実施しているトランザクションコードを設定することで、 トランザクション処理を引き継ぐことが出来る。
 boolean setObjectValue(java.lang.String keyStr, java.lang.Object objValue)
          MasterNodeへデータを送信する(Object).
 boolean setObjectValue(java.lang.String keyStr, java.lang.Object objValue, java.lang.Integer expireTime)
          MasterNodeへデータを送信する(Object).
 boolean setObjectValue(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.Object objValue)
          MasterNodeへデータを送信する(Object).
 boolean setObjectValue(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.Object objValue, java.lang.Integer expireTime)
          MasterNodeへデータを送信する(Object).
 void setSendDataDebug(boolean debug)
          クライアントがokuyamaに送信しているデータをデバッグする.
 boolean setValue(java.lang.String keyStr, java.lang.String value)
          MasterNodeへデータを登録要求する.
 boolean setValue(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.String value)
          MasterNodeへデータを登録要求する.
 boolean setValue(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.String value, java.lang.Integer expireTime)
          MasterNodeへデータを登録要求する.
 boolean setValue(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.String value, java.lang.String encode)
          MasterNodeへデータを登録要求する.
 boolean setValue(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.String value, java.lang.String encode, java.lang.Integer expireTime)
          MasterNodeへデータを登録要求する.
 boolean setValue(java.lang.String keyStr, java.lang.String value, java.lang.Integer expireTime)
          MasterNodeへデータを登録要求する.
 boolean setValue(java.lang.String keyStr, java.lang.String value, java.lang.String encode)
          MasterNodeへデータを登録要求する.
 boolean setValue(java.lang.String keyStr, java.lang.String value, java.lang.String encode, java.lang.Integer expireTime)
          MasterNodeへデータを登録要求する.
 boolean setValueAndCreateIndex(java.lang.String keyStr, java.lang.String value)
          MasterNodeへデータを登録要求する.
 boolean setValueAndCreateIndex(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.String value, java.lang.String indexPrefix)
          MasterNodeへデータを登録要求する.
 boolean setValueAndCreateIndex(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.String value, java.lang.String indexPrefix, int createIndexLen)
          MasterNodeへデータを登録要求する.
 boolean setValueAndCreateIndex(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.String value, java.lang.String indexPrefix, int createIndexLen, int createIndexLenMin)
          MasterNodeへデータを登録要求する.
 boolean setValueAndCreateIndex(java.lang.String keyStr, java.lang.String value, java.lang.String indexPrefix)
          MasterNodeへデータを登録要求する.
 boolean setValueAndCreateIndex(java.lang.String keyStr, java.lang.String value, java.lang.String indexPrefix, int createIndexLen)
          MasterNodeへデータを登録要求する.
 boolean setValueAndCreateIndex(java.lang.String keyStr, java.lang.String value, java.lang.String indexPrefix, int createIndexLen, int createIndexLenMin)
          MasterNodeへデータを登録要求する.
 java.lang.String[] setValueVersionCheck(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.String value, java.lang.String versionNo)
          MasterNodeへバージョンチェック付き値登録要求をする.
 java.lang.String[] setValueVersionCheck(java.lang.String keyStr, java.lang.String[] tagStrs, java.lang.String value, java.lang.String versionNo, java.lang.String encode)
          MasterNodeへバージョンチェック付き値登録要求をする.
 java.lang.String[] setValueVersionCheck(java.lang.String keyStr, java.lang.String value, java.lang.String versionNo)
          MasterNodeへバージョンチェック付き値登録要求をする.
 boolean startTransaction()
          Transactionを開始する.
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

masterNodesList

protected java.util.ArrayList masterNodesList

socket

protected java.net.Socket socket

nowConnectServerInfo

protected java.lang.String nowConnectServerInfo

okuyamaVersionNo

protected double okuyamaVersionNo

useAutoConnect

protected boolean useAutoConnect

initParamMasterNodes

protected java.lang.String[] initParamMasterNodes

initParamServer

protected java.lang.String initParamServer

initParamPort

protected int initParamPort

initParamEncoding

protected java.lang.String initParamEncoding

initParamOpenTimeout

protected int initParamOpenTimeout

initParamConnectionTimeout

protected int initParamConnectionTimeout

pw

protected java.io.PrintWriter pw

br

protected java.io.BufferedReader br

transactionCode

protected java.lang.String transactionCode

SEARCH_VALUE_TYPE_AND

public static final java.lang.String SEARCH_VALUE_TYPE_AND
関連項目:
定数フィールド値

SEARCH_VALUE_TYPE_OR

public static final java.lang.String SEARCH_VALUE_TYPE_OR
関連項目:
定数フィールド値

sepStr

protected static final java.lang.String sepStr
関連項目:
定数フィールド値

connectDefaultEncoding

protected static final java.lang.String connectDefaultEncoding
関連項目:
定数フィールド値

blankStr

protected static final java.lang.String blankStr
関連項目:
定数フィールド値

connectExitStr

protected static final java.lang.String connectExitStr
関連項目:
定数フィールド値

tagKeySep

protected static final java.lang.String tagKeySep
関連項目:
定数フィールド値

byteDataKeysSep

protected static final java.lang.String byteDataKeysSep
関連項目:
定数フィールド値

saveSize

protected int saveSize

maxValueSize

protected int maxValueSize

maxKeySize

protected int maxKeySize

compressMode

protected boolean compressMode

setValueServerReqBuf

protected java.lang.StringBuilder setValueServerReqBuf

getValueServerReqBuf

protected java.lang.StringBuilder getValueServerReqBuf
コンストラクタの詳細

OkuyamaClient

public OkuyamaClient()
コンストラクタ


OkuyamaClient

public OkuyamaClient(int keyMaxSize)
コンストラクタ

メソッドの詳細

setCompressMode

public void setCompressMode(boolean flg)
データ保存時の圧縮指定.

パラメータ:
flg - true:圧縮 false:非圧縮

setMethodTimeoutTime

public void setMethodTimeoutTime(int time)
MasterNodeとのコネクション確立後の処理依頼に対するタイムアウト時間.

パラメータ:
time - タイムアウト時間(単位はミリ秒)

setConnectionInfos

public void setConnectionInfos(java.lang.String[] masterNodes)
MasterNodeの接続情報を設定する.
本メソッドでセットし、autoConnect()メソッドを
呼び出すと、自動的にその時稼動しているMasterNodeにバランシングして
接続される。接続出来ない場合は、別のMasterNodeに再接続される.

パラメータ:
masterNodes - 接続情報の配列 "IP:PORT"の形式

autoConnect

public void autoConnect()
                 throws OkuyamaClientException
設定されたMasterNodeの接続情報を元に自動的に接続を行う.
接続出来ない場合自動的に別ノードへ再接続を行う.

パラメータ:
masterNodes - 接続情報の配列 "IP:PORT"の形式
例外:
OkuyamaClientException

connect

public void connect(java.lang.String server,
                    int port)
             throws OkuyamaClientException
接続処理.
エンコーディング指定なし.

パラメータ:
server - サーバ名
port - ポート番号
例外:
OkuyamaClientException

connect

public void connect(java.lang.String server,
                    int port,
                    java.lang.String encoding)
             throws OkuyamaClientException
接続処理.
エンコーディング指定あり.

パラメータ:
server - サーバ名
port - ポート番号
例外:
OkuyamaClientException

connect

public void connect(java.lang.String server,
                    int port,
                    java.lang.String encoding,
                    int openTimeout,
                    int connectionTimeout)
             throws OkuyamaClientException
接続処理.
エンコーディング指定有り.

パラメータ:
server - サーバ名
port - ポート番号
encoding - サーバとのストリームエンコーディング指定(デフォルトUTF-8)
例外:
OkuyamaClientException

close

public void close()
           throws OkuyamaClientException
MasterNodeとの接続を切断.

例外:
OkuyamaClientException

setSendDataDebug

public void setSendDataDebug(boolean debug)
クライアントがokuyamaに送信しているデータをデバッグする.
trueを渡すとデバッグが標準出力に出力される
falseで停止

パラメータ:
debug - 指定

initClient

public boolean initClient()
                   throws OkuyamaClientException
Clientを初期化する.
今のところはValueの最大保存サイズの初期化のみ.
※本メソッドは内部で自動的に呼び出されるので特に呼び出す必要はない.
※あまりに長時間コネクションプールを行う場合に呼び出せば
その都度サイズを初期化できる.

戻り値:
boolean true:開始成功 false:開始失敗
例外:
OkuyamaClientException

getOkuyamaVersion

public java.lang.String[] getOkuyamaVersion()
                                     throws OkuyamaClientException
クライアントが接続しているokuyamaのバージョン名を返す.

戻り値:
String[] 要素1(データ有無):"true" or "false", 要素2(Version文字列):"Version文字列"
例外:
OkuyamaClientException

startTransaction

public boolean startTransaction()
                         throws OkuyamaClientException
Transactionを開始する.
データロック、ロックリリースを使用する場合は、
事前に呼び出す必要がある.

戻り値:
boolean true:開始成功 false:開始失敗
例外:
OkuyamaClientException

endTransaction

public void endTransaction()
Transactionを終了する.
データロック、ロックリリースの使用を完了後に、
呼び出すことで、現在使用中のTransactionを終了できる


lockData

public java.lang.String[] lockData(java.lang.String keyStr,
                                   int lockingTime,
                                   int waitLockTime)
                            throws OkuyamaClientException
データのLockを依頼する.
本メソッドは、startTransactionメソッドを呼び出した場合のみ有効である

パラメータ:
keyStr - ロック対象のKey値
lockingTime - Lockを取得後、維持する時間(この時間を経過すると自動的にLockが解除される)(単位は秒)(0は無制限)
waitLockTime - Lockを取得する場合に既に取得中の場合この時間はLock取得をリトライする(単位は秒)(0は1度取得を試みる)
戻り値:
String[] 要素1(Lock成否):"true" or "false"
例外:
OkuyamaClientException

releaseLockData

public java.lang.String[] releaseLockData(java.lang.String keyStr)
                                   throws OkuyamaClientException
データのLock解除を依頼する.
本メソッドは、startTransactionメソッドを呼び出した場合のみ有効である.

パラメータ:
keyStr - ロック対象Key値
戻り値:
String[] 要素1(Lock解除成否):"true" or "false"
例外:
OkuyamaClientException

getNowTransactionCode

protected java.lang.String getNowTransactionCode()
トランザクションを開始している場合、自身のトランザクションを一意に表す コードを返す. このコードをsetNowTransactionCodeに渡すと、別クライアントのTransactionを引き継げる !! 他クライアントの処理を横取ることが出来るため、使用を推奨しない !!

戻り値:
String

setNowTransactionCode

protected void setNowTransactionCode(java.lang.String transactionCode)
他のクライアントが実施しているトランザクションコードを設定することで、 トランザクション処理を引き継ぐことが出来る。 !!! 他クライアントの処理を横取ることが出来るため、使用を推奨しない !!!


setValue

public boolean setValue(java.lang.String keyStr,
                        java.lang.String value)
                 throws OkuyamaClientException
MasterNodeへデータを登録要求する.
Tagなし.

パラメータ:
keyStr - Key値
value - value値
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValue

public boolean setValue(java.lang.String keyStr,
                        java.lang.String value,
                        java.lang.Integer expireTime)
                 throws OkuyamaClientException
MasterNodeへデータを登録要求する.
有効期限あり Tagなし.

パラメータ:
keyStr - Key値
value - value値
expireTime - データの有効期限時間(単位/秒)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValue

public boolean setValue(java.lang.String keyStr,
                        java.lang.String value,
                        java.lang.String encode)
                 throws OkuyamaClientException
MasterNodeへデータを登録要求する.
有効期限なし
Tagなし.

パラメータ:
keyStr - Key値
value - value値
encode - Valueを取得後クライアントに返す際の文字コード
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValue

public boolean setValue(java.lang.String keyStr,
                        java.lang.String value,
                        java.lang.String encode,
                        java.lang.Integer expireTime)
                 throws OkuyamaClientException
MasterNodeへデータを登録要求する.
有効期限あり
Tagなし.

パラメータ:
keyStr - Key値
value - value値
encode - Valueを取得後クライアントに返す際の文字コード
expireTime - データの有効期限時間(単位/秒)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValue

public boolean setValue(java.lang.String keyStr,
                        java.lang.String[] tagStrs,
                        java.lang.String value)
                 throws OkuyamaClientException
MasterNodeへデータを登録要求する.
有効期限なし
Tag有り.

パラメータ:
keyStr - Key値
tagStrs - Tag値の配列 例){"tag1","tag2","tag3"}
value - value値
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValue

public boolean setValue(java.lang.String keyStr,
                        java.lang.String[] tagStrs,
                        java.lang.String value,
                        java.lang.Integer expireTime)
                 throws OkuyamaClientException
MasterNodeへデータを登録要求する.
有効期限あり
Tag有り.

パラメータ:
keyStr - Key値
tagStrs - Tag値の配列 例){"tag1","tag2","tag3"}
value - value値
expireTime - データの有効期限時間(単位/秒)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValue

public boolean setValue(java.lang.String keyStr,
                        java.lang.String[] tagStrs,
                        java.lang.String value,
                        java.lang.String encode)
                 throws OkuyamaClientException
MasterNodeへデータを登録要求する.
有効期限なし
Tag有り.

パラメータ:
keyStr - Key値
tagStrs - Tag値の配列 例){"tag1","tag2","tag3"}
value - value値
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValue

public boolean setValue(java.lang.String keyStr,
                        java.lang.String[] tagStrs,
                        java.lang.String value,
                        java.lang.String encode,
                        java.lang.Integer expireTime)
                 throws OkuyamaClientException
MasterNodeへデータを登録要求する.
有効期限あり
Tag有り.

パラメータ:
keyStr - Key値
tagStrs - Tag値の配列 例){"tag1","tag2","tag3"}
value - value値
encode - Valueを取得後クライアントに返す際の文字コード
expireTime - データの有効期限時間(単位/秒)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValueAndCreateIndex

public boolean setValueAndCreateIndex(java.lang.String keyStr,
                                      java.lang.String value)
                               throws OkuyamaClientException
MasterNodeへデータを登録要求する.
登録と同時にValueの検索Indexを作成する
検索Indexを作成するので通常のSetに比べて時間がかかる.
全文Indexが作成されるので、値は検索可能な文字を指定すること。例えばBASE64エンコードの値などの場合は
検索時も同様にエンコードした値で検索する必要がある.
※okuyamaは検索Index作成前に、同様のKey値で値が登録されている場合は、そのKey値で登録されているValue値の
検索インデックスを削除してから登録が行われる.
Tagなし.
Prefixなし.

パラメータ:
keyStr - Key値
value - value値
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValueAndCreateIndex

public boolean setValueAndCreateIndex(java.lang.String keyStr,
                                      java.lang.String value,
                                      java.lang.String indexPrefix)
                               throws OkuyamaClientException
MasterNodeへデータを登録要求する.
登録と同時にValueの検索Indexを作成する
検索Indexを作成するので通常のSetに比べて時間がかかる.
全文Indexが作成されるので、値は検索可能な文字を指定すること。例えばBASE64エンコードの値などの場合は
検索時も同様にエンコードした値で検索する必要がある.
※okuyamaは検索Index作成前に、同様のKey値で値が登録されている場合は、そのKey値で登録されているValue値の
検索インデックスを削除してから登録が行われる.
Tagなし.

パラメータ:
keyStr - Key値
value - value値
indexPrefix - 作成する検索IndexをグルーピングするPrefix文字列.この値と同様の値を指定してsearchValueメソッドを呼び出すと、グループに限定して全文検索が可能となる. 最大は128文字
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValueAndCreateIndex

public boolean setValueAndCreateIndex(java.lang.String keyStr,
                                      java.lang.String value,
                                      java.lang.String indexPrefix,
                                      int createIndexLen)
                               throws OkuyamaClientException
MasterNodeへデータを登録要求する.
登録と同時にValueの検索Indexを作成する
検索Indexを作成するので通常のSetに比べて時間がかかる.
全文Indexが作成されるので、値は検索可能な文字を指定すること。例えばBASE64エンコードの値などの場合は
検索時も同様にエンコードした値で検索する必要がある.
※okuyamaは検索Index作成前に、同様のKey値で値が登録されている場合は、そのKey値で登録されているValue値の
検索インデックスを削除してから登録が行われる.
Tagなし.

パラメータ:
keyStr - Key値
value - value値
indexPrefix - 作成する検索IndexをグルーピングするPrefix文字列.この値と同様の値を指定してsearchValueメソッドを呼び出すと、グループに限定して全文検索が可能となる. 最大は128文字
createIndexLen - 作成するN-GramIndxのNの部分は指定(ヒストグラム以上のIndexを作成可能)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValueAndCreateIndex

public boolean setValueAndCreateIndex(java.lang.String keyStr,
                                      java.lang.String value,
                                      java.lang.String indexPrefix,
                                      int createIndexLen,
                                      int createIndexLenMin)
                               throws OkuyamaClientException
MasterNodeへデータを登録要求する.
登録と同時にValueの検索Indexを作成する
検索Indexを作成するので通常のSetに比べて時間がかかる.
全文Indexが作成されるので、値は検索可能な文字を指定すること。例えばBASE64エンコードの値などの場合は
検索時も同様にエンコードした値で検索する必要がある.
※okuyamaは検索Index作成前に、同様のKey値で値が登録されている場合は、そのKey値で登録されているValue値の
検索インデックスを削除してから登録が行われる.
Tagなし.

パラメータ:
keyStr - Key値
value - value値
indexPrefix - 作成する検索IndexをグルーピングするPrefix文字列.この値と同様の値を指定してsearchValueメソッドを呼び出すと、グループに限定して全文検索が可能となる. 最大は128文字
createIndexLen - 作成するN-GramIndxのNの部分は指定(ヒストグラム以上のIndexを作成可能)
createIndexLenMin - 作成するN-GramIndxの最小のNを指定する。例えば3を指定すると2文字までのIndexは作成しない
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValueAndCreateIndex

public boolean setValueAndCreateIndex(java.lang.String keyStr,
                                      java.lang.String[] tagStrs,
                                      java.lang.String value,
                                      java.lang.String indexPrefix)
                               throws OkuyamaClientException
MasterNodeへデータを登録要求する.
登録と同時にValueの検索Indexを作成する
検索Indexを作成するので通常のSetに比べて時間がかかる.
全文Indexが作成されるので、値は検索可能な文字を指定すること。例えばBASE64エンコードの値などの場合は
検索時も同様にエンコードした値で検索する必要がある.
※okuyamaは検索Index作成前に、同様のKey値で値が登録されている場合は、そのKey値で登録されているValue値の
検索インデックスを削除してから登録が行われる.
Tag有り.

パラメータ:
keyStr - Key値
tagStrs - Tag値の配列 例){"tag1","tag2","tag3"}
value - value値
indexPrefix - 作成する検索IndexをグルーピングするPrefix文字列.この値と同様の値を指定してsearchValueメソッドを呼び出すと、グループに限定して全文検索が可能となる. 最大は128文字
createIndexLen - 作成するN-GramIndxのNの部分は指定(ヒストグラム以上のIndexを作成可能)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValueAndCreateIndex

public boolean setValueAndCreateIndex(java.lang.String keyStr,
                                      java.lang.String[] tagStrs,
                                      java.lang.String value,
                                      java.lang.String indexPrefix,
                                      int createIndexLen)
                               throws OkuyamaClientException
MasterNodeへデータを登録要求する.
登録と同時にValueの検索Indexを作成する
検索Indexを作成するので通常のSetに比べて時間がかかる.
全文Indexが作成されるので、値は検索可能な文字を指定すること。例えばBASE64エンコードの値などの場合は
検索時も同様にエンコードした値で検索する必要がある.
※okuyamaは検索Index作成前に、同様のKey値で値が登録されている場合は、そのKey値で登録されているValue値の
検索インデックスを削除してから登録が行われる.
Tag有り.

パラメータ:
keyStr - Key値
tagStrs - Tag値の配列 例){"tag1","tag2","tag3"}
value - value値
indexPrefix - 作成する検索IndexをグルーピングするPrefix文字列.この値と同様の値を指定してsearchValueメソッドを呼び出すと、グループに限定して全文検索が可能となる. 最大は128文字
createIndexLen - 作成するN-GramIndxのNの部分は指定(ヒストグラム以上のIndexを作成可能)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setValueAndCreateIndex

public boolean setValueAndCreateIndex(java.lang.String keyStr,
                                      java.lang.String[] tagStrs,
                                      java.lang.String value,
                                      java.lang.String indexPrefix,
                                      int createIndexLen,
                                      int createIndexLenMin)
                               throws OkuyamaClientException
MasterNodeへデータを登録要求する.
登録と同時にValueの検索Indexを作成する
検索Indexを作成するので通常のSetに比べて時間がかかる.
全文Indexが作成されるので、値は検索可能な文字を指定すること。例えばBASE64エンコードの値などの場合は
検索時も同様にエンコードした値で検索する必要がある.
※okuyamaは検索Index作成前に、同様のKey値で値が登録されている場合は、そのKey値で登録されているValue値の
検索インデックスを削除してから登録が行われる.
Tag有り.

パラメータ:
keyStr - Key値
tagStrs - Tag値の配列 例){"tag1","tag2","tag3"}
value - value値
indexPrefix - 作成する検索IndexをグルーピングするPrefix文字列.この値と同様の値を指定してsearchValueメソッドを呼び出すと、グループに限定して全文検索が可能となる. 最大は128文字
createIndexLen - 作成するN-GramIndxのNの部分は指定(ヒストグラム以上のIndexを作成可能)
createIndexLenMin - 作成するN-GramIndxの最小のNを指定する。例えば3を指定すると2文字までのIndexは作成しない
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setDictionaryCharacters

public boolean setDictionaryCharacters(java.lang.String[] characterList)
                                throws OkuyamaClientException
検索用の辞書Indexを設定する.
設定した辞書文字列がIndex作成要求を出したValueに存在した場合は作成される
通常作成はN-Gramなので、ここでN-GramでのN文字以上の辞書文字列を設定すれば
検索時に高速に検索される.
また検索時に辞書に存在する文字列を指定すれば高速に検索される.
設定する文字列のエンコードはUTF-8固定

パラメータ:
dictionaryStrList -
戻り値:
boolean true:登録成功 false:登録失敗
例外:
OkuyamaClientException

clearDictionaryCharacters

public boolean clearDictionaryCharacters()
                                  throws OkuyamaClientException
検索用の辞書Indexを全てクリアする.

パラメータ:
dictionaryStrList -
戻り値:
boolean true:登録成功 false:登録失敗
例外:
OkuyamaClientException

setNewValue

public java.lang.String[] setNewValue(java.lang.String keyStr,
                                      java.lang.String value)
                               throws OkuyamaClientException
MasterNodeへ新規データを登録要求する.
Tagなし.
既にデータが同一のKeyで登録されている場合は失敗する.
その場合は、falseが返る
成功の場合は配列の長さは1である。失敗時は2である

パラメータ:
keyStr - Key値
value - Value値
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(失敗時はメッセージ):"メッセージ"
例外:
OkuyamaClientException

setNewValue

public java.lang.String[] setNewValue(java.lang.String keyStr,
                                      java.lang.String[] tags,
                                      java.lang.String value)
                               throws OkuyamaClientException
MasterNodeへ新規データを登録要求する.
Tagあり.
既にデータが同一のKeyで登録されている場合は失敗する.
その場合は、falseが返る
成功の場合は配列の長さは1である。失敗時は2である

パラメータ:
keyStr - Key値
tagStrs - Tag値 例){"tag1","tag2","tag3"}
value - Value値
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(失敗時はメッセージ):"メッセージ"
例外:
OkuyamaClientException

setNewValue

public java.lang.String[] setNewValue(java.lang.String keyStr,
                                      java.lang.String value,
                                      java.lang.Integer expireTime)
                               throws OkuyamaClientException
MasterNodeへ新規データを登録要求する.
Tagなし.
Encodeなし.
有効期限あり.
既にデータが同一のKeyで登録されている場合は失敗する.
その場合は、falseが返る
成功の場合は配列の長さは1である。失敗時は2である

パラメータ:
keyStr - Key値
value - Value値
expireTime - 有効期限(秒/単位)
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(失敗時はメッセージ):"メッセージ"
例外:
OkuyamaClientException

setNewValue

public java.lang.String[] setNewValue(java.lang.String keyStr,
                                      java.lang.String value,
                                      java.lang.String encode)
                               throws OkuyamaClientException
MasterNodeへ新規データを登録要求する.
Tagなし.
Encode指定あり.
有効期限なし.
既にデータが同一のKeyで登録されている場合は失敗する.
その場合は、falseが返る
成功の場合は配列の長さは1である。失敗時は2である

パラメータ:
keyStr - Key値
value - Value値
encode - Encode指定
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(失敗時はメッセージ):"メッセージ"
例外:
OkuyamaClientException

setNewValue

public java.lang.String[] setNewValue(java.lang.String keyStr,
                                      java.lang.String value,
                                      java.lang.String encode,
                                      java.lang.Integer expireTime)
                               throws OkuyamaClientException
MasterNodeへ新規データを登録要求する.
Tagなし.
Encode指定あり.
有効期限あり.
既にデータが同一のKeyで登録されている場合は失敗する.
その場合は、falseが返る
成功の場合は配列の長さは1である。失敗時は2である

パラメータ:
keyStr - Key値
value - Value値
encode - Encode指定
expireTime - 有効期限(秒/単位)
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(失敗時はメッセージ):"メッセージ"
例外:
OkuyamaClientException

setNewValue

public java.lang.String[] setNewValue(java.lang.String keyStr,
                                      java.lang.String[] tagStrs,
                                      java.lang.String value,
                                      java.lang.String encode,
                                      java.lang.Integer expireTime)
                               throws OkuyamaClientException
MasterNodeへ新規データを登録要求する.
Tag有り.
Encode指定あり.
有効期限有り.
既にデータが同一のKeyで登録されている場合は失敗する.
その場合は、falseが返る
成功の場合は配列の長さは1である。失敗時は2である

パラメータ:
keyStr - Key値
tagStrs - Tag値 例){"tag1","tag2","tag3"}
value - Value値
encode - Encode指定
expireTime - 有効期限(秒/単位)
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(失敗時はメッセージ):"メッセージ"
例外:
OkuyamaClientException

setValueVersionCheck

public java.lang.String[] setValueVersionCheck(java.lang.String keyStr,
                                               java.lang.String value,
                                               java.lang.String versionNo)
                                        throws OkuyamaClientException
MasterNodeへバージョンチェック付き値登録要求をする.
Tagなし.
バージョン値を使用して更新前チェックを行う.
失敗した場合は、falseが返る
成功の場合は配列の長さは1である。失敗時は2である
memcachedのcasに相当.

パラメータ:
keyStr - Key値
value - Value値
versionNo - getValueVersionCheckメソッドで取得したバージョンNo
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(失敗時はメッセージ):"メッセージ"
例外:
OkuyamaClientException

setValueVersionCheck

public java.lang.String[] setValueVersionCheck(java.lang.String keyStr,
                                               java.lang.String[] tagStrs,
                                               java.lang.String value,
                                               java.lang.String versionNo)
                                        throws OkuyamaClientException
MasterNodeへバージョンチェック付き値登録要求をする.
Tag有り.
バージョン値を使用して更新前チェックを行う.
失敗した場合は、falseが返る
成功の場合は配列の長さは1である。失敗時は2である
memcachedのcasに相当.

パラメータ:
keyStr - Key値
tagStrs - Tag値
value - Value値
versionNo - getValueVersionCheckメソッドで取得したバージョンNo
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(失敗時はメッセージ):"メッセージ"
例外:
OkuyamaClientException

setValueVersionCheck

public java.lang.String[] setValueVersionCheck(java.lang.String keyStr,
                                               java.lang.String[] tagStrs,
                                               java.lang.String value,
                                               java.lang.String versionNo,
                                               java.lang.String encode)
                                        throws OkuyamaClientException
MasterNodeへバージョンチェック付き値登録要求をする.
Tag有り.
バージョン値を使用して更新前チェックを行う.
失敗した場合は、falseが返る
成功の場合は配列の長さは1である。失敗時は2である
memcachedのcasに相当.

パラメータ:
keyStr - Key値
tagStrs - Tag値
value - Value値
versionNo - getValueVersionCheckメソッドで取得したバージョンNo
encode - エンコード
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(失敗時はメッセージ):"メッセージ"
例外:
OkuyamaClientException

setByteValue

public boolean setByteValue(java.lang.String keyStr,
                            byte[] values)
                     throws OkuyamaClientException
MasterNodeへデータを登録要求する(バイナリデータ).
Tagなし.

パラメータ:
keyStr - Key値
values - Value値(byte配列)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setByteValue

public boolean setByteValue(java.lang.String keyStr,
                            byte[] values,
                            java.lang.Integer expireTime)
                     throws OkuyamaClientException
MasterNodeへデータを登録要求する(バイナリデータ).
Tagなし.

パラメータ:
keyStr - Key値
values - Value値(byte配列)
expireTime - 有効期限(単位は秒)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setByteValue

public boolean setByteValue(java.lang.String keyStr,
                            java.lang.String[] tagStrs,
                            byte[] values)
                     throws OkuyamaClientException
MasterNodeへデータを登録要求する(バイナリデータ).
Tag有り.
処理の流れとしては、まずvalueを一定の容量で区切り、その単位で、
Key値にプレフィックスを付けた値を作成し、かつ、特定のセパレータで連結して、
渡されたKeyを使用して連結文字を保存する

パラメータ:
keyStr - Key値
tagStrs - Tag値
values - Value値(byte配列)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setByteValue

public boolean setByteValue(java.lang.String keyStr,
                            java.lang.String[] tagStrs,
                            byte[] values,
                            java.lang.Integer expireTime)
                     throws OkuyamaClientException
MasterNodeへデータを登録要求する(バイナリデータ).
Tag有り.
処理の流れとしては、まずvalueを一定の容量で区切り、その単位で、
Key値にプレフィックスを付けた値を作成し、かつ、特定のセパレータで連結して、
渡されたKeyを使用して連結文字を保存する

パラメータ:
keyStr - Key値
tagStrs - Tag値
values - Value値(byte配列)
expireTime - 有効期限(単位は秒)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

sendByteValue

public boolean sendByteValue(java.lang.String keyStr,
                             byte[] values)
                      throws OkuyamaClientException
MasterNodeへデータを送信する(バイナリデータ).
setByteValueメソッドとの違いはValueをSplitしないで登録する部分.

パラメータ:
keyStr - Key値
values - Value値
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setObjectValue

public boolean setObjectValue(java.lang.String keyStr,
                              java.lang.Object objValue)
                       throws OkuyamaClientException
MasterNodeへデータを送信する(Object).
引数のObjectを自動的にシリアライズし保存する
そのため保存出来るObjectはシリアライズ可能な型である必要がある.
Tagなし

パラメータ:
keyStr - Key値
objValues - Value値
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setObjectValue

public boolean setObjectValue(java.lang.String keyStr,
                              java.lang.String[] tagStrs,
                              java.lang.Object objValue)
                       throws OkuyamaClientException
MasterNodeへデータを送信する(Object).
引数のObjectを自動的にシリアライズし保存する
そのため保存出来るObjectはシリアライズ可能な型である必要がある.
Tagあり

パラメータ:
keyStr - Key値
tagStrs - Tag値の配列 例){"tag1","tag2","tag3"}
objValues - Value値
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setObjectValue

public boolean setObjectValue(java.lang.String keyStr,
                              java.lang.Object objValue,
                              java.lang.Integer expireTime)
                       throws OkuyamaClientException
MasterNodeへデータを送信する(Object).
引数のObjectを自動的にシリアライズし保存する
そのため保存出来るObjectはシリアライズ可能な型である必要がある.
有効期限あり Tagなし

パラメータ:
keyStr - Key値
objValues - Value値
expireTime - 有効期限(単位は秒)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

setObjectValue

public boolean setObjectValue(java.lang.String keyStr,
                              java.lang.String[] tagStrs,
                              java.lang.Object objValue,
                              java.lang.Integer expireTime)
                       throws OkuyamaClientException
MasterNodeへデータを送信する(Object).
引数のObjectを自動的にシリアライズし保存する
そのため保存出来るObjectはシリアライズ可能な型である必要がある.
有効期限あり Tagあり

パラメータ:
keyStr - Key値
tagStrs - Tag値の配列 例){"tag1","tag2","tag3"}
objValues - Value値
expireTime - 有効期限(単位は秒)
戻り値:
boolean 登録成否
例外:
OkuyamaClientException

getValue

public java.lang.String[] getValue(java.lang.String keyStr)
                            throws OkuyamaClientException
MasterNodeからKeyでValueを取得する.
文字列エンコーディング指定なし.
デフォルトエンコーディングにて復元.

パラメータ:
keyStr - Key値
戻り値:
String[] 要素1(データ有無):"true" or "false", 要素2(データ):"データ文字列"
例外:
OkuyamaClientException

getValue

public java.lang.String[] getValue(java.lang.String keyStr,
                                   java.lang.String encoding)
                            throws OkuyamaClientException
MasterNodeからKeyでValueを取得する.
文字列エンコーディング指定あり.

パラメータ:
keyStr - Key値
encoding - エンコーディング指定
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(データ):"データ文字列"
例外:
OkuyamaClientException

getObjectValue

public java.lang.Object[] getObjectValue(java.lang.String keyStr)
                                  throws OkuyamaClientException
MasterNodeからKeyでValueを取得する.
setObjectValueで登録した値を取得する.

パラメータ:
keyStr - Key値
戻り値:
Object[] 要素1(データ有無(String)):"true" or "false" or "error",要素2(データ):Object型の値はもしくは"false"の場合はnull(データ有無がerrorの場合のみエラーメッセージ文字列(String型固定))
例外:
OkuyamaClientException

getObjectValueAndUpdateExpireTime

public java.lang.Object[] getObjectValueAndUpdateExpireTime(java.lang.String keyStr)
                                                     throws OkuyamaClientException
MasterNodeからKeyでValueを取得する.
setObjectValueで登録した値を取得する.
取得と同時に有効期限をUpdateする.

パラメータ:
keyStr - Key値
戻り値:
Object[] 要素1(データ有無(String)):"true" or "false",要素2(データ):Object型(データ有無がfalseの場合のみエラーメッセージ文字列(String型固定))
例外:
OkuyamaClientException

getMultiValue

public java.util.Map getMultiValue(java.lang.String[] keyStrList)
                            throws OkuyamaClientException
MasterNodeからKey値の配列を渡すことでValue値の集合を取得する.
文字列エンコーディング指定なし.
デフォルトエンコーディングにて復元.

パラメータ:
keyStrList - Key値配列
1つだけのKeyを指定することは出来ない
戻り値:
Map 取得データのMap 取得キーに同一の値を複数指定した場合は束ねられる Mapのキー値は指定されたKeyとなりValueは取得した値となる
全てのKeyに紐付くValueが存在しなかった場合は、nullが返る
例外:
OkuyamaClientException

getMultiValue

public java.util.Map getMultiValue(java.lang.String[] keyStrList,
                                   java.lang.String encoding)
                            throws OkuyamaClientException
MasterNodeからKey値の配列を渡すことでValue値の集合を取得する.
文字列エンコーディング指定あり.

パラメータ:
keyStrList - Key値配列
1つだけのKeyを指定することは出来ない
encoding - エンコーディング指定
戻り値:
Map 取得データのMap 取得キーに同一の値を複数指定した場合は束ねられる Mapのキー値は指定されたKeyとなりValueは取得した値となる
全てのKeyに紐付くValueが存在しなかった場合は、nullが返る
例外:
OkuyamaClientException

getValueAndUpdateExpireTime

public java.lang.String[] getValueAndUpdateExpireTime(java.lang.String keyStr)
                                               throws OkuyamaClientException
MasterNodeからKeyでValueを取得する.
文字列エンコーディング指定なし.
デフォルトエンコーディングにて復元.
取得と同時に値の有効期限を取得時から最初に設定した時間分延長更新
有効期限を設定していない場合は更新されない.
Sessionキャッシュなどでアクセスした時間から所定時間有効などの場合にこちらのメソッドで
値を取得していれば自動的に有効期限が更新される

パラメータ:
keyStr - Key値
戻り値:
String[] 要素1(データ有無):"true" or "false", 要素2(データ):"データ文字列"
例外:
OkuyamaClientException

getValueAndUpdateExpireTime

public java.lang.String[] getValueAndUpdateExpireTime(java.lang.String keyStr,
                                                      java.lang.String encoding)
                                               throws OkuyamaClientException
MasterNodeからKeyでValueを取得する.
文字列エンコーディング指定あり.
取得と同時に値の有効期限を取得時から最初に設定した時間分延長更新
有効期限を設定していない場合は更新されない.
Sessionキャッシュなどでアクセスした時間から所定時間有効などの場合にこちらのメソッドで
値を取得していれば自動的に有効期限が更新される

パラメータ:
keyStr - Key値
encoding - エンコーディング指定
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(データ):"データ文字列"
例外:
OkuyamaClientException

getTagValues

public java.util.Map getTagValues(java.lang.String tagStr)
                           throws OkuyamaClientException
MasterNodeからTag値を渡すことで紐付くValue値の集合を取得する.
文字列エンコーディング指定なし.
デフォルトエンコーディングにて復元.

パラメータ:
tagStr - Tag値
戻り値:
Map 取得データのMap 取得キーに同一の値を複数指定した場合は束ねられる Mapのキー値は指定されたKeyとなりValueは取得した値となる
例外:
OkuyamaClientException

getTagValues

public java.util.Map getTagValues(java.lang.String tagStr,
                                  java.lang.String encoding)
                           throws OkuyamaClientException
MasterNodeからTag値を渡すことで紐付くValue値の集合を取得する.
文字列エンコーディング指定あり.

パラメータ:
tagStr - Tag値
encoding - エンコーディング指定
戻り値:
Map 取得データのMap 取得キーに同一の値を複数指定した場合は束ねられる Mapのキー値は指定されたKeyとなりValueは取得した値となる
例外:
OkuyamaClientException

getMultiTagKeys

public java.lang.String[] getMultiTagKeys(java.lang.String[] tagList)
                                   throws OkuyamaClientException
MasterNodeからTag値を渡すことで紐付くKey値の配列を取得する
複数のTagを指定することで、一度に関連する値を取得可能
複数のTagに紐付く値はマージされて1つとなる(※複数のTagはAND指定の扱いとなる)
AND指定.

パラメータ:
tagList - Tag値のリスト
戻り値:
String[] 取得データのKey配列 取得キーに同一の値を複数指定した場合は束ねられる。結果が0件の場合はnullが返る
例外:
OkuyamaClientException

getMultiTagKeys

public java.lang.String[] getMultiTagKeys(java.lang.String[] tagList,
                                          boolean margeType)
                                   throws OkuyamaClientException
MasterNodeからTag値を渡すことで紐付くKey値の配列を取得する
複数のTagを指定することで、一度に関連する値を取得可能
複数のTagに紐付く値はマージされて1つとなる
引数のmargeTypeを指定することで、ANDとORを切り替えることが出来る
AND指定.

パラメータ:
tagList - Tag値のリスト
margeType - 取得方法指定(true = AND、false=OR)
戻り値:
String[] 取得データのKey配列 取得キーに同一の値を複数指定した場合は束ねられる。結果が0件の場合はnullが返る
例外:
OkuyamaClientException

getMultiTagKeys

public java.lang.String[] getMultiTagKeys(java.lang.String[] tagList,
                                          boolean margeType,
                                          boolean noExistsData)
                                   throws OkuyamaClientException
MasterNodeからTag値を渡すことで紐付くKey値の配列を取得する
複数のTagを指定することで、一度に関連する値を取得可能
複数のTagに紐付く値はマージされて1つとなる
引数のmargeTypeを指定することで、ANDとORを切り替えることが出来る

パラメータ:
tagList - Tag値のリスト
margeType - 取得方法指定(true = AND、false=OR)
noExistsData - 存在していないデータを取得するかの指定(true:取得する false:取得しない)
戻り値:
String[] 取得データのKey配列 取得キーに同一の値を複数指定した場合は束ねられる。結果が0件の場合はnullが返る
例外:
OkuyamaClientException

getMultiTagValues

public java.util.Map getMultiTagValues(java.lang.String[] tagList)
                                throws OkuyamaClientException
MasterNodeからTag値を渡すことで紐付くValue値の集合を取得する.
複数のTagを指定することで、一度に関連する値を取得可能.
複数のTagに紐付く値はマージされて1つとなる.
AND指定.
文字列エンコーディング指定なし.
デフォルトエンコーディングにて復元.

パラメータ:
tagList - Tag値のリスト
戻り値:
Map 取得データのMap 取得キーに同一の値を複数指定した場合は束ねられる Mapのキー値は指定されたKeyとなりValueは取得した値となる
例外:
OkuyamaClientException

getMultiTagValues

public java.util.Map getMultiTagValues(java.lang.String[] tagList,
                                       boolean margeType)
                                throws OkuyamaClientException
MasterNodeからTag値を渡すことで紐付くValue値の集合を取得する
複数のTagを指定することで、一度に関連する値を取得可能
複数のTagに紐付く値はマージされて1つとなる
引数のmargeTypeを指定することで、ANDとORを切り替えることが出来る
文字列エンコーディング指定なし.
デフォルトエンコーディングにて復元.

パラメータ:
tagList - Tag値のリスト
margeType - 取得方法指定(true = AND、false=OR)
戻り値:
Map 取得データのMap 取得キーに同一の値を複数指定した場合は束ねられる Mapのキー値は指定されたKeyとなりValueは取得した値となる
例外:
OkuyamaClientException

getMultiTagValues

public java.util.Map getMultiTagValues(java.lang.String[] tagList,
                                       boolean margeType,
                                       java.lang.String encoding)
                                throws OkuyamaClientException
MasterNodeからTag値を渡すことで紐付くValue値の集合を取得する
複数のTagを指定することで、一度に関連する値を取得可能
複数のTagに紐付く値はマージされて1つとなる
引数のmargeTypeを指定することで、ANDとORを切り替えることが出来る

パラメータ:
tagList - Tag値のリスト
margeType - 取得方法指定(true = AND、false=OR)
encoding - エンコーディング指定
戻り値:
Map 取得データのMap 取得キーに同一の値を複数指定した場合は束ねられる Mapのキー値は指定されたKeyとなりValueは取得した値となる
例外:
OkuyamaClientException

getValueVersionCheck

public java.lang.String[] getValueVersionCheck(java.lang.String keyStr)
                                        throws OkuyamaClientException
MasterNodeからKeyでValueを取得する.
文字列エンコーディング指定なし.
デフォルトエンコーディングにて復元.
バージョン情報(memcachedでのcasユニーク値)を返す.
memcachedのgetsに相当.

パラメータ:
keyStr - Key値
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(データ):"データ文字列",要素3(VersionNo):"0始まりの数値"
例外:
OkuyamaClientException

getValueVersionCheck

public java.lang.String[] getValueVersionCheck(java.lang.String keyStr,
                                               java.lang.String encoding)
                                        throws OkuyamaClientException
MasterNodeからKeyでValueを取得する.
文字列エンコーディング指定あり.
バージョン情報(memcachedでのcasユニーク値)を返す.
memcachedのgetsに相当.

パラメータ:
keyStr - Key値
encoding -
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(データ):"データ文字列",要素3(VersionNo):"0始まりの数値"
例外:
OkuyamaClientException

incrValue

public java.lang.Object[] incrValue(java.lang.String keyStr,
                                    long value)
                             throws OkuyamaClientException
MasterNodeへデータの加算を要求する.

パラメータ:
keyStr - Key値
value - 加算値
戻り値:
Object[] 要素1(処理成否):Boolean true/false,要素2(演算後の結果):Long 数値
例外:
OkuyamaClientException

decrValue

public java.lang.Object[] decrValue(java.lang.String keyStr,
                                    long value)
                             throws OkuyamaClientException
MasterNodeへデータの減算を要求する.

パラメータ:
keyStr - Key値
value - 減算値
戻り値:
Object[] 要素1(処理成否):Boolean true/false,要素2(演算後の結果):Long 数値
例外:
OkuyamaClientException

getValueScript

public java.lang.String[] getValueScript(java.lang.String keyStr,
                                         java.lang.String scriptStr)
                                  throws OkuyamaClientException
MasterNodeからKeyでValueを取得する.
Scriptを同時に実行する.
文字列エンコーディング指定なし.

パラメータ:
keyStr - キー値
scriptStr - スクリプト文
戻り値:
String[] 要素1(データ、エラー有無):"true" or "false" or "error", 要素2(データorエラー内容):"文字列"
例外:
OkuyamaClientException

getValueScript

public java.lang.String[] getValueScript(java.lang.String keyStr,
                                         java.lang.String scriptStr,
                                         java.lang.String encoding)
                                  throws OkuyamaClientException
MasterNodeからKeyでデータを取得する.
Scriptを同時に実行する.
文字エンコーディング指定あり.

パラメータ:
keyStr - キー値
scriptStr - スクリプト文
encoding - エンコード指定
戻り値:
String[] 要素1(データ、エラー有無):"true" or "false" or "error", 要素2(データorエラー内容):"文字列"
例外:
OkuyamaClientException

getValueScriptForUpdate

public java.lang.String[] getValueScriptForUpdate(java.lang.String keyStr,
                                                  java.lang.String scriptStr)
                                           throws OkuyamaClientException
MasterNodeからKeyでValueを取得する.
Scriptを同時に実行する.
ScriptにValue更新指示を記述してる場合はこちらを実行する.
文字列エンコーディング指定なし.

パラメータ:
keyStr - キー値
scriptStr - スクリプト文
戻り値:
String[] 要素1(データ、エラー有無):"true" or "false" or "error", 要素2(データorエラー内容):"文字列"
例外:
OkuyamaClientException

getValueScriptForUpdate

public java.lang.String[] getValueScriptForUpdate(java.lang.String keyStr,
                                                  java.lang.String scriptStr,
                                                  java.lang.String encoding)
                                           throws OkuyamaClientException
MasterNodeからKeyでデータを取得する.
Scriptを同時に実行する.
ScriptにValue更新指示を記述してる場合はこちらを実行する.
文字列エンコーディング指定あり.

パラメータ:
keyStr - キー値
scriptStr - スクリプト文
encoding -
戻り値:
String[] 要素1(データ、エラー有無):"true" or "false" or "error", 要素2(データorエラー内容):"文字列"
例外:
OkuyamaClientException

removeValue

public java.lang.String[] removeValue(java.lang.String keyStr)
                               throws OkuyamaClientException
MasterNodeからKeyでValueを削除する.

パラメータ:
keyStr - Key値
戻り値:
String[] 要素1(データ有無):"true" or "false",要素2(データ):"データ文字列"
例外:
OkuyamaClientException

removeValue

public java.lang.String[] removeValue(java.lang.String keyStr,
                                      java.lang.String encoding)
                               throws OkuyamaClientException
MasterNodeからKeyでデータを削除する.
取得値のエンコーディング指定あり.

パラメータ:
keyStr - Key値
戻り値:
String[] 削除したデータ 内容) 要素1(データ削除有無):"true" or "false",要素2(削除データ):"データ文字列"
例外:
OkuyamaClientException

removeTagFromKey

public boolean removeTagFromKey(java.lang.String keyStr,
                                java.lang.String tagStr)
                         throws OkuyamaClientException
MasterNodeへKey値とTag値を指定してTagの紐付きを削除する.

パラメータ:
keyStr - Key値
tagStr - tag値
戻り値:
boolean 削除成否
例外:
OkuyamaClientException

removeSearchIndex

public boolean removeSearchIndex(java.lang.String keyStr)
                          throws OkuyamaClientException
全文検索用のIndexを削除する。 Prefixなし
検索Index長さ指定なし

パラメータ:
keyStr - Key値
戻り値:
boolean 削除成否
例外:
OkuyamaClientException

removeSearchIndex

public boolean removeSearchIndex(java.lang.String keyStr,
                                 java.lang.String indexPrefix)
                          throws OkuyamaClientException
全文検索用のIndexを削除する。 Prefixあり
検索Index長さ指定なし

パラメータ:
keyStr - Key値
indexPrefix - 作成時に設定したIndexのPrefix値
戻り値:
boolean 削除成否
例外:
OkuyamaClientException

removeSearchIndex

public boolean removeSearchIndex(java.lang.String keyStr,
                                 int indexLength)
                          throws OkuyamaClientException
全文検索用のIndexを削除する。 Prefixなし
検索Index長さ指定あり

パラメータ:
keyStr - Key値
indexLength - 作成時に指定した作成Indexの長さ指定
戻り値:
boolean 削除成否
例外:
OkuyamaClientException

removeSearchIndex

public boolean removeSearchIndex(java.lang.String keyStr,
                                 java.lang.String indexPrefix,
                                 int indexLength)
                          throws OkuyamaClientException
全文検索用のIndexを削除する。 Prefixあり
検索Index長さ指定あり

パラメータ:
keyStr - Key値
indexPrefix - 作成時に設定したIndexのPrefix値
indexLength - 作成時に指定した作成Indexの長さ指定
戻り値:
boolean 削除成否
例外:
OkuyamaClientException

getByteValue

public java.lang.Object[] getByteValue(java.lang.String keyStr)
                                throws OkuyamaClientException
MasterNodeからKeyでValueを取得する(バイナリ).
setByteValueで登録したValueはこちらで取得する.

パラメータ:
keyStr - Key値
戻り値:
Object[] 要素1(String)(データ有無):"true" or "false",要素2(byte[])(データ):{バイト配列}
例外:
OkuyamaClientException

getByteValueVer2

public java.lang.Object[] getByteValueVer2(java.lang.String keyStr)
                                    throws OkuyamaClientException
MasterNodeからKeyでValueを取得する(バイナリ).
setByteValueメソッドで登録したValueはこちらで取得する.
getByteValueよりもこちらのほうが高速に動作する.

パラメータ:
keyStr - Key値
戻り値:
Object[] 要素1(String)(データ有無):"true" or "false",要素2(byte[])(データ):{バイト配列}
例外:
OkuyamaClientException

getByteData

protected java.lang.Object[] getByteData(java.lang.String keyStr)
                                  throws OkuyamaClientException
MasterNodeからKeyでデータを取得する(バイナリ).

パラメータ:
keyStr - Key値
戻り値:
Object[] 要素1(String)(データ有無):"true" or "false",要素2(byte[])(データ):{バイト配列}
例外:
OkuyamaClientException

readByteValue

public java.lang.Object[] readByteValue(java.lang.String keyStr)
                                 throws OkuyamaClientException
MasterNodeからKeyでデータを取得する(バイナリ).
sendByteValueで登録したValueはこちらで取得する.

パラメータ:
keyStr - Key値
戻り値:
Object[] 要素1(String)(データ有無):"true" or "false",要素2(byte[])(データ):{バイト配列}
例外:
OkuyamaClientException

getTagKeys

public java.lang.Object[] getTagKeys(java.lang.String tagStr)
                              throws OkuyamaClientException
MasterNodeからTagでKey値配列を取得する.

パラメータ:
tagStr - Tag値
戻り値:
Object[] 要素1(データ有無):"true" or "false",要素2(Key値配列):Stringの配列
例外:
OkuyamaClientException

getTagKeys

public java.lang.Object[] getTagKeys(java.lang.String tagStr,
                                     boolean noExistsData)
                              throws OkuyamaClientException
MasterNodeからTagでKey値配列を取得する.
Tagは打たれているが実際は既に存在しないValueをどのように扱うかを指定できる.

パラメータ:
tagStr - Tag値
noExistsData - 存在していないデータを取得するかの指定(true:取得する false:取得しない)
戻り値:
Object[] 要素1(データ有無):"true" or "false",要素2(Key値配列):Stringの配列
例外:
OkuyamaClientException

getTagKeys

public java.lang.Object[] getTagKeys(java.lang.String tagStr,
                                     boolean noExistsData,
                                     boolean decodeKey)
                              throws OkuyamaClientException
MasterNodeからTagでKey値配列を取得する.
Tagは打たれているが実際は既に存在しないValueをどのように扱うかを指定できる.

パラメータ:
tagStr - Tag値
noExistsData - 存在していないデータを取得するかの指定(true:取得する false:取得しない)
decodeKey - 取得するKey値をBase64デコードして返す指定
戻り値:
Object[] 要素1(データ有無):"true" or "false",要素2(Key値配列):Stringの配列
例外:
OkuyamaClientException

getTagKeysResult

public OkuyamaResultSet getTagKeysResult(java.lang.String tagStr)
                                  throws OkuyamaClientException
MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
Tagは打たれているが実際は既に存在しないValueが紐付くKey値は取得出来ない.

パラメータ:
tagStr - Tag値
戻り値:
OkuyamaResultSet 結果のOkuyamaResultSet Tagがそもそも存在しない場合もOkuyamaResultSetは返るのでOkuyamaResultSetのnextメソッドを呼び出してデータの有無を確認する必要がある
例外:
OkuyamaClientException

getTagKeysResult

public OkuyamaResultSet getTagKeysResult(java.lang.String tagStr,
                                         java.lang.String encoding)
                                  throws OkuyamaClientException
MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
Tagは打たれているが実際は既に存在しないValueが紐付くKey値は取得出来ない.

パラメータ:
tagStr - Tag値
encoding - エンコーディング指定
戻り値:
OkuyamaResultSet 結果のOkuyamaResultSet Tagがそもそも存在しない場合もOkuyamaResultSetは返るのでOkuyamaResultSetのnextメソッドを呼び出してデータの有無を確認する必要がある
例外:
OkuyamaClientException

getTagKeysResult

public OkuyamaResultSet getTagKeysResult(java.lang.String tagStr,
                                         java.lang.String matchPattern,
                                         int cehckType)
                                  throws OkuyamaClientException
MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
Tagは打たれているが実際は既に存在しないValueが紐付くKey値は取得出来ない.
Tagに紐付くKey、Valueのどちらか、もしくは両方が指定した正規表現と一致する値のみ返される
第3引数にて範囲を適応する先を決定する

パラメータ:
tagStr - Tag値
matchPattern - 正規表現文字列(Java標準の記法) 取得するKey、Valueのどちらかもしくは両方がここで指定する正規表現パターンとマッチする場合のみOkuyamaResultSetから取得できる
cehckType - 正規表現パターンをマッチする先を指定 1=Key, 2=Value, 3=両方
戻り値:
OkuyamaResultSet 結果のOkuyamaResultSet Tagがそもそも存在しない場合もOkuyamaResultSetは返るのでOkuyamaResultSetのnextメソッドを呼び出してデータの有無を確認する必要がある
例外:
OkuyamaClientException

getTagKeysResult

public OkuyamaResultSet getTagKeysResult(java.lang.String tagStr,
                                         java.lang.String matchPattern,
                                         int cehckType,
                                         java.lang.String encoding)
                                  throws OkuyamaClientException
MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
Tagは打たれているが実際は既に存在しないValueが紐付くKey値は取得出来ない.
Tagに紐付くKey、Valueのどちらか、もしくは両方が指定した正規表現と一致する値のみ返される
第3引数にて範囲を適応する先を決定する

パラメータ:
tagStr - Tag値
matchPattern - 正規表現文字列(Java標準の記法) 取得するKey、Valueのどちらかもしくは両方がここで指定する正規表現パターンとマッチする場合のみOkuyamaResultSetから取得できる
cehckType - 正規表現パターンをマッチする先を指定 1=Key, 2=Value, 3=両方
encoding - Valueを復元する際に利用するエンコーディング指定
戻り値:
OkuyamaResultSet 結果のOkuyamaResultSet Tagがそもそも存在しない場合もOkuyamaResultSetは返るのでOkuyamaResultSetのnextメソッドを呼び出してデータの有無を確認する必要がある
例外:
OkuyamaClientException

getTagKeysResult

public OkuyamaResultSet getTagKeysResult(java.lang.String tagStr,
                                         double[] targetRange,
                                         int cehckType)
                                  throws OkuyamaClientException
MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
Tagは打たれているが実際は既に存在しないValueが紐付くKey値は取得出来ない.
Tagに紐付くKey、Valueのどちらか、もしくは両方が指定した数値の範囲内のみが返される
Tagに紐付く値の範囲検索が可能
第3引数にて範囲を適応する先を決定する
適応先の値に数値に変換出来ない値が存在した場合はOkuyamaResultSetのnextメソッド呼び出し時にExceptionが返される

パラメータ:
tagStr - Tag値
targetRange - 取得するKey、Valueのどちらかもしくは両方がここで指定する値の範囲内の場合のみOkuyamaResultSetから取得できる
cehckType - 範囲条件を指定する先を指定 1=Key, 2=Value, 3=両方
戻り値:
OkuyamaResultSet 結果のOkuyamaResultSet Tagがそもそも存在しない場合もOkuyamaResultSetは返るのでOkuyamaResultSetのnextメソッドを呼び出してデータの有無を確認する必要がある
例外:
OkuyamaClientException

getTagKeysResult

public OkuyamaResultSet getTagKeysResult(java.lang.String tagStr,
                                         double[] targetRange,
                                         int cehckType,
                                         java.lang.String encoding)
                                  throws OkuyamaClientException
MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
Tagは打たれているが実際は既に存在しないValueが紐付くKey値は取得出来ない.
Tagに紐付くKey、Valueのどちらか、もしくは両方が指定した数値の範囲内のみが返される
Tagに紐付く値の範囲検索が可能
第3引数にて範囲を適応する先を決定する
適応先の値に数値に変換出来ない値が存在した場合はOkuyamaResultSetのnextメソッド呼び出し時にExceptionが返される

パラメータ:
tagStr - Tag値
targetRange - 取得するKey、Valueのどちらかもしくは両方がここで指定する値の範囲内の場合のみOkuyamaResultSetから取得できる
cehckType - 範囲条件を指定する先を指定 1=Key, 2=Value, 3=両方
encoding - Valueを復元する際に利用するエンコーディング指定
戻り値:
OkuyamaResultSet 結果のOkuyamaResultSet Tagがそもそも存在しない場合もOkuyamaResultSetは返るのでOkuyamaResultSetのnextメソッドを呼び出してデータの有無を確認する必要がある
例外:
OkuyamaClientException

getTagKeysResult

public OkuyamaResultSet getTagKeysResult(java.lang.String tagStr,
                                         UserDataFilter filter)
                                  throws OkuyamaClientException
MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
Tagは打たれているが実際は既に存在しないValueが紐付くKey値は取得出来ない.
利用者が独自で実装可能なUserDataFilterインターフェースを実装したクラスを渡すことで独自のフィルターが可能

パラメータ:
tagStr - Tag値
filter - 独自実装によるフィルターインスタンス
戻り値:
OkuyamaResultSet 結果のOkuyamaResultSet Tagがそもそも存在しない場合もOkuyamaResultSetは返るのでOkuyamaResultSetのnextメソッドを呼び出してデータの有無を確認する必要がある
例外:
OkuyamaClientException

getTagKeysResult

public OkuyamaResultSet getTagKeysResult(java.lang.String tagStr,
                                         UserDataFilter filter,
                                         java.lang.String encoding)
                                  throws OkuyamaClientException
MasterNodeからTagを指定することで紐付くKeyとValueが取得可能な、OkuyamaResultSetを取得する.
Tagは打たれているが実際は既に存在しないValueが紐付くKey値は取得出来ない.
利用者が独自で実装可能なUserDataFilterインターフェースを実装したクラスを渡すことで独自のフィルターが可能

パラメータ:
tagStr - Tag値
filter - 独自実装によるフィルターインスタンス
encoding - Valueを復元する際に利用するエンコーディング指定
戻り値:
OkuyamaResultSet 結果のOkuyamaResultSet Tagがそもそも存在しない場合もOkuyamaResultSetは返るのでOkuyamaResultSetのnextメソッドを呼び出してデータの有無を確認する必要がある
例外:
OkuyamaClientException

getMultiTagKeysResult

public OkuyamaResultSet getMultiTagKeysResult(java.lang.String[] tagList)
                                       throws OkuyamaClientException
MasterNodeからTagを複数を指定することで紐付くKeyが取得可能な、OkuyamaResultSetを取得する.
Tagは打たれているが実際は既に存在しないValueが紐付くKey値は取得出来ない.
指定したTagはANDの扱いでデータは選別される。getMultiTagKeysと同じように動くが、こちらを使えば一度にメモリ上に展開出来ないような、
大量のTagに紐付くデータを対象にする場合に向いている。少量のデータに対して複数Tagで取得したい場合は、従来通りgetMultiTagKeysを使うことを推奨する.

パラメータ:
tagList - Tag値の配列
戻り値:
OkuyamaResultSet 結果のOkuyamaResultSet Tagがそもそも存在しない場合もOkuyamaResultSetは返るのでOkuyamaResultSetのnextメソッドを呼び出してデータの有無を確認する必要がある
例外:
OkuyamaClientException

getMultiTagKeysResult

public OkuyamaResultSet getMultiTagKeysResult(java.lang.String[] tagList,
                                              boolean margeType)
                                       throws OkuyamaClientException
MasterNodeからTagを複数を指定することで紐付くKeyが取得可能な、OkuyamaResultSetを取得する.
Tagは打たれているが実際は既に存在しないValueが紐付くKey値は取得出来ない.
またANDとORを指定可能であり、getMultiTagKeysと同じように動くが、こちらを使えば一度にメモリ上に展開出来ないような、
大量のTagに紐付くデータを対象にする場合に向いている。少量のデータに対して複数Tagで取得したい場合は、従来通りgetMultiTagKeysを使うことを推奨する.

パラメータ:
tagList - Tag値の配列
margeType - 取得方法指定(true = AND、false=OR)
戻り値:
OkuyamaResultSet 結果のOkuyamaResultSet Tagがそもそも存在しない場合もOkuyamaResultSetは返るのでOkuyamaResultSetのnextメソッドを呼び出してデータの有無を確認する必要がある
例外:
OkuyamaClientException

getTargetIndexTagKeys

public java.lang.Object[] getTargetIndexTagKeys(java.lang.String tagStr,
                                                java.lang.String bucketIndex)
                                         throws OkuyamaClientException
MasterNodeからTagとKey格納bucketのIndexを使用してKey値配列を取得する.
本メソッドは、OkuyamaTagKeysResultSetクラスからの利用を想定して作成されているため、 それ以外の部分からの呼び出しは推奨しない.

パラメータ:
tagStr - Tag値
index - bucketIndex
戻り値:
Object[] 要素1(データ有無):"true" or "false",要素2(Key値配列):Stringの配列
例外:
OkuyamaClientException

searchValue

public java.lang.Object[] searchValue(java.lang.String[] searchCharacterList,
                                      java.lang.String searchType)
                               throws OkuyamaClientException
MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
検索可能な文字列は1文字からで、最大は128文字(ソフトリミット).
Prefxiなし.

パラメータ:
searchCharacterList - 取得したい値の文字配列(エンコードはUTF-8固定)
searchType - "1":AND検索 "2":OR検索
戻り値:
Object[] 要素1(データ有無):"true" or "false",要素2(該当のKey値配列):Stringの配列
例外:
OkuyamaClientException

searchValue

public java.lang.Object[] searchValue(java.lang.String[] searchCharacterList,
                                      java.lang.String searchType,
                                      int searchIndexLen)
                               throws OkuyamaClientException
MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
検索可能な文字列は1文字からで、最大は128文字(ソフトリミット).
Prefxiなし.

パラメータ:
searchCharacterList - 取得したい値の文字配列(エンコードはUTF-8固定)
searchType - 1:AND検索 2:OR検索
searchIndexLen - 検索するIndexをヒストグラムIndex以上にする場合にそのIndexの長さを指定
戻り値:
Object[] 要素1(データ有無):"true" or "false",要素2(該当のKey値配列):Stringの配列
例外:
OkuyamaClientException

searchValue

public java.lang.Object[] searchValue(java.lang.String[] searchCharacterList,
                                      java.lang.String searchType,
                                      java.lang.String prefix)
                               throws OkuyamaClientException
MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
検索可能な文字列は1文字からで、最大は128文字(ソフトリミット).
Prefxiあり.

パラメータ:
searchCharacterList - 取得したい値の文字配列(エンコードはUTF-8固定)
searchType - 1:AND検索 2:OR検索
prefix - 検索Index作成時に指定したPrefix値
戻り値:
Object[] 要素1(データ有無):"true" or "false",要素2(該当のKey値配列):Stringの配列
例外:
OkuyamaClientException

searchValue

public java.lang.Object[] searchValue(java.lang.String[] searchCharacterList,
                                      java.lang.String searchType,
                                      java.lang.String prefix,
                                      int searchIndexLen)
                               throws OkuyamaClientException
MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
検索可能な文字列は1文字からで、最大は128文字(ソフトリミット).
Prefxiあり.

パラメータ:
searchCharacterList - 取得したい値の文字配列(エンコードはUTF-8固定)
searchType - 1:AND検索 2:OR検索
prefix - 検索Index作成時に指定したPrefix値
searchIndexLen - 検索するIndexをヒストグラムIndex以上にする場合にそのIndexの長さを指定
戻り値:
Object[] 要素1(データ有無):"true" or "false",要素2(該当のKey値配列):Stringの配列
例外:
OkuyamaClientException

sendSearchValueRequest

protected void sendSearchValueRequest(java.lang.String[] searchCharacterList,
                                      java.lang.String searchType)
                               throws OkuyamaClientException
MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
検索可能な文字列は1文字からで、最大は128文字(ソフトリミット).
Prefxiなし.

パラメータ:
searchCharacterList - 取得したい値の文字配列(エンコードはUTF-8固定)
searchType - 1:AND検索 2:OR検索
例外:
OkuyamaClientException

sendSearchValueRequest

protected void sendSearchValueRequest(java.lang.String[] searchCharacterList,
                                      java.lang.String searchType,
                                      int searchIndexLen)
                               throws OkuyamaClientException
MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
検索可能な文字列は1文字からで、最大は128文字(ソフトリミット).
Prefxiなし.

パラメータ:
searchCharacterList - 取得したい値の文字配列(エンコードはUTF-8固定)
searchType - 1:AND検索 2:OR検索
searchIndexLen - 検索するIndexをヒストグラムIndex以上にする場合にそのIndexの長さを指定
例外:
OkuyamaClientException

sendSearchValueRequest

protected void sendSearchValueRequest(java.lang.String[] searchCharacterList,
                                      java.lang.String searchType,
                                      java.lang.String prefix,
                                      int searchIndexLen)
                               throws OkuyamaClientException
MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
検索可能な文字列は1文字からで、最大は128文字(ソフトリミット).
Prefxiあり.

パラメータ:
searchCharacterList - 取得したい値の文字配列(エンコードはUTF-8固定)
searchType - 1:AND検索 2:OR検索
prefix - 検索Index作成時に指定したPrefix値
searchIndexLen - 検索するIndexをヒストグラムIndex以上にする場合にそのIndexの長さを指定
例外:
OkuyamaClientException

readSearchValueResponse

protected java.lang.Object[] readSearchValueResponse(java.lang.String[] searchCharacterList,
                                                     java.lang.String searchType,
                                                     java.lang.String prefix)
                                              throws OkuyamaClientException
MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
検索可能な文字列は1文字からで、最大は128文字(ソフトリミット).
Prefxiあり.

パラメータ:
searchCharacterList - 取得したい値の文字配列(エンコードはUTF-8固定)
searchType - 1:AND検索 2:OR検索
prefix - 検索Index作成時に指定したPrefix値
戻り値:
Object[] 要素1(データ有無):"true" or "false",要素2(該当のKey値配列):Stringの配列
例外:
OkuyamaClientException

readSearchValueResponse

protected java.lang.Object[] readSearchValueResponse(java.lang.String[] searchCharacterList,
                                                     java.lang.String searchType,
                                                     java.lang.String prefix,
                                                     int searchIndexLen)
                                              throws OkuyamaClientException
MasterNodeからsetValueAndCreateIndexで作成されたIndexを使って検索して該当する値を取得する.
検索可能な文字列は1文字からで、最大は128文字(ソフトリミット).
Prefxiあり.

パラメータ:
searchCharacterList - 取得したい値の文字配列(エンコードはUTF-8固定)
searchType - 1:AND検索 2:OR検索
prefix - 検索Index作成時に指定したPrefix値
searchIndexLen - 検索するIndexをヒストグラムIndex以上にする場合にそのIndexの長さを指定
戻り値:
Object[] 要素1(データ有無):"true" or "false",要素2(該当のKey値配列):Stringの配列
例外:
OkuyamaClientException

dataEncoding

protected byte[] dataEncoding(byte[] datas)

dataDecoding

protected byte[] dataDecoding(byte[] datas)

execCompress

protected byte[] execCompress(byte[] bytes)
                       throws java.lang.Exception
例外:
java.lang.Exception

execDecompres

protected byte[] execDecompres(byte[] bytes)
                        throws java.lang.Exception
例外:
java.lang.Exception