Chat em java

Boa tarde a todos!
quero limitar o meu servidor para 3 clientes e guardar os dados dos mesmos clientes num txt!
alguem me pode ajudar?
obrigado pela atençao

Sim, todos podemos te ajudar! No que?

Tenho algumas dificudades com java!
Desculpem alguma ignarancia
estou a começar!!
Bem…

quero so que funcionem 3 cientes em simultaneo!

meu chat é com threads e sockets! ja se liga com varios clientes.

neste exemplo esta no servidor
public class Servidor implements Serializable
{

 private Map<String,Cliente> clientes; 
private String username;
private String password;

public Servidor(){
    super();
this.clientes = new HashMap<String, Cliente>();

}

O random da password:
public String getPassword() {
Random randomNumber = new Random();

    char password[] = new char[6];
    for (int i = 0; i < 6;)
    {
         int value = randomNumber.nextInt(125);
         if ((value >= 48 && value <= 57) || (value >= 65 && value <= 90) || (value >= 97 && value <= 122))
         {
             password[i] = (char) value;
             i++;
         }
    }
    String tmp = new String(password);
    return tmp;
}

e no cliente

public void cliente(String args[]){
this.username = username;
this.password = password;
}

    public String getUsername() {
        return username;
}

  public String getPassword() {
        return password;
    
    }
public String toString() {
    return "username: "+ username;
}


public void mostraDadosCliente(){
    System.out.println("Meu user é: "+this.username);
 System.out.println("Minha pass é: "+this.password+" password");


}

como e q o servidor verifica s esta disponivel o username
caso o username n tenha sido ainda atribuido, o servidor envia a password para o cliente

obrigada pela atençao

Uses as tags Code para por o seu código-fonte 8)