org.opensolaris.opengrok.history
Class GitRepository

java.lang.Object
  extended by org.opensolaris.opengrok.history.Repository
      extended by org.opensolaris.opengrok.history.GitRepository

public class GitRepository
extends Repository

Access to a Git repository.


Constructor Summary
GitRepository()
           
 
Method Summary
 Annotation annotate(java.io.File file, java.lang.String revision)
          Annotate the specified file/revision.
 boolean fileHasAnnotation(java.io.File file)
          Checks whether this parser can annotate files.
 boolean fileHasHistory(java.io.File file)
           
 java.lang.Class<? extends org.opensolaris.opengrok.history.HistoryParser> getDirectoryHistoryParser()
           
 java.io.InputStream getHistoryGet(java.lang.String parent, java.lang.String basename, java.lang.String rev)
          Get an input stream that I may use to read a speciffic version of a named file.
 java.lang.Class<? extends org.opensolaris.opengrok.history.HistoryParser> getHistoryParser()
          Get a parser capable of getting history log elements from this repository.
 boolean isCacheable()
          Check whether the parsed history should be cached.
 boolean isWorking()
          Returns true if this repository is usable in this context (for SCM systems that use external binaries, the binary must be availabe etc)
 void update()
          Update the content in this repository by pulling the changes from the upstream repository..
 
Methods inherited from class org.opensolaris.opengrok.history.Repository
getDirectoryName, setDirectoryName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GitRepository

public GitRepository()
Method Detail

getHistoryGet

public java.io.InputStream getHistoryGet(java.lang.String parent,
                                         java.lang.String basename,
                                         java.lang.String rev)
Description copied from class: Repository
Get an input stream that I may use to read a speciffic version of a named file.

Parameters:
parent - the name of the directory containing the file
basename - the name of the file to get
rev - the revision to get
Returns:
An input stream containing the correct revision.

getHistoryParser

public java.lang.Class<? extends org.opensolaris.opengrok.history.HistoryParser> getHistoryParser()
Description copied from class: Repository
Get a parser capable of getting history log elements from this repository.

Returns:
a specialized parser for this kind of repository

getDirectoryHistoryParser

public java.lang.Class<? extends org.opensolaris.opengrok.history.HistoryParser> getDirectoryHistoryParser()

annotate

public Annotation annotate(java.io.File file,
                           java.lang.String revision)
Annotate the specified file/revision.

Parameters:
file - file to annotate
revision - revision to annotate
Returns:
file annotation

fileHasAnnotation

public boolean fileHasAnnotation(java.io.File file)
Description copied from class: Repository
Checks whether this parser can annotate files.

Returns:
true if annotation is supported

isCacheable

public boolean isCacheable()
Description copied from class: Repository
Check whether the parsed history should be cached.

Returns:
true if the history should be cached

update

public void update()
            throws java.io.IOException
Description copied from class: Repository
Update the content in this repository by pulling the changes from the upstream repository..

Throws:
java.io.IOException

fileHasHistory

public boolean fileHasHistory(java.io.File file)

isWorking

public boolean isWorking()
Description copied from class: Repository
Returns true if this repository is usable in this context (for SCM systems that use external binaries, the binary must be availabe etc)

Overrides:
isWorking in class Repository
Returns:
true if the HistoryGuru may use the repository