All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.yammer.dropwizard.jersey.OauthTokenInjectable Maven / Gradle / Ivy

package com.yammer.dropwizard.jersey;

import com.google.common.base.Optional;
import com.sun.jersey.api.core.HttpContext;
import com.sun.jersey.server.impl.inject.AbstractHttpContextInjectable;

import javax.ws.rs.core.HttpHeaders;

// TODO: 11/14/11  -- test OauthTokenInjectable
// TODO: 11/14/11  -- document OauthTokenInjectable

public class OauthTokenInjectable extends AbstractHttpContextInjectable> {
    private final String prefix;

    public OauthTokenInjectable(String prefix) {
        this.prefix = prefix;
    }

    @Override
    public Optional getValue(HttpContext c) {
        final String header = c.getRequest().getHeaderValue(HttpHeaders.AUTHORIZATION);
        if ((header != null) && header.startsWith(prefix)) {
            return Optional.of(header.substring(prefix.length()));
        }
        return Optional.absent();
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy