Coverage for skema/gromet/metadata/metadata.py: 62%
52 statements
« prev ^ index » next coverage.py v7.5.0, created at 2024-04-30 17:15 +0000
« prev ^ index » next coverage.py v7.5.0, created at 2024-04-30 17:15 +0000
1# coding: utf-8
3"""
4 GroMEt Metadata spec
6 Grounded Model Exchange (GroMEt) Metadata schema specification __Using Swagger to Generate Class Structure__ To automatically generate Python or Java models corresponding to this document, you can use [swagger-codegen](https://swagger.io/tools/swagger-codegen/). We can use this to generate client code based off of this spec that will also generate the class structure. 1. Install via the method described for your operating system [here](https://github.com/swagger-api/swagger-codegen#Prerequisites). Make sure to install a version after 3.0 that will support openapi 3. 2. Run swagger-codegen with the options in the example below. The URL references where the yaml for this documentation is stored on github. Make sure to replace CURRENT_VERSION with the correct version. (The current version is `0.1.4`.) To generate Java classes rather, change the `-l python` to `-l java`. Change the value to the `-o` option to the desired output location. ``` swagger-codegen generate -l python -o ./client -i https://raw.githubusercontent.com/ml4ai/automates-v2/master/docs/source/gromet_metadata_v{CURRENT_VERSION}.yaml ``` 3. Once it executes, the client code will be generated at your specified location. For python, the classes will be located in `$OUTPUT_PATH/swagger_client/models/`. For java, they will be located in `$OUTPUT_PATH/src/main/java/io/swagger/client/model/` If generating GroMEt Metadata schema data model classes in SKEMA (AutoMATES), then after generating the above, follow the instructions here: ``` <automates>/automates/model_assembly/gromet/metadata/README.md ``` # noqa: E501
8 OpenAPI spec version: 0.1.8
9 Contact: claytonm@arizona.edu
10 Generated by: https://github.com/swagger-api/swagger-codegen.git
11"""
13import pprint
14import re # noqa: F401
16import six
18class Metadata(object):
19 """NOTE: This class is auto generated by the swagger code generator program.
21 Do not edit the class manually.
22 """
23 """
24 Attributes:
25 swagger_types (dict): The key is attribute name
26 and the value is attribute type.
27 attribute_map (dict): The key is attribute name
28 and the value is json key in definition.
29 """
30 swagger_types = {
31 'is_metadatum': 'bool',
32 'provenance': 'Provenance'
33 }
35 attribute_map = {
36 'is_metadatum': 'is_metadatum',
37 'provenance': 'provenance'
38 }
40 def __init__(self, is_metadatum=True, provenance=None): # noqa: E501
41 """Metadata - a model defined in Swagger""" # noqa: E501
42 self._is_metadatum = None
43 self._provenance = None
44 self.discriminator = None
45 if is_metadatum is not None:
46 self.is_metadatum = is_metadatum
47 if provenance is not None:
48 self.provenance = provenance
50 @property
51 def is_metadatum(self):
52 """Gets the is_metadatum of this Metadata. # noqa: E501
55 :return: The is_metadatum of this Metadata. # noqa: E501
56 :rtype: bool
57 """
58 return self._is_metadatum
60 @is_metadatum.setter
61 def is_metadatum(self, is_metadatum):
62 """Sets the is_metadatum of this Metadata.
65 :param is_metadatum: The is_metadatum of this Metadata. # noqa: E501
66 :type: bool
67 """
69 self._is_metadatum = is_metadatum
71 @property
72 def provenance(self):
73 """Gets the provenance of this Metadata. # noqa: E501
76 :return: The provenance of this Metadata. # noqa: E501
77 :rtype: Provenance
78 """
79 return self._provenance
81 @provenance.setter
82 def provenance(self, provenance):
83 """Sets the provenance of this Metadata.
86 :param provenance: The provenance of this Metadata. # noqa: E501
87 :type: Provenance
88 """
90 self._provenance = provenance
92 def to_dict(self):
93 """Returns the model properties as a dict"""
94 result = {}
96 for attr, _ in six.iteritems(self.swagger_types):
97 value = getattr(self, attr)
98 if isinstance(value, list):
99 result[attr] = list(map(
100 lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
101 value
102 ))
103 elif hasattr(value, "to_dict"):
104 result[attr] = value.to_dict()
105 elif isinstance(value, dict):
106 result[attr] = dict(map(
107 lambda item: (item[0], item[1].to_dict())
108 if hasattr(item[1], "to_dict") else item,
109 value.items()
110 ))
111 else:
112 result[attr] = value
113 if issubclass(Metadata, dict):
114 for key, value in self.items():
115 result[key] = value
117 return result
119 def to_str(self):
120 """Returns the string representation of the model"""
121 return pprint.pformat(self.to_dict())
123 def __repr__(self):
124 """For `print` and `pprint`"""
125 return self.to_str()
127 def __eq__(self, other):
128 """Returns true if both objects are equal"""
129 if not isinstance(other, Metadata):
130 return False
132 return self.__dict__ == other.__dict__
134 def __ne__(self, other):
135 """Returns true if both objects are not equal"""
136 return not self == other