package com.liquidnet.service.kylin.utils;

import com.liquidnet.service.base.PagedResult;
import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketVo;
import com.liquidnet.service.kylin.dto.vo.returns.KylinStationPerformanceVo;
import com.liquidnet.service.kylin.dto.vo.returns.KylinStationTicketVo;
import com.mongodb.client.model.WriteModel;
import org.bson.Document;

import java.util.ArrayList;
import java.util.List;

public class ObjectUtil {
    private static final ArrayList<KylinStationPerformanceVo> kylinStationPerformanceVoArrayList = new ArrayList<>();
    private static final ArrayList<KylinTicketVo> kylinTicketVoArrayList = new ArrayList<>();
    private static final ArrayList<KylinStationTicketVo> kylinStationTicketVoArrayList = new ArrayList<>();
    private static final ArrayList<WriteModel<Document>> writeModelDocumentArrayList = new ArrayList<>();

    private static final PagedResult<KylinStationPerformanceVo> kylinStationPerformanceVoPagedResult = new PagedResult<>();

    public static List<KylinStationPerformanceVo> getKylinStationPerformanceVoArrayList() {
        return (List<KylinStationPerformanceVo>) kylinStationPerformanceVoArrayList.clone();
    }

    public static List<KylinTicketVo> getKylinTicketVoArrayList() {
        return (List<KylinTicketVo>) kylinTicketVoArrayList.clone();
    }

    public static List<KylinStationTicketVo> getKylinStationTicketVoArrayList() {
        return (List<KylinStationTicketVo>) kylinStationTicketVoArrayList.clone();
    }

    public static List<WriteModel<Document>> getWriteModelDocumentArrayList() {
        return (List<WriteModel<Document>>) writeModelDocumentArrayList.clone();
    }

    public static PagedResult<KylinStationPerformanceVo> getKylinStationPerformanceVoPagedResult() {
        return kylinStationPerformanceVoPagedResult.clone();
    }
}
