{
    "title": "job monitor",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "javaType": "com.sos.joc.model.joe.job.Monitor",
    "type": "object",
    "javaInterfaces": [
        "com.sos.joc.model.joe.common.IJSObject"
    ],
    "properties": {
        "name": {
            "description": "this field is only used for a monitor inside a job; not inside an external monitor file",
            "type": "string"
        },
        "ordering": {
            "type": "integer",
            "minimum": 0
        },
        "script": {
            "javaType": "com.sos.joc.model.joe.job.Script",
            "type": "object",
            "properties": {
                "language": {
                    "type": "string"
                },
                "javaClass": {
                    "type": "string"
                },
                "javaClassPath": {
                    "type": "string"
                },
                "dll": {
                    "type": "string"
                },
                "dotnetClass": {
                    "type": "string"
                },
                "comClass": {
                    "type": "string"
                },
                "includes": {
                    "type": "array",
                    "xmlElement": "include",
                    "items": {
                        "javaType": "com.sos.joc.model.joe.common.Include",
                        "type": "object",
                        "description": "usage of file and liveFile are exclusive",
                        "properties": {
                            "file": {
                                "type": "string"
                            },
                            "liveFile": {
                                "type": "string"
                            }
                        }
                    }
                },
                "content": {
                    "description": "cdata embedded script, e.g. javascript",
                    "type": "string"
                }
            }
        }
    }
}