summaryrefslogtreecommitdiff
path: root/src/queue
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2019-03-08 05:22:14 +0900
committersyuilo <syuilotan@yahoo.co.jp>2019-03-08 05:22:14 +0900
commit219570e08b199c383fa38f890979f4c6099995c1 (patch)
treee593aa8ac1586e97e576d7fb903f10090ac9c762 /src/queue
parentResolve #4448 (diff)
downloadsharkey-219570e08b199c383fa38f890979f4c6099995c1.tar.gz
sharkey-219570e08b199c383fa38f890979f4c6099995c1.tar.bz2
sharkey-219570e08b199c383fa38f890979f4c6099995c1.zip
Update job handlers
Diffstat (limited to 'src/queue')
-rw-r--r--src/queue/processors/deliver.ts11
-rw-r--r--src/queue/processors/process-inbox.ts19
2 files changed, 7 insertions, 23 deletions
diff --git a/src/queue/processors/deliver.ts b/src/queue/processors/deliver.ts
index 2f730c31cd..b561f33181 100644
--- a/src/queue/processors/deliver.ts
+++ b/src/queue/processors/deliver.ts
@@ -7,7 +7,7 @@ import instanceChart from '../../services/chart/instance';
let latest: string = null;
-export default async (job: Bull.Job, done: any): Promise<void> => {
+export default async (job: Bull.Job): Promise<void> => {
const { host } = new URL(job.data.to);
try {
@@ -29,8 +29,6 @@ export default async (job: Bull.Job, done: any): Promise<void> => {
instanceChart.requestSent(i.host, true);
});
-
- done();
} catch (res) {
// Update stats
registerOrFetchInstanceDoc(host).then(i => {
@@ -51,13 +49,12 @@ export default async (job: Bull.Job, done: any): Promise<void> => {
if (res.statusCode >= 400 && res.statusCode < 500) {
// HTTPステータスコード4xxはクライアントエラーであり、それはつまり
// 何回再送しても成功することはないということなのでエラーにはしないでおく
- done();
- } else {
- done(res.statusMessage);
+ return;
}
+
+ return res.statusMessage;
} else {
queueLogger.warn(`deliver failed: ${res} to=${job.data.to}`);
- done();
}
}
};
diff --git a/src/queue/processors/process-inbox.ts b/src/queue/processors/process-inbox.ts
index 21292921f0..0e5b271eb7 100644
--- a/src/queue/processors/process-inbox.ts
+++ b/src/queue/processors/process-inbox.ts
@@ -15,7 +15,7 @@ import instanceChart from '../../services/chart/instance';
const logger = new Logger('inbox');
// ユーザーのinboxにアクティビティが届いた時の処理
-export default async (job: Bull.Job, done: any): Promise<void> => {
+export default async (job: Bull.Job): Promise<void> => {
const signature = job.data.signature;
const activity = job.data.activity;
@@ -33,7 +33,6 @@ export default async (job: Bull.Job, done: any): Promise<void> => {
const { username, host } = parseAcct(keyIdLower.slice('acct:'.length));
if (host === null) {
logger.warn(`request was made by local user: @${username}`);
- done();
return;
}
@@ -42,7 +41,6 @@ export default async (job: Bull.Job, done: any): Promise<void> => {
ValidateActivity(activity, host);
} catch (e) {
logger.warn(e.message);
- done();
return;
}
@@ -51,7 +49,6 @@ export default async (job: Bull.Job, done: any): Promise<void> => {
const instance = await Instance.findOne({ host: host.toLowerCase() });
if (instance && instance.isBlocked) {
logger.warn(`Blocked request: ${host}`);
- done();
return;
}
@@ -63,7 +60,6 @@ export default async (job: Bull.Job, done: any): Promise<void> => {
ValidateActivity(activity, host);
} catch (e) {
logger.warn(e.message);
- done();
return;
}
@@ -72,7 +68,6 @@ export default async (job: Bull.Job, done: any): Promise<void> => {
const instance = await Instance.findOne({ host: host.toLowerCase() });
if (instance && instance.isBlocked) {
logger.warn(`Blocked request: ${host}`);
- done();
return;
}
@@ -92,7 +87,6 @@ export default async (job: Bull.Job, done: any): Promise<void> => {
} else {
updatePerson(activity.actor, null, activity.object);
}
- done();
return;
}
}
@@ -103,13 +97,11 @@ export default async (job: Bull.Job, done: any): Promise<void> => {
}
if (user === null) {
- done(new Error('failed to resolve user'));
- return;
+ throw new Error('failed to resolve user');
}
if (!httpSignature.verifySignature(signature, user.publicKey.publicKeyPem)) {
logger.error('signature verification failed');
- done();
return;
}
@@ -136,12 +128,7 @@ export default async (job: Bull.Job, done: any): Promise<void> => {
});
// アクティビティを処理
- try {
- await perform(user, activity);
- done();
- } catch (e) {
- done(e);
- }
+ await perform(user, activity);
};
/**