2.12. 戻り値の強制
不必要にデータを送信しないようにするために、リモートキャッシュでの書き込み操作は、以前の値ではなく null
を返します。
たとえば、以下のメソッド呼び出しでは、キーに対する以前の値は返されません。
V remove(Object key); V put(K key, V value);
FORCE_RETURN_VALUE
フラグを使用してこのデフォルトの動作を変更すると、呼び出しで以前の値が返されるようになります。
手順
-
null
ではなく以前の値を取得するには、次の例のようにFORCE_RETURN_VALUE
フラグを使用します。
cache.put("aKey", "initialValue"); assert null == cache.put("aKey", "aValue"); assert "aValue".equals(cache.withFlags(Flag.FORCE_RETURN_VALUE).put("aKey", "newValue"));