/** * Copyright 2005-2014 Restlet * * The contents of this file are subject to the terms of one of the following * open source licenses: Apache 2.0 or or EPL 1.0 (the "Licenses"). You can * select the license that you prefer but you may not use this file except in * compliance with one of these Licenses. * * You can obtain a copy of the Apache 2.0 license at * http://www.opensource.org/licenses/apache-2.0 * * You can obtain a copy of the EPL 1.0 license at * http://www.opensource.org/licenses/eclipse-1.0 * * See the Licenses for the specific language governing permissions and * limitations under the Licenses. * * Alternatively, you can obtain a royalty free commercial license with less * limitations, transferable or non-transferable, directly at * http://restlet.com/products/restlet-framework * * Restlet is a registered trademark of Restlet S.A.S. */ package org.restlet; /** * Uniform REST interface. "The central feature that distinguishes the REST * architectural style from other network-based styles is its emphasis on a * uniform interface between components. By applying the software engineering * principle of generality to the component interface, the overall system * architecture is simplified and the visibility of interactions is improved. * Implementations are decoupled from the services they provide, which * encourages independent evolvability." Roy T. Fielding * * @see <a * href="http://roy.gbiv.com/pubs/dissertation/rest_arch_style.htm#sec_5_1_5">Source * dissertation</a> * @author Jerome Louvel */ public interface Uniform { /** * Handles a uniform call. It is important to realize that this interface * can be used either on the client-side or on the server-side. * * @param request * The request to handle. * @param response * The associated response. */ void handle(Request request, Response response); }