~massive-dynamics-staff/aurora-runescape-server-emulator/trunk

« back to all changes in this revision

Viewing changes to Aurora/src/main/java/biz/massivedynamics/aurora/runescape/network/netty/updateserver/factories/HTTPPipelineFactory.java

  • Committer: Cruz Bishop
  • Date: 2012-02-15 11:36:10 UTC
  • Revision ID: cruzjbishop@gmail.com-20120215113610-9ot75b74ffkdunvy
Refactor

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 * The MIT License
3
 
 *
4
 
 * Copyright 2012 Massive Dynamics.
5
 
 *
6
 
 * Permission is hereby granted, free of charge, to any person obtaining a copy
7
 
 * of this software and associated documentation files (the "Software"), to deal
8
 
 * in the Software without restriction, including without limitation the rights
9
 
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
 
 * copies of the Software, and to permit persons to whom the Software is
11
 
 * furnished to do so, subject to the following conditions:
12
 
 *
13
 
 * The above copyright notice and this permission notice shall be included in
14
 
 * all copies or substantial portions of the Software.
15
 
 *
16
 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
 
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
 
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
 
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
 
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
 
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
 
 * THE SOFTWARE.
23
 
 */
24
 
package biz.massivedynamics.aurora.runescape.network.netty.updateserver.factories;
25
 
 
26
 
import biz.massivedynamics.aurora.runescape.network.netty.updateserver.handlers.UpdateServerHandler;
27
 
import org.jboss.netty.channel.ChannelPipeline;
28
 
import org.jboss.netty.channel.ChannelPipelineFactory;
29
 
import org.jboss.netty.channel.Channels;
30
 
import org.jboss.netty.handler.codec.http.HttpChunkAggregator;
31
 
import org.jboss.netty.handler.codec.http.HttpRequestDecoder;
32
 
import org.jboss.netty.handler.codec.http.HttpResponseEncoder;
33
 
 
34
 
/**
35
 
 * The HTTP pipeline factory
36
 
 *
37
 
 * @author Cruz Bishop
38
 
 * @version 1.0.0.0
39
 
 */
40
 
public class HTTPPipelineFactory implements ChannelPipelineFactory {
41
 
 
42
 
    /**
43
 
     * Gets the channel pipeline
44
 
     * 
45
 
     * @return The channel pipeline
46
 
     * @throws Exception Something went wrong
47
 
     */
48
 
    public ChannelPipeline getPipeline() throws Exception {
49
 
        //Get a generic pipeline
50
 
        ChannelPipeline pipeline = Channels.pipeline();
51
 
 
52
 
        //Set the decoder
53
 
        pipeline.addLast("decoder", new HttpRequestDecoder());
54
 
        //And the chunker
55
 
        pipeline.addLast("chunker", new HttpChunkAggregator(8192));
56
 
 
57
 
        //Set the encoder
58
 
        pipeline.addLast("encoder", new HttpResponseEncoder());
59
 
        
60
 
        //And the handler
61
 
        pipeline.addLast("handler", new UpdateServerHandler());
62
 
        
63
 
        return pipeline;
64
 
    }
65
 
    
66
 
}