|
JDeveloper SCM API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Interface to the integrated source control extension, providing support for client version control operations throught the user environment.
Implementors are expected to supply certain information about the nature of the supported system and verify that it is both installed and ready. The client provider defines the complete function set, the members of which control the behaviour and presentation of available actions. In addition, clients must accord with the 'pluggable' nature of source control extensions by responding suitably to a notification of change in the environment's active client. This may involve establishing a server connection and initializing upon startup, to ready the client. Symmetrically, the severing of any connection and sensible cleanup should be performed when the client becomes inactive.
Provision of checkout lister, pseudo-filesystem and property
customization implementations is optional. The methods responsible for
these may safely return a null
to the framework. A determined
file status may also be null, since these values are predominantly for
client information through the wrappers for their associated files.
Method Summary | |
void |
detectClient()
Detects whether the client is both installed and usable. |
void |
finishClient()
Performs cleanup after client use. |
SCMCheckoutLister |
getCheckoutLister()
Gets the interface to factory methods for the client's list checkouts configuration and worker. |
SCMFileSystem |
getFileSystem()
Gets the filesystem interface to the client. |
SCMOperationSet |
getOperations()
Retrieves the operations, specifying the appearance and behaviour of source control client actions. |
SCMPropertyCustomizer |
getPropertyCustomizer()
Requests a Properties-based (name & value) customizer object from the SCM client. |
java.lang.String |
getSCMName()
Gets a user displayable name for the source control system this client represents. |
java.lang.String |
getSCMShortName()
Gets a user displayable short name for the source control system this client represents. |
SCMFileStatus |
getStatus(SCMFile file)
Finds the current SCM status of the given file. |
boolean |
isSourceControlEnabled()
Asks whether source control is currently enabled. |
void |
prepareClient()
Prepares the client for use. |
Methods inherited from interface oracle.ide.addin.Addin |
canShutdown, ideVersion, initialize, shutdown, version |
Method Detail |
public void detectClient() throws SCMException
SCMException
- if the client is absent or cannot be facilitated.public void prepareClient() throws SCMException
SCMException
- if an error occurs in preparing the client for use.public java.lang.String getSCMName()
public java.lang.String getSCMShortName()
public SCMOperationSet getOperations() throws SCMException
SCMException
- if a reflection problem occurs when instantiating an operation
from a client-specified class.public SCMFileSystem getFileSystem()
public SCMCheckoutLister getCheckoutLister()
public SCMPropertyCustomizer getPropertyCustomizer()
public SCMFileStatus getStatus(SCMFile file) throws SCMException
Finds the current SCM status of the given file. The returned status
object should be a status constant that can be recognised by the
operations of the extension. The standard status implementation is given
by SCMVersionFileStatus
, but this in no way
prohibits more suitable custom constants from being used.
Please note that an exception should be thrown only as a 'worst case',
where the client cannot perform the query. If the given file is not
controlled by the client, a suitable status should be returned.
This method may be called from many threads simultaneously. Ensure that your implementation is safe under these circumstances. The status call is also performance-critical, so attempt to return as soon as possible.
SCMFile
- the file for which status information should be retrievedSCMException
- if the client is unable to determine the file status.public boolean isSourceControlEnabled()
public void finishClient() throws SCMException
SCMException
- if an error occurs in finishing the client session.
|
Copyright © 2002 Oracle Corporation | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |