@Override public Filter createOutboundFilter(Context context) { Encoder encoder = new Encoder(context, true, false, new EncoderService()); return encoder; }
@Override public boolean canEncode(Representation representation) { // EncoderService ignores disabled state if (!isEnabled()) { return false; } return super.canEncode(representation); } }
/** * Constructor. The default minimum size * * @param enabled * True if the service has been enabled. */ public EncoderService(boolean enabled) { super(enabled); this.mininumSize = DEFAULT_MINIMUM_SIZE; this.acceptedMediaTypes = new CopyOnWriteArrayList<MediaType>( getDefaultAcceptedMediaTypes()); this.ignoredMediaTypes = new CopyOnWriteArrayList<MediaType>( getDefaultIgnoredMediaTypes()); }
result = (getMinimumSize() == EncoderService.ANY_SIZE) || (representation.getSize() == Representation.UNKNOWN_SIZE) || (representation.getSize() >= getMinimumSize()); boolean accepted = false; for (Iterator<MediaType> iter = getAcceptedMediaTypes().iterator(); !accepted && iter.hasNext();) { accepted = iter.next().includes(mediaType); boolean rejected = false; for (Iterator<MediaType> iter = getIgnoredMediaTypes().iterator(); !rejected && iter.hasNext();) { rejected = iter.next().includes(mediaType);
@Override public Restlet createChain(Application application) { final Context context = application.getContext(); // v1 has gzip compression // can be disabled by parameter application.getEncoderService().setEnabled(ContextUtils.getParameterAsBoolean(context, Constants.V1_COMPRESSION_PARAMETER, true)); Filter encoder = application.getEncoderService().createInboundFilter(context); encoder.setName("Response encoder"); encoder.setDescription("Allows Ontopia API call responses to be compressed"); // under compression, router Router router = new Router(context); router.setName("v1 main router"); encoder.setNext(router); router.attach("/topicmaps/{topicmap}", new TopicMapRouter(context)); return encoder; } };
/** * default constructor for RestAndJsonApplication */ public UmlgRestletApplication() { setStatusService(new ErrorStatusService()); getEncoderService().setEnabled(true); init(); }
@Override public Filter createOutboundFilter(Context context) { Encoder encoder = new Encoder(context, true, false, new EncoderService()); return encoder; }
/** * Allows filtering before its handling by the target Restlet. Does nothing * by default. * * @param request * The request to filter. * @param response * The response to filter. * @return The continuation status. */ @Override public int beforeHandle(Request request, Response response) { // Check if encoding of the request entity is needed if (isEncodingRequest() && getEncoderService().canEncode(request.getEntity())) { request.setEntity(encode(request.getClientInfo(), request.getEntity())); } return CONTINUE; }
@Override public Filter createOutboundFilter(Context context) { Encoder encoder = new Encoder(context, true, false, new EncoderService()); return encoder; }
/** * Allows filtering after its handling by the target Restlet. Does nothing * by default. * * @param request * The request to filter. * @param response * The response to filter. */ @Override public void afterHandle(Request request, Response response) { // Check if encoding of the response entity is needed if (isEncodingResponse() && getEncoderService().canEncode(response.getEntity())) { response.setEntity(encode(request.getClientInfo(), response.getEntity())); } }
@Override public Filter createOutboundFilter(Context context) { Encoder encoder = new Encoder(context, true, false, new EncoderService()); return encoder; }
@Override public Filter createOutboundFilter(Context context) { Encoder encoder = new Encoder(context, true, false, new EncoderService()); return encoder; }
metadataService, connegService)); this.services.add(new DecoderService()); this.services.add(new EncoderService(false)); this.services.add(new RangeService()); this.services.add(new ConnectorService());