freenowtech / freenowtech/phrase-java-client

Missing translation files keep PhraseAppSyncTask to fail

オープン
#3 コメント 0 件 リアクション 0 件 担当者 1 名 @cod3hulk が担当を希望しています GitHub で見る
bug
主要言語
Java
スター
7
フォーク
7
PR マージ指標
30日以内にマージされた PR はありません

説明

When an empty local is added to the project, without any translations, the update process of the translations will fail due to the missing translation file.

```java
com.mytaxi.apis.phrase.exception.PhraseAppApiException: Could not get data from cache! Somethings goes wrong.
at com.mytaxi.apis.phrase.api.GenericPhraseAPI.getCachedData(GenericPhraseAPI.java:138)
at com.mytaxi.apis.phrase.api.GenericPhraseAPI.handleResponse(GenericPhraseAPI.java:162)
at com.mytaxi.apis.phrase.api.localedownload.DefaultPhraseLocaleDownloadAPI.downloadLocale(DefaultPhraseLocaleDownloadAPI.java:87)
at com.mytaxi.apis.phrase.tasks.PhraseAppSyncTask.run(PhraseAppSyncTask.java:87)
```

This leads to the failing update for the remaining locales because of the implementation in the PhraseAppSyncTask is not handling the error inside the update loop of the locales:
```java
@Override
public void run()
{
try
{
LOG.info("START Update Messages in messagesPath: " + fileService.getGeneratedResourcesFoldername());

checkAndGetPhraseLocales();

for (final String projectId : projectIds)
{
final List locales = getLocales(projectId);
if (locales != null)
{
for (final PhraseLocale locale : locales)
{
byte[] translationByteArray = localeDownloadAPI.downloadLocale(projectId, locale.getId(), format);
if (translationByteArray == null || translationByteArray.length == 0)
{
LOG.warn("Could not receive any data from PhraseAppApi for locale: {}. Please check configuration in PhraseApp!", locale);
translationByteArray = "no.data.received=true".getBytes();
}
fileService.saveToFile(projectId, translationByteArray, locale.getCode().replace('-', '_'));
}
}
}

LOG.info("FINISHED Update Messages");
}
catch (final Exception e)
{
LOG.error("Error due running the PhraseAppSyncTask", e);
}
}
```

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。