过滤县级以下目的地

来源:互联网 发布:02795522网络诈骗电话 编辑:程序博客网 时间:2024/05/01 04:38

/**
     * 过滤县级以下目的地
     * @author wxliyong
     * @date 2015-12-3 下午7:27:32
     */
    private void filterDestList(RopTripDestAutoCompleteResponse data) {
        List<RopTripDestV200> destList = data.getDest();
        List<RopTripDestV200> tempDestList = new ArrayList<RopTripDestV200>();
        for(RopTripDestV200 ropTripDestV200 : destList) {
            String dest_id = ropTripDestV200.getDestId();
            if(!DestIdFilter.getInstance().filter(dest_id)) {
                tempDestList.add(ropTripDestV200);
            }
        }
        data.setDest(tempDestList);
    }


package com.lvtu.service.api.utils;


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;

import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Logger;

/**
 * @Title: DestIdFilter.java
 * @Package com.lvtu.service.api.utils
 * @date 2015-12-3 下午6:31:44
 * @version V1.0.0
 */
public class DestIdFilter {
    
    private static Logger logger = Logger.getLogger(DestIdFilter.class);
    
    private static final String FILE_NAME = "/dest_data_filter.txt";
    
    private static DestIdFilter instance;
    private List<String> list = new ArrayList<String>();
    
    private DestIdFilter() {
        init();
    }
    
    private void init() {
        BufferedReader reader = null;
        try {
            reader = new BufferedReader(new InputStreamReader(DestIdFilter.class.getClassLoader().getResourceAsStream(FILE_NAME), "UTF-8"));
            String destId = reader.readLine();
            do {
                list.add(destId.trim());
                destId = reader.readLine();
            } while(StringUtils.isNotBlank(destId));
        } catch (UnsupportedEncodingException e) {
            logger.error(e);
        } catch (IOException e) {
            logger.error(e);
        } finally {
            if(reader != null) {
                try {
                    reader.close();
                } catch (IOException e) {
                    logger.error(e);
                }
            }
        }
    }

    public static DestIdFilter getInstance() {
        if(instance == null) {
            synchronized (DestIdFilter.class) {
                if(instance == null) {
                    instance = new DestIdFilter();
                }
            }
        }
        return instance;
    }
    
    /**
     * 检查目的地ID是否需要过滤掉
     * @date 2015-12-3 下午7:03:15
     * @param 目的地ID
     * @return true-需要过滤; false-不需要过滤
     */
    public boolean filter(String destId) {
        if(list.contains(destId)) {
            return true;
        }
        return false;
    }
}

0 0
原创粉丝点击