MCPcopy Index your code
hub / github.com/parse-community/parse-server / maybeRunTrigger

Function maybeRunTrigger

src/triggers.js:920–1023  ·  view source on GitHub ↗
(
  triggerType,
  auth,
  parseObject,
  originalParseObject,
  config,
  context
)

Source from the content-addressed store, hash-verified

918// trigger will set the object key to the rest format object to save.
919// originalParseObject is optional, we only need that for before/afterSave functions
920export function maybeRunTrigger(
921 triggerType,
922 auth,
923 parseObject,
924 originalParseObject,
925 config,
926 context
927) {
928 if (!parseObject) {
929 return Promise.resolve({});
930 }
931 return new Promise(function (resolve, reject) {
932 var trigger = getTrigger(parseObject.className, triggerType, config.applicationId);
933 if (!trigger) { return resolve(); }
934 var request = getRequestObject(
935 triggerType,
936 auth,
937 parseObject,
938 originalParseObject,
939 config,
940 context
941 );
942 var { success, error } = getResponseObject(
943 request,
944 object => {
945 logTriggerSuccessBeforeHook(
946 triggerType,
947 parseObject.className,
948 parseObject.toJSON(),
949 object,
950 auth,
951 triggerType.startsWith('after')
952 ? config.logLevels.triggerAfter
953 : config.logLevels.triggerBeforeSuccess
954 );
955 if (
956 triggerType === Types.beforeSave ||
957 triggerType === Types.afterSave ||
958 triggerType === Types.beforeDelete ||
959 triggerType === Types.afterDelete
960 ) {
961 Object.assign(context, request.context);
962 }
963 resolve(object);
964 },
965 error => {
966 logTriggerErrorBeforeHook(
967 triggerType,
968 parseObject.className,
969 parseObject.toJSON(),
970 auth,
971 error,
972 config.logLevels.triggerBeforeError
973 );
974 reject(error);
975 }
976 );
977

Callers 3

handleLogInMethod · 0.90
handleLogOutMethod · 0.90
handleResetRequestMethod · 0.90

Calls 8

getTriggerFunction · 0.85
getRequestObjectFunction · 0.85
getResponseObjectFunction · 0.85
maybeRunValidatorFunction · 0.85
logTriggerAfterHookFunction · 0.85
resolveFunction · 0.50

Tested by

no test coverage detected