HaikuDepot: Fixes for Language Handling

Change-Id: Ic6d5a59396f778f684985fad0e39985197c380b3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7524
Reviewed-by: Jérôme Duval <[email protected]>
Tested-by: Commit checker robot <[email protected]>
This commit is contained in:
Andrew Lindesay
2024-03-18 04:10:28 +00:00
parent a40cec84d6
commit 43e19c4715
7 changed files with 9 additions and 16 deletions
+3 -3
View File
@@ -93,7 +93,7 @@ void
LanguageModel::_SetPreferredLanguage(const Language& language)
{
fPreferredLanguage = LanguageRef(new Language(language));
HDDEBUG("set preferred language [%s]", language.ID());
HDDEBUG("set preferred language [%s]", fPreferredLanguage->ID());
}
@@ -271,9 +271,9 @@ LanguageModel::_NullSafeStrCmp(const char* s1, const char* s2) {
if ((NULL == s1) && (NULL == s2))
return 0;
if (NULL == s1)
return 1;
return -1;
if (NULL == s2)
return -1;
return 1;
return strcmp(s1, s2);
}
+3 -3
View File
@@ -834,7 +834,7 @@ Model::DumpExportRepositoryDataPath(BPath& path)
{
BString leaf;
leaf.SetToFormat("repository-all_%s.json.gz",
Language()->PreferredLanguage()->Code());
Language()->PreferredLanguage()->ID());
return StorageUtils::LocalWorkingFilesPath(leaf, path);
}
@@ -849,7 +849,7 @@ Model::DumpExportReferenceDataPath(BPath& path)
{
BString leaf;
leaf.SetToFormat("reference-all_%s.json.gz",
Language()->PreferredLanguage()->Code());
Language()->PreferredLanguage()->ID());
return StorageUtils::LocalWorkingFilesPath(leaf, path);
}
@@ -867,7 +867,7 @@ Model::DumpExportPkgDataPath(BPath& path,
{
BString leaf;
leaf.SetToFormat("pkg-all-%s-%s.json.gz", repositorySourceCode.String(),
Language()->PreferredLanguage()->Code());
Language()->PreferredLanguage()->ID());
return StorageUtils::LocalWorkingFilesPath(leaf, path);
}
@@ -130,7 +130,6 @@ ProcessCoordinatorFactory::CreateBulkLoadCoordinator(
for (int32 i = 0; i < repoNames.CountStrings(); i++) {
AbstractProcessNode* processNode = new ThreadedProcessNode(
new ServerPkgDataUpdateProcess(
model->Language()->PreferredLanguage()->Code(),
repoNames.StringAt(i), model, serverProcessOptions));
processNode->AddPredecessor(serverRepositoryDataUpdate);
processNode->AddPredecessor(serverReferenceDataUpdate);
@@ -203,15 +203,11 @@ PackageFillingPkgListener::Complete()
ServerPkgDataUpdateProcess::ServerPkgDataUpdateProcess(
BString naturalLanguageCode,
// note that this is the ID of the language from ICU but it is called
// `code` in the HDS system. Here we use the nomenclature of the server.
BString depotName,
Model *model,
uint32 serverProcessOptions)
:
AbstractSingleFileServerProcess(serverProcessOptions),
fNaturalLanguageCode(naturalLanguageCode),
fModel(model),
fDepotName(depotName)
{
@@ -248,7 +244,7 @@ ServerPkgDataUpdateProcess::UrlPathComponent()
BString urlPath;
urlPath.SetToFormat("/__pkg/all-%s-%s.json.gz",
_DeriveWebAppRepositorySourceCode().String(),
fNaturalLanguageCode.String());
fModel->Language()->PreferredLanguage()->ID());
return urlPath;
}
@@ -20,7 +20,6 @@
class ServerPkgDataUpdateProcess : public AbstractSingleFileServerProcess {
public:
ServerPkgDataUpdateProcess(
BString naturalLanguageCode,
BString depotName,
Model *model,
uint32 serverProcessOptions);
@@ -43,7 +42,6 @@ protected:
private:
BString _DeriveWebAppRepositorySourceCode() const;
BString fNaturalLanguageCode;
Model* fModel;
BString fDepotName;
BString fName;
@@ -66,7 +66,7 @@ ServerReferenceDataUpdateProcess::UrlPathComponent()
BString result;
AutoLocker<BLocker> locker(fModel->Lock());
result.SetToFormat("/__reference/all-%s.json.gz",
fModel->Language()->PreferredLanguage()->Code());
fModel->Language()->PreferredLanguage()->ID());
return result;
}
@@ -191,7 +191,7 @@ ServerRepositoryDataUpdateProcess::UrlPathComponent()
BString result;
AutoLocker<BLocker> locker(fModel->Lock());
result.SetToFormat("/__repository/all-%s.json.gz",
fModel->Language()->PreferredLanguage()->Code());
fModel->Language()->PreferredLanguage()->ID());
return result;
}