Infinispan and REST client-side code examples

WARNING - TOPIC NOT WRITTEN - TOPIC ID: 1683

This topic has not yet been written. The content below is from the topic description.
Ruby client code: # # Shows how to interact with Infinispan REST api from ruby. # No special libraries, just standard net/http # # Author: Michael Neale # require 'net/http'   http = Net::HTTP.new('localhost', 8080)   #Create new entry http.post('/infinispan/rest/MyData/MyKey', 'DATA HERE', {"Content-Type" => "text/plain"})   #get it back puts http.get('/infinispan/rest/MyData/MyKey').body   #use PUT to overwrite http.put('/infinispan/rest/MyData/MyKey', 'MORE DATA', {"Content-Type" => "text/plain"})   #and remove... http.delete('/infinispan/rest/MyData/MyKey')   #Create binary data like this... just the same... http.put('/infinispan/rest/MyImages/Image.png', File.read('/Users/michaelneale/logo.png'), {"Content-Type" => "image/png"})     #and if you want to do json... require 'rubygems' require 'json'   #now for fun, lets do some JSON ! data = {:name => "michael", :age => 42 } http.put('/infinispan/rest/Users/data/0', data.to_json, {"Content-Type" => "application/json"})   Python client code: # # Sample python code using the standard http lib only #   import httplib     #putting data in conn = httplib.HTTPConnection("localhost:8080") data = "SOME DATA HERE !" #could be string, or a file... conn.request("POST", "/infinispan/rest/Bucket/0", data,    {"Content-Type": "text/plain"}) response = conn.getresponse() print response.status   #getting data out import httplib conn = httplib.HTTPConnection("localhost:8080") conn.request("GET", "/infinispan/rest/Bucket/0") response = conn.getresponse() print response.status print response.read()   Java client code: import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.URL;   /** * Rest example accessing Infinispan Cache. * @author Samuel Tauil (samuel@redhat.com) * */ public class RestExample {        /**       * Method that puts a String value in cache.       * @param urlServerAddress       * @param value       * @throws IOException       */      public void putMethod(String urlServerAddress, String value) throws IOException {                     System.out.println("----------------------------------------");           System.out.println("Executing PUT");           System.out.println("----------------------------------------");           URL address = new URL(urlServerAddress);           System.out.println("executing request " + urlServerAddress);           HttpURLConnection connection = (HttpURLConnection) address.openConnection();           System.out.println("Executing put method of value: " + value);           connection.setRequestMethod("PUT");           connection.setRequestProperty("Content-Type", "text/plain");           connection.setDoOutput(true);             OutputStreamWriter outputStreamWriter = new OutputStreamWriter(connection.getOutputStream());           outputStreamWriter.write(value);                     connection.connect();           outputStreamWriter.flush();                   System.out.println("----------------------------------------");         System.out.println(connection.getResponseCode() + " " + connection.getResponseMessage());         System.out.println("----------------------------------------");                   connection.disconnect();                }           /**       * Method that gets an value by a key in url as param value.       * @param urlServerAddress       * @return String value       * @throws IOException       */      public String getMethod(String urlServerAddress) throws IOException {                     String line = new String();           StringBuilder stringBuilder = new StringBuilder();             System.out.println("----------------------------------------");           System.out.println("Executing GET");           System.out.println("----------------------------------------");                     URL address = new URL(urlServerAddress);           System.out.println("executing request " + urlServerAddress);                     HttpURLConnection connection = (HttpURLConnection) address.openConnection();           connection.setRequestMethod("GET");           connection.setRequestProperty("Content-Type", "text/plain");           connection.setDoOutput(true);             BufferedReader  bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream()));                     connection.connect();             while ((line = bufferedReader.readLine()) != null)            {               stringBuilder.append(line + '\n');            }                    System.out.println("Executing get method of value: " + stringBuilder.toString());                     System.out.println("----------------------------------------");         System.out.println(connection.getResponseCode() + " " + connection.getResponseMessage());         System.out.println("----------------------------------------");                   connection.disconnect();                 return stringBuilder.toString();      }           /**       * Main method example.       * @param args       * @throws IOException       */      public static void main(String[] args) throws IOException {                     //Attention to the cache name "cacheX" it was configured in xml file with tag           RestExample restExample = new RestExample();           restExample.putMethod("http://localhost:8080/infinispan/rest/cacheX/1", "Infinispan REST Test");           restExample.getMethod("http://localhost:8080/infinispan/rest/cacheX/1");                } }