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

com.hxuanyu.network.service.HttpService Maven / Gradle / Ivy

The newest version!
package com.hxuanyu.network.service;

import com.hxuanyu.common.message.Msg;
import org.apache.http.HttpResponse;

import java.util.Map;

/**
 * 网络请求服务,用于发起常规的Http请求,包括同步异步的方式,请求任务由线程池进行管理。
 *
 * @author hanxuanyu
 * @version 1.0
 */
@SuppressWarnings("unused")
public interface HttpService {

    /**
     * 获取原始HttpEntity对象
     *
     * @param url 请求地址
     * @return 统一结果报文
     */
    Msg doGetWithResponse(String url);



    /**
     * 发送get请求;不带请求头和请求参数
     *
     * @param url 请求地址
     * @return 统一请求报文
     */
    Msg doGet(String url);


    /**
     * 异步Get请求
     *
     * @param url      请求地址
     * @param listener 异步请求结果监听
     */
    void doGetSync(String url, NetWorkListener listener);

    /**
     * 异步Get请求
     *
     * @param url      请求地址
     * @param listener 异步请求结果监听
     */
    void doGetSyncWithResponse(String url, NetWorkListener listener);

    /**
     * 发送get请求;带请求参数
     *
     * @param url    请求地址
     * @param params 请求参数集合
     * @return 全局报文
     */
    Msg doGet(String url, Map params);


    /**
     * 发送get请求;带请求参数
     *
     * @param url    请求地址
     * @param params 请求参数集合
     * @return 全局报文
     */
    Msg doGetWithResponse(String url, Map params);

    /**
     * 异步Get请求
     *
     * @param url      请求地址
     * @param params   请求参数
     * @param listener 异步请求结果监听
     */
    void doGetSync(String url, Map params, NetWorkListener listener);

    /**
     * 异步Get请求
     *
     * @param url      请求地址
     * @param params   请求参数
     * @param listener 异步请求结果监听
     */
    void doGetSyncWithResponse(String url, Map params, NetWorkListener listener);

    /**
     * 发送get请求;带请求头和请求参数
     *
     * @param url     请求地址
     * @param headers 请求头集合
     * @param params  请求参数集合
     * @return 全局报文
     */
    Msg doGet(String url, Map headers, Map params);

    /**
     * 发送get请求;带请求头和请求参数
     *
     * @param url     请求地址
     * @param headers 请求头集合
     * @param params  请求参数集合
     * @return 全局报文
     */
    Msg doGetWithResponse(String url, Map headers, Map params);

    /**
     * 异步Get请求
     *
     * @param url      请求地址
     * @param headers  请求头
     * @param params   请求体
     * @param listener 异步结果监听器
     */
    void doGetSync(String url, Map headers, Map params, NetWorkListener listener);

    /**
     * 异步Get请求
     *
     * @param url      请求地址
     * @param headers  请求头
     * @param params   请求体
     * @param listener 异步结果监听器
     */
    void doGetSyncWithResponse(String url, Map headers, Map params, NetWorkListener listener);

    /**
     * 发送post请求;不带请求头和请求参数
     *
     * @param url 请求地址
     * @return 统一报文
     */
    Msg doPost(String url);

    /**
     * 发送post请求;不带请求头和请求参数
     *
     * @param url 请求地址
     * @return 统一报文
     */
    Msg doPostWithResponse(String url);


    /**
     * 异步Post请求
     *
     * @param url      请求地址
     * @param listener 请求参数
     */
    void doPostSync(String url, NetWorkListener listener);

    /**
     * 异步Post请求
     *
     * @param url      请求地址
     * @param listener 请求参数
     */
    void doPostSyncWithResponse(String url, NetWorkListener listener);

    /**
     * 同步Post请求
     *
     * @param url    请求地址
     * @param params 请求参数
     * @return 统一消息体
     */
    Msg doPost(String url, Map params);


    /**
     * 同步Post请求
     *
     * @param url    请求地址
     * @param params 请求参数
     * @return 统一消息体
     */
    Msg doPostWithResponse(String url, Map params);

    /**
     * 异步Post请求
     *
     * @param url      请求地址
     * @param params   请求参数
     * @param listener 异步请求结果监听
     */
    void doPostSync(String url, Map params, NetWorkListener listener);

    /**
     * 异步Post请求
     *
     * @param url      请求地址
     * @param params   请求参数
     * @param listener 异步请求结果监听
     */
    void doPostSyncWithResponse(String url, Map params, NetWorkListener listener);

    /**
     * 发送post请求;带请求头和请求参数
     *
     * @param url     请求地址
     * @param headers 请求头集合
     * @param params  请求参数集合
     * @return 统一返回报文
     */
    Msg doPost(String url, Map headers, Map params);

    /**
     * 发送post请求;带请求头和请求参数
     *
     * @param url     请求地址
     * @param headers 请求头集合
     * @param params  请求参数集合
     * @return 统一返回报文
     */
    Msg doPostWithResponse(String url, Map headers, Map params);


    /**
     * 异步Post请求
     *
     * @param url      请求地址
     * @param headers  请求头
     * @param params   请求参数
     * @param listener 异步请求结果监听
     */
    void doPostSync(String url, Map headers, Map params, NetWorkListener listener);

    /**
     * 异步Post请求
     *
     * @param url      请求地址
     * @param headers  请求头
     * @param params   请求参数
     * @param listener 异步请求结果监听
     */
    void doPostSyncWithResponse(String url, Map headers, Map params, NetWorkListener listener);

    /**
     * 发送put请求;不带请求参数
     *
     * @param url 请求地址
     * @return 统一消息返回报文
     */
    Msg doPut(String url);


    /**
     * 发送put请求;不带请求参数
     *
     * @param url 请求地址
     * @return 统一消息返回报文
     */
    Msg doPutWithResponse(String url);

    /**
     * 发送put请求;带请求参数
     *
     * @param url    请求地址
     * @param params 请求参数
     * @return 统一消息报文
     */
    Msg doPut(String url, Map params);

    /**
     * 发送put请求;带请求参数
     *
     * @param url    请求地址
     * @param params 请求参数
     * @return 统一消息报文
     */
    Msg doPutWithResponse(String url, Map params);

    /**
     * 发送delete请求;不带请求参数
     *
     * @param url 请求地址
     * @return 统一返回报文
     */
    Msg doDelete(String url);

    /**
     * 发送delete请求;不带请求参数
     *
     * @param url 请求地址
     * @return 统一返回报文
     */
    Msg doDeleteWithResponse(String url);

    /**
     * 发送delete请求;带请求参数
     *
     * @param url    请求地址
     * @param params 请求参数
     * @return 统一返回报文
     */
    Msg doDelete(String url, Map params);


    /**
     * 发送delete请求;带请求参数
     *
     * @param url    请求地址
     * @param params 请求参数
     * @return 统一返回报文
     */
    Msg doDeleteWithResponse(String url, Map params);

    interface NetWorkListener {
        /**
         * 网络请求成功后调用
         *
         * @param msg 统一返回消息
         */
        void onSuccess(Msg msg);

        /**
         * 网络请求失败后调用
         *
         * @param msg 统一返回消息
         */
        void onFailed(Msg msg);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy