GpsRealDataController.java 1.27 KB
package com.bsth.controller;

import com.bsth.client.GpsBeforeBuffer;
import com.bsth.entity.GpsEntity;
import com.bsth.util.ConfigUtil;

import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

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

import javax.servlet.http.HttpServletRequest;

/**
 * Created by panzhao on 2017/5/12.
 */
@RestController
@RequestMapping("realGps")
public class GpsRealDataController {
	
	private static List<String> access = new ArrayList<>();
	
	static {
		String accessWhite = ConfigUtil.get("access.white");
		if (StringUtils.isNotBlank(accessWhite)) {
			access = Arrays.asList(accessWhite.split(","));
		}
	}

	static Logger log = LoggerFactory.getLogger(GpsRealDataController.class);
    @RequestMapping("/all")
    public List<GpsEntity> all(HttpServletRequest request){
    	String remoteHost = request.getRemoteHost();
    	if (access.contains(remoteHost)) {
    		return GpsBeforeBuffer.pollAll();
    	} else {
    		log.error("异常的消费IP:" + remoteHost);
    		return new ArrayList<>();
    	}
    }
}