/*
* 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.
*
* OpenAPI spec version: 2.0.0
*
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Linq;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Runtime.Serialization;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using OpenAPIDateConverter = InfluxDB.Client.Api.Client.OpenAPIDateConverter;
namespace InfluxDB.Client.Api.Domain
{
///
/// Bucket
///
[DataContract]
public partial class Bucket : IEquatable
{
///
/// Defines Type
///
[JsonConverter(typeof(StringEnumConverter))]
public enum TypeEnum
{
///
/// Enum User for value: user
///
[EnumMember(Value = "user")] User = 1,
///
/// Enum System for value: system
///
[EnumMember(Value = "system")] System = 2
}
///
/// Gets or Sets Type
///
[DataMember(Name = "type", EmitDefaultValue = false)]
public TypeEnum? Type { get; set; }
///
/// Gets or Sets SchemaType
///
[DataMember(Name = "schemaType", EmitDefaultValue = false)]
public SchemaType? SchemaType { get; set; }
///
/// Initializes a new instance of the class.
///
[JsonConstructorAttribute]
protected Bucket()
{
}
///
/// Initializes a new instance of the class.
///
/// links.
/// name (required).
/// description.
/// orgID.
/// rp.
/// schemaType.
/// Rules to expire or retain data. No rules means data never expires. (required).
/// labels.
public Bucket(BucketLinks links = default, string name = default, string description = default,
string orgID = default, string rp = default, SchemaType? schemaType = default,
List retentionRules = default, List