Compartir a través de


CosmosItemRequestOptions Clase

  • java.lang.Object
    • com.azure.cosmos.models.CosmosItemRequestOptions

public class CosmosItemRequestOptions

Encapsula las opciones que se pueden especificar para una solicitud emitida a cosmos Item.

Resumen del constructor

Constructor Description
CosmosItemRequestOptions()

Constructor

Resumen del método

Modificador y tipo Método y descripción
ConsistencyLevel getConsistencyLevel()

Obtiene el nivel de coherencia necesario para la solicitud.

DedicatedGatewayRequestOptions getDedicatedGatewayRequestOptions()

Obtiene las opciones de solicitud de puerta de enlace dedicada.

List<String> getExcludedRegions()

Obtiene la lista de regiones que se excluirán para la solicitud o reintentos.

String getIfMatchETag()

Obtiene el If-Match (ETag) asociado a la solicitud en el servicio Azure Cosmos DB.

String getIfNoneMatchETag()

Obtiene el if-none-match (ETag) asociado a la solicitud en el servicio Azure Cosmos DB.

IndexingDirective getIndexingDirective()

Obtiene la directiva de indexación (indexación, no indexar, etc.).

List<String> getPostTriggerInclude()

Obtiene los desencadenadores que se invocarán después de la operación.

List<String> getPreTriggerInclude()

Obtiene los desencadenadores que se invocarán antes de la operación.

String getSessionToken()

Obtiene el token para su uso con la coherencia de la sesión.

Duration getThresholdForDiagnosticsOnTracer()

Obtiene el umbralparaDiagnosticsOnTracer, si la latencia en la operación CRUD es mayor que este diagnóstico se enviará para abrir el exportador de telemetría como eventos en el intervalo de seguimiento de la API CRUD de un extremo a otro.

String getThroughputControlGroupName()

Obtiene el nombre del grupo de control de rendimiento.

Boolean isContentResponseOnWriteEnabled()

Obtiene el valor booleano para devolver solo los encabezados y el código de estado en la respuesta de Cosmos DB en el caso de las operaciones Crear, Actualizar y Eliminar en CosmosItem.

CosmosItemRequestOptions setConsistencyLevel(ConsistencyLevel consistencyLevel)

Establece el nivel de coherencia necesario para la solicitud.

CosmosItemRequestOptions setContentResponseOnWriteEnabled(Boolean contentResponseOnWriteEnabled)

Establece el valor booleano para que solo devuelva los encabezados y el código de estado en la respuesta de Cosmos DB en el caso de las operaciones Crear, Actualizar y Eliminar en CosmosItem.

CosmosItemRequestOptions setCosmosEndToEndOperationLatencyPolicyConfig(CosmosEndToEndOperationLatencyPolicyConfig endToEndOperationLatencyPolicyConfig)

Establece el objeto CosmosEndToEndOperationLatencyPolicyConfig que se va a usar para la solicitud.

CosmosItemRequestOptions setDedicatedGatewayRequestOptions(DedicatedGatewayRequestOptions dedicatedGatewayRequestOptions)

Establece las opciones de solicitud de puerta de enlace dedicada

CosmosItemRequestOptions setDiagnosticsThresholds(CosmosDiagnosticsThresholds operationSpecificThresholds)

Permite invalidar los umbrales de diagnóstico para una operación específica.

CosmosItemRequestOptions setExcludedRegions(List<String> excludeRegions)

Lista de regiones que se van a excluir para la solicitud o reintentos.

CosmosItemRequestOptions setIfMatchETag(String ifMatchETag)

Establece el If-Match (ETag) asociado a la solicitud en el servicio Azure Cosmos DB.

CosmosItemRequestOptions setIfNoneMatchETag(String ifNoneMatchETag)

Establece if-none-match (ETag) asociado a la solicitud en el servicio Azure Cosmos DB.

