001package edu.wpi.first.wpilibj.networktables2.stream; 002 003import java.io.*; 004 005/** 006 * An object that will provide the IOStream of clients to a NetworkTable Server 007 * 008 * @author mwills 009 * 010 */ 011public interface IOStreamProvider { 012 /** 013 * 014 * @return a new IOStream normally from a server 015 * @throws IOException 016 */ 017 IOStream accept() throws IOException; 018 /** 019 * Close the source of the IOStreams. {@link #accept()} should not be called after this is called 020 * @throws IOException 021 */ 022 void close() throws IOException; 023}