package com.github.dreamhead.moco.extractor;
import com.github.dreamhead.moco.HttpRequest;
import com.github.dreamhead.moco.HttpRequestExtractor;
import com.google.common.base.Optional;
import com.google.common.collect.ImmutableMap;
import static com.google.common.base.Optional.fromNullable;
public class FormRequestExtractor extends HttpRequestExtractor<String> {
private final FormsRequestExtractor extractor = new FormsRequestExtractor();
private final String key;
public FormRequestExtractor(final String key) {
this.key = key;
}
@Override
protected Optional<String> doExtract(final HttpRequest request) {
Optional<ImmutableMap<String, String>> forms = extractor.extract(request);
if (forms.isPresent()) {
return fromNullable(forms.get().get(key));
}
return Optional.absent();
}
}