Source code for models.object_meta

# -*- coding: utf-8 -*-
# Copyright 2021 Cohesity Inc.

import cohesity_management_sdk.models.object_meta_annotations_entry
import cohesity_management_sdk.models.object_meta_labels_entry

[docs]class ObjectMeta(object): """Implementation of the 'ObjectMeta' model. Attributes: annotations (list of ObjectMeta_AnnotationsEntry): Annotations added to the object. name (string): Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. labels (list of ObjectMeta_LabelsEntry): A set of key-value pairs, capturing the labels of a k8s object. namespace (string): Namespace defines the space within each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty. uuid (string): UUID of the object queried. """ # Create a mapping from Model property names to API property names _names = { "annotations":'annotations', "name":'name', "labels":'labels', "namespace":'namespace', "uuid":'uuid' } def __init__(self, annotations=None, name=None, labels=None, namespace=None, uuid=None): """Constructor for the ObjectMeta class""" # Initialize members of the class self.annotations = annotations = name self.labels = labels self.namespace = namespace self.uuid = uuid
[docs] @classmethod def from_dictionary(cls, dictionary): """Creates an instance of this model from a dictionary Args: dictionary (dictionary): A dictionary representation of the object as obtained from the deserialization of the server's response. The keys MUST match property names in the API description. Returns: object: An instance of this structure class. """ if dictionary is None: return None # Extract variables from the dictionary annotations = None if dictionary.get('annotations'): annotations = list() for structure in dictionary.get('annotations'): annotations.append(cohesity_management_sdk.models.object_meta_annotations_entry.ObjectMeta_AnnotationsEntry.from_dictionary(structure)) name = dictionary.get('name') labels = None if dictionary.get('labels'): labels = list() for structure in dictionary.get('labels'): labels.append(cohesity_management_sdk.models.object_meta_labels_entry.ObjectMeta_LabelsEntry.from_dictionary(structure)) uuid = dictionary.get('uuid') namespace = dictionary.get('namespace') # Return an object of this model return cls(annotations, name, labels, namespace, uuid)