99import org .elasticsearch .common .logging .Loggers ;
1010import org .elasticsearch .common .settings .Settings ;
1111import org .elasticsearch .env .Environment ;
12- import org .elasticsearch .http . HttpChannel ;
13- import org .elasticsearch .http . HttpRequest ;
12+ import org .elasticsearch .rest . RestChannel ;
13+ import org .elasticsearch .rest . RestRequest ;
1414import org .elasticsearch .http .HttpServer ;
1515import org .elasticsearch .http .HttpServerTransport ;
1616import org .elasticsearch .node .service .NodeService ;
1717import org .elasticsearch .rest .BytesRestResponse ;
1818import org .elasticsearch .rest .RestController ;
1919import org .elasticsearch .rest .RestRequest ;
2020import org .elasticsearch .rest .RestRequest .Method ;
21+ import org .elasticsearch .indices .breaker .CircuitBreakerService ;
2122
2223import java .io .IOException ;
2324import java .net .InetAddress ;
@@ -52,8 +53,9 @@ public class HttpBasicServer extends HttpServer {
5253
5354 @ Inject public HttpBasicServer (Settings settings , Environment environment , HttpServerTransport transport ,
5455 RestController restController ,
55- NodeService nodeService ) {
56- super (settings , environment , transport , restController , nodeService );
56+ NodeService nodeService ,
57+ CircuitBreakerService circuitBrakerService ) {
58+ super (settings , environment , transport , restController , nodeService , circuitBrakerService );
5759
5860 this .user = settings .get ("http.basic.user" , "admin" );
5961 this .password = settings .get ("http.basic.password" , "admin_pw" );
@@ -75,7 +77,7 @@ public class HttpBasicServer extends HttpServer {
7577 }
7678
7779 @ Override
78- public void internalDispatchRequest (final HttpRequest request , final HttpChannel channel ) {
80+ public void internalDispatchRequest (final RestRequest request , final RestChannel channel ) {
7981 if (log ) {
8082 logRequest (request );
8183 }
@@ -101,7 +103,7 @@ private boolean isHealthCheckMethod(final RestRequest.Method method){
101103
102104 // @param an http Request
103105 // @returns True iff we check the root path and is a method allowed for healthCheck
104- private boolean healthCheck (final HttpRequest request ) {
106+ private boolean healthCheck (final RestRequest request ) {
105107 return request .path ().equals ("/" ) && isHealthCheckMethod (request .method ());
106108 }
107109
@@ -111,7 +113,7 @@ private boolean healthCheck(final HttpRequest request) {
111113 * @param request
112114 * @return true if the request is authorized
113115 */
114- private boolean authorized (final HttpRequest request ) {
116+ private boolean authorized (final RestRequest request ) {
115117 return allowOptionsForCORS (request ) ||
116118 authBasic (request ) || ipAuthorized (request );
117119 }
@@ -122,7 +124,7 @@ private boolean authorized(final HttpRequest request) {
122124 * @param request
123125 * @return true iff the client is authorized by ip
124126 */
125- private boolean ipAuthorized (final HttpRequest request ) {
127+ private boolean ipAuthorized (final RestRequest request ) {
126128 boolean ipAuthorized = false ;
127129 String xForwardedFor = request .header (xForwardHeader );
128130 Client client = new Client (getAddress (request ),
@@ -142,7 +144,7 @@ private boolean ipAuthorized(final HttpRequest request) {
142144 return ipAuthorized ;
143145 }
144146
145- public String getDecoded (HttpRequest request ) {
147+ public String getDecoded (RestRequest request ) {
146148 String authHeader = request .header ("Authorization" );
147149 if (authHeader == null )
148150 return "" ;
@@ -157,7 +159,7 @@ public String getDecoded(HttpRequest request) {
157159 }
158160 }
159161
160- private boolean authBasic (final HttpRequest request ) {
162+ private boolean authBasic (final RestRequest request ) {
161163 String decoded = "" ;
162164 try {
163165 decoded = getDecoded (request );
@@ -181,7 +183,7 @@ private boolean authBasic(final HttpRequest request) {
181183 * @param request
182184 * @return the IP adress of the direct client
183185 */
184- private InetAddress getAddress (HttpRequest request ) {
186+ private InetAddress getAddress (RestRequest request ) {
185187 return ((InetSocketAddress ) request .getRemoteAddress ()).getAddress ();
186188 }
187189
@@ -191,7 +193,7 @@ private InetAddress getAddress(HttpRequest request) {
191193 * specification mandates that browsers “preflight” the request, soliciting
192194 * supported methods from the server with an HTTP OPTIONS request
193195 */
194- private boolean allowOptionsForCORS (HttpRequest request ) {
196+ private boolean allowOptionsForCORS (RestRequest request ) {
195197 // in elasticsearch.yml set
196198 // http.cors.allow-headers: "X-Requested-With, Content-Type, Content-Length, Authorization"
197199 if (request .method () == Method .OPTIONS ) {
@@ -202,7 +204,7 @@ private boolean allowOptionsForCORS(HttpRequest request) {
202204 return false ;
203205 }
204206
205- public void logRequest (final HttpRequest request ) {
207+ public void logRequest (final RestRequest request ) {
206208 String addr = getAddress (request ).getHostAddress ();
207209 String t = "Authorization:{}, type: {}, Host:{}, Path:{}, {}:{}, Request-IP:{}, " +
208210 "Client-IP:{}, X-Client-IP{}" ;
@@ -218,7 +220,7 @@ public void logRequest(final HttpRequest request) {
218220 request .header ("Client-IP" ));
219221 }
220222
221- public void logUnAuthorizedRequest (final HttpRequest request ) {
223+ public void logUnAuthorizedRequest (final RestRequest request ) {
222224 String addr = getAddress (request ).getHostAddress ();
223225 String t = "UNAUTHORIZED type:{}, address:{}, path:{}, request:{},"
224226 + "content:{}, credentials:{}" ;
0 commit comments