package com.bocloud.ims.interfaces.resource;

import java.util.List;

import com.bocloud.cmp.model.IpInfoModel;
import com.bocloud.common.model.BocloudResult;
import com.bocloud.common.model.GridBean;
import com.bocloud.common.model.Pager;
import com.bocloud.common.model.RequestContext;
import com.bocloud.ims.entity.resource.IpPool;

public interface IpPoolService {

	/**
	 * 列表展示
	 *
	 * @param page
	 * @param rows
	 * @param params
	 * @param sorter
	 * @param simple
	 * @param condition
	 * @param user
	 * @return
	 */
	public BocloudResult<GridBean<IpPool>> list(Pager pager, RequestContext context);

	/**
	 * 创建
	 *
	 * @param params
	 * @param user
	 * @return
	 */
	public BocloudResult<IpPool> create(IpPool ipPool, RequestContext context);

	/**
	 * 修改
	 *
	 * @param params
	 * @param user
	 * @return
	 */
	public BocloudResult<IpPool> modify(IpPool ipPool, RequestContext context);

	/**
	 * 删除
	 *
	 * @param id
	 * @param user
	 * @return
	 */
	public BocloudResult remove(Long id, RequestContext context);

	/**
	 * 详情
	 *
	 * @param id
	 * @return
	 */
	public BocloudResult<IpPool> detail(Long id);
	
	
	BocloudResult<List<IpInfoModel>> ips(Long id, String cidr);

	BocloudResult listIpPoolByPoolGroupId(Integer page, Integer rows, String params, RequestContext context);

	public BocloudResult condition(String condition, RequestContext context);

}
