package com.liquidnet.service.merchant.util;

import com.liquidnet.service.base.PagedResult;
import com.liquidnet.service.merchant.dto.vo.MerchantFieldAppliesVo;
import com.liquidnet.service.merchant.dto.vo.MerchantFieldCheckersVo;
import com.liquidnet.service.merchant.dto.vo.MerchantFieldsVo;
import com.liquidnet.service.merchant.dto.vo.MerchantSponsorAppliesVo;
import com.mongodb.BasicDBObject;

import java.util.ArrayList;

public class ObjectUtil {

    private static final ArrayList<MerchantFieldAppliesVo> merchantFieldAppliesVoArrayList = new ArrayList<>();
    private static final ArrayList<MerchantFieldCheckersVo> merchantFieldCheckersVoArrayList = new ArrayList<>();

    private static final PagedResult<MerchantFieldsVo> merchantFieldsVoPagedResult = new PagedResult<>();

    private static final ArrayList<MerchantSponsorAppliesVo> merchantSponsorAppliesVoArrayList = new ArrayList<>();


    private static final BasicDBObject basicDBObject = new BasicDBObject();


    public static ArrayList<MerchantFieldAppliesVo> getMerchantFieldAppliesVoArrayList() {
        return (ArrayList<MerchantFieldAppliesVo>) merchantFieldAppliesVoArrayList.clone();
    }

    public static ArrayList<MerchantFieldCheckersVo> getMerchantFieldCheckersVoArrayList() {
        return (ArrayList<MerchantFieldCheckersVo>) merchantFieldCheckersVoArrayList.clone();
    }

    public static PagedResult<MerchantFieldsVo> getMerchantFieldsVoPagedResult() {
        return merchantFieldsVoPagedResult.clone();
    }

    public static ArrayList<MerchantSponsorAppliesVo> getMerchantSponsorAppliesVoArrayList() {
        return (ArrayList<MerchantSponsorAppliesVo>) merchantSponsorAppliesVoArrayList.clone();
    }

    public static BasicDBObject cloneBasicDBObject() {
        return (BasicDBObject) basicDBObject.clone();
    }
}
