package com.github.dreamhead.moco.extractor;
import com.github.dreamhead.moco.RequestExtractor;
import com.google.common.collect.ImmutableMap;
import static java.lang.String.format;
public final class Extractors {
private static ImmutableMap<String, RequestExtractor<?>> extractors = ImmutableMap.<String, RequestExtractor<?>>builder()
.put("file", new ContentRequestExtractor())
.put("text", new ContentRequestExtractor())
.put("pathresource", new ContentRequestExtractor())
.put("uri", new UriRequestExtractor())
.put("method", new HttpMethodExtractor())
.put("version", new VersionExtractor()).build();
public static RequestExtractor<?> extractor(final String id) {
if (extractors.containsKey(id)) {
return extractors.get(id);
}
throw new IllegalArgumentException(format("unknown extractor for [%s]", id));
}
private Extractors() {
}
}