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 está definido e time_zone não está definido: um horário civil em um dia do calendário com uma diferença específica do UTC.
  • Quando time_zone está definido e utc_offset não está definido: um horário civil em um dia do calendário em um fuso horário específico.
  • Quando time_zone e utc_offset não estiverem definidos: um horário civil em um dia do calendário no horário local.

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

Se ano, mês ou dia forem 0, considera-se que DateTime não tem 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 um dos casos de time_offset oneof estiver definido. Em vez disso, use a mensagem Timestamp para o horário físico. Caso seu caso de uso também queira 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. Certifique-se de documentar e validar 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 e hora sem um ano.

month

int32

Opcional. Mês do ano. Precisa ser de 1 a 12, ou 0 se especificar uma data e 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 e hora sem um 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, e o padrão é 0.

seconds

int32

Opcional. Segundos do minutos do horário. Normalmente precisa ser de 0 a 59, e o 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 de UTC ou o fuso horário de DateTime. Escolha cuidadosamente entre elas, 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 de horário de verão, e as DateTimes futuras no intervalo afetado já foram armazenadas). Se omitido, o DateTime é considerado como no horário local. time_offset pode ser apenas de um dos tipos a seguir:
utc_offset

Duration

Compensação de UTC. Deve ser exibido em segundos inteiros, entre -18 e +18 horas. Por exemplo, um deslocamento de UTC de -4:00 seria representado como { seconds: -14400 }.

time_zone

TimeZone

Fuso horário.

TimeOfDay

Representa um horário do dia. A data e o fuso horário não são relevantes ou são especificados em outro lugar. Uma API pode permitir segundos bissextos. Os tipos relacionados são google.type.Date e google.protobuf.Timestamp.

Campos
hours

int32

Horas do dia no formato de 24 horas. Precisa ser de 0 a 23. Uma API pode permitir o valor "24:00:00" para o horário de fechamento da empresa, por exemplo.

minutes

int32

Minutos da hora do dia. Precisa ser de 0 a 59.

seconds

int32

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

nanos

int32

Frações de segundos em nanossegundos. Precisa ser de 0 a 999.999.999.

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".