27 lines
866 B
C#
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);
|
|
}
|
|
}
|
|
} |