2016-08-12 2 views
7

Ich verwende die org-netbeans-lib-cvsclient.jar, um verschiedene cvs-Befehle in einer Java-Klasse, die mit CVS kommuniziert, auszuführen. Ich bin in der Lage, einen Befehl cvs checkout, hinzufügen, commit, etc.Kann ich nur die Verzeichnisstruktur in cvsclient in Java auschecken?

Allerdings muss ich herausfinden, welcher Befehl entspricht dem cvs ls -R Befehl. Hier

ist der Code, den ich schrieb, dass ermöglicht eine cvs zu tun Check-out:

CheckoutCommand command = new CheckoutCommand(); 
command.setBuilder(null); 
command.setRecursive(true); 
command.setModule(module); 
if(revision!=null) 
{ 
    command.setCheckoutByRevision(revision); 
} 
command.setPruneDirectories(true); 
command.setUseHeadIfNotFound(true); 

executeCommand(command, AnonymizerConstants.DEFAULT_LOCAL_PATH); 

Ich brauche etwas ähnliches für CVS ls tun -R oder CVS rls

+0

Was haben Sie bisher versucht? Bitte zeigen Sie einen Code von Ihnen. Es ist ziemlich schwer mit so wenig Details über die eigentliche Programmierung zu helfen. –

+0

Ich habe gerade etwas Code hinzugefügt – Wael

Antwort

1

ich einen Befehl gefunden, die die RLogCommand ist, die mir erlaubt, eine Liste aller Dateien auf dem Server mit ihren Revisionen und Informationen über sie zu erhalten.

3

Es gibt keinen Befehl in diesem lib, aber die gute Nachricht ist, dass Sie diesen Befehl schreiben können. Sie würden im Grunde etwas wie org.netbeans.lib.cvsclient.command.log.LogCommand benötigen. Die wichtigste Methode, die Sie benötigen, ist #execute. Dies kann Ausgangspunkt sein:

List<Request> requests = new LinkedList<Request>(); 
requests.add(1, new ArgumentRequest("-R")); 
requests.add(new CommandRequest("ls\n")); 
client.processRequests(requests); 
Verwandte Themen