001package com.plivo.api.models.conference;
002
003import com.plivo.api.PlivoClient;
004import com.plivo.api.exceptions.PlivoRestException;
005import java.io.IOException;
006import retrofit2.Call;
007
008public class ConferenceMemberPlayCreator extends
009  ConferenceMemberCreatorAction<ConferenceMemberActionResponse> {
010
011  private final String url;
012
013  public ConferenceMemberPlayCreator(String conferenceName, String memberId, String url) {
014    super(conferenceName, memberId);
015    this.url = url;
016  }
017
018  @Override
019  protected Call<ConferenceMemberActionResponse> obtainCall() {
020    return client().getVoiceApiService()
021      .conferenceMemberPlayCreate(client().getAuthId(), conferenceName, memberId, this);
022  }
023
024  @Override
025  protected Call<ConferenceMemberActionResponse> obtainFallback1Call() {
026    return client().getVoiceFallback1Service()
027      .conferenceMemberPlayCreate(client().getAuthId(), conferenceName, memberId, this);
028  }
029
030  @Override
031  protected Call<ConferenceMemberActionResponse> obtainFallback2Call() {
032    return client().getVoiceFallback2Service()
033      .conferenceMemberPlayCreate(client().getAuthId(), conferenceName, memberId, this);
034  }
035
036  @Override
037  public ConferenceMemberPlayCreator client(final PlivoClient plivoClient) {
038    this.plivoClient = plivoClient;
039    return this;
040  }
041
042  public ConferenceMemberActionResponse play() throws IOException, PlivoRestException {
043    return create();
044  }
045}