Example usage for org.springframework.amqp.support.postprocessor GZipPostProcessor setLevel

List of usage examples for org.springframework.amqp.support.postprocessor GZipPostProcessor setLevel

Introduction

In this page you can find the example usage for org.springframework.amqp.support.postprocessor GZipPostProcessor setLevel.

Prototype

public void setLevel(int level) 

Source Link

Document

Set the deflater compression level.

Usage

From source file:org.springframework.amqp.rabbit.core.BatchingRabbitTemplateTests.java

@Test
public void testSimpleBatchGZippedConfiguredUnzipper() throws Exception {
    BatchingStrategy batchingStrategy = new SimpleBatchingStrategy(2, Integer.MAX_VALUE, 30000);
    BatchingRabbitTemplate template = new BatchingRabbitTemplate(batchingStrategy, this.scheduler);
    template.setConnectionFactory(this.connectionFactory);
    GZipPostProcessor gZipPostProcessor = new GZipPostProcessor();
    gZipPostProcessor.setLevel(Deflater.BEST_COMPRESSION);
    assertEquals(Deflater.BEST_COMPRESSION, getStreamLevel(gZipPostProcessor));
    template.setBeforePublishPostProcessors(gZipPostProcessor);
    template.setAfterReceivePostProcessors(new GUnzipPostProcessor());
    MessageProperties props = new MessageProperties();
    Message message = new Message("foo".getBytes(), props);
    template.send("", ROUTE, message);
    message = new Message("bar".getBytes(), props);
    template.send("", ROUTE, message);
    message = receive(template);//from   www. j  a va2s .c  o m
    assertNull(message.getMessageProperties().getContentEncoding());
    assertEquals("\u0000\u0000\u0000\u0003foo\u0000\u0000\u0000\u0003bar", new String(message.getBody()));
}