using OpenDBDiff.Schema.Model;
using System;
namespace OpenDBDiff.Schema.SQLServer.Generates.Options
{
public class SqlOption : IOption
{
public SqlOption()
{
Defaults = new SqlOptionDefault();
Ignore = new SqlOptionIgnore(true);
Script = new SqlOptionScript();
Filters = new SqlOptionFilter();
Comparison = new SqlOptionComparison();
}
public SqlOption(Boolean defaultFilter)
{
Defaults = new SqlOptionDefault();
Ignore = new SqlOptionIgnore(defaultFilter);
Script = new SqlOptionScript();
Filters = new SqlOptionFilter();
Comparison = new SqlOptionComparison();
}
public SqlOption(IOption option)
{
Defaults = new SqlOptionDefault(option.Defaults);
Ignore = new SqlOptionIgnore(option.Ignore);
Script = new SqlOptionScript(option.Script);
Filters = new SqlOptionFilter(option.Filters);
Comparison = new SqlOptionComparison(option.Comparison);
}
public SqlOptionComparison Comparison { get; set; }
public SqlOptionFilter Filters { get; set; }
///
/// Gets or sets the option filter.
///
/// The option filter.
public SqlOptionIgnore Ignore { get; set; }
///
/// Gets or sets the option default.
///
/// The option default.
public SqlOptionDefault Defaults { get; set; }
public SqlOptionScript Script { get; set; }
IOptionFilter IOption.Filters { get { return Filters; } }
IOptionsContainer IOption.Defaults { get { return Defaults; } }
IOptionsContainer IOption.Ignore { get { return Ignore; } }
IOptionsContainer IOption.Script { get { return Script; } }
IOptionComparison IOption.Comparison { get { return Comparison; } }
public string Serialize()
{
return this.ToString();
}
}
}