Package ch.ethz.inf.vs.californium.examples.resources

Source Code of ch.ethz.inf.vs.californium.examples.resources.MirrorResource

package ch.ethz.inf.vs.californium.examples.resources;

import ch.ethz.inf.vs.californium.coap.CoAP.ResponseCode;
import ch.ethz.inf.vs.californium.coap.MediaTypeRegistry;
import ch.ethz.inf.vs.californium.coap.Request;
import ch.ethz.inf.vs.californium.coap.Response;
import ch.ethz.inf.vs.californium.network.Exchange;
import ch.ethz.inf.vs.californium.server.resources.Resource;
import ch.ethz.inf.vs.californium.server.resources.ResourceBase;

/**
* This resource responds with the data from a request in its payload. This
* resource responds to GET, POST, PUT and DELETE requests.
*/
public class MirrorResource extends ResourceBase {

  public MirrorResource(String name) {
    super(name);
  }
 
  @Override
  public Resource getChild(String name) {
    return this;
  }
 
  /**
   * This method uses the internal {@link Exchange} class for advanced handling.
   */
  @Override
  public void handleRequest(Exchange exchange) {
    Request request = exchange.getRequest();
    StringBuilder buffer = new StringBuilder();
    buffer.append("resource ").append(getURI()).append(" received request")
      .append("\n").append("Code: ").append(request.getCode())
      .append("\n").append("Source: ").append(request.getSource()).append(":").append(request.getSourcePort())
      .append("\n").append("Type: ").append(request.getType())
      .append("\n").append("MID: ").append(request.getMID())
      .append("\n").append("Token: ").append(request.getTokenString())
      .append("\n").append(request.getOptions());
    Response response = new Response(ResponseCode.CONTENT);
    response.setPayload(buffer.toString());
    response.getOptions().setContentFormat(MediaTypeRegistry.TEXT_PLAIN);
    exchange.sendResponse(response);
  }
}
TOP

Related Classes of ch.ethz.inf.vs.californium.examples.resources.MirrorResource

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.