package app.fedilab.fedilabtube.client.data;

import android.text.SpannableStringBuilder;

import com.google.gson.annotations.SerializedName;

import java.util.Date;
import java.util.List;

@SuppressWarnings({"unused", "RedundantSuppression"})
public class InstanceData {

    @SerializedName("total")
    public int total;
    @SerializedName("data")
    public List<Instance> data;


    public static class Instance {

        @SerializedName("autoBlacklistUserVideosEnabled")
        private boolean autoBlacklistUserVideosEnabled;
        @SerializedName("categories")
        private List<Integer> categories;
        @SerializedName("country")
        private String country;
        @SerializedName("createdAt")
        private Date createdAt;
        @SerializedName("defaultNSFWPolicy")
        private String defaultNSFWPolicy;
        @SerializedName("health")
        private int health;
        @SerializedName("host")
        private String host;
        @SerializedName("id")
        private String id;
        @SerializedName("languages")
        private List<String> languages;
        @SerializedName("name")
        private String name;
        @SerializedName("shortDescription")
        private String shortDescription;
        @SerializedName("signupAllowed")
        private boolean signupAllowed;
        @SerializedName("supportsIPv6")
        private boolean supportsIPv6;
        @SerializedName("totalInstanceFollowers")
        private int totalInstanceFollowers;
        @SerializedName("totalInstanceFollowing")
        private int totalInstanceFollowing;
        @SerializedName("totalLocalVideos")
        private int totalLocalVideos;
        @SerializedName("totalUsers")
        private int totalUsers;
        @SerializedName("totalVideos")
        private int totalVideos;
        @SerializedName("userVideoQuota")
        private String userVideoQuota;
        @SerializedName("version")
        private String version;
        @SerializedName("isNSFW")
        private boolean isNSFW;
        private SpannableStringBuilder spannableStringBuilder;

        public boolean isAutoBlacklistUserVideosEnabled() {
            return autoBlacklistUserVideosEnabled;
        }

        public void setAutoBlacklistUserVideosEnabled(boolean autoBlacklistUserVideosEnabled) {
            this.autoBlacklistUserVideosEnabled = autoBlacklistUserVideosEnabled;
        }

        public String getCountry() {
            return country;
        }

        public void setCountry(String country) {
            this.country = country;
        }

        public Date getCreatedAt() {
            return createdAt;
        }

        public void setCreatedAt(Date createdAt) {
            this.createdAt = createdAt;
        }

        public String getDefaultNSFWPolicy() {
            return defaultNSFWPolicy;
        }

        public void setDefaultNSFWPolicy(String defaultNSFWPolicy) {
            this.defaultNSFWPolicy = defaultNSFWPolicy;
        }

        public int getHealth() {
            return health;
        }

        public void setHealth(int health) {
            this.health = health;
        }

        public String getHost() {
            return host;
        }

        public void setHost(String host) {
            this.host = host;
        }

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getShortDescription() {
            return shortDescription;
        }

        public void setShortDescription(String shortDescription) {
            this.shortDescription = shortDescription;
        }

        public boolean isSignupAllowed() {
            return signupAllowed;
        }

        public void setSignupAllowed(boolean signupAllowed) {
            this.signupAllowed = signupAllowed;
        }

        public boolean isSupportsIPv6() {
            return supportsIPv6;
        }

        public void setSupportsIPv6(boolean supportsIPv6) {
            this.supportsIPv6 = supportsIPv6;
        }

        public int getTotalInstanceFollowers() {
            return totalInstanceFollowers;
        }

        public void setTotalInstanceFollowers(int totalInstanceFollowers) {
            this.totalInstanceFollowers = totalInstanceFollowers;
        }

        public int getTotalInstanceFollowing() {
            return totalInstanceFollowing;
        }

        public void setTotalInstanceFollowing(int totalInstanceFollowing) {
            this.totalInstanceFollowing = totalInstanceFollowing;
        }

        public int getTotalLocalVideos() {
            return totalLocalVideos;
        }

        public void setTotalLocalVideos(int totalLocalVideos) {
            this.totalLocalVideos = totalLocalVideos;
        }

        public int getTotalUsers() {
            return totalUsers;
        }

        public void setTotalUsers(int totalUsers) {
            this.totalUsers = totalUsers;
        }

        public int getTotalVideos() {
            return totalVideos;
        }

        public void setTotalVideos(int totalVideos) {
            this.totalVideos = totalVideos;
        }

        public String getVersion() {
            return version;
        }

        public void setVersion(String version) {
            this.version = version;
        }

        public boolean isNSFW() {
            return isNSFW;
        }

        public void setNSFW(boolean NSFW) {
            isNSFW = NSFW;
        }

        public String getUserVideoQuota() {
            return userVideoQuota;
        }

        public void setUserVideoQuota(String userVideoQuota) {
            this.userVideoQuota = userVideoQuota;
        }

        public SpannableStringBuilder getSpannableStringBuilder() {
            return spannableStringBuilder;
        }

        public void setSpannableStringBuilder(SpannableStringBuilder spannableStringBuilder) {
            this.spannableStringBuilder = spannableStringBuilder;
        }

        public List<String> getLanguages() {
            return languages;
        }

        public void setLanguages(List<String> languages) {
            this.languages = languages;
        }

        public List<Integer> getCategories() {
            return categories;
        }

        public void setCategories(List<Integer> categories) {
            this.categories = categories;
        }
    }

}

