{
    "title": "JS JobClass configuration",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "javaType": "com.sos.joc.model.inventory.jobclass.JobClassPublish",
    "type": "object",
    "extends": {
        "javaType": "com.sos.joc.model.publish.ControllerObject"
    },
    "properties": {
        "content": {
            "javaType": "com.sos.sign.model.jobclass.JobClass",
            "type": "object",
            "javaInterfaces": [
                "com.sos.joc.model.common.IDeployObject"
            ],
            "required": [
                "TYPE",
                "path",
                "versionId"
            ],
            "propertyOrder": [
                "TYPE",
                "path",
                "versionId",
                "maxProcesses",
                "priority"
            ],
            "description": "deploy object with fixed property 'TYPE':'jobClass'",
            "properties": {
                "TYPE": {
                    "javaType": "com.sos.inventory.model.deploy.DeployType",
                    "type": "string",
                    "enum": [
                        "Workflow",
                        "JobClass",
                        "Lock",
                        "FileWatch",
                        "JobResource",
                        "Board"
                    ],
                    "javaEnumNames": [
                        "Workflow",
                        "JobClass",
                        "Lock",
                        "FileWatch",
                        "JobResource",
                        "Board"
                    ],
                    "default": "Workflow"
                },
                "path": {
                    "type": "string",
                    "pattern": "^[^<>]*$",
                    "maxLength": 255
                },
                "versionId": {
                    "type": "string",
                    "pattern": "^[^<>]*$",
                    "maxLength": 255
                },
                "maxProcesses": {
                    "type": "integer",
                    "minimum": 0,
                    "default": 30
                },
                "priority": {
                    "type": "string",
                    "pattern": "^[^<>]*$",
                    "maxLength": 100
                }
            },
            "additionalProperties": false
        }
    }
}