1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package io.netty.handler.codec.spdy;
17
18 import io.netty.buffer.ByteBuf;
19 import io.netty.buffer.ByteBufAllocator;
20 import io.netty.util.internal.PlatformDependent;
21
22 abstract class SpdyHeaderBlockEncoder {
23
24 static SpdyHeaderBlockEncoder newInstance(
25 SpdyVersion version, int compressionLevel, int windowBits, int memLevel) {
26
27 if (PlatformDependent.javaVersion() >= 7) {
28 return new SpdyHeaderBlockZlibEncoder(
29 version, compressionLevel);
30 } else {
31 return new SpdyHeaderBlockJZlibEncoder(
32 version, compressionLevel, windowBits, memLevel);
33 }
34 }
35
36 abstract ByteBuf encode(ByteBufAllocator alloc, SpdyHeadersFrame frame) throws Exception;
37 abstract void end();
38 }