@Override public <K> TypeSerializer<K> getKeySerializer() { return (TypeSerializer<K>) operator.getKeySerializer(); }
@Override public <K, N, V> SubKeyedValueState<K, N, V> getSubKeyedValueState( ValueStateDescriptor<V> descriptor ) throws Exception { if (namespaceSerializer == null) { throw new RuntimeException("The namespace serializer has not been initialized."); } descriptor.initializeSerializerUnlessSet(operator.getExecutionConfig()); return operator.getSubKeyedState( new SubKeyedValueStateDescriptor<>( descriptor.getName(), (TypeSerializer<K>) operator.getKeySerializer(), (TypeSerializer<N>) namespaceSerializer, descriptor.getSerializer() ) ); }
@Override public <K, N, V> SubKeyedListState<K, N, V> getSubKeyedListState( ListStateDescriptor<V> descriptor ) throws Exception { if (namespaceSerializer == null) { throw new RuntimeException("The namespace serializer has not been initialized."); } descriptor.initializeSerializerUnlessSet(operator.getExecutionConfig()); return operator.getSubKeyedState(new SubKeyedListStateDescriptor<>( descriptor.getName(), (TypeSerializer<K>) operator.getKeySerializer(), (TypeSerializer<N>) namespaceSerializer, ((ListSerializer<V>) descriptor.getSerializer()).getElementSerializer())); }
@Override public <K, V> KeyedValueState<K, V> getKeyedValueState( ValueStateDescriptor<V> descriptor) throws Exception { descriptor.initializeSerializerUnlessSet(operator.getExecutionConfig()); return operator.getKeyedState( new KeyedValueStateDescriptor<>( descriptor.getName(), (TypeSerializer<K>) operator.getKeySerializer(), descriptor.getSerializer() ) ); }
@Override public <K, V> KeyedListState<K, V> getKeyedListState( ListStateDescriptor<V> descriptor ) throws Exception { descriptor.initializeSerializerUnlessSet(operator.getExecutionConfig()); return operator.getKeyedState( new KeyedListStateDescriptor<>( descriptor.getName(), (TypeSerializer<K>) operator.getKeySerializer(), (ListSerializer<V>) descriptor.getSerializer() ) ); }
@Override public <K, UK, UV> KeyedMapState<K, UK, UV> getKeyedMapState( MapStateDescriptor<UK, UV> descriptor ) throws Exception { descriptor.initializeSerializerUnlessSet(operator.getExecutionConfig()); return operator.getKeyedState( new KeyedMapStateDescriptor<>( descriptor.getName(), (TypeSerializer<K>) operator.getKeySerializer(), (MapSerializer<UK, UV>) descriptor.getSerializer() ) ); }
@Override public <K, UK, UV> KeyedSortedMapState<K, UK, UV> getKeyedSortedMapState( SortedMapStateDescriptor<UK, UV> descriptor ) throws Exception { descriptor.initializeSerializerUnlessSet(operator.getExecutionConfig()); return operator.getKeyedState( new KeyedSortedMapStateDescriptor<>( descriptor.getName(), (TypeSerializer<K>) operator.getKeySerializer(), (SortedMapSerializer<UK, UV>) descriptor.getSerializer() ) ); }
@Override public <K, N, UK, UV> SubKeyedMapState<K, N, UK, UV> getSubKeyedMapState( MapStateDescriptor<UK, UV> descriptor ) throws Exception { if (namespaceSerializer == null) { throw new RuntimeException("The namespace serializer has not been initialized."); } descriptor.initializeSerializerUnlessSet(operator.getExecutionConfig()); MapSerializer<UK, UV> mapSerializer = (MapSerializer<UK, UV>) descriptor.getSerializer(); return operator.getSubKeyedState(new SubKeyedMapStateDescriptor<>( descriptor.getName(), (TypeSerializer<K>) operator.getKeySerializer(), (TypeSerializer<N>) namespaceSerializer, mapSerializer.getKeySerializer(), mapSerializer.getValueSerializer())); }
@Override public <K, N, UK, UV> SubKeyedSortedMapState<K, N, UK, UV> getSubKeyedSortedMapState( SortedMapStateDescriptor<UK, UV> descriptor ) throws Exception { if (namespaceSerializer == null) { throw new RuntimeException("The namespace serializer has not been initialized."); } descriptor.initializeSerializerUnlessSet(operator.getExecutionConfig()); SortedMapSerializer<UK, UV> sortedMapSerializer = (SortedMapSerializer<UK, UV>) descriptor.getSerializer(); return operator.getSubKeyedState(new SubKeyedSortedMapStateDescriptor<>( descriptor.getName(), (TypeSerializer<K>) operator.getKeySerializer(), (TypeSerializer<N>) namespaceSerializer, sortedMapSerializer.getComparator(), sortedMapSerializer.getKeySerializer(), sortedMapSerializer.getValueSerializer())); }