|
SourceJammer 1.2.0.1 May 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.io.File replaceCurrLatestVer,
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)
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. |
ArchiveInfo |
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(java.lang.String labelName)
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()
Returns NodeList of all LabelInfo objects in this archive. |
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)
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 |
permanentlyDeleteRemovedNode(long projectID,
int index)
Permanently delete specified removed node. |
protected Project |
projectNodeToProject(ProjectNode ndProject)
|
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(ArchiveInfo 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(ArchiveInfo info) throws FileAccessException
setArchiveInfo
in interface Archive
public void setNodeLibrary(NodeLibrary lib)
public ArchiveInfo getArchiveInfo()
getArchiveInfo
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.io.File replaceCurrLatestVer, java.lang.String comment, java.lang.String userName) throws FileAccessException, FileDoesNotExistException, TextFileException, SecurityException
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) throws NodeExistsException, FileAccessException, ProjectDoesNotExistException, NoSuchVersionException, FileDoesNotExistException, SecurityException
makeLabeledVersion
in interface Archive
public NodeList getLabelList()
getLabelList
in interface Archive
public Label getLabelContentList(java.lang.String labelName) throws NodeDoesNotExistException, FileAccessException
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) throws NoSuchVersionException, SecurityException, FileAccessException, ProjectDoesNotExistException, FileDoesNotExistException
protected NodeInfo controllerNodeToNodeInfo(ControllerNode nd) throws NoSuchVersionException
|
SourceJammer 1.2.0.1 May 20, 2002 Copyright (c) 2001, 2002 Robert MacGrogan |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |