Package google.type

Índice

DateTime

Representa o horário civil (ou, às vezes, o horário físico).

Esse tipo pode representar um horário civil de uma das seguintes maneiras:

  • Quando utc_offset é definido e time_zone não é definido: uma hora civil em um dia do calendário com uma compensação específica do UTC.
  • Quando time_zone é definido e utc_offset não é: uma hora civil em um dia do calendário em um fuso horário específico.
  • Quando nem time_zone nem utc_offset estão definidos: uma hora civil em um dia do calendário no horário local.

A data é referente ao calendário gregoriano proléptico.

Se o ano, o mês ou o dia forem 0, o DateTime será considerado sem um ano, mês ou dia específico, respectivamente.

Esse tipo também pode ser usado para representar um horário físico se todos os campos de data e hora estiverem definidos e se um dos casos de time_offset estiver definido. Considere usar a mensagem Timestamp para o tempo físico. Se o caso de uso também quiser armazenar o fuso horário do usuário, isso pode ser feito em outro campo.

Esse tipo é mais flexível do que alguns aplicativos podem querer. Documente e valide as limitações do seu aplicativo.

Campos
year

int32

Opcional. Ano da data. Precisa ser de 1 a 9999 ou 0 se especificar uma data/hora sem um ano.

month

int32

Opcional. Mês do ano. Precisa ser de 1 a 12 ou 0 se especificar uma data/hora sem um mês.

day

int32

Opcional. Dia do mês. Precisa ser de 1 a 31 e válido para o ano e o mês, ou 0 se especificar uma data/hora sem dia.

hours

int32

Opcional. Horas do dia no formato de 24 horas. Precisa ser de 0 a 23, o padrão é 0 (meia-noite). Uma API pode permitir o valor "24:00:00" para o horário de fechamento da empresa, por exemplo.

minutes

int32

Opcional. Minutos da hora do dia. Precisa ser de 0 a 59, o padrão é 0.

seconds

int32

Opcional. Segundos do minutos do horário. Normalmente precisa ser de 0 a 59, padrão 0. Uma API pode permitir o valor 60 se permitir segundos bissextos.

nanos

int32

Opcional. Frações de segundos em nanossegundos. Precisa ser de 0 a 999.999.999. O padrão é 0.

Campo de união time_offset. Opcional. Especifica o deslocamento UTC ou o fuso horário do DateTime. Escolha com cuidado entre eles, considerando que os dados de fuso horário podem mudar no futuro (por exemplo, um país modifica as datas de início/término do horário de verão, e as datas e horários no período afetado já foram armazenadas). Se omitido, o DateTime será considerado no horário local. time_offset pode ser apenas de um dos tipos a seguir:
utc_offset

Duration

Deslocamento de UTC. Precisa ser um segundo inteiro, entre -18 horas e +18 horas. Por exemplo, um deslocamento UTC de -4:00 seria representado como { seconds: -14400 }.

time_zone

TimeZone

Fuso horário.

Expr

Representa uma expressão textual na sintaxe Common Expression Language (CEL). A CEL é uma linguagem de expressão semelhante a C. A sintaxe e a semântica do CEL estão documentadas em https://github.com/google/cel-spec.

Exemplo (comparação):

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

Exemplo (igualdade):

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

Exemplo (lógica):

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

Exemplo (manipulação de dados):

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

As variáveis e funções exatas que podem ser referenciadas em uma expressão são determinadas pelo serviço que a avalia. Consulte a documentação do serviço para mais informações.

Campos
expression

string

Representação textual de uma expressão na sintaxe Common Expression Language.

title

string

Opcional. Título da expressão, ou seja, uma string curta que descreve sua finalidade. Isso pode ser usado, por exemplo, em IUs que permitam inserir a expressão.

description

string

Opcional. Descrição da expressão. Este é um texto mais longo que descreve a expressão, por exemplo, quando o cursor é passado sobre ela em uma IU.

location

string

Opcional. String que indica o local da expressão para o relatório de erros, por exemplo, um nome de arquivo e uma posição no arquivo.

TimeZone

Representa um fuso horário do banco de dados IANA.

Campos
id

string

Fuso horário do banco de dados IANA. Por exemplo: "America/New_York".

version

string

Opcional. Número da versão do banco de dados IANA de fuso horário. Por exemplo: "2019a".