{
  "$schema" : "https://json-schema.org/draft/2020-12/schema",
  "$id" : "https://voltdb.com/voltsp/schemas/source/generate",
  "title" : "Generate Source Configuration",
  "description" : "The `generate` source will generate new events at a prescribed rate.",
  "type" : "object",
  "properties" : {
    "generate" : {
      "type" : "object",
      "properties" : {
        "tps" : {
          "type" : "number",
          "description" : "The rate limit in transactions per second",
          "minimum" : 4.9E-324,
          "maximum" : 1.7976931348623157E308
        },
        "generator" : {
          "type" : "string",
          "description" : "A Supplier that produces each data item"
        },
        "eventsPerBatch" : {
          "type" : "integer",
          "description" : "Number of events to generate per batch",
          "default" : "1000",
          "minimum" : -2147483648,
          "maximum" : 2147483647
        },
        "maxEventCount" : {
          "type" : "integer",
          "description" : "Maximum number of events to generate, default is '0' which means unlimited",
          "default" : "0",
          "minimum" : -2147483648,
          "maximum" : 2147483647
        }
      },
      "required" : [ "tps", "generator" ],
      "additionalProperties" : false
    }
  },
  "required" : [ "generate" ],
  "additionalProperties" : false
}
