@Override protected TimerSerializer<K, N> createOuterSerializerWithNestedSerializers(TypeSerializer<?>[] nestedSerializers) { @SuppressWarnings("unchecked") final TypeSerializer<K> keySerializer = (TypeSerializer<K>) nestedSerializers[0]; @SuppressWarnings("unchecked") final TypeSerializer<N> namespaceSerializer = (TypeSerializer<N>) nestedSerializers[1]; return new TimerSerializer<K, N>(keySerializer, namespaceSerializer); }
@Override protected TypeSerializer<TimerHeapInternalTimer<Long, TimeWindow>> createSerializer() { return new TimerSerializer<>(KEY_SERIALIZER, NAMESPACE_SERIALIZER); }
private static TypeSerializer<TimerHeapInternalTimer<String, Integer>> stringIntTimerSerializerSupplier() { return new TimerSerializer<>(StringSerializer.INSTANCE, IntSerializer.INSTANCE); } }
@Override public TimerSerializer<K, N> duplicate() { final TypeSerializer<K> keySerializerDuplicate = keySerializer.duplicate(); final TypeSerializer<N> namespaceSerializerDuplicate = namespaceSerializer.duplicate(); if (keySerializerDuplicate == keySerializer && namespaceSerializerDuplicate == namespaceSerializer) { // all delegate serializers seem stateless, so this is also stateless. return this; } else { // at least one delegate serializer seems to be stateful, so we return a new instance. return new TimerSerializer<>( keySerializerDuplicate, namespaceSerializerDuplicate, length, immutableType); } }
@SuppressWarnings("unchecked") private <N> InternalTimerServiceImpl<K, N> registerOrGetTimerService( String serviceName, InternalTimersSnapshot<?, ?> restoredTimersSnapshot) { final TypeSerializer<K> keySerializer = (TypeSerializer<K>) restoredTimersSnapshot.getKeySerializer(); final TypeSerializer<N> namespaceSerializer = (TypeSerializer<N>) restoredTimersSnapshot.getNamespaceSerializer(); TimerSerializer<K, N> timerSerializer = new TimerSerializer<>(keySerializer, namespaceSerializer); return timerServicesManager.registerOrGetTimerService(serviceName, timerSerializer); } }
TypeSerializer<K> keySerializer = keyedStateBackend.getKeySerializer(); InternalTimeServiceManager<K> keyedTimeServiceHandler = (InternalTimeServiceManager<K>) timeServiceManager; TimerSerializer<K, N> timerSerializer = new TimerSerializer<>(keySerializer, namespaceSerializer); return keyedTimeServiceHandler.getInternalTimerService(name, timerSerializer, triggerable);
private static <K, N> InternalTimerServiceImpl<K, N> createInternalTimerService( KeyGroupRange keyGroupsList, KeyContext keyContext, ProcessingTimeService processingTimeService, TypeSerializer<K> keySerializer, TypeSerializer<N> namespaceSerializer, PriorityQueueSetFactory priorityQueueSetFactory) { TimerSerializer<K, N> timerSerializer = new TimerSerializer<>(keySerializer, namespaceSerializer); return new InternalTimerServiceImpl<>( keyGroupsList, keyContext, processingTimeService, createTimerQueue("__test_processing_timers", timerSerializer, priorityQueueSetFactory), createTimerQueue("__test_event_timers", timerSerializer, priorityQueueSetFactory)); }
@Override public TimerSerializer<K, N> duplicate() { final TypeSerializer<K> keySerializerDuplicate = keySerializer.duplicate(); final TypeSerializer<N> namespaceSerializerDuplicate = namespaceSerializer.duplicate(); if (keySerializerDuplicate == keySerializer && namespaceSerializerDuplicate == namespaceSerializer) { // all delegate serializers seem stateless, so this is also stateless. return this; } else { // at least one delegate serializer seems to be stateful, so we return a new instance. return new TimerSerializer<>( keySerializerDuplicate, namespaceSerializerDuplicate, length, immutableType); } }
@Override public TimerSerializer<K, N> duplicate() { final TypeSerializer<K> keySerializerDuplicate = keySerializer.duplicate(); final TypeSerializer<N> namespaceSerializerDuplicate = namespaceSerializer.duplicate(); if (keySerializerDuplicate == keySerializer && namespaceSerializerDuplicate == namespaceSerializer) { // all delegate serializers seem stateless, so this is also stateless. return this; } else { // at least one delegate serializer seems to be stateful, so we return a new instance. return new TimerSerializer<>( keySerializerDuplicate, namespaceSerializerDuplicate, length, immutableType); } }
@SuppressWarnings("unchecked") private <N> InternalTimerServiceImpl<K, N> registerOrGetTimerService( String serviceName, InternalTimersSnapshot<?, ?> restoredTimersSnapshot) { final TypeSerializer<K> keySerializer = (TypeSerializer<K>) restoredTimersSnapshot.getKeySerializer(); final TypeSerializer<N> namespaceSerializer = (TypeSerializer<N>) restoredTimersSnapshot.getNamespaceSerializer(); TimerSerializer<K, N> timerSerializer = new TimerSerializer<>(keySerializer, namespaceSerializer); return timerServicesManager.registerOrGetTimerService(serviceName, timerSerializer); } }
@SuppressWarnings("unchecked") private <N> InternalTimerServiceImpl<K, N> registerOrGetTimerService( String serviceName, InternalTimersSnapshot<?, ?> restoredTimersSnapshot) { final TypeSerializer<K> keySerializer = (TypeSerializer<K>) restoredTimersSnapshot.getKeySerializer(); final TypeSerializer<N> namespaceSerializer = (TypeSerializer<N>) restoredTimersSnapshot.getNamespaceSerializer(); TimerSerializer<K, N> timerSerializer = new TimerSerializer<>(keySerializer, namespaceSerializer); return timerServicesManager.registerOrGetTimerService(serviceName, timerSerializer); } }
TypeSerializer<K> keySerializer = keyedStateBackend.getKeySerializer(); InternalTimeServiceManager<K> keyedTimeServiceHandler = (InternalTimeServiceManager<K>) timeServiceManager; TimerSerializer<K, N> timerSerializer = new TimerSerializer<>(keySerializer, namespaceSerializer); return keyedTimeServiceHandler.getInternalTimerService(name, timerSerializer, triggerable);
TypeSerializer<K> keySerializer = keyedStateBackend.getKeySerializer(); InternalTimeServiceManager<K> keyedTimeServiceHandler = (InternalTimeServiceManager<K>) timeServiceManager; TimerSerializer<K, N> timerSerializer = new TimerSerializer<>(keySerializer, namespaceSerializer); return keyedTimeServiceHandler.getInternalTimerService(name, timerSerializer, triggerable);