http://localhost:8080/ehcache/rest.
The name of the cache that I'm using in this example is just sampleCache.
def getCachedItem(key) {
def uri = "http://localhost:8080/ehcache/rest/sampleCache/"
def restClient = new RESTClient(uri)
def res
try {
res = restClient.get(path:key)
}
catch (Exception e) {
log.error("Error retrieving item from cache for this key: $key")
}
return res?.data
}
def putCachedItem(key, html) {
def url = "http://localhost:8080/ehcache/rest/sampleCache/"
try {
def json = html as grails.converters.JSON
def http = new HTTPBuilder(url)
http.request(Method.PUT) { req ->
uri.path = key
send('application/json', grails.converters.JSON.parse(json?.toString()))
response.'201' = { resp ->
log.info("success in adding item to cache: ${resp.status}")
}
response.success = { resp, object ->
log.info("success in adding item to cache: ${resp.status}")
}
response.failure = { resp ->
log.error("error adding item to cache: ${resp.statusLine}")
}
}
}
catch (Exception e) {
log.error("Error setting the cache for this key: $key")
}
}
No comments:
Post a Comment