CosmosItemRequestOptions setIndexingDirective(IndexingDirective indexingDirective)

Establece la directiva de indexación (índice, no indexar, etc.).

CosmosItemRequestOptions setNonIdempotentWriteRetryPolicy(boolean nonIdempotentWriteRetriesEnabled, boolean useTrackingIdPropertyForCreateAndReplace)

Habilita reintentos automáticos para operaciones de escritura incluso cuando el SDK no puede garantizar que sean idempotentes.

CosmosItemRequestOptions setPostTriggerInclude(List<String> postTriggerInclude)

Establece los desencadenadores que se invocarán después de la operación.

CosmosItemRequestOptions setPreTriggerInclude(List<String> preTriggerInclude)

Establece los desencadenadores que se invocarán antes de la operación.

CosmosItemRequestOptions setSessionToken(String sessionToken)

Establece el token para su uso con coherencia de sesión.

CosmosItemRequestOptions setThresholdForDiagnosticsOnTracer(Duration thresholdForDiagnosticsOnTracer)

Establece el umbralparaDiagnosticsOnTracer, si la latencia en la operación CRUD es mayor que este diagnóstico se enviará para abrir el exportador de telemetría como eventos en el intervalo de seguimiento de la API CRUD de un extremo a otro.

void setThroughputControlGroupName(String throughputControlGroupName)

Establece el nombre del grupo de control de rendimiento.

Métodos heredados de java.lang.Object

Detalles del constructor

CosmosItemRequestOptions

public CosmosItemRequestOptions()

Constructor

Detalles del método

getConsistencyLevel

public ConsistencyLevel getConsistencyLevel()

Obtiene el nivel de coherencia necesario para la solicitud.

Returns:

el nivel de coherencia.

getDedicatedGatewayRequestOptions

public DedicatedGatewayRequestOptions getDedicatedGatewayRequestOptions()

Obtiene las opciones de solicitud de puerta de enlace dedicada.

Returns:

Las opciones de solicitud de puerta de enlace dedicada

getExcludedRegions

public List getExcludedRegions()

Obtiene la lista de regiones que se excluirán para la solicitud o reintentos. Estas regiones se excluyen de la lista de regiones preferidas.

Returns:

una lista de regiones excluidas

getIfMatchETag

public String getIfMatchETag()

Obtiene el If-Match (ETag) asociado a la solicitud en el servicio Azure Cosmos DB.

Returns:

ifMatchETag asociado a la solicitud.

getIfNoneMatchETag

public String getIfNoneMatchETag()

Obtiene el if-none-match (ETag) asociado a la solicitud en el servicio Azure Cosmos DB.

Returns:

ifNoneMatchETag asociado a la solicitud.

getIndexingDirective

public IndexingDirective getIndexingDirective()

Obtiene la directiva de indexación (indexación, no indexar, etc.).

Returns:

la directiva de indexación.

getPostTriggerInclude

public List getPostTriggerInclude()

Obtiene los desencadenadores que se invocarán después de la operación.

Returns:

los desencadenadores que se invocarán después de la operación.

getPreTriggerInclude

public List getPreTriggerInclude()

Obtiene los desencadenadores que se invocarán antes de la operación.

Returns:

los desencadenadores que se invocarán antes de la operación.

getSessionToken

public String getSessionToken()

Obtiene el token para su uso con la coherencia de la sesión.

Returns:

token de sesión.

getThresholdForDiagnosticsOnTracer

public Duration getThresholdForDiagnosticsOnTracer()

Obtiene el thresholdForDiagnosticsOnTracer, si la latencia en la operación CRUD es mayor que este diagnóstico se enviará para abrir el exportador de telemetría como eventos en el intervalo de seguimiento de la API CRUD de un extremo a otro. El valor predeterminado es 100 ms.

Returns:

thresholdForDiagnosticsOnTracerInMS el umbral de latencia para diagnósticos en tracer.

getThroughputControlGroupName

