Package org.ontoware.semweb4j.lessons.lesson6

Source Code of org.ontoware.semweb4j.lessons.lesson6.Step1

package org.ontoware.semweb4j.lessons.lesson6;

import org.ontoware.jrest.RestParams;
import org.ontoware.jrest.RestServer;
import org.ontoware.jrest.annotation.RestAddressByParameter;
import org.ontoware.jrest.response.RestResponse;


/*
* implements a RESTful web server with an integer adding restlet
*/
public class Step1 {
 
  private static Step1 instance;
 
  //TODO why do we need "Exception" here?
  /*
   * initializing RestServer, registering Restlet for integer addition, starting RestServer
   * look at
   *   http://localhost:8888/rest/__main
   *   http://localhost:8888/rest/add?a=5&b=15
   * after running this program.
   */
  public static void main(String[] args) throws Exception {
    //TODO explain in web we use Jetty here (what is jetty? what is a restful web server?)
    //TODO understand & explain what this "webroot" is & what so setup elsewhere to get jRest working ...
    RestServer rs = new RestServer(8888, "./step1");
    // default is RestServer rs = new RestServer(5555);
    // which stores content in "./web"
   
    // creating singleton instance:
    instance = new Step1();
   
    //TODO explain the concept Restlet
    rs.registerRestlet("add", instance);
    // to unregister Restlet: rs.unregisterRestlet("step1");
    rs.start();
    // to stop the RestServer: rs.stop();
   
    //TODO clear confusion about rs.run() & rs.start()
  }
 
  //TODO explain @annotations - list of annotations
  /*
   * HTTP GET handler
   */
  public RestResponse get(@RestAddressByParameter("a") int a,
              @RestAddressByParameter("b") int b) {
   
    //TODO explain what a,b are
   
    //TODO explain RestResponse
   
    //TODO explain RestParams (it contains constants for mimetypes & keys - what are keys??)
   
    // setting response to a HTML String containing (a+b):
    String responseString = "<html><h2>" + (a + b)+"</h2>";
    // setting MIME-type to text/HTML:
    String mimetype = RestParams.MIME_TEXT_HTML;
    // setting responsecode to 200 (HTTP OK):
    int responsecode = 200;
    // ( ',null,null' here means we don't use xslt or css here)
    RestResponse response = new RestResponse(responseString, mimetype, responsecode, null, null);
    return response;
  }
 
}
TOP

Related Classes of org.ontoware.semweb4j.lessons.lesson6.Step1

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.