package com.bocloud.cmp.model;

import com.bocloud.cmp.model.database.DbFlavorModel;
import com.bocloud.cmp.model.database.DbInstanceModel;
import com.bocloud.cmp.model.database.DbInstanceParameterGroupModel;
import lombok.Data;

import java.util.List;

/**
 * 阿里云同步model
 *
 * @author wangyu
 * @version 1.0
 * @since 2018年1月31日
 */
@Data
public class AliyunSyncModel {

	private List<ServerModel> serverModels;
	private List<ImageModel> imageModels;
	private List<FlavorModel> flavorModels;
	private List<VolumeModel> volumeModels;
	private List<SnapshotModel> snapshotModels;
	private List<SecurityGroupModel> securityGroupModels;
	private List<RegionModel> regionModels;
	private List<VpcModel> vpcModels;
	private List<KeypairModel> keypairModels;
	private List<SubnetModel> subnetModels;
	private List<ServerTemplateModel> serverTemplateModel;
	private List<ResourceGroupModel> resourceGroupModels;
	private List<NetworkInterfaceModel> networkInterfaceModels;
	private List<RouterModel> routerModels;
	private List<RouteTableModel> routeTableModels;
	private List<ElasticIpModel> elasticIpModels;
	private List<NatGatewayModel> natGatewayModels;
	private List<LbModel> lbModels;
	private List<LbListenerModel> listenerModels;
	private List<LbPoolModel> poolModels;
	private List<LbMemberModel> memberModels;
	private List<AccessControlModel> acls;
	private List<AliCostModel> costModels;
	private List<DbInstanceModel> dbInstanceModels;
	private List<DbFlavorModel> dbFlavorModel;
	private List<DbInstanceParameterGroupModel> dbInstanceParameterGroupModel;

	public AliyunSyncModel() {
		super();
	}

	/***
	 *
	 * @param serverModels
	 * @param imageModels
	 * @param flavorModels
	 * @param volumeModels
	 * @param snapshotModels
	 * @param securityGroupModels
	 * @param regionModels
	 * @param vpcModels
	 * @param networkInterfaceModels
	 * @param routerModels
	 * @param routeTableModels
	 * @param elasticIpModels
	 * @param natGatewayModels
	 * @param lbModels
	 */
	public AliyunSyncModel(List<ServerModel> serverModels, List<ImageModel> imageModels, List<FlavorModel> flavorModels,
			List<VolumeModel> volumeModels, List<SnapshotModel> snapshotModels,
			List<SecurityGroupModel> securityGroupModels, List<RegionModel> regionModels, List<VpcModel> vpcModels,
			List<NetworkInterfaceModel> networkInterfaceModels, List<RouterModel> routerModels,
			List<RouteTableModel> routeTableModels, List<ElasticIpModel> elasticIpModels,
			List<InternetGatewayModel> natGatewayModels, List<LbModel> lbModels) {
		super();
		this.serverModels = serverModels;
		this.imageModels = imageModels;
		this.flavorModels = flavorModels;
		this.volumeModels = volumeModels;
		this.snapshotModels = snapshotModels;
		this.securityGroupModels = securityGroupModels;
		this.regionModels = regionModels;
		this.vpcModels = vpcModels;
		this.networkInterfaceModels = networkInterfaceModels;
		this.routerModels = routerModels;
		this.routeTableModels = routeTableModels;
		this.elasticIpModels = elasticIpModels;

	}

}
