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