|
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 Archivepublic 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
ArchivegetUniqueIDFromPath 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
ArchiverestoreRemovedNode in interface Archiveorg.sourcejammer.project.controller.Archiveparent - -- 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 ArchiveparentID - -- 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 Archiveparent - -- 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 Archivepublic 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 | |||||||||