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.message;
29
30 import org.apache.http.Header;
31 import org.apache.http.HeaderIterator;
32 import org.apache.http.HttpMessage;
33 import org.apache.http.annotation.NotThreadSafe;
34 import org.apache.http.params.BasicHttpParams;
35 import org.apache.http.params.HttpParams;
36 import org.apache.http.util.Args;
37
38
39
40
41
42
43 @SuppressWarnings("deprecation")
44 @NotThreadSafe
45 public abstract class AbstractHttpMessage implements HttpMessage {
46
47 protected HeaderGroup headergroup;
48
49 @Deprecated
50 protected HttpParams params;
51
52
53
54
55 @Deprecated
56 protected AbstractHttpMessage(final HttpParams params) {
57 super();
58 this.headergroup = new HeaderGroup();
59 this.params = params;
60 }
61
62 protected AbstractHttpMessage() {
63 this(null);
64 }
65
66
67 public boolean containsHeader(final String name) {
68 return this.headergroup.containsHeader(name);
69 }
70
71
72 public Header[] getHeaders(final String name) {
73 return this.headergroup.getHeaders(name);
74 }
75
76
77 public Header getFirstHeader(final String name) {
78 return this.headergroup.getFirstHeader(name);
79 }
80
81
82 public Header getLastHeader(final String name) {
83 return this.headergroup.getLastHeader(name);
84 }
85
86
87 public Header[] getAllHeaders() {
88 return this.headergroup.getAllHeaders();
89 }
90
91
92 public void addHeader(final Header header) {
93 this.headergroup.addHeader(header);
94 }
95
96
97 public void addHeader(final String name, final String value) {
98 Args.notNull(name, "Header name");
99 this.headergroup.addHeader(new BasicHeader(name, value));
100 }
101
102
103 public void setHeader(final Header header) {
104 this.headergroup.updateHeader(header);
105 }
106
107
108 public void setHeader(final String name, final String value) {
109 Args.notNull(name, "Header name");
110 this.headergroup.updateHeader(new BasicHeader(name, value));
111 }
112
113
114 public void setHeaders(final Header[] headers) {
115 this.headergroup.setHeaders(headers);
116 }
117
118
119 public void removeHeader(final Header header) {
120 this.headergroup.removeHeader(header);
121 }
122
123
124 public void removeHeaders(final String name) {
125 if (name == null) {
126 return;
127 }
128 for (final HeaderIterator i = this.headergroup.iterator(); i.hasNext(); ) {
129 final Header header = i.nextHeader();
130 if (name.equalsIgnoreCase(header.getName())) {
131 i.remove();
132 }
133 }
134 }
135
136
137 public HeaderIterator headerIterator() {
138 return this.headergroup.iterator();
139 }
140
141
142 public HeaderIterator headerIterator(final String name) {
143 return this.headergroup.iterator(name);
144 }
145
146
147
148
149 @Deprecated
150 public HttpParams getParams() {
151 if (this.params == null) {
152 this.params = new BasicHttpParams();
153 }
154 return this.params;
155 }
156
157
158
159
160 @Deprecated
161 public void setParams(final HttpParams params) {
162 this.params = Args.notNull(params, "HTTP parameters");
163 }
164 }