{
  "id": "Database.batchable",
  "nodeType": "interface",
  "name": "Batchable",
  "namespace": "Database",
  "startToken": {
    "type": "declaration.entity.name.class",
    "text": "Batchable",
    "textToLower": "batchable",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "declaration.entity.name.class_Batchable_-1:0"
  },
  "order": 0,
  "memberOrder": 0,
  "accessModifier": {
    "type": "keyword.modifier.access",
    "text": "global",
    "textToLower": "global",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "keyword.modifier.access_global_-1:0"
  },
  "sharingModifier": {
    "type": "keyword.modifier.sharing",
    "text": "without sharing",
    "textToLower": "without sharing",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "keyword.modifier.sharing_without sharing_-1:0"
  },
  "description": "The class that implements this interface can be executed as a batch Apex job.",
  "documentation": "https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_interface_database_batchable.htm",
  "classes": {},
  "interfaces": {},
  "enums": {},
  "variables": {},
  "methods": {
    "execute(database.batchablecontext,list<sobject>)": {
      "id": "Database.batchable.method.execute(database.batchablecontext,list<sobject>)",
      "nodeType": "method",
      "name": "execute",
      "startToken": {
        "type": "declaration.entity.name.function",
        "text": "execute",
        "textToLower": "execute",
        "isAux": false,
        "range": {
          "start": {
            "line": -1,
            "character": 0
          },
          "end": {
            "line": -1,
            "character": 0
          },
          "isEmpty": true,
          "isSingleLine": true
        },
        "id": "declaration.entity.name.function_execute_-1:0"
      },
      "parentId": "Database.batchable",
      "order": 1,
      "memberOrder": 1,
      "accessModifier": {
        "type": "keyword.modifier.access",
        "text": "public",
        "textToLower": "public",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 0
          },
          "end": {
            "line": 0,
            "character": 6
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_public_0:0"
      },
      "signature": "public void execute(Database.BatchableContext jobId, List<sObject> recordList)",
      "overrideSignature": "public override void execute(Database.BatchableContext jobId, List<sObject> recordList)",
      "simplifiedSignature": "execute(Database.BatchableContext,List<sObject>)",
      "datatype": {
        "id": "Database.batchable.execute.datatype.void",
        "nodeType": "datatype",
        "name": "void",
        "startToken": {
          "type": "datatype.primitive",
          "text": "void",
          "textToLower": "void",
          "isAux": false,
          "range": {
            "start": {
              "line": 0,
              "character": 7
            },
            "end": {
              "line": 0,
              "character": 11
            },
            "isEmpty": false,
            "isSingleLine": true
          },
          "id": "token.type.identifier_void_0:7"
        },
        "parentId": "Database.batchable.execute",
        "order": 0,
        "memberOrder": 0,
        "type": "void"
      },
      "description": "Gets invoked when the batch job executes and operates on one batch of records. Contains or calls the main execution logic for the batch job.",
      "parentName": "Batchable",
      "variables": {},
      "params": {
        "jobid": {
          "id": "Database.batchable.method.execute(database.batchablecontext,list<sobject>).varParam.jobid",
          "nodeType": "variable",
          "name": "jobId",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "jobId",
            "textToLower": "jobid",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 46
              },
              "end": {
                "line": 0,
                "character": 51
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_jobId_0:46"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "jobId",
            "textToLower": "jobid",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 46
              },
              "end": {
                "line": 0,
                "character": 51
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_jobId_0:46"
          },
          "parentId": "Database.batchable.method.execute(database.batchablecontext,list<sobject>)",
          "order": 1,
          "memberOrder": 1,
          "datatype": {
            "id": "Database.batchable.execute.datatype.Database.BatchableContext",
            "nodeType": "datatype",
            "name": "Database.BatchableContext",
            "startToken": {
              "type": "datatype.support.namespace",
              "text": "Database",
              "textToLower": "database",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 20
                },
                "end": {
                  "line": 0,
                  "character": 28
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_Database_0:20"
            },
            "parentId": "Database.batchable.execute",
            "order": 0,
            "memberOrder": 0,
            "type": "Database.BatchableContext"
          },
          "description": "Contains the job ID.",
          "scope": null
        },
        "recordlist": {
          "id": "Database.batchable.method.execute(database.batchablecontext,list<sobject>).varParam.recordlist",
          "nodeType": "variable",
          "name": "recordList",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "recordList",
            "textToLower": "recordlist",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 67
              },
              "end": {
                "line": 0,
                "character": 77
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_recordList_0:67"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "recordList",
            "textToLower": "recordlist",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 67
              },
              "end": {
                "line": 0,
                "character": 77
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_recordList_0:67"
          },
          "parentId": "Database.batchable.method.execute(database.batchablecontext,list<sobject>)",
          "order": 2,
          "memberOrder": 2,
          "datatype": {
            "id": "Database.batchable.execute.datatype.List<sObject>",
            "nodeType": "datatype",
            "name": "List<sObject>",
            "startToken": {
              "type": "datatype.collection",
              "text": "List",
              "textToLower": "list",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 53
                },
                "end": {
                  "line": 0,
                  "character": 57
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_List_0:53"
            },
            "parentId": "Database.batchable.execute",
            "order": 0,
            "memberOrder": 0,
            "type": "List",
            "value": {
              "id": "Database.batchable.execute.datatype.List<sObject>.value.sObject",
              "nodeType": "datatype",
              "name": "sObject",
              "startToken": {
                "type": "datatype.support.class",
                "text": "sObject",
                "textToLower": "sobject",
                "isAux": false,
                "range": {
                  "start": {
                    "line": 0,
                    "character": 58
                  },
                  "end": {
                    "line": 0,
                    "character": 65
                  },
                  "isEmpty": false,
                  "isSingleLine": true
                },
                "id": "token.type.identifier_sObject_0:58"
              },
              "order": 0,
              "memberOrder": 0,
              "type": "sObject"
            }
          },
          "description": "Contains the job ID. Contains the batch of records to process.",
          "scope": null
        }
      },
      "queries": [],
      "exceptions": []
    },
    "finish(database.batchablecontext)": {
      "id": "Database.batchable.method.finish(database.batchablecontext)",
      "nodeType": "method",
      "name": "finish",
      "startToken": {
        "type": "declaration.entity.name.function",
        "text": "finish",
        "textToLower": "finish",
        "isAux": false,
        "range": {
          "start": {
            "line": -1,
            "character": 0
          },
          "end": {
            "line": -1,
            "character": 0
          },
          "isEmpty": true,
          "isSingleLine": true
        },
        "id": "declaration.entity.name.function_finish_-1:0"
      },
      "parentId": "Database.batchable",
      "order": 2,
      "memberOrder": 2,
      "accessModifier": {
        "type": "keyword.modifier.access",
        "text": "public",
        "textToLower": "public",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 0
          },
          "end": {
            "line": 0,
            "character": 6
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_public_0:0"
      },
      "signature": "public void finish(Database.BatchableContext jobId)",
      "overrideSignature": "public override void finish(Database.BatchableContext jobId)",
      "simplifiedSignature": "finish(Database.BatchableContext)",
      "datatype": {
        "id": "Database.batchable.finish.datatype.void",
        "nodeType": "datatype",
        "name": "void",
        "startToken": {
          "type": "datatype.primitive",
          "text": "void",
          "textToLower": "void",
          "isAux": false,
          "range": {
            "start": {
              "line": 0,
              "character": 7
            },
            "end": {
              "line": 0,
              "character": 11
            },
            "isEmpty": false,
            "isSingleLine": true
          },
          "id": "token.type.identifier_void_0:7"
        },
        "parentId": "Database.batchable.finish",
        "order": 0,
        "memberOrder": 0,
        "type": "void"
      },
      "description": "Gets invoked when the batch job finishes. Place any clean up code in this method.",
      "parentName": "Batchable",
      "variables": {},
      "params": {
        "jobid": {
          "id": "Database.batchable.method.finish(database.batchablecontext).varParam.jobid",
          "nodeType": "variable",
          "name": "jobId",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "jobId",
            "textToLower": "jobid",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 45
              },
              "end": {
                "line": 0,
                "character": 50
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_jobId_0:45"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "jobId",
            "textToLower": "jobid",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 45
              },
              "end": {
                "line": 0,
                "character": 50
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_jobId_0:45"
          },
          "parentId": "Database.batchable.method.finish(database.batchablecontext)",
          "order": 1,
          "memberOrder": 1,
          "datatype": {
            "id": "Database.batchable.finish.datatype.Database.BatchableContext",
            "nodeType": "datatype",
            "name": "Database.BatchableContext",
            "startToken": {
              "type": "datatype.support.namespace",
              "text": "Database",
              "textToLower": "database",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 19
                },
                "end": {
                  "line": 0,
                  "character": 27
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_Database_0:19"
            },
            "parentId": "Database.batchable.finish",
            "order": 0,
            "memberOrder": 0,
            "type": "Database.BatchableContext"
          },
          "description": "Contains the job ID.",
          "scope": null
        }
      },
      "queries": [],
      "exceptions": []
    },
    "start(database.batchablecontext)": {
      "id": "Database.batchable.method.start(database.batchablecontext)",
      "nodeType": "method",
      "name": "start",
      "startToken": {
        "type": "declaration.entity.name.function",
        "text": "start",
        "textToLower": "start",
        "isAux": false,
        "range": {
          "start": {
            "line": -1,
            "character": 0
          },
          "end": {
            "line": -1,
            "character": 0
          },
          "isEmpty": true,
          "isSingleLine": true
        },
        "id": "declaration.entity.name.function_start_-1:0"
      },
      "parentId": "Database.batchable",
      "order": 3,
      "memberOrder": 3,
      "accessModifier": {
        "type": "keyword.modifier.access",
        "text": "public",
        "textToLower": "public",
        "isAux": false,
        "range": {
          "start": {
            "line": 0,
            "character": 0
          },
          "end": {
            "line": 0,
            "character": 6
          },
          "isEmpty": false,
          "isSingleLine": true
        },
        "id": "token.type.identifier_public_0:0"
      },
      "signature": "public Database.QueryLocator start(Database.BatchableContext jobId)",
      "overrideSignature": "public override Database.QueryLocator start(Database.BatchableContext jobId)",
      "simplifiedSignature": "start(Database.BatchableContext)",
      "datatype": {
        "id": "Database.batchable.start.datatype.Database.QueryLocator",
        "nodeType": "datatype",
        "name": "Database.QueryLocator",
        "startToken": {
          "type": "datatype.support.namespace",
          "text": "Database",
          "textToLower": "database",
          "isAux": false,
          "range": {
            "start": {
              "line": 0,
              "character": 7
            },
            "end": {
              "line": 0,
              "character": 15
            },
            "isEmpty": false,
            "isSingleLine": true
          },
          "id": "token.type.identifier_Database_0:7"
        },
        "parentId": "Database.batchable.start",
        "order": 0,
        "memberOrder": 0,
        "type": "Database.QueryLocator"
      },
      "description": "Gets invoked when the batch job starts. Returns the record set as a QueryLocator object that will be batched for execution.",
      "parentName": "Batchable",
      "variables": {},
      "params": {
        "jobid": {
          "id": "Database.batchable.method.start(database.batchablecontext).varParam.jobid",
          "nodeType": "variable",
          "name": "jobId",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "jobId",
            "textToLower": "jobid",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 61
              },
              "end": {
                "line": 0,
                "character": 66
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_jobId_0:61"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "jobId",
            "textToLower": "jobid",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 61
              },
              "end": {
                "line": 0,
                "character": 66
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_jobId_0:61"
          },
          "parentId": "Database.batchable.method.start(database.batchablecontext)",
          "order": 1,
          "memberOrder": 1,
          "datatype": {
            "id": "Database.batchable.start.datatype.Database.BatchableContext",
            "nodeType": "datatype",
            "name": "Database.BatchableContext",
            "startToken": {
              "type": "datatype.support.namespace",
              "text": "Database",
              "textToLower": "database",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 35
                },
                "end": {
                  "line": 0,
                  "character": 43
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_Database_0:35"
            },
            "parentId": "Database.batchable.start",
            "order": 0,
            "memberOrder": 0,
            "type": "Database.BatchableContext"
          },
          "description": "Contains the job ID.",
          "scope": null
        }
      },
      "queries": [],
      "exceptions": []
    }
  },
  "constructors": {},
  "extendsType": "",
  "implementTypes": [],
  "implements": {},
  "totalMembers": 3,
  "queries": []
}