|
Play Framework/Scala example source code file (Call.java)
The Call.java Play Framework example source code
/*
* Copyright (C) 2009-2013 Typesafe Inc. <http://www.typesafe.com>
*/
package play.mvc;
/**
* Defines a 'call', describing an HTTP request. For example used to create links or populate redirect data.
* <p>
* These values are usually generated by the reverse router.
*/
public abstract class Call {
private static java.util.Random rand = new java.util.Random();
/**
* The request URL.
*/
public abstract String url();
/**
* The request HTTP method.
*/
public abstract String method();
/**
* Append a unique identifier to the URL.
*/
public Call unique() {
String url = this.url();
if(url.indexOf('?') == -1) {
url = url + "?" + rand.nextLong();
} else {
url = url + "&" + rand.nextLong();
}
return new play.api.mvc.Call(method(), url);
}
/**
* Transform this call to an absolute URL.
*/
public String absoluteURL(Http.Request request) {
return absoluteURL(request.secure(), request.host());
}
/**
* Transform this call to an absolute URL.
*/
public String absoluteURL(Http.Request request, boolean secure) {
return absoluteURL(secure, request.host());
}
/**
* Transform this call to an absolute URL.
*/
public String absoluteURL(boolean secure, String host) {
return "http" + (secure ? "s" : "") + "://" + host + this.url();
}
/**
* Transform this call to an WebSocket URL.
*/
public String webSocketURL(Http.Request request) {
return webSocketURL(request.secure(), request.host());
}
/**
* Transform this call to an WebSocket URL.
*/
public String webSocketURL(Http.Request request, boolean secure) {
return webSocketURL(secure, request.host());
}
/**
* Transform this call to an WebSocket URL.
*/
public String webSocketURL(boolean secure, String host) {
return "ws" + (secure ? "s" : "") + "://" + host + this.url();
}
}
Other Play Framework source code examplesHere is a short list of links related to this Play Framework Call.java source code file: |
| ... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.