Jak odczytać cały strumień wejściowy w serwerze Socket JAVA

Korzystam z Java.net w jednym z moich projektów. i napisałem serwer aplikacji, który pobiera strumień wejściowy od klienta. Ale czasami mój (buforowany) InputStream nie może pobrać całego OutputStream tego klienta wysłanego na mój serwer. Jak mogę napisać czekanie lub coś takiego, że mój InputStream pobiera całą OutputStream klienta?

(Mój strumień wejściowy nie jest łańcuchem)

private Socket clientSocket;
private ServerSocket server;
private BufferedOutputStream outputS;
private BufferedInputStream inputS;
private InputStream inBS;
private OutputStream outBS;

server = new ServerSocket(30501, 100);
clientSocket = server.accept();

public void getStreamFromClient()  {
    try {
        outBS = clientSocket.getOutputStream();
        outputS = new BufferedOutputStream( outBS);
        outputS.flush();

        inBS = clientSocket.getInputStream();
        inputS = new BufferedInputStream( inBS );

    } catch (Exception e) {
        e.printStackTrace();
    }
}

Dzięki.

questionAnswers(3)

yourAnswerToTheQuestion