Condividi tramite


IInstantSource Interfaccia

Definizione

Fornisce l'accesso all'istante corrente.

[Android.Runtime.Register("java/time/InstantSource", "", "Java.Time.IInstantSourceInvoker", ApiSince=34)]
public interface IInstantSource : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("java/time/InstantSource", "", "Java.Time.IInstantSourceInvoker", ApiSince=34)>]
type IInstantSource = interface
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Derivato
Attributi
Implementazioni

Commenti

Fornisce l'accesso all'istante corrente.

Le istanze di questa interfaccia vengono usate per accedere a una rappresentazione pluggable dell'istante corrente. Ad esempio InstantSource può essere usato invece di System#currentTimeMillis().

Lo scopo principale di questa astrazione è consentire l'inserimento di origini istantanee alternative come e quando necessario. Le applicazioni usano un oggetto per ottenere l'ora corrente anziché un metodo statico. In questo modo è possibile semplificare i test.

Di conseguenza, questa interfaccia non garantisce che il risultato rappresenti effettivamente l'istante corrente sulla linea temporale. Consente invece all'applicazione di fornire una visualizzazione controllata come quello che è l'istante corrente.

La procedura consigliata per le applicazioni consiste nel passare un InstantSource metodo qualsiasi che richiede l'istante corrente. Un framework di inserimento delle dipendenze è un modo per ottenere questo risultato:

public class MyBean {
               private InstantSource source;  // dependency inject
               ...
               public void process(Instant endInstant) {
                 if (source.instant().isAfter(endInstant) {
                   ...
                 }
               }
             }

Questo approccio consente un'origine alternativa, ad esempio #fixed(Instant) fixed o #offset(InstantSource, Duration) offset da usare durante il test.

Il metodo factory fornisce un'origine system basata sul miglior orologio di sistema disponibile. Questo può usare System#currentTimeMillis()o un orologio di risoluzione superiore se disponibile.

Aggiunto nel 17.

Documentazione Java per java.time.InstantSource.

Le parti di questa pagina sono modifiche in base al lavoro creato e condiviso dal Android Open Source e usato in base ai termini descritti nella .

Proprietà

Handle

Ottiene il valore JNI dell'oggetto Android sottostante.

(Ereditato da IJavaObject)
JniIdentityHashCode

Restituisce il valore di per java.lang.System.identityHashCode() l'istanza di wrapped.

(Ereditato da IJavaPeerable)
JniManagedPeerState

Stato del peer gestito.

(Ereditato da IJavaPeerable)
JniPeerMembers

Supporto per l'accesso ai membri e la chiamata.

(Ereditato da IJavaPeerable)
PeerReference

Restituisce un'istanza JniObjectReference dell'oggetto Java con wrapping.

(Ereditato da IJavaPeerable)

Metodi

Disposed()

Chiamato quando l'istanza è stata eliminata.

(Ereditato da IJavaPeerable)
DisposeUnlessReferenced()

Se non sono presenti riferimenti in sospeso a questa istanza, chiama Dispose(); in caso contrario, non fa nulla.

(Ereditato da IJavaPeerable)
Finalized()

Chiamato quando l'istanza è stata finalizzata.

(Ereditato da IJavaPeerable)
Fixed(Instant)

Ottiene un'origine che restituisce sempre lo stesso istante.

Instant()

Ottiene l'istantanea corrente dell'origine.

Millis()

Ottiene l'istante corrente millisecondo dell'origine.

Offset(IInstantSource, Duration)

Ottiene un'origine che restituisce istantanee dall'origine specificata con la durata specificata aggiunta.

SetJniIdentityHashCode(Int32)

Impostare il valore restituito da JniIdentityHashCode.

(Ereditato da IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Fornisce l'accesso all'istante corrente.

(Ereditato da IJavaPeerable)
SetPeerReference(JniObjectReference)

Impostare il valore restituito da PeerReference.

(Ereditato da IJavaPeerable)
System()

Ottiene un'origine che restituisce l'istante corrente usando il miglior orologio di sistema disponibile.

Tick(IInstantSource, Duration)

Ottiene un'origine che restituisce istantanee dall'origine specificata troncata all'occorrenza più vicina della durata specificata.

UnregisterFromRuntime()

Annullare la registrazione di questa istanza in modo che il runtime non lo restituirà dalle chiamate future Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Ereditato da IJavaPeerable)
WithZone(ZoneId)

Restituisce un orologio con il fuso orario specificato.

Metodi di estensione

JavaCast<TResult>(IJavaObject)

Esegue una conversione dei tipi controllati dal runtime Android.

JavaCast<TResult>(IJavaObject)

Fornisce l'accesso all'istante corrente.

GetJniTypeName(IJavaPeerable)

Fornisce l'accesso all'istante corrente.

Si applica a