public String getThroughputControlGroupName()

Obtiene el nombre del grupo de control de rendimiento.

Returns:

el nombre del grupo de control de rendimiento.

isContentResponseOnWriteEnabled

public Boolean isContentResponseOnWriteEnabled()

Obtiene el valor booleano para devolver solo los encabezados y el código de estado en la respuesta de Cosmos DB en el caso de las operaciones Crear, Actualizar y Eliminar en CosmosItem. Si se establece en false, el servicio no devuelve una carga en la respuesta. Reduce la carga de red y CPU al no enviar la carga a través de la red y serializarla en el cliente. Esta característica no afecta al uso de RU para las operaciones de lectura o escritura. NOTA: Esta marca también está presente en CosmosClientBuilder, pero si se especifica en CosmosItemRequestOptions, invalidará el valor especificado en CosmosClientBuilder para esta solicitud. De forma predeterminada, es null.

Returns:

un valor booleano que indica si la carga se incluirá en la respuesta o no para esta solicitud.

setConsistencyLevel

public CosmosItemRequestOptions setConsistencyLevel(ConsistencyLevel consistencyLevel)

Establece el nivel de coherencia necesario para la solicitud. El nivel de coherencia eficaz solo se puede reducir para las solicitudes de lectura y consulta. Por lo tanto, cuando el nivel de coherencia predeterminado de la cuenta es, por ejemplo, Sesión, puede especificar en un nivel de solicitud por solicitud para solicitudes individuales que la coherencia final es suficiente, lo que podría reducir la latencia y los cargos de RU para esta solicitud, pero no garantizará la coherencia de la sesión (lectura de su propia escritura) más NOTA: Si el nivel de coherencia establecido en un nivel de solicitud aquí es SESSION y el nivel de coherencia predeterminado especificado al construir la instancia de CosmosClient a través de . CosmosClientBuilder.consistencyLevel no es SESSION; la captura de tokens de sesión también debe habilitarse llamando explícitamente a CosmosClientBuilder:sessionCapturingOverrideEnabled(true).

Parameters:

consistencyLevel - el nivel de coherencia.

Returns:

CosmosItemRequestOptions.

setContentResponseOnWriteEnabled

public CosmosItemRequestOptions setContentResponseOnWriteEnabled(Boolean contentResponseOnWriteEnabled)

Establece el valor booleano para devolver solo los encabezados y el código de estado en la respuesta de Cosmos DB en el caso de las operaciones Crear, Actualizar y Eliminar en CosmosItem. Si se establece en false, el servicio no devuelve la carga en la respuesta. Reduce la carga de red y CPU al no enviar la carga a través de la red y serializarla en el cliente. Esta característica no afecta al uso de RU para las operaciones de lectura o escritura. De forma predeterminada, es null. NOTA: Esta marca también está presente en CosmosClientBuilder, pero si se especifica en CosmosItemRequestOptions, invalidará el valor especificado en CosmosClientBuilder para esta solicitud.

Parameters:

contentResponseOnWriteEnabled - un valor booleano que indica si la carga se incluirá en la respuesta o no para esta solicitud.

Returns:

CosmosItemRequestOptions.

setCosmosEndToEndOperationLatencyPolicyConfig

public CosmosItemRequestOptions setCosmosEndToEndOperationLatencyPolicyConfig(CosmosEndToEndOperationLatencyPolicyConfig endToEndOperationLatencyPolicyConfig)

Establece el objeto CosmosEndToEndOperationLatencyPolicyConfig que se va a usar para la solicitud. Si la configuración ya está establecida en el cliente, esto invalidará la configuración de nivel de cliente para esta solicitud.

Parameters:

endToEndOperationLatencyPolicyConfig - el CosmosEndToEndOperationLatencyPolicyConfig

Returns:

setDedicatedGatewayRequestOptions

