Compartir a través de


IInstantSource Interfaz

Definición

Proporciona acceso al instante actual.

[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
Derivado
Atributos
Implementaciones

Comentarios

Proporciona acceso al instante actual.

Las instancias de esta interfaz se usan para tener acceso a una representación conectable del instante actual. Por ejemplo, se puede usar InstantSource en lugar de System#currentTimeMillis().

El propósito principal de esta abstracción es permitir que los orígenes instantáneos alternativos se conecten como y cuando sea necesario. Las aplicaciones usan un objeto para obtener la hora actual en lugar de un método estático. Esto puede simplificar las pruebas.

Por lo tanto, esta interfaz no garantiza que el resultado represente realmente el instante actual en la línea de tiempo. En su lugar, permite a la aplicación proporcionar una vista controlada en cuanto a lo que es el instante actual.

El procedimiento recomendado para las aplicaciones es pasar un elemento InstantSource a cualquier método que requiera el instante actual. Un marco de inserción de dependencias es una manera de lograr esto:

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

Este enfoque permite usar un origen alternativo, como #fixed(Instant) fixed o #offset(InstantSource, Duration) offset durante las pruebas.

El system método factory proporciona un origen basado en el mejor reloj del sistema disponible. Esto puede usar System#currentTimeMillis()o un reloj de resolución superior si hay uno disponible.

Agregado en 17.

Documentación de Java para java.time.InstantSource.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Propiedades

Handle

Obtiene el valor JNI del objeto Android subyacente.

(Heredado de IJavaObject)
JniIdentityHashCode

Devuelve el valor de java.lang.System.identityHashCode() para la instancia ajustada.

(Heredado de IJavaPeerable)
JniManagedPeerState

Estado del mismo nivel administrado.

(Heredado de IJavaPeerable)
JniPeerMembers

Compatibilidad con la invocación y el acceso de miembros.

(Heredado de IJavaPeerable)
PeerReference

Devuelve una JniObjectReference de la instancia de objeto Java ajustada.

(Heredado de IJavaPeerable)

Métodos

Disposed()

Se llama cuando se ha eliminado la instancia.

(Heredado de IJavaPeerable)
DisposeUnlessReferenced()

Si no hay referencias pendientes a esta instancia, llama a Dispose(); de lo contrario, no hace nada.

(Heredado de IJavaPeerable)
Finalized()

Se llama cuando se ha finalizado la instancia.

(Heredado de IJavaPeerable)
Fixed(Instant)

Obtiene un origen que siempre devuelve el mismo instante.

Instant()

Obtiene el instante actual del origen.

Millis()

Obtiene el instante de milisegundos actual del origen.

Offset(IInstantSource, Duration)

Obtiene un origen que devuelve instantes del origen especificado con la duración especificada agregada.

SetJniIdentityHashCode(Int32)

Establezca el valor devuelto por JniIdentityHashCode.

(Heredado de IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Proporciona acceso al instante actual.

(Heredado de IJavaPeerable)
SetPeerReference(JniObjectReference)

Establezca el valor devuelto por PeerReference.

(Heredado de IJavaPeerable)
System()

Obtiene un origen que devuelve el instante actual con el mejor reloj del sistema disponible.

Tick(IInstantSource, Duration)

Obtiene un origen que devuelve instantes del origen especificado truncado a la aparición más cercana de la duración especificada.

UnregisterFromRuntime()

Anule el registro de esta instancia para que el entorno de ejecución no lo devuelva de invocaciones futuras Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Heredado de IJavaPeerable)
WithZone(ZoneId)

Devuelve un reloj con la zona horaria especificada.

Métodos de extensión

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

Proporciona acceso al instante actual.

GetJniTypeName(IJavaPeerable)

Proporciona acceso al instante actual.

Se aplica a