001package com.plivo.api.models.multipartycall; 002 003import com.fasterxml.jackson.annotation.JsonIgnore; 004import com.plivo.api.exceptions.PlivoValidationException; 005import com.plivo.api.models.base.ListResponse; 006import com.plivo.api.models.base.VoiceLister; 007import retrofit2.Call; 008 009public class MultiPartyCallParticipantList extends VoiceLister<MultiPartyCallParticipant> { 010 011 @JsonIgnore 012 private final String mpcId; 013 private String callUuid; 014 015 public MultiPartyCallParticipantList(String mpcId) { 016 this.mpcId = mpcId; 017 } 018 019 public String callUuid() { 020 return callUuid; 021 } 022 023 public MultiPartyCallParticipantList callUuid(String callUuid) { 024 this.callUuid = callUuid; 025 return this; 026 } 027 028 @Override 029 protected Call<ListResponse<MultiPartyCallParticipant>> obtainCall() throws PlivoValidationException { 030 MultiPartyCallUtils.validMultiPartyCallId(mpcId); 031 return client().getVoiceApiService().mpcListParticipants(client().getAuthId(), mpcId, toMap()); 032 } 033 034 @Override 035 protected Call<ListResponse<MultiPartyCallParticipant>> obtainFallback1Call() throws PlivoValidationException { 036 MultiPartyCallUtils.validMultiPartyCallId(mpcId); 037 return client().getVoiceFallback1Service().mpcListParticipants(client().getAuthId(), mpcId, toMap()); 038 } 039 040 @Override 041 protected Call<ListResponse<MultiPartyCallParticipant>> obtainFallback2Call() throws PlivoValidationException { 042 MultiPartyCallUtils.validMultiPartyCallId(mpcId); 043 return client().getVoiceFallback2Service().mpcListParticipants(client().getAuthId(), mpcId, toMap()); 044 } 045}