{
  "$schema" : "https://json-schema.org/draft/2020-12/schema",
  "$id" : "https://voltdb.com/voltsp/schemas/resource/python-engine",
  "title" : "Python-engine Resource Configuration",
  "description" : "This plugin allows execution of Python code on streamed data using the GraalVM Python engine.\n\n## Python API\n\nThe Python code can access the `input` data passed to the resource.\n\nThe Python code should define a function named `process` that takes the input data and returns the output data:\n\n```python\ndef process(input):\n    # ...\n    return output\n```\n\nTo read or write stage-scoped values via the stash, define `process_with_context` instead; it receives the\nstash context as a second argument:\n\n```python\ndef process_with_context(input, context):\n    context.stash(\"key\", input)\n    return context.get(\"other\")\n```\n\n## Security Considerations\n\nThe Python resource runs with limited permissions by default.\nIn this configuration, it is granted access to public Java methods and fields,\nallowing interaction with host objects such as calling methods like Map.get() or\naccessing simple properties.\n",
  "type" : "object",
  "properties" : {
    "python-engine" : {
      "type" : "object",
      "properties" : { },
      "additionalProperties" : false
    }
  },
  "required" : [ "python-engine" ],
  "additionalProperties" : false
}
