{
  "id": "Datasource.asyncsavecallback",
  "nodeType": "class",
  "name": "AsyncSaveCallback",
  "namespace": "Datasource",
  "startToken": {
    "type": "declaration.entity.name.class",
    "text": "AsyncSaveCallback",
    "textToLower": "asyncsavecallback",
    "isAux": false,
    "range": {
      "start": {
        "line": -1,
        "character": 0
      },
      "end": {
        "line": -1,
        "character": 0
      },
      "isEmpty": true,
      "isSingleLine": true
    },
    "id": "declaration.entity.name.class_AsyncSaveCallback_-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": "A callback class that the Database.insertAsync or Database.updateAsync method references. Salesforce calls this class after the remote operation is completed. This class provides the compensating transaction in the completion context of the insert or update operation. Extend this class to define the actions to execute after the remote insert or update operation finishes execution.",
  "documentation": "https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_class_DataSource_AsyncSaveCallback.htm",
  "classes": {},
  "interfaces": {},
  "enums": {},
  "variables": {},
  "methods": {
    "processsave(database.saveresult)": {
      "id": "Datasource.asyncsavecallback.method.processsave(database.saveresult)",
      "nodeType": "method",
      "name": "processSave",
      "startToken": {
        "type": "declaration.entity.name.function",
        "text": "processSave",
        "textToLower": "processsave",
        "isAux": false,
        "range": {
          "start": {
            "line": -1,
            "character": 0
          },
          "end": {
            "line": -1,
            "character": 0
          },
          "isEmpty": true,
          "isSingleLine": true
        },
        "id": "declaration.entity.name.function_processSave_-1:0"
      },
      "parentId": "Datasource.asyncsavecallback",
      "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 processSave(Database.SaveResult saveResult)",
      "overrideSignature": "public override void processSave(Database.SaveResult saveResult)",
      "simplifiedSignature": "processSave(Database.SaveResult)",
      "datatype": {
        "id": "Datasource.asyncsavecallback.processsave.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": "Datasource.asyncsavecallback.processsave",
        "order": 0,
        "memberOrder": 0,
        "type": "void"
      },
      "description": "Override this method to define actions that Salesforce executes after the remote Database.insertAsync or Database.updateAsync operation is completed. For example, based on the results of the remote operation, you can update custom object data or other data that's stored in the Salesforce org.",
      "parentName": "AsyncSaveCallback",
      "variables": {},
      "params": {
        "saveresult": {
          "id": "Datasource.asyncsavecallback.method.processsave(database.saveresult).varParam.saveresult",
          "nodeType": "variable",
          "name": "saveResult",
          "startToken": {
            "type": "declaration.entity.name.variable",
            "text": "saveResult",
            "textToLower": "saveresult",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 44
              },
              "end": {
                "line": 0,
                "character": 54
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_saveResult_0:44"
          },
          "endToken": {
            "type": "declaration.entity.name.variable",
            "text": "saveResult",
            "textToLower": "saveresult",
            "isAux": false,
            "range": {
              "start": {
                "line": 0,
                "character": 44
              },
              "end": {
                "line": 0,
                "character": 54
              },
              "isEmpty": false,
              "isSingleLine": true
            },
            "id": "token.type.identifier_saveResult_0:44"
          },
          "parentId": "Datasource.asyncsavecallback.method.processsave(database.saveresult)",
          "order": 1,
          "memberOrder": 1,
          "datatype": {
            "id": "Datasource.asyncsavecallback.processsave.datatype.Database.SaveResult",
            "nodeType": "datatype",
            "name": "Database.SaveResult",
            "startToken": {
              "type": "datatype.support.namespace",
              "text": "Database",
              "textToLower": "database",
              "isAux": false,
              "range": {
                "start": {
                  "line": 0,
                  "character": 24
                },
                "end": {
                  "line": 0,
                  "character": 32
                },
                "isEmpty": false,
                "isSingleLine": true
              },
              "id": "token.type.identifier_Database_0:24"
            },
            "parentId": "Datasource.asyncsavecallback.processsave",
            "order": 0,
            "memberOrder": 0,
            "type": "Database.SaveResult"
          },
          "description": "The result of the asynchronous insert or update operation.",
          "scope": null
        }
      },
      "queries": [],
      "exceptions": []
    }
  },
  "constructors": {},
  "extendsType": "",
  "implementTypes": [],
  "implements": {},
  "totalMembers": 1,
  "queries": []
}