Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1e163b4f authored by uabdullah's avatar uabdullah Committed by android-build-merger
Browse files

Merge "Use existing transcription from transcription server if available" am:...

Merge "Use existing transcription from transcription server if available" am: fbf5faff am: 56d08bca
am: 2f7fe1ec

Change-Id: Id6bbd1dacb1bd1ac29e62e5b437e95d70c63be88
parents fe4c9396 2f7fe1ec
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -295,7 +295,7 @@ public class GetTranscriptReceiver extends BroadcastReceiver {
    transcriptionClientFactoryForTesting = factory;
  }

  private static TranscriptionClientFactory getTranscriptionClientFactory(Context context) {
  static TranscriptionClientFactory getTranscriptionClientFactory(Context context) {
    if (transcriptionClientFactoryForTesting != null) {
      return transcriptionClientFactoryForTesting;
    }
+10 −0
Original line number Diff line number Diff line
@@ -83,6 +83,16 @@ public class TranscriptionTaskAsync extends TranscriptionTask {
    } else if (uploadResponse == null) {
      VvmLog.i(TAG, "getTranscription, failed to upload voicemail.");
      return new Pair<>(null, TranscriptionStatus.FAILED_NO_RETRY);
    } else if (uploadResponse.isStatusAlreadyExists()) {
      VvmLog.i(TAG, "getTranscription, transcription already exists.");
      GetTranscriptReceiver.beginPolling(
          context,
          voicemailUri,
          uploadRequest.getTranscriptionId(),
          0,
          configProvider,
          phoneAccountHandle);
      return new Pair<>(null, null);
    } else if (uploadResponse.getTranscriptionId() == null) {
      VvmLog.i(TAG, "getTranscription, upload error: " + uploadResponse.status);
      return new Pair<>(null, TranscriptionStatus.FAILED_NO_RETRY);
+9 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.voicemail.impl.transcribe.grpc;
import android.support.annotation.Nullable;
import com.android.dialer.common.Assert;
import io.grpc.Status;
import io.grpc.Status.Code;

/**
 * Base class for encapulating a voicemail transcription server response. This handles the Grpc
@@ -43,6 +44,14 @@ public abstract class TranscriptionResponse {
    return false;
  }

  public boolean isStatusAlreadyExists() {
    if (status != null) {
      return status.getCode() == Code.ALREADY_EXISTS;
    }

    return false;
  }

  public boolean hasFatalError() {
    if (status != null) {
      return status.getCode() != Status.Code.OK && status.getCode() != Status.Code.UNAVAILABLE;