@Override
    public void tryLockDocument(String url) throws RemoteException, MalformedURLException, NotBoundException {
        Logger.getLogger(CentralizedClientController.class.getName()).log(Level.INFO, "Tentative de lock de " + fileName + " par " + url);
        if(!url.equals(this.getUrl())) {

            Logger.getLogger(CentralizedClientController.class.getName()).log(Level.INFO, "Demande reçue de " + url);

            if (dernier.get(fileName) != null) {
                try {
                    Logger.getLogger(CentralizedClientController.class.getName()).log(Level.INFO, "Demande envoyée à " + dernier.get(fileName));
                    RemoteControllerInterface r = (RemoteControllerInterface) Naming.lookup(dernier.get(fileName));

                    r.tryLockDocument(url);
                } catch (NotBoundException e) {
                    e.printStackTrace();
                } catch (MalformedURLException e) {
                    e.printStackTrace();
                }
            }

            dernier.put(fileName, url);

            if (suivant.get(fileName) == null) {
                if (demandeur) {
                    Logger.getLogger(CentralizedClientController.class.getName()).log(Level.INFO, "Demande en attente");
                    suivant.put(fileName, url);
                } else {
                    Logger.getLogger(CentralizedClientController.class.getName()).log(Level.INFO, "Demande acceptée");
                    RemoteControllerInterface r = (RemoteControllerInterface) Naming.lookup(dernier.get(fileName));
                    r.lockDocument();
                    
                }
            }
        } else {
            demandeur = true;

            if(dernier.get(fileName) == null){
                Logger.getLogger(CentralizedClientController.class.getName()).log(Level.INFO, "Réussite automatique");
                lockDocument();
            } else {
                Logger.getLogger(CentralizedClientController.class.getName()).log(Level.INFO, "Demande envoyée à " + dernier.get(fileName));
                RemoteControllerInterface r = (RemoteControllerInterface)Naming.lookup(dernier.get(fileName));
                r.tryLockDocument(url);
            }
        }
    }