package com.bocloud.ims.interfaces.resource;

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.CloudServer;
import com.bocloud.ims.entity.resource.NatGatewaySnatRule;
import com.bocloud.ims.entity.resource.Subnet;

import java.util.List;

public interface NatGatewaySnatRuleService {

	BocloudResult<GridBean<NatGatewaySnatRule>> list(Pager pager, RequestContext context);

	BocloudResult create(NatGatewaySnatRule snatRule, RequestContext context);

	BocloudResult remove(Long id, RequestContext context);

	BocloudResult modify(NatGatewaySnatRule snatRule, RequestContext context);

	BocloudResult<NatGatewaySnatRule> detail(Long id);

	BocloudResult<List<Subnet>> listSubnet(String params);

	BocloudResult<List<CloudServer>> listEcs(String params);

}
