List of usage examples for org.apache.commons.jcs.auxiliary.remote.value RemoteCacheRequest getPattern
public String getPattern()
From source file:org.apache.commons.jcs.auxiliary.remote.http.client.RemoteHttpCacheDispatcher.java
/** * Process single request/*from w ww.j av a2 s . co m*/ * * @param requestAsByteArray request body * @param remoteCacheRequest the cache request * @param url target url * * @return byte[] - the response * * @throws IOException * @throws HttpException */ protected <K, V> byte[] processRequest(byte[] requestAsByteArray, RemoteCacheRequest<K, V> remoteCacheRequest, String url) throws IOException, HttpException { RequestBuilder builder = RequestBuilder.post(url).setCharset(DEFAULT_ENCODING); if (getRemoteHttpCacheAttributes().isIncludeCacheNameAsParameter() && remoteCacheRequest.getCacheName() != null) { builder.addParameter(PARAMETER_CACHE_NAME, remoteCacheRequest.getCacheName()); } if (getRemoteHttpCacheAttributes().isIncludeKeysAndPatternsAsParameter()) { String keyValue = ""; switch (remoteCacheRequest.getRequestType()) { case GET: case REMOVE: case GET_KEYSET: keyValue = remoteCacheRequest.getKey().toString(); break; case GET_MATCHING: keyValue = remoteCacheRequest.getPattern(); break; case GET_MULTIPLE: keyValue = remoteCacheRequest.getKeySet().toString(); break; case UPDATE: keyValue = remoteCacheRequest.getCacheElement().getKey().toString(); break; default: break; } builder.addParameter(PARAMETER_KEY, keyValue); } if (getRemoteHttpCacheAttributes().isIncludeRequestTypeasAsParameter()) { builder.addParameter(PARAMETER_REQUEST_TYPE, remoteCacheRequest.getRequestType().toString()); } builder.setEntity(new ByteArrayEntity(requestAsByteArray)); HttpResponse httpResponse = doWebserviceCall(builder); byte[] response = EntityUtils.toByteArray(httpResponse.getEntity()); return response; }