package org.cs.util;

import org.apache.commons.lang.StringUtils;
import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;

/**
 * 版本控制工具类
 * @author xinglin_chen
 *
 */
public class VersionUtil {
	public static Logger logger = LogManager.getLogger(VersionUtil.class);

	/**
	 * 比较两个版本
	 * @param client 客户端的版本
	 * @param server 服务器的版本
	 * @return client<server return true otherwise return false 
	 */
	public static boolean compareV(String client,String server) {
		String[] split = client.split("\\.");
		int i =0;
		for(String ssv:server.split("\\.")){
			if(split.length==i){
				//分割对比 全部相等后，服务器版本号还有值 则证明服务器版本号高 返回版本信息
				
				return true;
			}
			String scv = split[i];
			i = i+1;
			if(ssv!=null&&ssv.length()>0&&scv!=null&&scv.length()>0){
				if(StringUtils.isNumeric(ssv)&&StringUtils.isNumeric(scv)){
					int isv = Integer.parseInt(ssv);
					int icv = Integer.parseInt(scv);
					if(isv-icv>0){
						return true;
					}else if(isv-icv==0){
						//比较下一个
						continue;
					}else{
						return false;
					}
				}else{
					return false;
				}
			}else{
				return false;
			}
		}
		return false;
	}
}
