001package com.plivo.api.models.multipartycall;
002
003import com.plivo.api.exceptions.PlivoValidationException;
004import com.plivo.api.models.base.BaseResponse;
005import com.plivo.api.models.base.VoiceUpdater;
006import retrofit2.Call;
007
008public class MultiPartyCallParticipantRecordingPause extends VoiceUpdater<BaseResponse> {
009
010  public MultiPartyCallParticipantRecordingPause(String mpcId, String secondaryId) {
011    super(mpcId, secondaryId);
012  }
013
014  @Override
015  protected Call<BaseResponse> obtainCall() throws PlivoValidationException {
016    MultiPartyCallUtils.validMultiPartyCallId(id);
017    return client().getVoiceApiService().mpcParticipantPauseRecording(client().getAuthId(), id, secondaryId);
018  }
019
020  @Override
021  protected Call<BaseResponse> obtainFallback1Call() throws PlivoValidationException {
022    MultiPartyCallUtils.validMultiPartyCallId(id);
023    return client().getVoiceFallback1Service().mpcParticipantPauseRecording(client().getAuthId(), id, secondaryId);
024  }
025
026  @Override
027  protected Call<BaseResponse> obtainFallback2Call() throws PlivoValidationException {
028    MultiPartyCallUtils.validMultiPartyCallId(id);
029    return client().getVoiceFallback2Service().mpcParticipantPauseRecording(client().getAuthId(), id, secondaryId);
030  }
031}