use of org.netbeans.lib.cvsclient.admin.Entry in project intellij-community by JetBrains.
the class DefaultResponseHandler method processCheckedInResponse.
public void processCheckedInResponse(String relativeLocalDirectory, String repositoryFilePath, String entryLine, IResponseServices responseServices, IClientEnvironment clientEnvironment) throws IOException {
final FileObject fileObject = clientEnvironment.getCvsFileSystem().getFileObject(relativeLocalDirectory, repositoryFilePath);
final Entry entry = Entry.createEntryForLine(entryLine);
// for added and removed entries set the conflict to Dummy timestamp.
if (entry.isAddedFile() || entry.isRemoved()) {
entry.setDummyTimestamp();
} else {
final File file = clientEnvironment.getCvsFileSystem().getLocalFileSystem().getFile(fileObject);
final String mode = responseServices.getNextFileMode();
final boolean readOnly = mode != null && FileUtils.isReadOnlyMode(mode);
clientEnvironment.getFileReadOnlyHandler().setFileReadOnly(file, readOnly);
final Date date = new Date(file.lastModified());
entry.parseConflictString(Entry.getLastModifiedDateFormatter().format(date));
}
clientEnvironment.getAdminWriter().setEntry(fileObject.getParent(), entry, clientEnvironment.getCvsFileSystem());
responseServices.getEventSender().notifyEntryListeners(fileObject, entry);
}
use of org.netbeans.lib.cvsclient.admin.Entry in project intellij-community by JetBrains.
the class DefaultResponseHandler method processNewEntryResponse.
public void processNewEntryResponse(String relativeLocalDirectory, String repositoryFilePath, IResponseServices responseServoces, String entryLine, IClientEnvironment clientEnvironment) throws IOException {
// we set the date the file was last modified in the Entry line
// so that we can easily determine whether the file has been
// untouched
final FileObject fileObject = clientEnvironment.getCvsFileSystem().getFileObject(relativeLocalDirectory, repositoryFilePath);
final Entry entry = Entry.createEntryForLine(entryLine);
entry.setDummyTimestamp();
clientEnvironment.getAdminWriter().setEntry(fileObject.getParent(), entry, clientEnvironment.getCvsFileSystem());
responseServoces.getEventSender().notifyEntryListeners(fileObject, entry);
}
use of org.netbeans.lib.cvsclient.admin.Entry in project intellij-community by JetBrains.
the class FileSystemScanner method scanDirectory.
private List<DirectoryObject> scanDirectory(DirectoryObject directoryObject, CvsFiles cvsFiles) throws IOException {
if (!clientEnvironment.getLocalFileReader().exists(directoryObject, clientEnvironment.getCvsFileSystem())) {
return Collections.emptyList();
}
cvsFiles.add(CvsFile.createCvsDirectory(directoryObject));
final Set<String> subDirectoryNames = new HashSet<>();
final LocalFiles localFiles = new LocalFiles(directoryObject, clientEnvironment);
// get all the entries we know about, and process them
final Collection<Entry> entries = clientEnvironment.getAdminReader().getEntries(directoryObject, clientEnvironment.getCvsFileSystem());
for (final Entry entry : entries) {
if (entry.isDirectory()) {
subDirectoryNames.add(entry.getFileName());
} else {
final FileObject fileObject = FileObject.createInstance(directoryObject, entry.getFileName());
final boolean fileExists = clientEnvironment.getLocalFileReader().exists(fileObject, clientEnvironment.getCvsFileSystem());
cvsFiles.add(CvsFile.createCvsFileForEntry(fileObject, entry, fileExists));
localFiles.removeFile(entry.getFileName());
}
}
for (final String fileName : localFiles.getFileNames()) {
cvsFiles.add(CvsFile.createCvsFileForExistingFile(FileObject.createInstance(directoryObject, fileName)));
}
final List<DirectoryObject> subDirectories = new ArrayList<>(subDirectoryNames.size());
for (final String directoryName : subDirectoryNames) {
subDirectories.add(DirectoryObject.createInstance(directoryObject, directoryName));
}
return subDirectories;
}
use of org.netbeans.lib.cvsclient.admin.Entry in project intellij-community by JetBrains.
the class FileSystemScanner method addRequestsForFile.
private void addRequestsForFile(FileObject fileObject, CvsFiles cvsFiles) throws IOException {
cvsFiles.add(CvsFile.createCvsDirectory(fileObject.getParent()));
final Entry entry = clientEnvironment.getAdminReader().getEntry(fileObject, clientEnvironment.getCvsFileSystem());
// Entries file for this directory
if (entry != null) {
final boolean exists = clientEnvironment.getLocalFileReader().exists(fileObject, clientEnvironment.getCvsFileSystem());
cvsFiles.add(CvsFile.createCvsFileForEntry(fileObject, entry, exists));
}
}
use of org.netbeans.lib.cvsclient.admin.Entry in project intellij-community by JetBrains.
the class AddCommand method addRequestsForFile.
private void addRequestsForFile(FileObject fileObject, Requests requests, IClientEnvironment clientEnvironment) throws IOException {
final DirectoryObject parentDirectory = fileObject.getParent();
addDirectoryRequest(parentDirectory, requests);
addStickyRequest(parentDirectory, requests, clientEnvironment.getCvsFileSystem(), clientEnvironment);
final Entry entry = clientEnvironment.getAdminReader().getEntry(fileObject, clientEnvironment.getCvsFileSystem());
if (entry != null) {
requests.addEntryRequest(entry);
} else {
requests.addIsModifiedRequest(fileObject);
}
}
Aggregations