Package google.type

Indeks

DateTime

Odzwierciedla czas cywilny (lub czas rzeczywisty).

Ten typ może przedstawiać czas cywilny na kilka sposobów:

  • Gdy ustawiona jest wartość utc_offset, a strefa czasowa nie jest ustawiona: czas cywilny w dniu kalendarzowym z określoną przesunięciem względem czasu UTC.
  • Gdy ustawiona jest strefa czasowa, a wartość utc_offset nie jest skonfigurowana: czas cywilny w dniu kalendarzowym w określonej strefie czasowej.
  • Gdy nie ustawiono strefy czasowej ani utc_offset: czas cywilny w dniu kalendarzowym według czasu lokalnego.

Podana jest data według proleptycznego kalendarza gregoriańskiego.

Jeśli rok, miesiąc lub dzień mają wartość 0, funkcja DateTime jest uznawana za niezawierającą odpowiednio roku, miesiąca lub dnia.

Ten typ może też służyć do reprezentowania czasu fizycznego, jeśli ustawiono wszystkie pola daty i godziny oraz ustawiono opcję time_offset. Zamiast tego rozważ użycie wiadomości Timestamp w czasie rzeczywistym. Jeśli w Twoim przypadku ma być też przechowywana strefa czasowa użytkownika, możesz to zrobić w innym polu.

Ten typ jest bardziej elastyczny niż niektóre aplikacje. Pamiętaj, aby udokumentować i zweryfikować ograniczenia aplikacji.

Pola
year

int32

Opcjonalnie. Rok daty. Należy podać wartość z zakresu od 1 do 9999 lub 0 w przypadku określania daty i godziny bez roku.

month

int32

Opcjonalnie. Miesiąc roku. Należy podać wartość z zakresu od 1 do 12 lub 0 w przypadku określania daty i godziny bez miesiąca.

day

int32

Opcjonalnie. Dzień miesiąca. Należy podać wartość z zakresu od 1 do 31 i prawidłową dla roku i miesiąca lub 0 w przypadku określenia daty i godziny bez dnia.

hours

int32

Opcjonalnie. Godziny dnia w formacie 24-godzinnym. Wartość powinna mieścić się w zakresie od 0 do 23, a domyślna to 0 (północ). Interfejs API może zezwolić na wartość „24:00:00” w sytuacjach takich jak godzina zamknięcia firmy.

minutes

int32

Opcjonalnie. Minuty w ciągu dnia. Wartość musi mieścić się w zakresie od 0 do 59, a domyślnie przyjmuje wartość 0.

seconds

int32

Opcjonalnie. Sekundy minut czasu. Musi mieścić się w przedziale od 0 do 59, a domyślnie przyjmuje wartość 0. Interfejs API może zezwolić na wartość 60, jeśli zezwala na sekundy przestępne.

nanos

int32

Opcjonalnie. Ułamki sekund w nanosekundach. Wartość musi mieścić się w zakresie od 0 do 999 999 999, a wartość domyślna to 0.

Pole sumy time_offset. Opcjonalnie. Określa przesunięcie czasu UTC lub strefę czasową pola DateTime. Starannie wybierz je, biorąc pod uwagę fakt, że dane strefy czasowej mogą się zmienić w przyszłości (np. kraj zmieni daty rozpoczęcia i zakończenia czasu letniego, a przyszłe daty i godziny w odpowiednim zakresie są już przechowywane). W przypadku pominięcia tego argumentu, data i godzina są uznawane za czas lokalny. time_offset może być tylko jedną z tych wartości:
utc_offset

Duration

Opóźnienie UTC. Musi to być pełne sekundy, z zakresu od -18 godzin do +18 godzin. Na przykład przesunięcie względem czasu UTC o -4:00 będzie przedstawiane jako { seconds: -14400 }.

time_zone

TimeZone

Strefa czasowa.

TimeOfDay

Reprezentuje porę dnia. Data i strefa czasowa są nieistotne lub zostały określone w innym miejscu. Interfejs API może zezwolić na sekundy przestępne. Powiązane typy: google.type.Date i google.protobuf.Timestamp.

Pola
hours

int32

Godziny dnia w formacie 24-godzinnym. Wartość powinna mieścić się w zakresie od 0 do 23. Interfejs API może zezwolić na wartość „24:00:00” w sytuacjach takich jak godzina zamknięcia firmy.

minutes

int32

Minuty w ciągu dnia. Wartość musi mieścić się w przedziale od 0 do 59.

seconds

int32

Sekundy minut czasu. Wartość musi mieścić się w przedziale od 0 do 59. Interfejs API może zezwolić na wartość 60, jeśli zezwala na sekundy przestępne.

nanos

int32

Ułamki sekund w nanosekundach. Wartość musi mieścić się w przedziale od 0 do 999 999 999.

TimeZone

Reprezentuje strefę czasową z bazy danych stref czasowych IANA.

Pola
id

string

Strefa czasowa bazy danych strefy czasowej IANA, np. „America/New_York”.

version

string

Opcjonalnie. Numer wersji bazy danych stref czasowych IANA, np. „2019a”.