Package google.type

Indice

DateTime

Rappresenta l'ora civile (o occasionalmente l'ora fisica).

Questo tipo può rappresentare un orario civile in uno dei seguenti modi:

  • Quando utc_offset è impostato e time_zone non è impostato: un'ora civile in un giorno di calendario con una determinata differenza rispetto a UTC.
  • Quando time_zone è impostato e utc_offset non è impostato: un orario civile in un giorno di calendario in un determinato fuso orario.
  • Quando non sono impostati né time_zone né utc_offset: un'ora civile in un giorno di calendario in ora locale.

La data è relativa al calendario gregoriano prolettico.

Se anno, mese o giorno sono pari a 0, l'oggetto DateTime è considerato non avere rispettivamente un anno, un mese o un giorno specifici.

Questo tipo può essere utilizzato anche per rappresentare un'ora fisica se tutti i campi della data e dell'ora sono impostati e una delle due opzioni di time_offset oneof è impostata. Prendi in considerazione l'utilizzo del messaggio Timestamp per l'ora fisica. Se il tuo caso d'uso vuole memorizzare anche il fuso orario dell'utente, puoi farlo in un altro campo.

Questo tipo è più flessibile di quanto potrebbe essere richiesto da alcune applicazioni. Assicurati di documentare e convalidare le limitazioni della tua applicazione.

Campi
year

int32

Facoltativo. Anno della data. Deve essere compreso tra 1 e 9999 oppure 0 se viene specificata una data e ora senza anno.

month

int32

Facoltativo. Mese dell'anno. Deve essere compreso tra 1 e 12 oppure 0 se viene specificato un valore data/ora senza un mese.

day

int32

Facoltativo. Giorno del mese. Deve essere compreso tra 1 e 31 e valido per l'anno e il mese oppure 0 se viene specificato un valore data/ora senza un giorno.

hours

int32

Facoltativo. Ore del giorno nel formato 24 ore. Deve essere compreso tra 0 e 23, il valore predefinito è 0 (mezzanotte). Un'API potrebbe scegliere di consentire il valore "24:00:00" per scenari come l'orario di chiusura dell'attività.

minutes

int32

Facoltativo. Minuti dell'ora del giorno. Deve essere compreso tra 0 e 59. Il valore predefinito è 0.

seconds

int32

Facoltativo. Secondi di minuti del tempo. Deve normalmente essere compreso tra 0 e 59, il valore predefinito è 0. Un'API potrebbe consentire il valore 60 se consente i secondi intercalari.

nanos

int32

Facoltativo. Frazioni di secondo in nanosecondi. Deve essere compreso tra 0 e 999.999.999; il valore predefinito è 0.

Campo unione time_offset. Facoltativo. Specifica l'offset UTC o il fuso orario di DateTime. Scegli con attenzione tra le due opzioni, tenendo presente che i dati relativi al fuso orario potrebbero cambiare in futuro (ad esempio, un paese modifica le date di inizio/fine del DST e le date e ore future nell'intervallo interessato sono già state memorizzate). Se omesso, la data e l'ora sono considerate in ora locale. time_offset può essere solo uno dei seguenti:
utc_offset

Duration

Scarto da UTC. Devono essere secondi interi, compresi tra -18 ore e +18 ore. Ad esempio, un offset UTC di -4:00 viene rappresentato come { seconds: -14400 }.

time_zone

TimeZone

Fuso orario.

Expr

Rappresenta un'espressione di testo nella sintassi Common Expression Language (CEL). CEL è un linguaggio di espressioni simile a C. La sintassi e la semantica di CEL sono documentate all'indirizzo https://github.com/google/cel-spec.

Esempio (confronto):

title: "Summary size limit"
description: "Determines if a summary is less than 100 chars"
expression: "document.summary.size() < 100"

Esempio (uguaglianza):

title: "Requestor is owner"
description: "Determines if requestor is the document owner"
expression: "document.owner == request.auth.claims.email"

Esempio (logica):

title: "Public documents"
description: "Determine whether the document should be publicly visible"
expression: "document.type != 'private' && document.type != 'internal'"

Esempio (manipolazione dei dati):

title: "Notification string"
description: "Create a notification string with a timestamp."
expression: "'New message received at ' + string(document.create_time)"

Le variabili e le funzioni esatte a cui può essere fatto riferimento all'interno di un'espressione sono determinate dal servizio che la valuta. Per ulteriori informazioni, consulta la documentazione del servizio.

Campi
expression

string

Rappresentazione testuale di un'espressione nella sintassi di Common Expression Language.

title

string

Facoltativo. Titolo dell'espressione, ovvero una breve stringa che ne descrive lo scopo. Può essere utilizzato, ad esempio, nelle UI che consentono di inserire l'espressione.

description

string

Facoltativo. Descrizione dell'espressione. Si tratta di un testo più lungo che descrive l'espressione, ad esempio quando si passa il mouse sopra l'espressione in un'interfaccia utente.

location

string

Facoltativo. Stringa che indica la posizione dell'espressione per la segnalazione degli errori, ad esempio un nome file e una posizione nel file.

TimeZone

Rappresenta un fuso orario del database dei fusi orari IANA.

Campi
id

string

Fuso orario del database IANA Time Zone, ad esempio "America/New_York".

version

string

Facoltativo. Numero di versione del database dei fusi orari IANA, ad esempio "2019a".