diff options
author | Chocobozzz <me@florianbigard.com> | 2018-06-13 14:27:40 +0200 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2018-06-13 14:27:40 +0200 |
commit | 90d4bb8125e80c8060416d4d135ddeaf0a622ede (patch) | |
tree | b3b7181329a08ecc930b54fe7b48095c4155393c /server/lib/activitypub/process/process-like.ts | |
parent | 3cd0734fd9b0ff21aaef02317a874e8f1c06e027 (diff) | |
download | PeerTube-90d4bb8125e80c8060416d4d135ddeaf0a622ede.tar.gz PeerTube-90d4bb8125e80c8060416d4d135ddeaf0a622ede.tar.zst PeerTube-90d4bb8125e80c8060416d4d135ddeaf0a622ede.zip |
Refractor retry transaction function
Diffstat (limited to 'server/lib/activitypub/process/process-like.ts')
-rw-r--r-- | server/lib/activitypub/process/process-like.ts | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/server/lib/activitypub/process/process-like.ts b/server/lib/activitypub/process/process-like.ts index f1642f038..d0865b78c 100644 --- a/server/lib/activitypub/process/process-like.ts +++ b/server/lib/activitypub/process/process-like.ts | |||
@@ -4,14 +4,13 @@ import { sequelizeTypescript } from '../../../initializers' | |||
4 | import { AccountVideoRateModel } from '../../../models/account/account-video-rate' | 4 | import { AccountVideoRateModel } from '../../../models/account/account-video-rate' |
5 | import { ActorModel } from '../../../models/activitypub/actor' | 5 | import { ActorModel } from '../../../models/activitypub/actor' |
6 | import { getOrCreateActorAndServerAndModel } from '../actor' | 6 | import { getOrCreateActorAndServerAndModel } from '../actor' |
7 | import { forwardActivity, forwardVideoRelatedActivity } from '../send/utils' | 7 | import { forwardVideoRelatedActivity } from '../send/utils' |
8 | import { getOrCreateAccountAndVideoAndChannel } from '../videos' | 8 | import { getOrCreateAccountAndVideoAndChannel } from '../videos' |
9 | import { getActorsInvolvedInVideo } from '../audience' | ||
10 | 9 | ||
11 | async function processLikeActivity (activity: ActivityLike) { | 10 | async function processLikeActivity (activity: ActivityLike) { |
12 | const actor = await getOrCreateActorAndServerAndModel(activity.actor) | 11 | const actor = await getOrCreateActorAndServerAndModel(activity.actor) |
13 | 12 | ||
14 | return processLikeVideo(actor, activity) | 13 | return retryTransactionWrapper(processLikeVideo, actor, activity) |
15 | } | 14 | } |
16 | 15 | ||
17 | // --------------------------------------------------------------------------- | 16 | // --------------------------------------------------------------------------- |
@@ -22,16 +21,7 @@ export { | |||
22 | 21 | ||
23 | // --------------------------------------------------------------------------- | 22 | // --------------------------------------------------------------------------- |
24 | 23 | ||
25 | async function processLikeVideo (actor: ActorModel, activity: ActivityLike) { | 24 | async function processLikeVideo (byActor: ActorModel, activity: ActivityLike) { |
26 | const options = { | ||
27 | arguments: [ actor, activity ], | ||
28 | errorMessage: 'Cannot like the video with many retries.' | ||
29 | } | ||
30 | |||
31 | return retryTransactionWrapper(createVideoLike, options) | ||
32 | } | ||
33 | |||
34 | async function createVideoLike (byActor: ActorModel, activity: ActivityLike) { | ||
35 | const videoUrl = activity.object | 25 | const videoUrl = activity.object |
36 | 26 | ||
37 | const byAccount = byActor.Account | 27 | const byAccount = byActor.Account |