Files
StarPilot/starpilot/third_party/influxdb_client/domain/patch_retention_rule.py
T
firestar5683 3d8af2361e Rename
2026-03-27 18:05:44 -05:00

165 lines
6.2 KiB
Python

# 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 PatchRetentionRule(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 = {
'type': 'str',
'every_seconds': 'int',
'shard_group_duration_seconds': 'int'
}
attribute_map = {
'type': 'type',
'every_seconds': 'everySeconds',
'shard_group_duration_seconds': 'shardGroupDurationSeconds'
}
def __init__(self, type='expire', every_seconds=2592000, shard_group_duration_seconds=None): # noqa: E501,D401,D403
"""PatchRetentionRule - a model defined in OpenAPI.""" # noqa: E501
self._type = None
self._every_seconds = None
self._shard_group_duration_seconds = None
self.discriminator = None
if type is not None:
self.type = type
self.every_seconds = every_seconds
if shard_group_duration_seconds is not None:
self.shard_group_duration_seconds = shard_group_duration_seconds
@property
def type(self):
"""Get the type of this PatchRetentionRule.
:return: The type of this PatchRetentionRule.
:rtype: str
""" # noqa: E501
return self._type
@type.setter
def type(self, type):
"""Set the type of this PatchRetentionRule.
:param type: The type of this PatchRetentionRule.
:type: str
""" # noqa: E501
self._type = type
@property
def every_seconds(self):
"""Get the every_seconds of this PatchRetentionRule.
The number of seconds to keep data. Default duration is `2592000` (30 days). `0` represents infinite retention.
:return: The every_seconds of this PatchRetentionRule.
:rtype: int
""" # noqa: E501
return self._every_seconds
@every_seconds.setter
def every_seconds(self, every_seconds):
"""Set the every_seconds of this PatchRetentionRule.
The number of seconds to keep data. Default duration is `2592000` (30 days). `0` represents infinite retention.
:param every_seconds: The every_seconds of this PatchRetentionRule.
:type: int
""" # noqa: E501
if every_seconds is None:
raise ValueError("Invalid value for `every_seconds`, must not be `None`") # noqa: E501
if every_seconds is not None and every_seconds < 0: # noqa: E501
raise ValueError("Invalid value for `every_seconds`, must be a value greater than or equal to `0`") # noqa: E501
self._every_seconds = every_seconds
@property
def shard_group_duration_seconds(self):
"""Get the shard_group_duration_seconds of this PatchRetentionRule.
The [shard group duration](https://docs.influxdata.com/influxdb/latest/reference/glossary/#shard). The number of seconds that each shard group covers. #### InfluxDB Cloud - Doesn't use `shardGroupDurationsSeconds`. #### InfluxDB OSS - Default value depends on the [bucket retention period](https://docs.influxdata.com/influxdb/latest/reference/internals/shards/#shard-group-duration). #### Related guides - InfluxDB [shards and shard groups](https://docs.influxdata.com/influxdb/latest/reference/internals/shards/)
:return: The shard_group_duration_seconds of this PatchRetentionRule.
:rtype: int
""" # noqa: E501
return self._shard_group_duration_seconds
@shard_group_duration_seconds.setter
def shard_group_duration_seconds(self, shard_group_duration_seconds):
"""Set the shard_group_duration_seconds of this PatchRetentionRule.
The [shard group duration](https://docs.influxdata.com/influxdb/latest/reference/glossary/#shard). The number of seconds that each shard group covers. #### InfluxDB Cloud - Doesn't use `shardGroupDurationsSeconds`. #### InfluxDB OSS - Default value depends on the [bucket retention period](https://docs.influxdata.com/influxdb/latest/reference/internals/shards/#shard-group-duration). #### Related guides - InfluxDB [shards and shard groups](https://docs.influxdata.com/influxdb/latest/reference/internals/shards/)
:param shard_group_duration_seconds: The shard_group_duration_seconds of this PatchRetentionRule.
:type: int
""" # noqa: E501
self._shard_group_duration_seconds = shard_group_duration_seconds
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, PatchRetentionRule):
return False
return self.__dict__ == other.__dict__
def __ne__(self, other):
"""Return true if both objects are not equal."""
return not self == other