org.eclipse.jgit.lib
Class RefWriter

java.lang.Object
  extended by org.eclipse.jgit.lib.RefWriter

public abstract class RefWriter
extends Object

Writes out refs to the Constants.INFO_REFS and Constants.PACKED_REFS files. This class is abstract as the writing of the files must be handled by the caller. This is because it is used by transport classes as well.


Constructor Summary
RefWriter(Collection<Ref> refs)
           
RefWriter(Map<String,Ref> refs)
           
RefWriter(RefList<Ref> refs)
           
 
Method Summary
protected abstract  void writeFile(String file, byte[] content)
          Handles actual writing of ref files to the git repository, which may differ slightly depending on the destination and transport.
 void writeInfoRefs()
          Rebuild the Constants.INFO_REFS.
 void writePackedRefs()
          Rebuild the Constants.PACKED_REFS file.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RefWriter

public RefWriter(Collection<Ref> refs)
Parameters:
refs - the complete set of references. This should have been computed by applying updates to the advertised refs already discovered.

RefWriter

public RefWriter(Map<String,Ref> refs)
Parameters:
refs - the complete set of references. This should have been computed by applying updates to the advertised refs already discovered.

RefWriter

public RefWriter(RefList<Ref> refs)
Parameters:
refs - the complete set of references. This should have been computed by applying updates to the advertised refs already discovered.
Method Detail

writeInfoRefs

public void writeInfoRefs()
                   throws IOException
Rebuild the Constants.INFO_REFS.

This method rebuilds the contents of the Constants.INFO_REFS file to match the passed list of references.

Throws:
IOException - writing is not supported, or attempting to write the file failed, possibly due to permissions or remote disk full, etc.

writePackedRefs

public void writePackedRefs()
                     throws IOException
Rebuild the Constants.PACKED_REFS file.

This method rebuilds the contents of the Constants.PACKED_REFS file to match the passed list of references, including only those refs that have a storage type of Ref.Storage.PACKED.

Throws:
IOException - writing is not supported, or attempting to write the file failed, possibly due to permissions or remote disk full, etc.

writeFile

protected abstract void writeFile(String file,
                                  byte[] content)
                           throws IOException
Handles actual writing of ref files to the git repository, which may differ slightly depending on the destination and transport.

Parameters:
file - path to ref file.
content - byte content of file to be written.
Throws:
IOException


Copyright © 2013. All Rights Reserved.