Aufrufschnittstelle – Android
Die Schnittstelle Anruf stellt eine Anforderung dar, die zur Verarbeitung vorbereitet wird.
Mögliche Verarbeitungsoptionen:
- abbrechen
- Warteschlange
- ausführen
- Zuordnen
Ein Anrufobjekt kann nicht zweimal verarbeitet werden.
| Name | Typ | Beschreibung |
|---|---|---|
| Anforderung | Anforderung | Ursprüngliche Anforderung, die diesen Anruf initiiert hat. |
Anruf – abbrechen ()
Bricht den zugeordneten Anruf ab, wenn möglich (nach bestem Wissen und Gewissen).
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.
private var inFlightDataRequestCall: Call<*>? = null
fun cancelTransfer() = inFlightDataRequestCall?.cancel()
Anruf – enqueue(onSuccess: Consumer <Response<T> >, onError: Verbraucher<NowDataError> )
Plant die Ausführung der Anforderung, sobald der System-\Thread zur Ausführung dieser Anforderung verfügbar ist.
| Name | Typ | Beschreibung |
|---|---|---|
| onSuccess | Verbraucher<Response<T> > | Auszuführender Rückruf, wenn der Anruf erfolgreich ist. HTTP-Antwort, wobei der Textkörper in den durch den Parameter T angegebenen Datentyp analysiert wird. Hinweis: Consumer ist ein OOB-Java-Typ für den asynchronen Verbrauch eines Objekts. In diesem Fall verwendet der Aufruf generische, um eine Antwort vom Typ zurückzugeben<T> wobei T der Objekttyp ist. |
| onError | Verbraucher<NowDataError> | Auszuführender Rückruf, wenn der Anruf fehlschlägt. NowDataError |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.
fun makeGraphQLRequest(query: String) {
val call = graphQLService.graphQLRequest(query)
call.enqueue(
{ response -> handleResponse(response) },
{ nowDataError -> handleError(nowDataError) }
)
}
Aufruf - execute()
Ruft die Anforderung sofort auf. Blockiert, bis die Antwort verarbeitet wird oder ein Fehler vorliegt.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Antwort<T> | Antwortdaten in dem im Parameter T definierten Format. |
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.
val response = apiService.data(NowAPIService.Endpoint(
relativePath = CASES_API,
requestMethod = HttpMethod.GET,
requireAuth = true)
).execute()