@Override public boolean isImmutableType() { return originalSerializer.isImmutableType(); }
@Override public boolean isImmutableType() { return transactionSerializer.isImmutableType() && contextSerializer.isImmutableType(); }
TimerSerializer( @Nonnull TypeSerializer<K> keySerializer, @Nonnull TypeSerializer<N> namespaceSerializer) { this( keySerializer, namespaceSerializer, computeTotalByteLength(keySerializer, namespaceSerializer), keySerializer.isImmutableType() && namespaceSerializer.isImmutableType()); }
@Override public C[] copy(C[] from) { final TypeSerializer<C> serializer = this.componentSerializer; if (serializer.isImmutableType()) { return Arrays.copyOf(from, from.length); } else { C[] copy = create(from.length); for (int i = 0; i < copy.length; i++) { C val = from[i]; if (val != null) { copy[i] = serializer.copy(val); } } return copy; } }
static PrecomputedParameters precompute( boolean immutableTargetType, TypeSerializer<Object>[] fieldSerializers) { Preconditions.checkNotNull(fieldSerializers); int totalLength = 0; boolean fieldsImmutable = true; boolean stateful = false; for (TypeSerializer<Object> fieldSerializer : fieldSerializers) { Preconditions.checkNotNull(fieldSerializer); if (fieldSerializer != fieldSerializer.duplicate()) { stateful = true; } if (!fieldSerializer.isImmutableType()) { fieldsImmutable = false; } if (fieldSerializer.getLength() < 0) { totalLength = -1; } totalLength = totalLength >= 0 ? totalLength + fieldSerializer.getLength() : totalLength; } return new PrecomputedParameters(immutableTargetType, fieldsImmutable, totalLength, stateful); } }
@Override public boolean isImmutableType() { for (TypeSerializer<?> serializer : underlyingSerializers) { if (!serializer.isImmutableType()) { return false; } } return true; }
@Override public boolean isImmutableType() { for (TypeSerializer<?> serializer : underlyingSerializers) { if (!serializer.isImmutableType()) { return false; } } return true; }
@Override public boolean isImmutableType() { return originalSerializer.isImmutableType(); }
@Override public boolean isImmutableType() { return transactionSerializer.isImmutableType() && contextSerializer.isImmutableType(); }
@Override public boolean isImmutableType() { return typeSerializer.isImmutableType(); }
@Override public boolean isImmutableType() { return serializer.isImmutableType(); }
@Override public boolean isImmutableType() { return transactionSerializer.isImmutableType() && contextSerializer.isImmutableType(); }
TimerSerializer( @Nonnull TypeSerializer<K> keySerializer, @Nonnull TypeSerializer<N> namespaceSerializer) { this( keySerializer, namespaceSerializer, computeTotalByteLength(keySerializer, namespaceSerializer), keySerializer.isImmutableType() && namespaceSerializer.isImmutableType()); }
TimerSerializer( @Nonnull TypeSerializer<K> keySerializer, @Nonnull TypeSerializer<N> namespaceSerializer) { this( keySerializer, namespaceSerializer, computeTotalByteLength(keySerializer, namespaceSerializer), keySerializer.isImmutableType() && namespaceSerializer.isImmutableType()); }
@Override public ArrayList<T> copy(ArrayList<T> from) { if (elementSerializer.isImmutableType()) { // fast track using memcopy for immutable types return new ArrayList<>(from); } else { // element-wise deep copy for mutable types ArrayList<T> newList = new ArrayList<>(from.size()); for (int i = 0; i < from.size(); i++) { newList.add(elementSerializer.copy(from.get(i))); } return newList; } }
@Override public ArrayList<T> copy(ArrayList<T> from) { if (elementSerializer.isImmutableType()) { // fast track using memcopy for immutable types return new ArrayList<>(from); } else { // element-wise deep copy for mutable types ArrayList<T> newList = new ArrayList<>(from.size()); for (int i = 0; i < from.size(); i++) { newList.add(elementSerializer.copy(from.get(i))); } return newList; } }
@Override public ArrayList<T> copy(ArrayList<T> from) { if (elementSerializer.isImmutableType()) { // fast track using memcopy for immutable types return new ArrayList<>(from); } else { // element-wise deep copy for mutable types ArrayList<T> newList = new ArrayList<>(from.size()); for (int i = 0; i < from.size(); i++) { newList.add(elementSerializer.copy(from.get(i))); } return newList; } }
@Override public ArrayList<T> copy(ArrayList<T> from) { if (elementSerializer.isImmutableType()) { // fast track using memcopy for immutable types return new ArrayList<>(from); } else { // element-wise deep copy for mutable types ArrayList<T> newList = new ArrayList<>(from.size()); for (int i = 0; i < from.size(); i++) { newList.add(elementSerializer.copy(from.get(i))); } return newList; } }
values.add(eventSerializer.isImmutableType() ? event : eventSerializer.copy(event));
static PrecomputedParameters precompute( boolean immutableTargetType, TypeSerializer<Object>[] fieldSerializers) { Preconditions.checkNotNull(fieldSerializers); int totalLength = 0; boolean fieldsImmutable = true; boolean stateful = false; for (TypeSerializer<Object> fieldSerializer : fieldSerializers) { Preconditions.checkNotNull(fieldSerializer); if (fieldSerializer != fieldSerializer.duplicate()) { stateful = true; } if (!fieldSerializer.isImmutableType()) { fieldsImmutable = false; } if (fieldSerializer.getLength() < 0) { totalLength = -1; } totalLength = totalLength >= 0 ? totalLength + fieldSerializer.getLength() : totalLength; } return new PrecomputedParameters(immutableTargetType, fieldsImmutable, totalLength, stateful); } }