1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 package org.apache.http.impl.io;
29
30 import org.apache.http.HttpRequest;
31 import org.apache.http.annotation.ThreadingBehavior;
32 import org.apache.http.annotation.Contract;
33 import org.apache.http.io.HttpMessageWriter;
34 import org.apache.http.io.HttpMessageWriterFactory;
35 import org.apache.http.io.SessionOutputBuffer;
36 import org.apache.http.message.BasicLineFormatter;
37 import org.apache.http.message.LineFormatter;
38
39
40
41
42
43
44 @Contract(threading = ThreadingBehavior.IMMUTABLE_CONDITIONAL)
45 public class DefaultHttpRequestWriterFactory implements HttpMessageWriterFactory<HttpRequest> {
46
47 public static final DefaultHttpRequestWriterFactoryory.html#DefaultHttpRequestWriterFactory">DefaultHttpRequestWriterFactory INSTANCE = new DefaultHttpRequestWriterFactory();
48
49 private final LineFormatter lineFormatter;
50
51 public DefaultHttpRequestWriterFactory(final LineFormatter lineFormatter) {
52 super();
53 this.lineFormatter = lineFormatter != null ? lineFormatter : BasicLineFormatter.INSTANCE;
54 }
55
56 public DefaultHttpRequestWriterFactory() {
57 this(null);
58 }
59
60 @Override
61 public HttpMessageWriter<HttpRequest> create(final SessionOutputBuffer buffer) {
62 return new DefaultHttpRequestWriter(buffer, lineFormatter);
63 }
64
65 }