use of org.infinispan.functional.Param in project infinispan by infinispan.
the class Params method readObject.
public static Params readObject(ObjectInput input) throws IOException {
int paramBits = input.readByte();
PersistenceMode persistenceMode = PersistenceMode.valueOf(paramBits & 3);
LockingMode lockingMode = LockingMode.valueOf((paramBits >>> 2) & 3);
ExecutionMode executionMode = ExecutionMode.valueOf((paramBits >>> 4) & 3);
StatisticsMode statisticsMode = StatisticsMode.valueOf((paramBits >>> 6) & 1);
ReplicationMode replicationMode = ReplicationMode.valueOf((paramBits >>> 7) & 1);
if (persistenceMode == PersistenceMode.defaultValue() && lockingMode == LockingMode.defaultValue() && executionMode == ExecutionMode.defaultValue() && statisticsMode == StatisticsMode.defaultValue() && replicationMode == ReplicationMode.defaultValue()) {
return DEFAULT_INSTANCE;
} else {
Param[] params = Arrays.copyOf(DEFAULTS, DEFAULTS.length);
params[PersistenceMode.ID] = persistenceMode;
params[LockingMode.ID] = lockingMode;
params[ExecutionMode.ID] = executionMode;
params[StatisticsMode.ID] = statisticsMode;
params[ReplicationMode.ID] = replicationMode;
return new Params(params);
}
}
Aggregations