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"
|
2018-06-15 00:54:28 +02:00
|
|
|
|
2018-07-16 20:44:01 +02:00
|
|
|
void fetch_negotiator_init(struct fetch_negotiator *negotiator,
|
|
|
|
const char *algorithm)
|
2018-06-15 00:54:28 +02:00
|
|
|
{
|
2018-08-01 17:18:34 +02:00
|
|
|
if (algorithm) {
|
|
|
|
if (!strcmp(algorithm, "skipping")) {
|
|
|
|
skipping_negotiator_init(negotiator);
|
|
|
|
return;
|
|
|
|
} else if (!strcmp(algorithm, "default")) {
|
|
|
|
/* Fall through to default initialization */
|
|
|
|
} else {
|
|
|
|
die("unknown fetch negotiation algorithm '%s'", algorithm);
|
|
|
|
}
|
2018-07-16 20:44:01 +02:00
|
|
|
}
|
2018-06-15 00:54:28 +02:00
|
|
|
default_negotiator_init(negotiator);
|
|
|
|
}
|