Package google.type

Indice

Data

Rappresenta una data di calendario intera o parziale, ad esempio un compleanno. L'ora del giorno e il fuso orario sono specificati altrove o sono insignificanti. La data è relativa al calendario gregoriano. Può rappresentare uno dei seguenti elementi:

  • Una data completa, con valori diversi da zero per anno, mese e giorno.
  • Un mese e un giorno, con un anno pari a zero (ad esempio, un anniversario).
  • Un anno da solo, con un mese e un giorno pari a zero.
  • Un anno e un mese, con un giorno pari a zero (ad esempio, la data di scadenza di una carta di credito).

Tipi correlati:

Campi
year

int32

L'anno della data. Deve essere compreso tra 1 e 9999 o tra 0 e 9999 per specificare una data senza anno.

month

int32

Mese dell'anno. Deve essere compreso tra 1 e 12 o 0 per specificare un anno senza mese e giorno.

day

int32

Giorno del mese. Deve essere compreso tra 1 e 31 e valido per l'anno e il mese oppure compreso tra 0 e 31 per specificare un anno da solo o un anno e un mese in cui il giorno non è significativo.

DateTime

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

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

  • Quando utc_offset è impostato e time_zone non è impostato: un orario civile in un giorno di calendario con un particolare offset rispetto all'UTC.
  • Quando time_zone è impostato e utc_offset non è impostato: un'ora civile in un giorno di calendario in un determinato fuso orario.
  • Quando non sono impostati né time_zone né utc_offset: un orario civile in un giorno di calendario nell'ora locale.

La data è relativa al calendario gregoriano prolettico.

Se l'anno, il mese o il giorno sono 0, DateTime viene considerato senza un anno, un mese o un giorno specifico, rispettivamente.

Questo tipo può essere utilizzato anche per rappresentare un orario fisico se tutti i campi di data e ora sono impostati e viene impostato uno dei casi di time_offset oneof. Prendi in considerazione l'utilizzo del messaggio Timestamp per l'ora fisica. Se il tuo caso d'uso prevede anche di memorizzare il fuso orario dell'utente, puoi farlo in un altro campo.

Questo tipo è più flessibile di quanto alcune applicazioni potrebbero desiderare. Assicurati di documentare e convalidare le limitazioni della tua applicazione.

Campi
year

int32

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

month

int32

Facoltativo. Mese dell'anno. Deve essere compreso tra 1 e 12 o 0 se viene specificata una data e ora senza 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 specifichi una data e ora senza giorno.

hours

int32

Facoltativo. Ore del giorno in formato 24 ore. Deve essere compreso tra 0 e 23, il valore predefinito è 0 (mezzanotte). Un'API può 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 di tempo. Normalmente deve 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 secondi 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 del fuso orario potrebbero cambiare in futuro (ad esempio, un paese modifica le date di inizio/fine dell'ora legale e le date e ore future nell'intervallo interessato sono già state memorizzate). Se omesso, DateTime viene considerato nell'ora locale. time_offset può essere solo uno dei seguenti:
utc_offset

Duration

Scarto da UTC. Deve essere un numero intero di secondi compreso 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 testuale nella sintassi di 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 è possibile fare 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. Questo è un testo più lungo che descrive l'espressione, ad esempio quando viene visualizzata in una UI.

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 dei fusi orari IANA. Ad esempio, "America/New_York".

version

string

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