|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.sourcejammer.project.controller.ProjectController
Title: $FileName: ProjectController.java$
Field Summary | |
private static long |
LOCK_TIME_OUT
|
private ArchiveInfoFlex |
moArchive
|
private org.sourcejammer.project.NodeList |
moLabels
|
private NodeLibrary |
moLibrary
|
static long |
ROOT_PROJECT_ID
|
Constructor Summary | |
ProjectController()
|
Method Summary | |
long |
addFile(long projectID,
java.lang.String name,
java.io.File file,
org.sourcejammer.project.view.FileProperties props,
java.lang.String userName)
Adds a new file to this archive, at the specified location. |
long |
addNewVersion(long fileID,
java.io.File newVersion,
java.lang.String comment,
java.lang.String userName)
Adds a new version to an existing file. |
long |
addProject(long parentID,
java.lang.String name)
Adds a new project at the specified location (the NodeName object) to this archive. |
protected Label |
buildLabel(Label label,
long parentProjectID,
java.lang.String baseSJPath,
long skipFile)
This method recursively calls itself until it has put all of the latest versions of all the file nodes in parent (and in all ProjectNode children of parent) into label. |
void |
checkInFile(long fileID)
Set status of specified file to checked in. |
void |
checkOutFile(long fileID,
java.lang.String userName,
java.lang.String checkOutLocation)
Set status of specified file to checked out. |
private boolean |
childFileCheckedOut(long projectID)
|
protected org.sourcejammer.project.view.NodeInfo |
controllerNodeToNodeInfo(ControllerNode nd)
Builds new NodeInfo object from ControllerNode. |
private boolean |
convertTextFileAndManageKeywords(FileNode ndFile,
java.lang.String userName,
java.io.File file,
org.sourcejammer.project.view.NodeInfo ndVer,
java.lang.String comment)
Returns true if keyword expansion will be attempted. |
void |
copyFile(long fileID,
long parentProjectID,
long newParentProjectID,
java.lang.String userName)
Copies the specified file from one project to another. |
void |
copyProject(long projectID,
long parentProjectID,
long newParentProjectID,
java.lang.String userName,
java.lang.String newProjectName)
Copies the specified project and all children from one project to another. |
private void |
copyProjectsAndFiles(ProjectNode source,
ProjectNode target,
java.lang.String userName)
Copy all children of source to target, recursively. |
ArchiveInfoFlex |
getArchiveInfo()
Gives subclasses access to archive info object. |
long |
getChangeList(long labelID,
int verNewer,
int verOlder,
int eolType)
Generated change list for specified label and saves it as a temp file. |
org.sourcejammer.project.view.File |
getFile(long fileID)
Get File object (info about file). |
java.lang.String |
getFileDescription(long fileID)
Gets and returns the description of a file. |
long |
getFileLatestVersion(long fileID,
int requestedEOL)
Get latest version of file source to temp dir and return temp file ID. |
TextLineReader |
getFileLatestVersionTLR(long fileID)
Get latest version of text file source as TextLineReader. |
FileNode |
getFileNode(long fileID)
Allows "master control" to look at file info to verify check out, check in, file type, etc. |
FileNode |
getFileNode(long fileID,
boolean readOnly)
Allows "master control" to look at file info to verify check out, check in, file type, etc. |
Delta |
getFileVersionDelta(long versionID)
Get specified delta object for file. |
Delta |
getFileVersionTextDelta(long versionID)
Get specified delta object for file. |
Label |
getLabelContentList(long labelID,
int versionNumber)
Returns the Label object (which contains the sourcejammer path and version number for each object in the labeled version) with the specified name. |
org.sourcejammer.project.NodeList |
getLabelList()
Deprecated. |
java.io.File |
getLatestVersionSourceFilePointer(long fileID)
Returns java.io.File object for latest version's source. |
org.sourcejammer.project.view.Project |
getProject(long projectID)
Get Project object (info about project). |
java.util.Vector |
getRemovedNodes(long projectID)
Returns a Vector of NodeInfo objects, one for each node that has been removed (but not permanently deleted) from the parent project. |
org.sourcejammer.project.view.Project |
getRootProject()
Returns the view Project for the root node of the archive for this ProjectController. |
long |
getUniqueIDFromPath(long parentID,
java.lang.String path)
Returns unique id based on a path. |
java.lang.String |
getVersionComment(long versionID)
Get the comment for the specified version. |
long |
getVersionFileSizeInBytes(long fileID,
int versionNumber)
Gets the size of the version file in bytes. |
private boolean |
isChildOfProject(long parentProjectID,
long childProjectID)
|
void |
makeLabeledVersion(java.lang.String name,
java.lang.String description,
long parentProjectID,
java.lang.String userName)
Create and save a new labeled version with the passed-in name and description and containing all of the latest versions that are children of parent. |
private java.io.File |
makeLabelInFile(java.lang.String name,
java.lang.String description,
java.util.Date createDate,
long parentProjectID,
long existingLabelID)
|
void |
moveFile(long fileID,
long parentProjectID,
long newParentProjectID)
Moves the specified file from one project to another. |
void |
moveProject(long projectID,
long parentProjectID,
long newParentProjectID,
java.lang.String newProjectName)
Moves the specified project from one project to another. |
void |
permanentlyDeleteRemovedNode(long projectID,
int index)
Permanently delete specified removed node. |
protected org.sourcejammer.project.view.Project |
projectNodeToProject(ProjectNode ndProject)
|
void |
rebuildLabel(long labelID,
java.lang.String description,
long parentProjectID,
java.lang.String userName)
|
void |
releaseFileNode(FileNode nd)
Release a file node. |
void |
removeFile(long parentID,
long fileID)
Remove specified file from specified project. |
void |
removeProject(long parentID,
long projectID)
Remove specified project from the project hierarchy. |
void |
renameFile(long parentID,
long fileID,
java.lang.String newName)
|
void |
renameProject(long parentID,
long projectID,
java.lang.String newName)
|
void |
restoreRemovedNode(long parentID,
int index)
Restores a project or file node that was previously removed from the archive. |
void |
restoreRemovedNode(long parentID,
java.lang.String newName,
int index)
Restores a project or file node that was previously removed from the archive. |
java.io.File |
retrieveVersionDeltaFile(org.sourcejammer.project.view.NodeInfo versionNode)
|
void |
rollbackToVersion(long fileID,
long versionID,
java.io.File newLatestVersion)
Rollback specified file to specified version number. |
void |
setArchiveInfo(ArchiveInfoFlex info)
Sets the ArchiveInfo object for this ProjectController. |
void |
setFileDescription(long fileID,
java.lang.String description)
Changes description of a file. |
void |
setNodeLibrary(NodeLibrary lib)
Set the NodeLibrary object for this archive. |
void |
setVersionComment(long fileID,
int version,
java.lang.String comment)
Set the comment of the specified version. |
private java.lang.String[] |
versionListToStringArray(FileNode file)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final long ROOT_PROJECT_ID
private ArchiveInfoFlex moArchive
private org.sourcejammer.project.NodeList moLabels
private NodeLibrary moLibrary
private static final long LOCK_TIME_OUT
Constructor Detail |
public ProjectController()
Method Detail |
public void setArchiveInfo(ArchiveInfoFlex info) throws FileAccessException
setArchiveInfo
in interface Archive
FileAccessException
public void setNodeLibrary(NodeLibrary lib)
public ArchiveInfoFlex getArchiveInfo()
getArchiveInfo
in interface Archive
public void copyFile(long fileID, long parentProjectID, long newParentProjectID, java.lang.String userName) throws org.sourcejammer.project.NodeExistsException, org.sourcejammer.project.NodeDoesNotExistException, SecurityException, FileAccessException, FileDoesNotExistException, NoSuchVersionException
copyFile
in interface Archive
org.sourcejammer.project.NodeExistsException
org.sourcejammer.project.NodeDoesNotExistException
SecurityException
FileAccessException
FileDoesNotExistException
NoSuchVersionException
public void moveFile(long fileID, long parentProjectID, long newParentProjectID) throws org.sourcejammer.project.NodeExistsException, FileAccessException, SecurityException, NoSuchVersionException, org.sourcejammer.project.NodeDoesNotExistException, FileDoesNotExistException
moveFile
in interface Archive
org.sourcejammer.project.NodeExistsException
FileAccessException
SecurityException
NoSuchVersionException
org.sourcejammer.project.NodeDoesNotExistException
FileDoesNotExistException
public void moveProject(long projectID, long parentProjectID, long newParentProjectID, java.lang.String newProjectName) throws org.sourcejammer.project.NodeExistsException, FileAccessException, SecurityException, NoSuchVersionException, org.sourcejammer.project.NodeDoesNotExistException, ProjectDoesNotExistException
moveProject
in interface Archive
org.sourcejammer.project.NodeExistsException
FileAccessException
SecurityException
NoSuchVersionException
org.sourcejammer.project.NodeDoesNotExistException
ProjectDoesNotExistException
public void copyProject(long projectID, long parentProjectID, long newParentProjectID, java.lang.String userName, java.lang.String newProjectName) throws org.sourcejammer.project.NodeExistsException, org.sourcejammer.project.NodeDoesNotExistException, SecurityException, FileAccessException, FileDoesNotExistException, NoSuchVersionException, ProjectDoesNotExistException
Archive
copyProject
in interface Archive
org.sourcejammer.project.NodeExistsException
org.sourcejammer.project.NodeDoesNotExistException
SecurityException
FileAccessException
FileDoesNotExistException
NoSuchVersionException
ProjectDoesNotExistException
private void copyProjectsAndFiles(ProjectNode source, ProjectNode target, java.lang.String userName) throws NoSuchVersionException, FileDoesNotExistException, FileAccessException, SecurityException, org.sourcejammer.project.NodeDoesNotExistException, org.sourcejammer.project.NodeExistsException, ProjectDoesNotExistException
NoSuchVersionException
FileDoesNotExistException
FileAccessException
SecurityException
org.sourcejammer.project.NodeDoesNotExistException
org.sourcejammer.project.NodeExistsException
ProjectDoesNotExistException
public org.sourcejammer.project.view.Project getRootProject() throws FileAccessException, SecurityException
getRootProject
in interface Archive
FileAccessException
SecurityException
public long addProject(long parentID, java.lang.String name) throws FileAccessException, ProjectDoesNotExistException, org.sourcejammer.project.NodeExistsException, SecurityException
addProject
in interface Archive
FileAccessException
ProjectDoesNotExistException
org.sourcejammer.project.NodeExistsException
SecurityException
public long addFile(long projectID, java.lang.String name, java.io.File file, org.sourcejammer.project.view.FileProperties props, java.lang.String userName) throws FileAccessException, ProjectDoesNotExistException, FileAlreadyExistsException, SecurityException, TextFileException
addFile
in interface Archive
FileAccessException
ProjectDoesNotExistException
FileAlreadyExistsException
SecurityException
TextFileException
public java.lang.String getFileDescription(long fileID) throws FileAccessException, FileDoesNotExistException, SecurityException
getFileDescription
in interface Archive
FileAccessException
FileDoesNotExistException
SecurityException
public void setFileDescription(long fileID, java.lang.String description) throws FileAccessException, FileDoesNotExistException, SecurityException
setFileDescription
in interface Archive
FileAccessException
FileDoesNotExistException
SecurityException
public long addNewVersion(long fileID, java.io.File newVersion, java.lang.String comment, java.lang.String userName) throws FileAccessException, FileDoesNotExistException, TextFileException, SecurityException, EndOfSourceException, InvalidSourceException, WrongFileTypeException
addNewVersion
in interface Archive
FileAccessException
FileDoesNotExistException
TextFileException
SecurityException
EndOfSourceException
InvalidSourceException
WrongFileTypeException
public org.sourcejammer.project.view.Project getProject(long projectID) throws FileAccessException, ProjectDoesNotExistException, SecurityException
getProject
in interface Archive
FileAccessException
ProjectDoesNotExistException
SecurityException
private boolean convertTextFileAndManageKeywords(FileNode ndFile, java.lang.String userName, java.io.File file, org.sourcejammer.project.view.NodeInfo ndVer, java.lang.String comment) throws UserDoesNotExistException, TextFileException, FileAccessException
UserDoesNotExistException
TextFileException
FileAccessException
public org.sourcejammer.project.view.File getFile(long fileID) throws FileAccessException, FileDoesNotExistException, SecurityException
getFile
in interface Archive
FileAccessException
FileDoesNotExistException
SecurityException
private java.lang.String[] versionListToStringArray(FileNode file)
public java.io.File getLatestVersionSourceFilePointer(long fileID) throws FileAccessException, FileDoesNotExistException, SecurityException
getLatestVersionSourceFilePointer
in interface Archive
FileAccessException
FileDoesNotExistException
SecurityException
public long getFileLatestVersion(long fileID, int requestedEOL) throws FileAccessException, FileDoesNotExistException, TextFileException, SecurityException
getFileLatestVersion
in interface Archive
FileAccessException
FileDoesNotExistException
TextFileException
SecurityException
public TextLineReader getFileLatestVersionTLR(long fileID) throws FileAccessException, FileDoesNotExistException, TextFileException, SecurityException
getFileLatestVersionTLR
in interface Archive
FileAccessException
FileDoesNotExistException
TextFileException
SecurityException
public Delta getFileVersionDelta(long versionID) throws FileAccessException, NoSuchVersionException, WrongFileTypeException
getFileVersionDelta
in interface Archive
FileAccessException
NoSuchVersionException
WrongFileTypeException
public Delta getFileVersionTextDelta(long versionID) throws FileAccessException, NoSuchVersionException, WrongFileTypeException
getFileVersionTextDelta
in interface Archive
FileAccessException
NoSuchVersionException
WrongFileTypeException
public void removeProject(long parentID, long projectID) throws FileAccessException, ProjectDoesNotExistException, SecurityException
removeProject
in interface Archive
FileAccessException
ProjectDoesNotExistException
SecurityException
public void removeFile(long parentID, long fileID) throws FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException, SecurityException
removeFile
in interface Archive
FileAccessException
ProjectDoesNotExistException
FileDoesNotExistException
SecurityException
public void rollbackToVersion(long fileID, long versionID, java.io.File newLatestVersion) throws FileAccessException, FileDoesNotExistException, NoSuchVersionException, SecurityException, TextFileException
rollbackToVersion
in interface Archive
FileAccessException
FileDoesNotExistException
NoSuchVersionException
SecurityException
TextFileException
public java.io.File retrieveVersionDeltaFile(org.sourcejammer.project.view.NodeInfo versionNode) throws FileAccessException, WrongFileTypeException
retrieveVersionDeltaFile
in interface Archive
FileAccessException
WrongFileTypeException
public void setVersionComment(long fileID, int version, java.lang.String comment) throws FileAccessException, FileDoesNotExistException, NoSuchVersionException, SecurityException
setVersionComment
in interface Archive
FileAccessException
FileDoesNotExistException
NoSuchVersionException
SecurityException
public long getVersionFileSizeInBytes(long fileID, int versionNumber) throws FileAccessException, FileDoesNotExistException, NoSuchVersionException, SecurityException
getVersionFileSizeInBytes
in interface Archive
FileAccessException
FileDoesNotExistException
NoSuchVersionException
SecurityException
public java.lang.String getVersionComment(long versionID) throws FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException, NoSuchVersionException
getVersionComment
in interface Archive
FileAccessException
ProjectDoesNotExistException
FileDoesNotExistException
NoSuchVersionException
public void checkOutFile(long fileID, java.lang.String userName, java.lang.String checkOutLocation) throws FileAccessException, FileDoesNotExistException, CheckOutException, SecurityException
checkOutFile
in interface Archive
FileAccessException
FileDoesNotExistException
CheckOutException
SecurityException
public void checkInFile(long fileID) throws FileAccessException, FileDoesNotExistException, CheckInException, SecurityException
checkInFile
in interface Archive
FileAccessException
FileDoesNotExistException
CheckInException
SecurityException
public long getUniqueIDFromPath(long parentID, java.lang.String path) throws FileAccessException, ProjectDoesNotExistException, org.sourcejammer.project.NodeDoesNotExistException, SecurityException
Archive
getUniqueIDFromPath
in interface Archive
FileAccessException
ProjectDoesNotExistException
org.sourcejammer.project.NodeDoesNotExistException
SecurityException
public FileNode getFileNode(long fileID) throws FileDoesNotExistException, FileAccessException, SecurityException
getFileNode
in interface Archive
FileDoesNotExistException
FileAccessException
SecurityException
public FileNode getFileNode(long fileID, boolean readOnly) throws FileDoesNotExistException, FileAccessException, SecurityException
getFileNode
in interface Archive
FileDoesNotExistException
FileAccessException
SecurityException
public void releaseFileNode(FileNode nd) throws FileAccessException
releaseFileNode
in interface Archive
FileAccessException
private boolean childFileCheckedOut(long projectID) throws FileAccessException, ProjectDoesNotExistException, SecurityException
FileAccessException
ProjectDoesNotExistException
SecurityException
private boolean isChildOfProject(long parentProjectID, long childProjectID) throws FileAccessException, ProjectDoesNotExistException, SecurityException
FileAccessException
ProjectDoesNotExistException
SecurityException
public void restoreRemovedNode(long parentID, int index) throws FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException, org.sourcejammer.project.NodeDoesNotExistException, org.sourcejammer.project.NodeExistsException, SecurityException
Archive
restoreRemovedNode
in interface Archive
index
- -- Index value of the removed node in the
removed nodes list (see getRemovedNodes()).
FileAccessException
ProjectDoesNotExistException
FileDoesNotExistException
org.sourcejammer.project.NodeDoesNotExistException
org.sourcejammer.project.NodeExistsException
SecurityException
public void restoreRemovedNode(long parentID, java.lang.String newName, int index) throws FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException, org.sourcejammer.project.NodeDoesNotExistException, org.sourcejammer.project.NodeExistsException, SecurityException
restoreRemovedNode
in interface Archive
parentID
- -- ID of the project from which
the node was removed.newName
- -- a new name for the removed node.index
- -- Index value of the removed node in the
removed nodes list (see getRemovedNodes()).
FileAccessException
ProjectDoesNotExistException
FileDoesNotExistException
org.sourcejammer.project.NodeDoesNotExistException
org.sourcejammer.project.NodeExistsException
SecurityException
public void renameFile(long parentID, long fileID, java.lang.String newName) throws FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException, org.sourcejammer.project.NodeExistsException, SecurityException
renameFile
in interface Archive
FileAccessException
ProjectDoesNotExistException
FileDoesNotExistException
org.sourcejammer.project.NodeExistsException
SecurityException
public void renameProject(long parentID, long projectID, java.lang.String newName) throws FileAccessException, ProjectDoesNotExistException, org.sourcejammer.project.NodeExistsException, SecurityException
renameProject
in interface Archive
FileAccessException
ProjectDoesNotExistException
org.sourcejammer.project.NodeExistsException
SecurityException
public void permanentlyDeleteRemovedNode(long projectID, int index) throws FileAccessException, ProjectDoesNotExistException, org.sourcejammer.project.NodeDoesNotExistException, SecurityException
permanentlyDeleteRemovedNode
in interface Archive
FileAccessException
ProjectDoesNotExistException
org.sourcejammer.project.NodeDoesNotExistException
SecurityException
public java.util.Vector getRemovedNodes(long projectID) throws FileAccessException, ProjectDoesNotExistException, SecurityException
getRemovedNodes
in interface Archive
FileAccessException
ProjectDoesNotExistException
SecurityException
public void makeLabeledVersion(java.lang.String name, java.lang.String description, long parentProjectID, java.lang.String userName) throws org.sourcejammer.project.NodeExistsException, FileAccessException, ProjectDoesNotExistException, NoSuchVersionException, FileDoesNotExistException, FileAlreadyExistsException, TextFileException, SecurityException
makeLabeledVersion
in interface Archive
org.sourcejammer.project.NodeExistsException
FileAccessException
ProjectDoesNotExistException
NoSuchVersionException
FileDoesNotExistException
FileAlreadyExistsException
TextFileException
SecurityException
private java.io.File makeLabelInFile(java.lang.String name, java.lang.String description, java.util.Date createDate, long parentProjectID, long existingLabelID) throws FileDoesNotExistException, ProjectDoesNotExistException, FileAccessException, SecurityException, NoSuchVersionException
FileDoesNotExistException
ProjectDoesNotExistException
FileAccessException
SecurityException
NoSuchVersionException
public void rebuildLabel(long labelID, java.lang.String description, long parentProjectID, java.lang.String userName) throws org.sourcejammer.project.NodeExistsException, FileAccessException, org.sourcejammer.project.NodeDoesNotExistException, ProjectDoesNotExistException, NoSuchVersionException, FileDoesNotExistException, FileAlreadyExistsException, TextFileException, SecurityException, WrongFileTypeException, EndOfSourceException, InvalidSourceException
rebuildLabel
in interface Archive
org.sourcejammer.project.NodeExistsException
FileAccessException
org.sourcejammer.project.NodeDoesNotExistException
ProjectDoesNotExistException
NoSuchVersionException
FileDoesNotExistException
FileAlreadyExistsException
TextFileException
SecurityException
WrongFileTypeException
EndOfSourceException
InvalidSourceException
public org.sourcejammer.project.NodeList getLabelList()
getLabelList
in interface Archive
public long getChangeList(long labelID, int verNewer, int verOlder, int eolType) throws org.sourcejammer.project.NodeDoesNotExistException, FileAccessException, FileDoesNotExistException, SecurityException, EndOfSourceException, InvalidSourceException, WrongFileTypeException, NoSuchVersionException, TextFileException, ProjectDoesNotExistException
getChangeList
in interface Archive
org.sourcejammer.project.NodeDoesNotExistException
FileAccessException
FileDoesNotExistException
SecurityException
EndOfSourceException
InvalidSourceException
WrongFileTypeException
NoSuchVersionException
TextFileException
ProjectDoesNotExistException
public Label getLabelContentList(long labelID, int versionNumber) throws org.sourcejammer.project.NodeDoesNotExistException, FileAccessException, FileDoesNotExistException, SecurityException, EndOfSourceException, InvalidSourceException, WrongFileTypeException, NoSuchVersionException, TextFileException, ProjectDoesNotExistException
getLabelContentList
in interface Archive
org.sourcejammer.project.NodeDoesNotExistException
FileAccessException
FileDoesNotExistException
SecurityException
EndOfSourceException
InvalidSourceException
WrongFileTypeException
NoSuchVersionException
TextFileException
ProjectDoesNotExistException
protected org.sourcejammer.project.view.Project projectNodeToProject(ProjectNode ndProject) throws SecurityException, ProjectDoesNotExistException, FileAccessException, FileDoesNotExistException, org.sourcejammer.project.NodeExistsException
SecurityException
ProjectDoesNotExistException
FileAccessException
FileDoesNotExistException
org.sourcejammer.project.NodeExistsException
protected Label buildLabel(Label label, long parentProjectID, java.lang.String baseSJPath, long skipFile) throws NoSuchVersionException, SecurityException, FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException
NoSuchVersionException
SecurityException
FileAccessException
ProjectDoesNotExistException
FileDoesNotExistException
protected org.sourcejammer.project.view.NodeInfo controllerNodeToNodeInfo(ControllerNode nd) throws NoSuchVersionException
NoSuchVersionException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |