Wget · JSON Structure

Wget2 Plugin Structure

Structure of a Wget2 plugin definition using the libwget plugin API.

Type: Properties: 0
CLIClientsHTTP ClientFile DownloadOpen SourceGNU

Wget2 Plugin is a JSON Structure definition published by Wget.

Meta-schema:

JSON Structure

wget2-plugin-structure.json Raw ↑
{
  "name": "Wget2 Plugin",
  "description": "Structure of a Wget2 plugin definition using the libwget plugin API.",
  "fields": [
    { "name": "pluginName", "type": "string", "required": true, "description": "Plugin's registered name." },
    { "name": "initializerFunction", "type": "string", "required": true, "description": "Entry point: wget_plugin_initializer()." },
    {
      "name": "callbacks",
      "type": "object",
      "required": false,
      "description": "Registered plugin callbacks.",
      "fields": [
        {
          "name": "finalizer",
          "type": "object",
          "required": false,
          "fields": [
            { "name": "function", "type": "string", "required": true },
            { "name": "receivesExitStatus", "type": "boolean", "required": false }
          ]
        },
        {
          "name": "optionHandler",
          "type": "object",
          "required": false,
          "fields": [
            { "name": "function", "type": "string", "required": true },
            { "name": "optionPattern", "type": "string", "required": false }
          ]
        },
        {
          "name": "urlFilter",
          "type": "object",
          "required": false,
          "fields": [
            { "name": "function", "type": "string", "required": true },
            { "name": "actions", "type": "array", "items": "string", "required": false }
          ]
        },
        {
          "name": "postProcessor",
          "type": "object",
          "required": false,
          "fields": [
            { "name": "function", "type": "string", "required": true },
            { "name": "fileAccess", "type": "array", "items": "string", "required": false }
          ]
        }
      ]
    },
    {
      "name": "downloadedFile",
      "type": "object",
      "required": false,
      "description": "Represents a downloaded file in a post-processor callback.",
      "fields": [
        { "name": "sourceUrl", "type": "string", "format": "uri", "required": false },
        { "name": "localFilename", "type": "string", "required": false },
        { "name": "size", "type": "integer", "format": "int64", "required": false },
        { "name": "recurse", "type": "boolean", "required": false },
        { "name": "recurseUrls", "type": "array", "items": "string", "required": false }
      ]
    }
  ]
}