in cvs/javacvs-src/org/netbeans/lib/cvsclient/command/update/UpdateMessageParser.java [90:179]
public void parseLine(String line, boolean isErrorMessage) {
if (line.startsWith("RCS file:")) {
return;
}
if (line.startsWith("retrieving revision ")) {
return;
}
if (line.indexOf(" already contains the differences between ") > 0) {
return;
}
if (line.startsWith("rcsmerge: warning: conflicts during merge")) {
return;
}
if (line.contains(EXAM_DIR)) {
return;
}
if (line.indexOf(": conflicts found in ") > 0) {
return;
}
int index = line.indexOf(UNKNOWN);
if (index >= 0) {
final String fileName = (line.substring(index + UNKNOWN.length())).trim();
processUnknown(fileName);
return;
}
index = line.indexOf(TO_ADD);
if (index >= 0) {
final String fileName = (line.substring(index + TO_ADD.length())).trim();
processUnknown(fileName);
return;
}
if (line.startsWith(MERGING)) {
// outputDone();
// ensureExistingFileInfoContainer();
// index = line.indexOf(UpdateCommand2.INTO, UpdateCommand2.MERGING.length() + 1);
// if (index > 0) {
// fileInfoContainer.setFile(createFile(line.substring(index + UpdateCommand2.INTO.length())));
// }
// fileInfoContainer.setType(DefaultFileInfoContainer.MERGED_FILE);
return;
}
index = line.indexOf(LOCALLY_MODIFIED_FILE_HAS_BEEN_REMOVED);
if (index >= 0) {
String warningPrefix = "cvs server: file ";
if (!line.startsWith(warningPrefix)) return;
final String fileName = line.substring(warningPrefix.length(), index).trim();
final FileObject fileObject = cvsFileSystem.unixFileNameToFileObject(fileName);
ensureExistingFileInfoContainer(fileObject);
// HACK - will create conflict status in order to be able to have consistent info format
fileInfo.setType("C");
return;
}
index = line.indexOf(WARNING);
if (index >= 0) {
final int pertinentIndex = line.indexOf(PERTINENT);
if (pertinentIndex > 0) {
final String fileName = line.substring(index + WARNING.length(), pertinentIndex).trim();
final FileObject fileObject = cvsFileSystem.unixFileNameToFileObject(fileName);
processNotPertinent(fileObject);
}
return;
}
Matcher m = NOT_IN_REPOSITORY_PATTERN.matcher(line);
if (m.matches()) {
final String fileName = m.group(1).trim();
final FileObject fileObject = cvsFileSystem.unixFileNameToFileObject(fileName);
processNotPertinent(fileObject);
return;
}
// otherwise
if (line.length() > 2) {
if (line.charAt(1) == ' ') {
final String firstChar = line.substring(0, 1);
if (STATES.contains(firstChar)) {
processFile(line.substring(2), firstChar);
}
}
}
}