public CosmosItemRequestOptions setDedicatedGatewayRequestOptions(DedicatedGatewayRequestOptions dedicatedGatewayRequestOptions)

Establece las opciones de solicitud de puerta de enlace dedicada

Parameters:

dedicatedGatewayRequestOptions - Opciones de solicitud de puerta de enlace dedicada

Returns:

CosmosItemRequestOptions

setDiagnosticsThresholds

public CosmosItemRequestOptions setDiagnosticsThresholds(CosmosDiagnosticsThresholds operationSpecificThresholds)

Permite invalidar los umbrales de diagnóstico para una operación específica.

Parameters:

operationSpecificThresholds - invalidación del umbral de diagnóstico para esta operación

Returns:

CosmosItemRequestOptions.

setExcludedRegions

public CosmosItemRequestOptions setExcludedRegions(List excludeRegions)

Lista de regiones que se van a excluir para la solicitud o reintentos. Ejemplo "Este de EE. UU." o "Este de EE. UU., Oeste de EE. UU." Estas regiones se excluirán de la lista de regiones preferidas.

Parameters:

excludeRegions - lista de regiones

Returns:

setIfMatchETag

public CosmosItemRequestOptions setIfMatchETag(String ifMatchETag)

Establece el If-Match (ETag) asociado a la solicitud en el servicio Azure Cosmos DB.

Parameters:

ifMatchETag - ifMatchETag asociado a la solicitud.

Returns:

las opciones de solicitud actuales

setIfNoneMatchETag

public CosmosItemRequestOptions setIfNoneMatchETag(String ifNoneMatchETag)

Establece if-none-match (ETag) asociado a la solicitud en el servicio Azure Cosmos DB.

Parameters:

ifNoneMatchETag - ifNoneMatchETag asociado a la solicitud.

Returns:

las opciones de solicitud actuales

setIndexingDirective

public CosmosItemRequestOptions setIndexingDirective(IndexingDirective indexingDirective)

Establece la directiva de indexación (índice, no indexar, etc.).

Parameters:

indexingDirective - la directiva de indexación.

Returns:

CosmosItemRequestOptions.

setNonIdempotentWriteRetryPolicy

public CosmosItemRequestOptions setNonIdempotentWriteRetryPolicy(boolean nonIdempotentWriteRetriesEnabled, boolean useTrackingIdPropertyForCreateAndReplace)

Habilita reintentos automáticos para operaciones de escritura incluso cuando el SDK no puede garantizar que sean idempotentes. Se trata de una invalidación del CosmosClientBuilder#setNonIdempotentWriteRetryPolicy(boolean, boolean) comportamiento de una solicitud o operación específica. NOTA: La configuración de CosmosClientBuilder determinará el comportamiento predeterminado para las operaciones Create, Replace, Upsert y Delete. Se puede invalidar en la base por solicitud en las opciones de solicitud. Para las operaciones de revisión de forma predeterminada (a menos que se invaliden en las opciones de solicitud) los reintentos siempre estén deshabilitados de forma predeterminada. - Crear: los reintentos pueden dar lugar a solicitudes de 409 conflictos (más) a la aplicación cuando un reintento intenta crear un documento que el intento inicial creó correctamente. Al habilitar useTrackingIdPropertyForCreateAndReplace, esto se puede evitar para el conflicto 409 causado por reintentos. - Reemplazar: los reintentos pueden dar lugar a solicitudes de error 412-Condición previa a la aplicación cuando una operación de reemplazo usa una comprobación de condición previa (etag) y un reintento intenta actualizar un documento que el intento inicial se actualizó correctamente (lo que provoca que la etiqueta electrónica cambie). Al habilitar useTrackingIdPropertyForCreateAndReplace, esto se puede evitar en caso de errores de condición previa 412 causados por reintentos. - Delete: los reintentos pueden dar lugar a solicitudes 404-NotFound que se después de reintentar una operación de eliminación y el intento inicial se realizó correctamente. Lo ideal es que los reintentos de escritura solo se habiliten cuando las aplicaciones puedan controlar correctamente 404 - No encontrado. - Upsert: los reintentos pueden dar lugar a que se muestra un 200 , con un aspecto similar al que se actualizó el documento cuando realmente el documento se ha creado mediante el intento inicial, por lo que lógicamente dentro de la misma operación. Esto solo afectará a las aplicaciones que tienen mayúsculas y minúsculas especiales para 201 frente a 200 para operaciones upsert. Revisión: los reintentos de revisión pueden pero no siempre serán idempotentes; depende completamente de las operaciones de revisión que se ejecutan y de los filtros de condición previa que se usan. Antes de habilitar los reintentos de escritura para la revisión, debe revisarse cuidadosamente y realizar pruebas, que es un reintentos de revisión solo se puede habilitar en las opciones de solicitud; se omitirá cualquier configuración de CosmosClient ancho. Procesamiento masivo/eliminación por lotes transaccionales/ejecución de procedimiento estrodado: no se admiten reintentos automáticos.

