SideInputHandler implements ReadyCheckingSideInputReader { @Override public <T> boolean contains(PCollectionView<T> view) { return sideInputs.contains(view); } SideInputHandler(
      Collection<PCollectionView<?>> sideInputs, StateInternals stateInternals); void addSideInputValue(PCollectionView<?> sideInput, WindowedValue<Iterable<?>> value); @Nullable @Override T get(PCollectionView<T> view, BoundedWindow window); Iterable<?> getIterable(PCollectionView<T> view, BoundedWindow window); @Override boolean isReady(PCollectionView<?> sideInput, BoundedWindow window); @Override boolean contains(PCollectionView<T> view); @Override boolean isEmpty();  }
@Test public void testContains() { SideInputHandler sideInputHandler = new SideInputHandler(ImmutableList.of(view1), InMemoryStateInternals.<Void>forKey(null)); assertTrue(sideInputHandler.contains(view1)); assertFalse(sideInputHandler.contains(view2)); }