Add support for adding a package-info to BRepositoryWriter.
This commit is contained in:
@@ -51,6 +51,16 @@ BRepositoryWriter::AddPackage(const BEntry& packageEntry)
|
||||
}
|
||||
|
||||
|
||||
status_t
|
||||
BRepositoryWriter::AddPackageInfo(const BPackageInfo& packageInfo)
|
||||
{
|
||||
if (fImpl == NULL)
|
||||
return B_NO_INIT;
|
||||
|
||||
return fImpl->AddPackageInfo(packageInfo);
|
||||
}
|
||||
|
||||
|
||||
status_t
|
||||
BRepositoryWriter::Finish()
|
||||
{
|
||||
|
||||
@@ -233,6 +233,20 @@ RepositoryWriterImpl::AddPackage(const BEntry& packageEntry)
|
||||
}
|
||||
|
||||
|
||||
status_t
|
||||
RepositoryWriterImpl::AddPackageInfo(const BPackageInfo& packageInfo)
|
||||
{
|
||||
try {
|
||||
return _AddPackageInfo(packageInfo);
|
||||
} catch (status_t error) {
|
||||
return error;
|
||||
} catch (std::bad_alloc) {
|
||||
fListener->PrintError("Out of memory!\n");
|
||||
return B_NO_MEMORY;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
status_t
|
||||
RepositoryWriterImpl::Finish()
|
||||
{
|
||||
@@ -350,6 +364,20 @@ RepositoryWriterImpl::_AddPackage(const BEntry& packageEntry)
|
||||
}
|
||||
|
||||
|
||||
status_t
|
||||
RepositoryWriterImpl::_AddPackageInfo(const BPackageInfo& packageInfo)
|
||||
{
|
||||
fPackageInfo = packageInfo;
|
||||
|
||||
// register package's attributes
|
||||
status_t result = _RegisterCurrentPackageInfo();
|
||||
if (result != B_OK)
|
||||
return result;
|
||||
|
||||
return B_OK;
|
||||
}
|
||||
|
||||
|
||||
status_t
|
||||
RepositoryWriterImpl::_RegisterCurrentPackageInfo()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user