def restore_from_cluster_snapshot(options = {})
cluster_identifier = options[:cluster_identifier]
snapshot_identifier = options[:snapshot_identifier]
snapshot_cluster_identifier = options[:snapshot_cluster_identifier]
port = options[:port]
availability_zone = options[:availability_zone]
allow_version_upgrade = options[:allow_version_upgrade]
cluster_subnet_group_name = options[:cluster_subnet_group_name]
publicly_accessible = options[:publicly_accessible]
owner_account = options[:owner_account]
path = "/"
params = {
:headers => {},
:path => path,
:method => :put,
:query => {},
:parser => Fog::Parsers::Redshift::AWS::Cluster.new
}
params[:query]['Action'] = 'RestoreFromClusterSnapshot'
params[:query]['ClusterIdentifier'] = cluster_identifier if cluster_identifier
params[:query]['SnapshotIdentifier'] = snapshot_identifier if snapshot_identifier
params[:query]['SnapshotClusterIdentifier'] = snapshot_cluster_identifier if snapshot_cluster_identifier
params[:query]['Port'] = port if port
params[:query]['AvailabilityZone'] = availability_zone if availability_zone
params[:query]['AllowVersionUpgrade'] = allow_version_upgrade if allow_version_upgrade
params[:query]['ClusterSubnetGroupName'] = cluster_subnet_group_name if cluster_subnet_group_name
params[:query]['PubliclyAccessible'] = publicly_accessible if publicly_accessible
params[:query]['OwnerAccount'] = owner_account if owner_account
request(params)
end