easypay.network1/3

easypay.network1/3

package io.github.xiong_it.easypay.network;



import okhttp3.ResponseBody;

import retrofit2.Call;

import retrofit2.http.GET;

import retrofit2.http.POST;

import retrofit2.http.Query;



/**

* @author 注释者:王教成

* @version 注释版:1.0.0

* 预支付信息服务接口,翻新请求示例

*/

public interface PrePayInfoService {

// TODO 需要和服务器开发人员协商接口形式,需要为:微信、支付宝、银联等,预支付信息走一个接口,通过pay_way或者其他字段进行区分

   // 以下信息除商品详情介绍(goods_introduction)外,均为必须上传字段,key值由开发者和服务器人员协商自行定义

   @GET("?") // TODO 添加实际接口路径

   Call<ResponseBody> getPrePayInfo(@Query("pay_way")String payWay, @Query("price") String GoddsPrice, @Query("goods_name") String goodsName, @Query(("goods_introduction")) String goodsIntroduce);//获取预支付信息

   @POST("?") // TODO 添加实际接口路径

   Call<ResponseBody> postPrePayInfo(@Query("pay_way")String payWay, @Query("price") String GoddsPrice, @Query("goods_name") String goodsName, @Query(("goods_introduction")) String goodsIntroduce);//邮寄预支付信息

}

package io.github.xiong_it.easypay.network;



import io.github.xiong_it.easypay.PayParams;



/**

* @author 注释者:王教成

* @version 注释版:1.0.0

* 网络客户端接口,网络访问接口

*/

public interface NetworkClientInterf {

/**

    * 回调接口

    * @param <R> 泛型参数

    */

   interface CallBack<R> {

void onSuccess(R result);//成功回调

       void onFailure();//失败回调

   }//构造器

   void get(PayParams payParams, CallBack c);//获取

   void post(PayParams payParams, CallBack c);//邮寄

}package io.github.xiong_it.easypay.network;



import io.github.xiong_it.easypay.enums.NetworkClientType;



/**

* @author 注释者:王教成

* @version 注释版:1.0.0

* 网络客户端工厂,网络访问接口简单工厂

*/

public class NetworkClientFactory {

/**

    * 创建网络客户端接口

    * @param networkClientType 网络客户端类型

    * @return 返回网络客户端接口

    */

   public static NetworkClientInterf newClient(NetworkClientType networkClientType) {

switch (networkClientType) {

case HttpUrlConnetion:

return new HttpUrlConnectionClient();

           case Volley:

return new VolleyClient();

           case Retrofit:

return new RetrofitClient();

           case OkHttp:

return new OkHttpClientImpl();

           default:

return new HttpUrlConnectionClient();

       }

}

}

easypay.network1/3