Я создал сервер Java с сокетами, как печатать на ВСЕ сокеты?

Я пытался это сделать некоторое время, и я хочу, чтобы несколько клиентов получали несколько входов одновременно.
 Существует одна проблема: я хочу, чтобы сервер печатал & quot; Привет & quot; всем клиентам, если один клиент говорит «print2all Hi».
Я знаю, как обработать это, чтобы напечатать это, просто напечатать ВСЕМ клиентам - проблема.

Вот что я имею до сих пор.
Server

try{
    try{
        server = new ServerSocket(25565);
    } catch (Exception e){
        e.printStackTrace();
    }
    while (isListening){
        new SocketThread(server.accept()).start();
    }
    server.close();
} catch (Exception e){
    e.printStackTrace();
}

SocketThread

try {
    PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
    BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));

    String inputLine, outputLine;
    Processor kkp = new Processor();
    out.println("Hi!");

    while ((inputLine = in.readLine()) != null) {
        outputLine = kkp.Proccess(inputLine,this.socket);
        out.println(outputLine);
    }
    out.close();
    in.close();
    socket.close();

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

Client

            Processor p = new Processor();
            socket = new Socket("localhost",25565);
            out = new PrintWriter(socket.getOutputStream(), true);
            in = new BufferedReader(new InputStreamReader(socket.getInputStream()));                
            BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in));
            String fromServer;
            String fromUser;
            out.println("print2all Hi")            
            socket.close();

Ответы на вопрос(2)

Ваш ответ на вопрос