|
SourceJammer 1.3.0 November 20, 2002 Copyright (c) 2001, 2002 Robert MacGrogan |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.sourcejammer.project.controller.ProjectController
ProjectController is responsible for returning objects from the model implementation, and adding and maintaining objects in the model implementation. This class also maintains a cache of the entire project hierarchy of a particular archive. This object does not handle user-level security except to allow checking out and checking in of files. User names and passwords are verified and controlled by the object that calls this object. A ProjectController is created and (hopefully) cached for a single archive.
Field Summary | |
static long |
ROOT_PROJECT_ID
|
Constructor Summary | |
ProjectController()
|
Method Summary | |
long |
addFile(long projectID,
java.lang.String name,
java.io.File file,
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. |
protected NodeInfo |
controllerNodeToNodeInfo(ControllerNode nd)
Builds new NodeInfo object from ControllerNode. |
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. |
ArchiveInfoFlex |
getArchiveInfo()
Gives subclasses access to archive info object. |
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. |
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. |
NodeList |
getLabelList()
Deprecated. |
java.io.File |
getLatestVersionSourceFilePointer(long fileID)
Returns java.io.File object for latest version's source. |
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. |
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. |
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. |
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 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(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. |
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
Constructor Detail |
public ProjectController()
Method Detail |
public void setArchiveInfo(ArchiveInfoFlex info) throws FileAccessException
setArchiveInfo
in interface Archive
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 NodeExistsException, NodeDoesNotExistException, SecurityException, FileAccessException, FileDoesNotExistException, NoSuchVersionException
copyFile
in interface Archive
public void moveFile(long fileID, long parentProjectID, long newParentProjectID) throws NodeExistsException, FileAccessException, SecurityException, NoSuchVersionException, NodeDoesNotExistException, FileDoesNotExistException
moveFile
in interface Archive
public void moveProject(long projectID, long parentProjectID, long newParentProjectID, java.lang.String newProjectName) throws NodeExistsException, FileAccessException, SecurityException, NoSuchVersionException, NodeDoesNotExistException, ProjectDoesNotExistException
moveProject
in interface Archive
public void copyProject(long projectID, long parentProjectID, long newParentProjectID, java.lang.String userName, java.lang.String newProjectName) throws NodeExistsException, NodeDoesNotExistException, SecurityException, FileAccessException, FileDoesNotExistException, NoSuchVersionException, ProjectDoesNotExistException
Archive
copyProject
in interface Archive
public Project getRootProject() throws FileAccessException, SecurityException
getRootProject
in interface Archive
public long addProject(long parentID, java.lang.String name) throws FileAccessException, ProjectDoesNotExistException, NodeExistsException, SecurityException
addProject
in interface Archive
public long addFile(long projectID, java.lang.String name, java.io.File file, FileProperties props, java.lang.String userName) throws FileAccessException, ProjectDoesNotExistException, FileAlreadyExistsException, SecurityException, TextFileException
addFile
in interface Archive
public java.lang.String getFileDescription(long fileID) throws FileAccessException, FileDoesNotExistException, SecurityException
getFileDescription
in interface Archive
public void setFileDescription(long fileID, java.lang.String description) throws FileAccessException, FileDoesNotExistException, SecurityException
setFileDescription
in interface Archive
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
public Project getProject(long projectID) throws FileAccessException, ProjectDoesNotExistException, SecurityException
getProject
in interface Archive
public File getFile(long fileID) throws FileAccessException, FileDoesNotExistException, SecurityException
getFile
in interface Archive
public java.io.File getLatestVersionSourceFilePointer(long fileID) throws FileAccessException, FileDoesNotExistException, SecurityException
getLatestVersionSourceFilePointer
in interface Archive
public long getFileLatestVersion(long fileID, int requestedEOL) throws FileAccessException, FileDoesNotExistException, TextFileException, SecurityException
getFileLatestVersion
in interface Archive
public TextLineReader getFileLatestVersionTLR(long fileID) throws FileAccessException, FileDoesNotExistException, TextFileException, SecurityException
getFileLatestVersionTLR
in interface Archive
public Delta getFileVersionDelta(long versionID) throws FileAccessException, NoSuchVersionException, WrongFileTypeException
getFileVersionDelta
in interface Archive
public void removeProject(long parentID, long projectID) throws FileAccessException, ProjectDoesNotExistException, SecurityException
removeProject
in interface Archive
public void removeFile(long parentID, long fileID) throws FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException, SecurityException
removeFile
in interface Archive
public void rollbackToVersion(long fileID, long versionID, java.io.File newLatestVersion) throws FileAccessException, FileDoesNotExistException, NoSuchVersionException, SecurityException, TextFileException
rollbackToVersion
in interface Archive
public java.io.File retrieveVersionDeltaFile(NodeInfo versionNode) throws FileAccessException, WrongFileTypeException
retrieveVersionDeltaFile
in interface Archive
public void setVersionComment(long fileID, int version, java.lang.String comment) throws FileAccessException, FileDoesNotExistException, NoSuchVersionException, SecurityException
setVersionComment
in interface Archive
public long getVersionFileSizeInBytes(long fileID, int versionNumber) throws FileAccessException, FileDoesNotExistException, NoSuchVersionException, SecurityException
getVersionFileSizeInBytes
in interface Archive
public java.lang.String getVersionComment(long versionID) throws FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException, NoSuchVersionException
getVersionComment
in interface Archive
public void checkOutFile(long fileID, java.lang.String userName, java.lang.String checkOutLocation) throws FileAccessException, FileDoesNotExistException, CheckOutException, SecurityException
checkOutFile
in interface Archive
public void checkInFile(long fileID) throws FileAccessException, FileDoesNotExistException, CheckInException, SecurityException
checkInFile
in interface Archive
public long getUniqueIDFromPath(long parentID, java.lang.String path) throws FileAccessException, ProjectDoesNotExistException, NodeDoesNotExistException, SecurityException
Archive
getUniqueIDFromPath
in interface Archive
public FileNode getFileNode(long fileID) throws FileDoesNotExistException, FileAccessException, SecurityException
getFileNode
in interface Archive
public FileNode getFileNode(long fileID, boolean readOnly) throws FileDoesNotExistException, FileAccessException, SecurityException
getFileNode
in interface Archive
public void releaseFileNode(FileNode nd) throws FileAccessException
releaseFileNode
in interface Archive
public void restoreRemovedNode(long parentID, int index) throws FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException, NodeDoesNotExistException, NodeExistsException, SecurityException
Archive
restoreRemovedNode
in interface Archive
org.sourcejammer.project.controller.Archive
parent
- -- NodeName of the project from which
the node was removed.index
- -- Index value of the removed node in the
removed nodes list (see getRemovedNodes()).public void restoreRemovedNode(long parentID, java.lang.String newName, int index) throws FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException, NodeDoesNotExistException, 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()).public void renameFile(long parentID, long fileID, java.lang.String newName) throws FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException, NodeExistsException, SecurityException
renameFile
in interface Archive
public void renameProject(long parentID, long projectID, java.lang.String newName) throws FileAccessException, ProjectDoesNotExistException, NodeExistsException, SecurityException
renameProject
in interface Archive
public void permanentlyDeleteRemovedNode(long projectID, int index) throws FileAccessException, ProjectDoesNotExistException, NodeDoesNotExistException, SecurityException
permanentlyDeleteRemovedNode
in interface Archive
public java.util.Vector getRemovedNodes(long projectID) throws FileAccessException, ProjectDoesNotExistException, SecurityException
getRemovedNodes
in interface Archive
parent
- -- project NodeName to return a list of removed nodes for.public void makeLabeledVersion(java.lang.String name, java.lang.String description, long parentProjectID, java.lang.String userName) throws NodeExistsException, FileAccessException, ProjectDoesNotExistException, NoSuchVersionException, FileDoesNotExistException, FileAlreadyExistsException, TextFileException, SecurityException
makeLabeledVersion
in interface Archive
public void rebuildLabel(long labelID, java.lang.String description, long parentProjectID, java.lang.String userName) throws NodeExistsException, FileAccessException, NodeDoesNotExistException, ProjectDoesNotExistException, NoSuchVersionException, FileDoesNotExistException, FileAlreadyExistsException, TextFileException, SecurityException, WrongFileTypeException, EndOfSourceException, InvalidSourceException
rebuildLabel
in interface Archive
public NodeList getLabelList()
getLabelList
in interface Archive
public Label getLabelContentList(long labelID, int versionNumber) throws NodeDoesNotExistException, FileAccessException, FileDoesNotExistException, SecurityException, EndOfSourceException, InvalidSourceException, WrongFileTypeException, NoSuchVersionException, TextFileException, ProjectDoesNotExistException
getLabelContentList
in interface Archive
protected Project projectNodeToProject(ProjectNode ndProject) throws SecurityException, ProjectDoesNotExistException, FileAccessException, FileDoesNotExistException, NodeExistsException
protected Label buildLabel(Label label, long parentProjectID, java.lang.String baseSJPath, long skipFile) throws NoSuchVersionException, SecurityException, FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException
protected NodeInfo controllerNodeToNodeInfo(ControllerNode nd) throws NoSuchVersionException
|
SourceJammer 1.3.0 November 20, 2002 Copyright (c) 2001, 2002 Robert MacGrogan |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |