TransferConfig: Make constructors public

UploadPack has a setTransferConfig method which allows to set the
transfer config, however since the constructors of TransferConfig
have the default package visibility it is not possible for any
application using UploadPack, for example Gerrit, to actually set
a transfer config.

Make the constructors public. This is consistent with the public
constructors for example on PackConfig.

Change-Id: I07080255838421871403b2b2bcc294aa8f621c57
Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
This commit is contained in:
David Pursehouse 2018-12-18 15:44:44 +09:00
parent 9372cf496f
commit 2269669fb1
1 changed files with 21 additions and 2 deletions

View File

@ -133,12 +133,31 @@ enum ProtocolVersion {
final @Nullable ProtocolVersion protocolVersion;
final String[] hideRefs;
TransferConfig(Repository db) {
/**
* Create a configuration honoring the repository's settings.
*
* @param db
* the repository to read settings from. The repository is not
* retained by the new configuration, instead its settings are
* copied during the constructor.
* @since 5.1.4
*/
public TransferConfig(Repository db) {
this(db.getConfig());
}
/**
* Create a configuration honoring settings in a
* {@link org.eclipse.jgit.lib.Config}.
*
* @param rc
* the source to read settings from. The source is not retained
* by the new configuration, instead its settings are copied
* during the constructor.
* @since 5.1.4
*/
@SuppressWarnings("nls")
TransferConfig(Config rc) {
public TransferConfig(Config rc) {
boolean fsck = rc.getBoolean("transfer", "fsckobjects", false);
fetchFsck = rc.getBoolean("fetch", "fsckobjects", fsck);
receiveFsck = rc.getBoolean("receive", "fsckobjects", fsck);