2018-06-14 22:54:28 +00:00
|
|
|
#include "git-compat-util.h"
|
|
|
|
#include "fetch-negotiator.h"
|
|
|
|
#include "negotiator/default.h"
|
2018-07-16 18:44:01 +00:00
|
|
|
#include "negotiator/skipping.h"
|
2020-08-18 04:01:31 +00:00
|
|
|
#include "negotiator/noop.h"
|
2019-08-13 18:37:48 +00:00
|
|
|
#include "repository.h"
|
2018-06-14 22:54:28 +00:00
|
|
|
|
2019-08-13 18:37:48 +00:00
|
|
|
void fetch_negotiator_init(struct repository *r,
|
|
|
|
struct fetch_negotiator *negotiator)
|
2018-06-14 22:54:28 +00:00
|
|
|
{
|
2019-08-13 18:37:48 +00:00
|
|
|
prepare_repo_settings(r);
|
|
|
|
switch(r->settings.fetch_negotiation_algorithm) {
|
|
|
|
case FETCH_NEGOTIATION_SKIPPING:
|
|
|
|
skipping_negotiator_init(negotiator);
|
|
|
|
return;
|
|
|
|
|
2020-08-18 04:01:31 +00:00
|
|
|
case FETCH_NEGOTIATION_NOOP:
|
|
|
|
noop_negotiator_init(negotiator);
|
|
|
|
return;
|
|
|
|
|
2022-02-02 03:42:40 +00:00
|
|
|
case FETCH_NEGOTIATION_CONSECUTIVE:
|
2019-08-13 18:37:48 +00:00
|
|
|
default_negotiator_init(negotiator);
|
|
|
|
return;
|
2018-07-16 18:44:01 +00:00
|
|
|
}
|
2018-06-14 22:54:28 +00:00
|
|
|
}
|
2022-03-28 14:02:05 +00:00
|
|
|
|
|
|
|
void fetch_negotiator_init_noop(struct fetch_negotiator *negotiator)
|
|
|
|
{
|
|
|
|
noop_negotiator_init(negotiator);
|
|
|
|
}
|