001package com.plivo.api.models.call.actions; 002 003import com.plivo.api.PlivoClient; 004import com.plivo.api.exceptions.PlivoRestException; 005import com.plivo.api.models.base.VoiceDeleter; 006import com.plivo.api.exceptions.PlivoValidationException; 007import com.plivo.api.models.call.Call; 008import java.io.IOException; 009import okhttp3.ResponseBody; 010 011public class CallRecordDeleter extends VoiceDeleter<Call> { 012 013 public CallRecordDeleter(String id) { 014 super(id); 015 } 016 017 @Override 018 protected retrofit2.Call<ResponseBody> obtainCall() { 019 return client().getVoiceApiService().callRecordDelete(client().getAuthId(), id); 020 } 021 022 @Override 023 protected retrofit2.Call<ResponseBody> obtainFallback1Call() { 024 return client().getVoiceFallback1Service().callRecordDelete(client().getAuthId(), id); 025 } 026 027 @Override 028 protected retrofit2.Call<ResponseBody> obtainFallback2Call() { 029 return client().getVoiceFallback2Service().callRecordDelete(client().getAuthId(), id); 030 } 031 032 public void recordStop() throws IOException, PlivoRestException, PlivoValidationException { 033 delete(); 034 } 035 036 @Override 037 public CallRecordDeleter client(final PlivoClient plivoClient) { 038 this.plivoClient = plivoClient; 039 return this; 040 } 041 042 043}