本文整理汇总了Java中com.turbomanage.httpclient.BasicHttpClient.addHeader方法的典型用法代码示例。如果您正苦于以下问题:Java BasicHttpClient.addHeader方法的具体用法?Java BasicHttpClient.addHeader怎么用?Java BasicHttpClient.addHeader使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.turbomanage.httpclient.BasicHttpClient
的用法示例。
在下文中一共展示了BasicHttpClient.addHeader方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: sendSessionToServer
import com.turbomanage.httpclient.BasicHttpClient; //导入方法依赖的package包/类
/**
* Posts a session to the event server.
*
* @param sessionId The ID of the session that was reviewed.
* @return whether or not updating succeeded
*/
public boolean sendSessionToServer(String sessionId, List<String> questions) {
BasicHttpClient httpClient = new BasicHttpClient();
httpClient.addHeader(PARAMETER_EVENT_CODE, Config.FEEDBACK_API_CODE);
httpClient.addHeader(PARAMETER_API_KEY, Config.FEEDBACK_API_KEY);
ParameterMap parameterMap = httpClient.newParams();
parameterMap.add(PARAMETER_SESSION_ID, sessionId);
parameterMap.add(PARAMETER_SURVEY_ID, Config.FEEDBACK_SURVEY_ID);
parameterMap.add(PARAMETER_REGISTRANT_ID, Config.FEEDBACK_DUMMY_REGISTRANT_ID);
int i = 1;
for (String question : questions) {
parameterMap.add("q" + i, question);
i++;
}
HttpResponse response = httpClient.get(mUrl, parameterMap);
if (response != null && response.getStatus() == HttpURLConnection.HTTP_OK) {
LogUtils.LOGD(TAG, "Server returned HTTP_OK, so session posting was successful.");
return true;
} else {
LogUtils.LOGE(TAG, "Error posting session: HTTP status " + response.getStatus());
return false;
}
}
示例2: sendSessionToServer
import com.turbomanage.httpclient.BasicHttpClient; //导入方法依赖的package包/类
/**
* Posts a session to the event server.
*
* @param sessionId The ID of the session that was reviewed.
* @return whether or not updating succeeded
*/
public boolean sendSessionToServer(String sessionId, List<String> questions) {
BasicHttpClient httpClient = new BasicHttpClient();
httpClient.addHeader(PARAMETER_EVENT_CODE, Config.FEEDBACK_API_CODE);
httpClient.addHeader(PARAMETER_API_KEY, Config.FEEDBACK_API_KEY);
ParameterMap parameterMap = httpClient.newParams();
parameterMap.add(PARAMETER_SESSION_ID, sessionId);
parameterMap.add(PARAMETER_SURVEY_ID, Config.FEEDBACK_SURVEY_ID);
parameterMap.add(PARAMETER_REGISTRANT_ID, Config.FEEDBACK_DUMMY_REGISTRANT_ID);
int i = 1;
for (String question : questions) {
parameterMap.add("q" + i, question);
i++;
}
HttpResponse response = httpClient.get(mUrl, parameterMap);
if (response != null && response.getStatus() == HttpURLConnection.HTTP_OK) {
LOGD(TAG, "Server returned HTTP_OK, so session posting was successful.");
return true;
} else {
LOGE(TAG, "Error posting session: HTTP status " + response.getStatus());
return false;
}
}
示例3: authorizeHttpClient
import com.turbomanage.httpclient.BasicHttpClient; //导入方法依赖的package包/类
/**
* If {@code AUTHORIZATION_TO_BACKEND_REQUIRED} is true add an authentication header to the
* given request. The currently signed in user is used to retrieve the auth token.
* Allows pre-release builds to use a Google Cloud storage bucket with non-public data.
*
* @param context Context used to retrieve auth token from SharedPreferences.
* @param basicHttpClient HTTP client to which the authorization header will be added.
*/
public static void authorizeHttpClient(Context context, BasicHttpClient basicHttpClient) {
if (basicHttpClient == null || AccountUtils.getAuthToken(context) == null) {
return;
}
if (AUTHORIZATION_TO_BACKEND_REQUIRED) {
basicHttpClient.addHeader(AUTHORIZATION_HEADER,
BEARER_PREFIX + AccountUtils.getAuthToken(context));
}
}
示例4: remoteSyncMapData
import com.turbomanage.httpclient.BasicHttpClient; //导入方法依赖的package包/类
private ArrayList<ContentProviderOperation> remoteSyncMapData(String urlString,
SharedPreferences preferences) throws IOException {
final String localVersion = preferences.getString("local_mapdata_version", null);
ArrayList<ContentProviderOperation> batch = Lists.newArrayList();
BasicHttpClient httpClient = new BasicHttpClient();
httpClient.setRequestLogger(mQuietLogger);
httpClient.addHeader("If-None-Match", localVersion);
LOGD(TAG,"Local map version: "+localVersion);
HttpResponse response = httpClient.get(urlString, null);
final int status = response.getStatus();
if (status == HttpURLConnection.HTTP_OK) {
// Data has been updated, otherwise would have received HTTP_NOT_MODIFIED
LOGI(TAG, "Remote syncing map data");
final List<String> etag = response.getHeaders().get("ETag");
if (etag != null && etag.size() > 0) {
MapPropertyHandler handler = new MapPropertyHandler(mContext);
batch.addAll(handler.parse(response.getBodyAsString()));
syncMapTiles(handler.getTiles());
// save new etag as version
preferences.edit().putString("local_mapdata_version", etag.get(0)).commit();
}
} //else: no update
return batch;
}
示例5: fetchConferenceDataIfNewer
import com.turbomanage.httpclient.BasicHttpClient; //导入方法依赖的package包/类
/**
* Fetches data from the remote server.
*
* @param refTimestamp The timestamp of the data to use as a reference; if the remote data
* is not newer than this timestamp, no data will be downloaded and
* this method will return null.
*
* @return The data downloaded, or null if there is no data to download
* @throws IOException if an error occurred during download.
*/
public String[] fetchConferenceDataIfNewer(String refTimestamp) throws IOException {
if (TextUtils.isEmpty(mManifestUrl)) {
LOGW(TAG, "Manifest URL is empty (remote sync disabled!).");
return null;
}
BasicHttpClient httpClient = new BasicHttpClient();
httpClient.setRequestLogger(mQuietLogger);
// Only download if data is newer than refTimestamp
// Cloud Storage is very picky with the If-Modified-Since format. If it's in a wrong
// format, it refuses to serve the file, returning 400 HTTP error. So, if the
// refTimestamp is in a wrong format, we simply ignore it. But pay attention to this
// warning in the log, because it might mean unnecessary data is being downloaded.
if (!TextUtils.isEmpty(refTimestamp)) {
if (TimeUtils.isValidFormatForIfModifiedSinceHeader(refTimestamp)) {
httpClient.addHeader("If-Modified-Since", refTimestamp);
} else {
LOGW(TAG, "Could not set If-Modified-Since HTTP header. Potentially downloading " +
"unnecessary data. Invalid format of refTimestamp argument: "+refTimestamp);
}
}
HttpResponse response = httpClient.get(mManifestUrl, null);
if (response == null) {
LOGE(TAG, "Request for manifest returned null response.");
throw new IOException("Request for data manifest returned null response.");
}
int status = response.getStatus();
if (status == HttpURLConnection.HTTP_OK) {
LOGD(TAG, "Server returned HTTP_OK, so new data is available.");
mServerTimestamp = getLastModified(response);
LOGD(TAG, "Server timestamp for new data is: " + mServerTimestamp);
String body = response.getBodyAsString();
if (TextUtils.isEmpty(body)) {
LOGE(TAG, "Request for manifest returned empty data.");
throw new IOException("Error fetching conference data manifest: no data.");
}
LOGD(TAG, "Manifest "+mManifestUrl+" read, contents: " + body);
mBytesDownloaded += body.getBytes().length;
return processManifest(body);
} else if (status == HttpURLConnection.HTTP_NOT_MODIFIED) {
// data on the server is not newer than our data
LOGD(TAG, "HTTP_NOT_MODIFIED: data has not changed since " + refTimestamp);
return null;
} else {
LOGE(TAG, "Error fetching conference data: HTTP status " + status);
throw new IOException("Error fetching conference data: HTTP status " + status);
}
}
示例6: fetchConferenceDataIfNewer
import com.turbomanage.httpclient.BasicHttpClient; //导入方法依赖的package包/类
/**
* Fetches data from the remote server.
*
* @param refTimestamp The timestamp of the data to use as a reference; if the remote data is
* not newer than this timestamp, no data will be downloaded and this method
* will return null.
* @return The data downloaded, or null if there is no data to download
* @throws IOException if an error occurred during download.
*/
public String[] fetchConferenceDataIfNewer(String refTimestamp) throws IOException {
if (TextUtils.isEmpty(mManifestUrl)) {
LOGW(TAG, "Manifest URL is empty (remote sync disabled!).");
return null;
}
BasicHttpClient httpClient = new BasicHttpClient();
httpClient.setRequestLogger(mQuietLogger);
IOUtils.authorizeHttpClient(mContext, httpClient);
// Only download if data is newer than refTimestamp
// Cloud Storage is very picky with the If-Modified-Since format. If it's in a wrong
// format, it refuses to serve the file, returning 400 HTTP error. So, if the
// refTimestamp is in a wrong format, we simply ignore it. But pay attention to this
// warning in the log, because it might mean unnecessary data is being downloaded.
if (!TextUtils.isEmpty(refTimestamp)) {
if (TimeUtils.isValidFormatForIfModifiedSinceHeader(refTimestamp)) {
httpClient.addHeader("If-Modified-Since", refTimestamp);
} else {
LOGW(TAG, "Could not set If-Modified-Since HTTP header. Potentially downloading " +
"unnecessary data. Invalid format of refTimestamp argument: " +
refTimestamp);
}
}
HttpResponse response = httpClient.get(mManifestUrl, null);
if (response == null) {
LOGE(TAG, "Request for manifest returned null response.");
throw new IOException("Request for data manifest returned null response.");
}
int status = response.getStatus();
if (status == HttpURLConnection.HTTP_OK) {
LOGD(TAG, "Server returned HTTP_OK, so new data is available.");
mServerTimestamp = getLastModified(response);
LOGD(TAG, "Server timestamp for new data is: " + mServerTimestamp);
String body = response.getBodyAsString();
if (TextUtils.isEmpty(body)) {
LOGE(TAG, "Request for manifest returned empty data.");
throw new IOException("Error fetching conference data manifest: no data.");
}
LOGD(TAG, "Manifest " + mManifestUrl + " read, contents: " + body);
mBytesDownloaded += body.getBytes().length;
return processManifest(body);
} else if (status == HttpURLConnection.HTTP_NOT_MODIFIED) {
// data on the server is not newer than our data
LOGD(TAG, "HTTP_NOT_MODIFIED: data has not changed since " + refTimestamp);
return null;
} else {
LOGE(TAG, "Error fetching conference data: HTTP status " + status + " and manifest " +
mManifestUrl);
throw new IOException("Error fetching conference data: HTTP status " + status);
}
}
示例7: fetchConferenceDataIfNewer
import com.turbomanage.httpclient.BasicHttpClient; //导入方法依赖的package包/类
/**
* Fetches data from the remote server.
*
* @param refTimestamp The timestamp of the data to use as a reference; if the remote data
* is not newer than this timestamp, no data will be downloaded and
* this method will return null.
*
* @return The data downloaded, or null if there is no data to download
* @throws java.io.IOException if an error occurred during download.
*/
public String[] fetchConferenceDataIfNewer(String refTimestamp) throws IOException {
if (TextUtils.isEmpty(mManifestUrl)) {
LOGW(TAG, "Manifest URL is empty (remote sync disabled!).");
return null;
}
BasicHttpClient httpClient = new BasicHttpClient();
httpClient.setRequestLogger(mQuietLogger);
// Only download if data is newer than refTimestamp
// Cloud Storage is very picky with the If-Modified-Since format. If it's in a wrong
// format, it refuses to serve the file, returning 400 HTTP error. So, if the
// refTimestamp is in a wrong format, we simply ignore it. But pay attention to this
// warning in the log, because it might mean unnecessary data is being downloaded.
if (!TextUtils.isEmpty(refTimestamp)) {
if (TimeUtils.isValidFormatForIfModifiedSinceHeader(refTimestamp)) {
httpClient.addHeader("If-Modified-Since", refTimestamp);
} else {
LOGW(TAG, "Could not set If-Modified-Since HTTP header. Potentially downloading " +
"unnecessary data. Invalid format of refTimestamp argument: "+refTimestamp);
}
}
HttpResponse response = httpClient.get(mManifestUrl, null);
if (response == null) {
LOGE(TAG, "Request for manifest returned null response.");
throw new IOException("Request for data manifest returned null response.");
}
int status = response.getStatus();
if (status == HttpURLConnection.HTTP_OK) {
LOGD(TAG, "Server returned HTTP_OK, so new data is available.");
mServerTimestamp = getLastModified(response);
LOGD(TAG, "Server timestamp for new data is: " + mServerTimestamp);
String body = response.getBodyAsString();
if (TextUtils.isEmpty(body)) {
LOGE(TAG, "Request for manifest returned empty data.");
throw new IOException("Error fetching conference data manifest: no data.");
}
LOGD(TAG, "Manifest "+mManifestUrl+" read, contents: " + body);
mBytesDownloaded += body.getBytes().length;
return processManifest(body);
} else if (status == HttpURLConnection.HTTP_NOT_MODIFIED) {
// data on the server is not newer than our data
LOGD(TAG, "HTTP_NOT_MODIFIED: data has not changed since " + refTimestamp);
return null;
} else {
LOGE(TAG, "Error fetching conference data: HTTP status " + status);
throw new IOException("Error fetching conference data: HTTP status " + status);
}
}