# coding: utf-8 """ InfluxDB OSS API Service. The InfluxDB v2 API provides a programmatic interface for all interactions with InfluxDB. Access the InfluxDB API using the `/api/v2/` endpoint. # noqa: E501 OpenAPI spec version: 2.0.0 Generated by: https://openapi-generator.tech """ import pprint import re # noqa: F401 class Dialect(object): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. """ """ Attributes: openapi_types (dict): The key is attribute name and the value is attribute type. attribute_map (dict): The key is attribute name and the value is json key in definition. """ openapi_types = { 'header': 'bool', 'delimiter': 'str', 'annotations': 'list[str]', 'comment_prefix': 'str', 'date_time_format': 'str' } attribute_map = { 'header': 'header', 'delimiter': 'delimiter', 'annotations': 'annotations', 'comment_prefix': 'commentPrefix', 'date_time_format': 'dateTimeFormat' } def __init__(self, header=True, delimiter=',', annotations=None, comment_prefix='#', date_time_format='RFC3339'): # noqa: E501,D401,D403 """Dialect - a model defined in OpenAPI.""" # noqa: E501 self._header = None self._delimiter = None self._annotations = None self._comment_prefix = None self._date_time_format = None self.discriminator = None if header is not None: self.header = header if delimiter is not None: self.delimiter = delimiter if annotations is not None: self.annotations = annotations if comment_prefix is not None: self.comment_prefix = comment_prefix if date_time_format is not None: self.date_time_format = date_time_format @property def header(self): """Get the header of this Dialect. If true, the results contain a header row. :return: The header of this Dialect. :rtype: bool """ # noqa: E501 return self._header @header.setter def header(self, header): """Set the header of this Dialect. If true, the results contain a header row. :param header: The header of this Dialect. :type: bool """ # noqa: E501 self._header = header @property def delimiter(self): """Get the delimiter of this Dialect. The separator used between cells. Default is a comma (`,`). :return: The delimiter of this Dialect. :rtype: str """ # noqa: E501 return self._delimiter @delimiter.setter def delimiter(self, delimiter): """Set the delimiter of this Dialect. The separator used between cells. Default is a comma (`,`). :param delimiter: The delimiter of this Dialect. :type: str """ # noqa: E501 if delimiter is not None and len(delimiter) > 1: raise ValueError("Invalid value for `delimiter`, length must be less than or equal to `1`") # noqa: E501 if delimiter is not None and len(delimiter) < 1: raise ValueError("Invalid value for `delimiter`, length must be greater than or equal to `1`") # noqa: E501 self._delimiter = delimiter @property def annotations(self): """Get the annotations of this Dialect. Annotation rows to include in the results. An _annotation_ is metadata associated with an object (column) in the data model. #### Related guides - See [Annotated CSV annotations](https://docs.influxdata.com/influxdb/latest/reference/syntax/annotated-csv/#annotations) for examples and more information. For more information about **annotations** in tabular data, see [W3 metadata vocabulary for tabular data](https://www.w3.org/TR/2015/REC-tabular-data-model-20151217/#columns). :return: The annotations of this Dialect. :rtype: list[str] """ # noqa: E501 return self._annotations @annotations.setter def annotations(self, annotations): """Set the annotations of this Dialect. Annotation rows to include in the results. An _annotation_ is metadata associated with an object (column) in the data model. #### Related guides - See [Annotated CSV annotations](https://docs.influxdata.com/influxdb/latest/reference/syntax/annotated-csv/#annotations) for examples and more information. For more information about **annotations** in tabular data, see [W3 metadata vocabulary for tabular data](https://www.w3.org/TR/2015/REC-tabular-data-model-20151217/#columns). :param annotations: The annotations of this Dialect. :type: list[str] """ # noqa: E501 allowed_values = ["group", "datatype", "default"] # noqa: E501 if not set(annotations).issubset(set(allowed_values)): raise ValueError( "Invalid values for `annotations` [{0}], must be a subset of [{1}]" # noqa: E501 .format(", ".join(map(str, set(annotations) - set(allowed_values))), # noqa: E501 ", ".join(map(str, allowed_values))) ) self._annotations = annotations @property def comment_prefix(self): """Get the comment_prefix of this Dialect. The character prefixed to comment strings. Default is a number sign (`#`). :return: The comment_prefix of this Dialect. :rtype: str """ # noqa: E501 return self._comment_prefix @comment_prefix.setter def comment_prefix(self, comment_prefix): """Set the comment_prefix of this Dialect. The character prefixed to comment strings. Default is a number sign (`#`). :param comment_prefix: The comment_prefix of this Dialect. :type: str """ # noqa: E501 if comment_prefix is not None and len(comment_prefix) > 1: raise ValueError("Invalid value for `comment_prefix`, length must be less than or equal to `1`") # noqa: E501 if comment_prefix is not None and len(comment_prefix) < 0: raise ValueError("Invalid value for `comment_prefix`, length must be greater than or equal to `0`") # noqa: E501 self._comment_prefix = comment_prefix @property def date_time_format(self): """Get the date_time_format of this Dialect. The format for timestamps in results. Default is [`RFC3339` date/time format](https://docs.influxdata.com/influxdb/latest/reference/glossary/#rfc3339-timestamp). To include nanoseconds in timestamps, use `RFC3339Nano`. #### Example formatted date/time values | Format | Value | |:------------|:----------------------------| | `RFC3339` | `"2006-01-02T15:04:05Z07:00"` | | `RFC3339Nano` | `"2006-01-02T15:04:05.999999999Z07:00"` | :return: The date_time_format of this Dialect. :rtype: str """ # noqa: E501 return self._date_time_format @date_time_format.setter def date_time_format(self, date_time_format): """Set the date_time_format of this Dialect. The format for timestamps in results. Default is [`RFC3339` date/time format](https://docs.influxdata.com/influxdb/latest/reference/glossary/#rfc3339-timestamp). To include nanoseconds in timestamps, use `RFC3339Nano`. #### Example formatted date/time values | Format | Value | |:------------|:----------------------------| | `RFC3339` | `"2006-01-02T15:04:05Z07:00"` | | `RFC3339Nano` | `"2006-01-02T15:04:05.999999999Z07:00"` | :param date_time_format: The date_time_format of this Dialect. :type: str """ # noqa: E501 self._date_time_format = date_time_format def to_dict(self): """Return the model properties as a dict.""" result = {} for attr, _ in self.openapi_types.items(): value = getattr(self, attr) if isinstance(value, list): result[attr] = list(map( lambda x: x.to_dict() if hasattr(x, "to_dict") else x, value )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() elif isinstance(value, dict): result[attr] = dict(map( lambda item: (item[0], item[1].to_dict()) if hasattr(item[1], "to_dict") else item, value.items() )) else: result[attr] = value return result def to_str(self): """Return the string representation of the model.""" return pprint.pformat(self.to_dict()) def __repr__(self): """For `print` and `pprint`.""" return self.to_str() def __eq__(self, other): """Return true if both objects are equal.""" if not isinstance(other, Dialect): return False return self.__dict__ == other.__dict__ def __ne__(self, other): """Return true if both objects are not equal.""" return not self == other