Parameters:

nonIdempotentWriteRetriesEnabled - marca que indica si el SDK debe habilitar reintentos automáticos para una operación cuando no se puede garantizar la idempotencia porque para el intento anterior se ha enviado una solicitud en la red.
useTrackingIdPropertyForCreateAndReplace - marca que indica si las operaciones de escritura pueden usar la propiedad del sistema trackingId "/_trackingId" para permitir la identificación de conflictos y errores previos a la condición debido a reintentos. Si está habilitado, cada documento que se va a crear o reemplazar tendrá una propiedad "/_trackingId" adicional para la que el SDK actualizará el valor. Si no se desea agregar esta nueva propiedad json (por ejemplo, debido al aumento de RU en función del tamaño de carga o porque hace que los documentos superen el límite superior de tamaño de carga máximo), el uso de esta propiedad del sistema se puede deshabilitar estableciendo este parámetro en false. Esto significa que podría haber un nivel superior del 409/312 debido a los reintentos, y las aplicaciones tendrían que controlarlas correctamente por sí mismas.

Returns:

CosmosItemRequestOptions

setPostTriggerInclude

public CosmosItemRequestOptions setPostTriggerInclude(List postTriggerInclude)

Establece los desencadenadores que se invocarán después de la operación.

Parameters:

postTriggerInclude - los desencadenadores que se invocarán después de la operación.

Returns:

CosmosItemRequestOptions.

setPreTriggerInclude

public CosmosItemRequestOptions setPreTriggerInclude(List preTriggerInclude)

Establece los desencadenadores que se invocarán antes de la operación.

Parameters:

preTriggerInclude - los desencadenadores que se invocarán antes de la operación.

Returns:

CosmosItemRequestOptions.

setSessionToken

public CosmosItemRequestOptions setSessionToken(String sessionToken)

Establece el token para su uso con coherencia de sesión.

Parameters:

sessionToken - token de sesión.

Returns:

CosmosItemRequestOptions.

setThresholdForDiagnosticsOnTracer

public CosmosItemRequestOptions setThresholdForDiagnosticsOnTracer(Duration thresholdForDiagnosticsOnTracer)

Establece thresholdForDiagnosticsOnTracer, si la latencia en la operación CRUD es mayor que este diagnóstico se enviará para abrir el exportador de telemetría como eventos en el intervalo de seguimiento de la API CRUD de un extremo a otro. El valor predeterminado es 100 ms.

Parameters:

thresholdForDiagnosticsOnTracer - el umbral de latencia para los diagnósticos en el seguimiento.

Returns:

CosmosItemRequestOptions

setThroughputControlGroupName

public void setThroughputControlGroupName(String throughputControlGroupName)

Establece el nombre del grupo de control de rendimiento.

Parameters:

throughputControlGroupName - el nombre del grupo de control de rendimiento.

Se aplica a