API Capabilities per servizi in bundle legacy

Con l'API Capabilities, l'applicazione può rilevare interruzioni e pianificare per funzionalità API specifiche. Puoi utilizzare la modalità questa API per ridurre i tempi di inattività nell'applicazione, rilevando quando una funzionalità non è disponibile e quindi lo bypassa. .

Ad esempio, se utilizzi l'API Images per ridimensionare le immagini, puoi utilizzare l'API Capabilities per rilevare quando l'API Images non è disponibile e saltare il ridimensionamento:

import com.google.appengine.api.capabilities.*;

CapabilitiesService service =
    CapabilitiesServiceFactory.getCapabilitiesService();
CapabilityStatus status = service.getStatus(Capability.IMAGES).getStatus();

if (status == CapabilityStatus.DISABLED) {
    // Images API is not available.
}

Puoi eseguire query separate per verificare la disponibilità di letture e scritture di Datastore. Il seguente esempio mostra come rilevare la disponibilità delle scritture in Datastore e, durante il tempo di riposo, fornire un messaggio agli utenti:

CapabilityStatus status =
    service.getStatus(Capability.DATASTORE_WRITE).getStatus();

if (status == CapabilityStatus.DISABLED) {
    // Datastore is in read-only mode.
}

Utilizzo dell'API Capabilities in Java 8

Ogni capacità è rappresentata come una costante statica nella classe di capacità, come Capability.DATASTORE_WRITE Ogni funzionalità ha uno stato, che puoi recuperare da CapabilitiesService.getStatus(Capability). Ogni stato ha uno stato, ovvero un'enumerazione che riflette la disponibilità di una funzionalità: ENABLED o DISABLED. Di seguito è riportato l'elenco dei servizi attualmente abilitati in questa API.

Funzionalità supportate

Attualmente l'API supporta le seguenti funzionalità:

Capacità Argomenti per getStatus
Disponibilità del blobstore Capability.BLOBSTORE
Letture del datastore Capability.DATASTORE
Scritture datastore Capability.DATASTORE_WRITE
Disponibilità del servizio Immagini Capability.IMAGES
Disponibilità del servizio Posta Capability.MAIL
Disponibilità del servizio Memcache Capability.MEMCACHE
Disponibilità del servizio coda di attività Capability.TASKQUEUE
Disponibilità del servizio di recupero URL Capability.URL_FETCH