{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "BackupEvent",
"oneOf": [
{
"type": "object",
"required": [
"FileWalkEvent"
],
"properties": {
"FileWalkEvent": {
"$ref": "#/definitions/FileWalkEvent"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"DownloadEvent"
],
"properties": {
"DownloadEvent": {
"$ref": "#/definitions/DownloadEvent"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"ZipEvent"
],
"properties": {
"ZipEvent": {
"$ref": "#/definitions/ZipEvent"
}
},
"additionalProperties": false
}
],
"definitions": {
"DownloadEvent": {
"oneOf": [
{
"type": "object",
"required": [
"TotalSize"
],
"properties": {
"TotalSize": {
"type": "integer",
"format": "uint",
"minimum": 0.0
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"TotalProgress"
],
"properties": {
"TotalProgress": {
"type": "integer",
"format": "uint",
"minimum": 0.0
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"DownloadFile"
],
"properties": {
"DownloadFile": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "integer",
"format": "uint",
"minimum": 0.0
}
],
"maxItems": 2,
"minItems": 2
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"DownloadFileProgress"
],
"properties": {
"DownloadFileProgress": {
"type": "integer",
"format": "uint",
"minimum": 0.0
}
},
"additionalProperties": false
}
]
},
"FileWalkEvent": {
"oneOf": [
{
"type": "object",
"required": [
"FetchDirectoryLines"
],
"properties": {
"FetchDirectoryLines": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "integer",
"format": "uint",
"minimum": 0.0
}
],
"maxItems": 2,
"minItems": 2
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"DirectoryLinesFound"
],
"properties": {
"DirectoryLinesFound": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "integer",
"format": "uint",
"minimum": 0.0
}
],
"maxItems": 2,
"minItems": 2
}
},
"additionalProperties": false
}
]
},
"ZipEvent": {
"oneOf": [
{
"type": "object",
"required": [
"TotalSize"
],
"properties": {
"TotalSize": {
"type": "integer",
"format": "uint",
"minimum": 0.0
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"TotalProgress"
],
"properties": {
"TotalProgress": {
"type": "integer",
"format": "uint",
"minimum": 0.0
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"ZipFile"
],
"properties": {
"ZipFile": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "integer",
"format": "uint",
"minimum": 0.0
}
],
"maxItems": 2,
"minItems": 2
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"ZipFileProgress"
],
"properties": {
"ZipFileProgress": {
"type": "integer",
"format": "uint",
"minimum": 0.0
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"ZipDir"
],
"properties": {
"ZipDir": {
"type": "string"
}
},
"additionalProperties": false
}
]
}
}
}