|
What this is
Other links
The source code
/*
* Sun Public License Notice
*
* The contents of this file are subject to the Sun Public License
* Version 1.0 (the "License"). You may not use this file except in
* compliance with the License. A copy of the License is available at
* http://www.sun.com/
*
* The Original Code is NetBeans. The Initial Developer of the Original
* Code is Sun Microsystems, Inc. Portions Copyright 1997-2000 Sun
* Microsystems, Inc. All Rights Reserved.
*/
package org.netbeans.lib.cvsclient.command.log;
import java.io.*;
import org.netbeans.lib.cvsclient.*;
import org.netbeans.lib.cvsclient.command.*;
import org.netbeans.lib.cvsclient.connection.*;
import org.netbeans.lib.cvsclient.event.*;
import org.netbeans.lib.cvsclient.request.*;
/**
* The log command looks up the log(history) of file(s) in the repository
* @author Milos Kleint
*/
public class LogCommand extends BasicCommand {
/**
* The event manager to use.
*/
protected EventManager eventManager;
/**
* Holds value of property defaultBranch.
*/
private boolean defaultBranch;
/**
* Holds value of property dateFilter.
*/
private String dateFilter;
/**
* Holds value of property headerOnly.
*/
private boolean headerOnly;
/**
* Holds value of property noTags.
*/
private boolean noTags;
/**
* Holds value of property revisionFilter.
*/
private String revisionFilter;
/**
* Holds value of property stateFilter.
*/
private String stateFilter;
/**
* Holds value of property userFilter.
*/
private String userFilter;
/**
* Holds value of property headerAndDescOnly.
*/
private boolean headerAndDescOnly;
/**
* Construct a new status command
*/
public LogCommand() {
resetCVSCommand();
}
/**
* Create a builder for this command.
* @param eventMan the event manager used to receive events.
*/
public Builder createBuilder(EventManager eventMan) {
return new LogBuilder(eventMan, this);
}
/**
* Execute a command
* @param client the client services object that provides any necessary
* services to this command, including the ability to actually process
* all the requests.
*/
public void execute(ClientServices client, EventManager em)
throws CommandException, AuthenticationException {
client.ensureConnection();
eventManager = em;
super.execute(client, em);
try {
// first send out all possible parameters..
if (defaultBranch) {
requests.add(1, new ArgumentRequest("-b")); //NOI18N
}
if (headerAndDescOnly) {
requests.add(1, new ArgumentRequest("-t")); //NOI18N
}
if (headerOnly) {
requests.add(1, new ArgumentRequest("-h")); //NOI18N
}
if (noTags) {
requests.add(1, new ArgumentRequest("-N")); //NOI18N
}
if (userFilter != null) {
requests.add(1, new ArgumentRequest("-w" + userFilter)); //NOI18N
}
if (revisionFilter != null) {
requests.add(1, new ArgumentRequest("-r" + revisionFilter)); //NOI18N
}
if (stateFilter != null) {
requests.add(1, new ArgumentRequest("-s" + stateFilter)); //NOI18N
}
if (dateFilter != null) {
requests.add(1, new ArgumentRequest("-d" + dateFilter)); //NOI18N
}
addRequestForWorkingDirectory(client);
addArgumentRequests();
addRequest(CommandRequest.LOG);
client.processRequests(requests);
}
catch (CommandException ex) {
throw ex;
}
catch (Exception ex) {
throw new CommandException(ex, ex.getLocalizedMessage());
}
finally {
requests.clear();
if (!isBuilderSet()) {
builder = null;
}
}
}
/**
* called when server responses with "ok" or "error", (when the command
* finishes)
*/
public void commandTerminated(TerminationEvent e) {
if (builder != null) {
builder.outputDone();
}
}
/**
* Getter for property defaultBranch, equals the command-line CVS switch
* "-b".
* @return Value of property defaultBranch.
*/
public boolean isDefaultBranch() {
return defaultBranch;
}
/**
* Setter for property defaultBranch, equals the command-line CVS switch
* "-b".
* @param defaultBranch New value of property defaultBranch.
*/
public void setDefaultBranch(boolean defaultBranch) {
this.defaultBranch = defaultBranch;
}
/**
* Getter for property dateFilter, equals the command-line CVS switch "-d".
* @return Value of property dateFilter.
*/
public String getDateFilter() {
return dateFilter;
}
/** Setter for property dateFilter, equals the command-line CVS switch "-d".
* @param dateFilter New value of property dateFilter.
*/
public void setDateFilter(String dateFilter) {
this.dateFilter = dateFilter;
}
/** Getter for property headerOnly, equals the command-line CVS switch "-h".
* @return Value of property headerOnly.
*/
public boolean isHeaderOnly() {
return headerOnly;
}
/** Setter for property headerOnly, equals the command-line CVS switch "-h".
* @param headerOnly New value of property headerOnly.
*/
public void setHeaderOnly(boolean headerOnly) {
this.headerOnly = headerOnly;
}
/** Getter for property noTags, equals the command-line CVS switch "-N".
* @return Value of property noTags.
*/
public boolean isNoTags() {
return noTags;
}
/** Setter for property noTags, equals the command-line CVS switch "-N".
* @param noTags New value of property noTags.
*/
public void setNoTags(boolean noTags) {
this.noTags = noTags;
}
/** Getter for property revisionFilter, equals the command-line CVS switch "-r".
* @return Value of property revisionFilter.
*/
public String getRevisionFilter() {
return revisionFilter;
}
/** Setter for property revisionFilter, equals the command-line CVS switch "-r".
* @param revisionFilter New value of property revisionFilter.
empty string means latest revision of default branch.
*/
public void setRevisionFilter(String revisionFilter) {
this.revisionFilter = revisionFilter;
}
/** Getter for property stateFilter, equals the command-line CVS switch "-s".
* @return Value of property stateFilter.
*/
public String getStateFilter() {
return stateFilter;
}
/** Setter for property stateFilter, equals the command-line CVS switch "-s".
* @param stateFilter New value of property stateFilter.
*/
public void setStateFilter(String stateFilter) {
this.stateFilter = stateFilter;
}
/** Getter for property userFilter, equals the command-line CVS switch "-w".
* @return Value of property userFilter, empty string means the current user.
*/
public String getUserFilter() {
return userFilter;
}
/** Setter for property userFilter, equals the command-line CVS switch "-w".
* @param userFilter New value of property userFilter.
*/
public void setUserFilter(String userFilter) {
this.userFilter = userFilter;
}
/** Getter for property headerAndDescOnly, equals the command-line CVS switch "-t".
* @return Value of property headerAndDescOnly.
*/
public boolean isHeaderAndDescOnly() {
return headerAndDescOnly;
}
/** Setter for property headerAndDescOnly, equals the command-line CVS switch "-t".
* @param headerAndDescOnly New value of property headerAndDescOnly.
*/
public void setHeaderAndDescOnly(boolean headerAndDescOnly) {
this.headerAndDescOnly = headerAndDescOnly;
}
/** This method returns how the command would looklike when typed on the command line.
* Each command is responsible for constructing this information.
* @returns
|
| ... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.