Top Description Fields Methods
org.eclipse.jgit.transport

public Interface PreUploadHook

Known Direct Implementers
org.eclipse.jgit.transport.PreUploadHookChain
Imports
java.util.Collection, org.eclipse.jgit.lib.ObjectId

Hook invoked by org.eclipse.jgit.transport.UploadPack before during critical phases.

If any hook function throws org.eclipse.jgit.transport.ServiceMayNotContinueException then processing stops immediately and the exception is thrown up the call stack. Most phases of UploadPack will try to report the exception's message text to the end-user over the client's protocol connection.

Field Summary

Modifier and TypeField and Description
public static final PreUploadHook
NULL

A simple no-op hook.

Method Summary

Modifier and TypeMethod and Description
public void
onBeginNegotiateRound(UploadPack
the upload pack instance handling the connection.
up
,
Collection<? extends ObjectId>
the list of wanted objects.
wants
,
int
number of objects the client has offered.
cntOffered
)

Invoked before negotiation round is started.

public void
onEndNegotiateRound(UploadPack
the upload pack instance handling the connection.
up
,
Collection<? extends ObjectId>
the list of wanted objects.
wants
,
int
number of objects this round found to be common. In a smart HTTP transaction this includes the objects that were previously found to be common.
cntCommon
,
int
number of objects in this round the local repository does not have, but that were offered as potential common bases.
cntNotFound
,
boolean
true if a pack is ready to be sent (the commit graph was successfully cut).
ready
)

Invoked after a negotiation round is completed.

public void
onSendPack(UploadPack
the upload pack instance handling the connection.
up
,
Collection<? extends ObjectId>
the list of wanted objects. These may be RevObject or RevCommit if the processed parsed them. Implementors should not rely on the values being parsed.
wants
,
Collection<? extends ObjectId>
the list of common objects. Empty on an initial clone request. These may be RevObject or RevCommit if the processed parsed them. Implementors should not rely on the values being parsed.
haves
)

Invoked just before a pack will be sent to the client.

Field Detail

NULLback to summary
public static final PreUploadHook NULL

A simple no-op hook.

Method Detail

onBeginNegotiateRoundback to summary
public void onBeginNegotiateRound(UploadPack up, Collection<? extends ObjectId> wants, int cntOffered) throws ServiceMayNotContinueException

Invoked before negotiation round is started.

Parameters
up:UploadPack

the upload pack instance handling the connection.

wants:Collection<? extends ObjectId>

the list of wanted objects.

cntOffered:int

number of objects the client has offered.

Exceptions
ServiceMayNotContinueException:
abort; the message will be sent to the user.
onEndNegotiateRoundback to summary
public void onEndNegotiateRound(UploadPack up, Collection<? extends ObjectId> wants, int cntCommon, int cntNotFound, boolean ready) throws ServiceMayNotContinueException

Invoked after a negotiation round is completed.

Parameters
up:UploadPack

the upload pack instance handling the connection.

wants:Collection<? extends ObjectId>

the list of wanted objects.

cntCommon:int

number of objects this round found to be common. In a smart HTTP transaction this includes the objects that were previously found to be common.

cntNotFound:int

number of objects in this round the local repository does not have, but that were offered as potential common bases.

ready:boolean

true if a pack is ready to be sent (the commit graph was successfully cut).

Exceptions
ServiceMayNotContinueException:
abort; the message will be sent to the user.
onSendPackback to summary
public void onSendPack(UploadPack up, Collection<? extends ObjectId> wants, Collection<? extends ObjectId> haves) throws ServiceMayNotContinueException

Invoked just before a pack will be sent to the client.

Parameters
up:UploadPack

the upload pack instance handling the connection.

wants:Collection<? extends ObjectId>

the list of wanted objects. These may be RevObject or RevCommit if the processed parsed them. Implementors should not rely on the values being parsed.

haves:Collection<? extends ObjectId>

the list of common objects. Empty on an initial clone request. These may be RevObject or RevCommit if the processed parsed them. Implementors should not rely on the values being parsed.

Exceptions
ServiceMayNotContinueException:
abort; the message will be sent to the user.