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 CookieRequestExtractor extends HttpRequestExtractor<String> {
private final CookiesRequestExtractor extractor = new CookiesRequestExtractor();
private final String key;
public CookieRequestExtractor(final String key) {
this.key = key;
}
@Override
protected Optional<String> doExtract(final HttpRequest request) {
Optional<ImmutableMap<String, String>> cookies = extractor.extract(request);
if (cookies.isPresent()) {
return fromNullable(cookies.get().get(this.key));
}
return Optional.absent();
}
}