@Override public void handle(Request request, Response response) { super.handle(request, response); if (getFirstInboundFilter() != null) { getFirstInboundFilter().handle(request, response); } else { final Restlet next = this.inboundNext; if (next != null) { next.handle(request, response); } else { response.setStatus(Status.SERVER_ERROR_INTERNAL); getHelped() .getLogger() .log(Level.SEVERE, "The " + getHelped().getClass().getName() + " class has no Restlet defined to process calls. Maybe it wasn't properly started."); } } }
/** * Adds a new inbound filter to the chain. * * @param filter * The inbound filter to add. */ protected synchronized void addInboundFilter(Filter filter) { Restlet next = getInboundNext(); if (getFirstInboundFilter() == null) { setFirstInboundFilter(filter); } else if (getLastInboundFilter() != null) { getLastInboundFilter().setNext(filter); } setLastInboundFilter(filter); setInboundNext(next); }