Skip to content
Snippets Groups Projects
cos_schedulers.json 3.74 KiB
{
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "$id": "http://example.com/example.json",
    "type": "array",
    "default": {},
    "title": "Root Schema",
    "required": [
        "cos_schedulers"
    ],
    "properties": {
        "cos_schedulers": {
            "type": "array",
            "default": [],
            "title": "The cos_schedulers Schema",
            "items": {
                "type": "object",
                "title": "A Schema",
                "required": [
                    "name",
                    "transmit_rate",
                    "buffer_size",
                    "priority",
                    "drop_profile_map"
                ],
                "properties": {
                    "name": {
                        "type": "string",
                        "title": "The name Schema"
                    },
                    "transmit_rate": {
                        "type": "object",
                        "title": "The transmit_rate Schema",
                        "required": [
                            "unit",
                            "value"
                        ],
                        "properties": {
                            "unit": {
                                "type": "string",
                                "title": "The unit Schema"
                            },
                            "value": {
                                "type": "integer",
                                "title": "The value Schema"
                            }
                        }
                    },
                    "buffer_size": {
                        "type": "object",
                        "title": "The buffer_size Schema",
                        "required": [
                            "unit",
                            "value"
                        ],
                        "properties": {
                            "unit": {
                                "type": "string",
                                "title": "The unit Schema"
                            },
                            "value": {
                                "type": [
                                    "string",
                                    "integer"
                                ],
                                "title": "The value Schema"
                            }
                        }
                    },
                    "priority": {
                        "type": "string",
                        "title": "The priority Schema"
                    },
                    "drop_profile_map": {
                        "type": "object",
                        "default": {},
                        "title": "The drop_profile_map Schema",
                        "required": [
                            "loss_priority",
                            "protocol",
                            "drop_profile"
                        ],
                        "properties": {
                            "loss_priority": {
                                "type": "string",
                                "default": "",
                                "title": "The loss_priority Schema"
                            },
                            "protocol": {
                                "type": "string",
                                "default": "",
                                "title": "The protocol Schema"
                            },
                            "drop_profile": {
                                "type": "string",
                                "default": "",
                                "title": "The drop_profile Schema"
                            }
                        }
                    }
                }
            }
        }
    }
}