Package google.type

Index

Date

Représente une date du calendrier entière ou partielle, par exemple un anniversaire. L'heure de la journée et le fuseau horaire sont spécifiés ailleurs, ou ne sont pas significatifs. La date est donnée selon le calendrier grégorien. Elle peut être représentée par l'un des éléments suivants :

  • Une date complète, avec des valeurs non nulles pour l'année, le mois et le jour.
  • Un mois et un jour, avec une année nulle (par exemple, un anniversaire).
  • une année seule, avec un mois et un jour nuls ;
  • Une année et un mois, avec un jour zéro (par exemple, la date d'expiration d'une carte de crédit).

Types associés :

Champs
year

int32

Année de la date. Elle doit être comprise entre 1 et 9999, ou égale à 0 si vous spécifiez une date sans année.

month

int32

Mois d'une année. Il doit être compris entre 1 et 12, ou égal à 0 si vous spécifiez une année sans mois ni jour.

day

int32

Jour du mois. Il doit être compris entre 1 et 31, et valide pour l'année et le mois, ou égal à 0 si vous spécifiez une année seule, ou une année et un mois où le jour n'est pas significatif.

DateTime

Représente l'heure civile (ou parfois l'heure physique).

Ce type peut représenter une heure civile de plusieurs manières :

  • Lorsque utc_offset est défini et que time_zone n'est pas défini : une heure civile d'un jour calendaire avec un décalage spécifique par rapport à l'heure UTC.
  • Lorsque time_zone est défini et que utc_offset ne l'est pas : une heure civile un jour donné dans un fuseau horaire spécifique.
  • Si ni time_zone ni utc_offset ne sont définis : une heure civile pour un jour du calendrier en heure locale.

La date est liée au calendrier grégorien proleptique.

Si l'année, le mois ou le jour sont définis sur 0, cela signifie que la valeur DateTime ne comporte pas d'année, de mois ou de jour spécifiques.

Ce type peut également être utilisé pour représenter une heure physique si tous les champs de date et d'heure sont définis et si l'un des cas de time_offset est défini. Envisagez d'utiliser le message Timestamp pour le temps physique. Si votre cas d'utilisation nécessite également de stocker le fuseau horaire de l'utilisateur, vous pouvez le faire dans un autre champ.

Ce type est plus flexible que ce que certaines applications peuvent souhaiter. Veillez à documenter et à valider les limites de votre application.

Champs
year

int32

Facultatif. Année de la date. Elle doit être comprise entre 1 et 9999, ou égale à 0 si vous spécifiez une date et heure sans année.

month

int32

Facultatif. Mois de l'année. Il doit être compris entre 1 et 12, ou égal à 0 si vous spécifiez une date et heure sans mois.

day

int32

Facultatif. Jour du mois. Il doit être compris entre 1 et 31, et valide pour l'année et le mois, ou égal à 0 si vous spécifiez une date et heure sans jour.

hours

int32

Facultatif. Heure de la journée au format 24 heures. Elle doit être comprise entre 0 et 23, et la valeur par défaut est 0 (minuit). Une API peut choisir d'autoriser la valeur "24:00:00" pour des cas tels que l'heure de fermeture des bureaux.

minutes

int32

Facultatif. Minutes de l'heure de la journée. Elle doit être comprise entre 0 et 59 (0 par défaut).

seconds

int32

Facultatif. Secondes de l'heure de la journée. Elles doivent normalement être comprises entre 0 et 59 (la valeur par défaut est 0). Une API peut autoriser la valeur 60 si elle autorise les secondes intercalaires.

nanos

int32

Facultatif. Fractions de secondes en nanosecondes. La valeur doit être comprise entre 0 et 999 999 999 (0 par défaut).

Champ d'union time_offset. Facultatif. Spécifie le décalage UTC ou le fuseau horaire de DateTime. Choisissez-en un avec soin, en sachant que les données de fuseau horaire peuvent changer à l'avenir (par exemple, si un pays modifie les dates de début et de fin de l'heure d'été, et que des valeurs DateTime futures de la plage concernée ont déjà été stockées). Si elle est omise, la valeur DateTime est considérée comme étant en heure locale. time_offset ne peut être qu'un des éléments suivants :
utc_offset

Duration

Décalage UTC. Doit être un nombre entier de secondes, compris entre -18 heures et +18 heures. Par exemple, un décalage UTC de -4:00 serait représenté par { seconds: -14400 }.

time_zone

TimeZone

Fuseau horaire

Expr

Représente une expression textuelle dans la syntaxe CEL (Common Expression Language). CEL est un langage d'expression de type C. La syntaxe et la sémantique de CEL sont documentées à l'adresse https://github.com/google/cel-spec.

Exemple (comparaison) :

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

Exemple (égalité) :

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

Exemple (logique) :

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

Exemple (manipulation de données) :

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

Les fonctions et variables exactes pouvant être référencées dans une expression sont déterminées par le service qui l'évalue. Pour en savoir plus, consultez la documentation relative au service.

Champs
expression

string

Représentation textuelle d'une expression à l'aide de la syntaxe CEL (Common Expression Language).

title

string

Facultatif. Titre de l'expression, sous forme de chaîne courte décrivant son objectif. Il peut par exemple être utilisé dans les interfaces utilisateur qui permettent de saisir l'expression.

description

string

Facultatif. Description de l'expression. Il s'agit d'un texte plus long décrivant l'expression (par exemple, lorsque l'utilisateur passe la souris sur celle-ci dans une interface utilisateur).

location

string

Facultatif. Chaîne indiquant l'emplacement de l'expression pour la création de rapports d'erreurs (par exemple, un nom de fichier et une position dans le fichier).

TimeZone

Représente un fuseau horaire de la base de données des fuseaux horaires IANA.

Champs
id

string

Fuseau horaire de la base de données des fuseaux horaires IANA. Par exemple, "America/New_York".

version

string

Facultatif. Numéro de version de la base de données des fuseaux horaires IANA. Par exemple, "2019a".