本文整理了Java中org.restlet.data.Request.getClientInfo
方法的一些代码示例,展示了Request.getClientInfo
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Request.getClientInfo
方法的具体详情如下:
包路径:org.restlet.data.Request
类名称:Request
方法名:getClientInfo
[英]Returns the client-specific information. Creates a new instance if no one has been set.
[中]返回特定于客户端的信息。如果未设置任何实例,则创建新实例。
代码示例来源:origin: internetarchive/heritrix3
/**
* If client can accept text/html, always prefer it. WebKit-based browsers
* claim to want application/xml, but we don't want to give it to them. See
* <a href="https://webarchive.jira.com/browse/HER-1603">https://webarchive.jira.com/browse/HER-1603</a>
*/
public Variant getPreferredVariant() {
boolean addExplicitTextHtmlPreference = false;
for (Preference<MediaType> mediaTypePreference: getRequest().getClientInfo().getAcceptedMediaTypes()) {
if (mediaTypePreference.getMetadata().equals(MediaType.TEXT_HTML)) {
mediaTypePreference.setQuality(Float.MAX_VALUE);
addExplicitTextHtmlPreference = false;
break;
} else if (mediaTypePreference.getMetadata().includes(MediaType.TEXT_HTML)) {
addExplicitTextHtmlPreference = true;
}
}
if (addExplicitTextHtmlPreference) {
List<Preference<MediaType>> acceptedMediaTypes = getRequest().getClientInfo().getAcceptedMediaTypes();
acceptedMediaTypes.add(new Preference<MediaType>(MediaType.TEXT_HTML, Float.MAX_VALUE));
getRequest().getClientInfo().setAcceptedMediaTypes(acceptedMediaTypes);
}
return super.getPreferredVariant();
}
代码示例来源:origin: org.restlet/org.restlet
/**
* Returns the client-specific information.
*
* @return The client-specific information.
*/
@Override
public ClientInfo getClientInfo() {
return getWrappedRequest().getClientInfo();
}
代码示例来源:origin: org.sonatype.nexus/nexus-rest-api
/**
* A beforeHandle will simply embed in request attributes a Nexus interface implemntor, depending on key used to
* name it.
*/
protected int beforeHandle( Request request, Response response )
{
String agentInfo = request.getClientInfo().getAgent() != null ? request
.getClientInfo().getAgent().toLowerCase() : "unknown";
// This solution was the only that came on my mind :)
// should work only if client specified more then one "alternatives"
if ( StringUtils.indexOfAny( agentInfo, new String[] { "mozilla", "firefox", "msie", "opera", "safari" } ) > -1
&& request.getClientInfo().getAcceptedMediaTypes().size() > 1 )
{
// overriding client preferences, since it is a browser to TEXT/HTML
// doing this by adding text/html as firxt to accepted media types with quality 1
request
.getClientInfo().getAcceptedMediaTypes().add( 0, new Preference<MediaType>( MediaType.TEXT_HTML, 1 ) );
}
return CONTINUE;
}
代码示例来源:origin: org.sonatype.nexus.plugins/nexus-restlet1x-plugin
List<String> clientAddresses = request.getClientInfo().getAddresses();
return request.getClientInfo().getAddress();
代码示例来源:origin: org.sonatype.nexus/nexus-rest-api
public static String findIP( Request request )
{
Form form = (Form) request.getAttributes().get( "org.restlet.http.headers" );
String forwardedIP = getFirstForwardedIp( form.getFirstValue( FORWARD_HEADER ) );
if ( forwardedIP != null )
{
return forwardedIP;
}
List<String> ipAddresses = request.getClientInfo().getAddresses();
return resolveIp( ipAddresses );
}
代码示例来源:origin: org.sonatype.nexus/nexus-rest-client-java
+ ( ( request != null ) ? request.getClientInfo().getAddress() : "?" ) );
代码示例来源:origin: org.sonatype.nexus.plugins/nexus-restlet1x-plugin
@Override
public ClientInfo getCurrentThreadClientInfo() {
final Subject subject = SecurityUtils.getSubject();
if (subject != null && subject.getPrincipal() != null) {
final String userId = subject.getPrincipal().toString();
final Request current = Request.getCurrent();
if (current != null) {
final String currentIp = RemoteIPFinder.findIP(current);
final String currentUa = current.getClientInfo().getAgent();
return new ClientInfo(userId, currentIp, currentUa);
}
else {
// this is not HTTP processing thread at all
return null;
}
}
// we have no Shiro subject or "anonymous" user (from Shiro perspective, null principals
return null;
}
}
代码示例来源:origin: uk.org.mygrid.remotetaverna/taverna-rest-client
private Request makeRequest(Reference uri, MediaType accepts) {
Request request = new Request();
logger.debug("Making new request for " + uri + " -- " + uri.getTargetRef());
request.setResourceRef(uri.getTargetRef());
if (accepts != null) {
request.getClientInfo().getAcceptedMediaTypes().add(
new Preference<MediaType>(accepts));
}
if (baseURI.isParent(uri) && username != null) {
logger.debug("Authenticating as " + username);
ChallengeResponse challengeResponse =
new ChallengeResponse(ChallengeScheme.HTTP_BASIC, username,
password);
request.setChallengeResponse(challengeResponse);
} else {
logger.warn("Not supplying credentials for out-of-site URI " + uri);
}
return request;
}
代码示例来源:origin: org.geowebcache/gwc-rest
void checkPosMediaType(Representation entity) throws GeoWebCacheException {
String remoteAdr = getRequest().getClientInfo().getAddress();
if (entity == null
|| ((!entity.getMediaType().includes(MediaType.APPLICATION_XML))
&& (!entity.getMediaType().includes(MediaType.APPLICATION_JSON)))) {
String message = "Request from "+ remoteAdr + " did not specify MIME type"
+ " of the document posted. Please specify application/xml "
+ " or application/json";
throw new GeoWebCacheException(message);
} else {
log.info("Received seed request from " + remoteAdr);
}
}
代码示例来源:origin: org.sonatype.nexus/nexus-rest-api
@Override
public ClientInfo getCurrentThreadClientInfo()
{
final Subject subject = SecurityUtils.getSubject();
if ( subject != null && subject.getPrincipal() != null )
{
final String userId = subject.getPrincipal().toString();
final Request current = Request.getCurrent();
if ( current != null )
{
final String currentIp = RemoteIPFinder.findIP( current );
final String currentUa = current.getClientInfo().getAgent();
return new ClientInfo( userId, currentIp, currentUa );
}
else
{
// this is not HTTP processing thread at all
return null;
}
}
// we have no Shiro subject or "anonymous" user (from Shiro perspective, null principals
return null;
}
}
代码示例来源:origin: org.archive.heritrix/heritrix-engine
/**
* If client can accept text/html, always prefer it. WebKit-based browsers
* claim to want application/xml, but we don't want to give it to them. See
* <a href="https://webarchive.jira.com/browse/HER-1603">https://webarchive.jira.com/browse/HER-1603</a>
*/
public Variant getPreferredVariant() {
boolean addExplicitTextHtmlPreference = false;
for (Preference<MediaType> mediaTypePreference: getRequest().getClientInfo().getAcceptedMediaTypes()) {
if (mediaTypePreference.getMetadata().equals(MediaType.TEXT_HTML)) {
mediaTypePreference.setQuality(Float.MAX_VALUE);
addExplicitTextHtmlPreference = false;
break;
} else if (mediaTypePreference.getMetadata().includes(MediaType.TEXT_HTML)) {
addExplicitTextHtmlPreference = true;
}
}
if (addExplicitTextHtmlPreference) {
List<Preference<MediaType>> acceptedMediaTypes = getRequest().getClientInfo().getAcceptedMediaTypes();
acceptedMediaTypes.add(new Preference<MediaType>(MediaType.TEXT_HTML, Float.MAX_VALUE));
getRequest().getClientInfo().setAcceptedMediaTypes(acceptedMediaTypes);
}
return super.getPreferredVariant();
}
代码示例来源:origin: org.restlet/org.restlet
/**
* Returns the preferred variant according to the client preferences
* specified in the request.
*
* @return The preferred variant.
*/
public Variant getPreferredVariant() {
Variant result = null;
final List<Variant> variants = getVariants();
if ((variants != null) && (!variants.isEmpty())) {
Language language = null;
// Compute the preferred variant. Get the default language
// preference from the Application (if any).
final Application app = Application.getCurrent();
if (app != null) {
language = app.getMetadataService().getDefaultLanguage();
}
result = getRequest().getClientInfo().getPreferredVariant(variants,
language);
}
return result;
}
代码示例来源:origin: org.sonatype.nexus/nexus-test-harness-launcher
request.getClientInfo().getAcceptedMediaTypes().add(
new Preference<MediaType>(representation.getMediaType()));
代码示例来源:origin: org.sonatype.nexus/nexus-test-utils
request.getClientInfo().getAcceptedMediaTypes().add(
new Preference<MediaType>( representation.getMediaType() ) );
代码示例来源:origin: org.geoserver/rest
if ( df == null ) {
accepts = getRequest().getClientInfo().getAcceptedMediaTypes();
acceptsAll = accepts.isEmpty();
for ( Iterator<Preference<MediaType>> i = accepts.iterator(); i.hasNext(); ) {
代码示例来源:origin: org.sonatype.nexus.plugins/nexus-restlet1x-plugin
result.getRequestContext().put(AccessManager.REQUEST_USER, subject.getPrincipal().toString());
result.getRequestContext().put(AccessManager.REQUEST_AGENT, request.getClientInfo().getAgent());
代码示例来源:origin: org.sonatype.nexus/nexus-test-harness-base
request.getClientInfo().getAcceptedMediaTypes().
add(new Preference<MediaType>(representation.getMediaType()));
代码示例来源:origin: org.sonatype.nexus.plugins/nexus-restlet1x-plugin
result.getRequestContext().put(AccessManager.REQUEST_USER, subject.getPrincipal().toString());
result.getRequestContext().put(AccessManager.REQUEST_AGENT, request.getClientInfo().getAgent());
代码示例来源:origin: org.sonatype.nexus/nexus-rest-api
result.getRequestContext().put( AccessManager.REQUEST_AGENT, request.getClientInfo().getAgent() );
代码示例来源:origin: org.sonatype.nexus/nexus-rest-api
result.getRequestContext().put( AccessManager.REQUEST_AGENT, request.getClientInfo().getAgent() );
内容来源于网络,如有侵权,请联系作者删除!