All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.dounine.clouddisk360.parser.deserializer.BaseRequestInterceptor Maven / Gradle / Ivy

package com.dounine.clouddisk360.parser.deserializer;

import java.io.IOException;

import org.apache.http.HttpException;
import org.apache.http.HttpRequest;
import org.apache.http.HttpRequestInterceptor;
import org.apache.http.protocol.HttpContext;

import com.dounine.clouddisk360.exception.CloudDiskException;

public class BaseRequestInterceptor implements HttpRequestInterceptor {
	
	public void process(HttpRequest request, HttpContext context) throws HttpException, IOException {
		requestInit(request,context);
	}
	
	public void requestInit(HttpRequest request, HttpContext context)throws HttpException, IOException {
		request.addHeader(Const.ACCEPT_KEY, Const.ACCEPT_VAL);
		request.addHeader(Const.ACCEPT_ENCODING_KEY, Const.ACCEPT_ENCODING_VAL);
		request.addHeader(Const.ACCEPT_LANGUAGE_KEY, Const.ACCEPT_LANGUAGE_VAL);
		request.addHeader(Const.CONNECTION_KEY, Const.CONNECTION_VAL);
		request.addHeader(Const.CONTENT_TYPE_KEY, Const.CONTENT_TYPE_VAL);
		request.addHeader(Const.USER_AGENT_KEY, Const.USER_AGENT_VAL);
	}
	
	public void process(HttpRequest request, HttpContext context,boolean useHost) throws HttpException, IOException {
		requestInit(request,context);
		request.addHeader(Const.HOST_KEY, Const.HOST_VAL);
		String host = getRequestHost(context);
		request.addHeader(Const.REFERER_KEY, host+"/my/index");
		request.addHeader(Const.ORIGIN_KEY, host);
	}
	
	public String getRequestHostName(HttpContext context){
		if(null==context.getAttribute(BaseConst.REQUEST_HOST_NAME)){
			throw new CloudDiskException(MsgConst.HOST_VALUE_NOT_NULL);
		}else{
			return String.valueOf(context.getAttribute(BaseConst.REQUEST_HOST_NAME));
		}
	}
	
	public String getRequestHost(HttpContext context){
		if(null==context.getAttribute(BaseConst.REQUEST_HOST_NAME)){
			throw new CloudDiskException(MsgConst.HOST_VALUE_NOT_NULL);
		}else{
			return "http://"+String.valueOf(context.getAttribute(BaseConst.REQUEST_HOST_NAME));
		}
	}

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy