Files
DotNetAlpm/Alpm/CachePackage.cs
2020-05-01 05:08:04 -04:00

27 lines
866 B
C#

namespace Foodsoft.Alpm
{
public class CachePackage : Package
{
// ReSharper disable once SuggestBaseTypeForParameter
internal CachePackage(SafeCachePackageHandle handle, Database db) : base(handle)
{
DB = db;
}
public override Database? DB { get; }
public bool CheckMD5Sum()
{
var ret = alpm.alpm_pkg_checkmd5sum(Handle);
if (ret == 0) return true;
var errno = alpm.alpm_errno(Handle.SafeAlpmHandle);
return errno == ErrorCode.PkgInvalid ? false : throw new AlpmException(errno);
}
public void SetInstallReason(InstallReason reason)
{
if (alpm.alpm_pkg_set_reason(Handle, reason) != 0)
throw new AlpmException(((SafeCachePackageHandle) Handle).SafeAlpmHandle);
}
}
}