// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
namespace WixToolset.Data.WindowsInstaller.Rows
{
using System;
using WixToolset.Data.Tuples;
///
/// Specialization of a row for the PatchTargetCode table.
///
public class WixBundlePatchTargetCodeRow : Row
{
///
/// Creates a PatchTargetCodeRow row that does not belong to a table.
///
/// Original source lines for this row.
/// TableDefinition this PatchTargetCode row belongs to and should get its column definitions from.
public WixBundlePatchTargetCodeRow(SourceLineNumber sourceLineNumbers, TableDefinition tableDef) :
base(sourceLineNumbers, tableDef)
{
}
///
/// Creates a PatchTargetCodeRow row that belongs to a table.
///
/// Original source lines for this row.
/// Table this PatchTargetCode row belongs to and should get its column definitions from.
public WixBundlePatchTargetCodeRow(SourceLineNumber sourceLineNumbers, Table table) :
base(sourceLineNumbers, table)
{
}
public string MspPackageId
{
get { return (string)this.Fields[0].Data; }
set { this.Fields[0].Data = value; }
}
public string TargetCode
{
get { return (string)this.Fields[1].Data; }
set { this.Fields[1].Data = value; }
}
public WixBundlePatchTargetCodeAttributes Attributes
{
get { return (WixBundlePatchTargetCodeAttributes)this.Fields[2].Data; }
set { this.Fields[2].Data = (int)value; }
}
public bool TargetsProductCode
{
get { return 0 != (WixBundlePatchTargetCodeAttributes.TargetsProductCode & this.Attributes); }
}
public bool TargetsUpgradeCode
{
get { return 0 != (WixBundlePatchTargetCodeAttributes.TargetsUpgradeCode & this.Attributes); }
}
}
}