summaryrefslogtreecommitdiff
path: root/src/processor
diff options
context:
space:
mode:
authorAkihiko Odaki <nekomanma@pixiv.co.jp>2018-03-31 19:55:00 +0900
committerAkihiko Odaki <nekomanma@pixiv.co.jp>2018-03-31 20:33:14 +0900
commit68a9aac9573969311dd00a44536c3ee4c05b883d (patch)
tree7d6c502c1e2c61eb3327f678f766f23bda10c1e7 /src/processor
parentStore texts as HTML (diff)
downloadsharkey-68a9aac9573969311dd00a44536c3ee4c05b883d.tar.gz
sharkey-68a9aac9573969311dd00a44536c3ee4c05b883d.tar.bz2
sharkey-68a9aac9573969311dd00a44536c3ee4c05b883d.zip
Implement remote status retrieval
Diffstat (limited to 'src/processor')
-rw-r--r--src/processor/http/index.ts9
-rw-r--r--src/processor/http/perform-activitypub.ts6
-rw-r--r--src/processor/http/report-github-failure.ts (renamed from src/processor/report-github-failure.ts)4
-rw-r--r--src/processor/index.ts13
4 files changed, 28 insertions, 4 deletions
diff --git a/src/processor/http/index.ts b/src/processor/http/index.ts
new file mode 100644
index 0000000000..da942ad2a1
--- /dev/null
+++ b/src/processor/http/index.ts
@@ -0,0 +1,9 @@
+import performActivityPub from './perform-activitypub';
+import reportGitHubFailure from './report-github-failure';
+
+const handlers = {
+ performActivityPub,
+ reportGitHubFailure,
+};
+
+export default (job, done) => handlers[job.data.type](job).then(() => done(), done);
diff --git a/src/processor/http/perform-activitypub.ts b/src/processor/http/perform-activitypub.ts
new file mode 100644
index 0000000000..5b1a02173d
--- /dev/null
+++ b/src/processor/http/perform-activitypub.ts
@@ -0,0 +1,6 @@
+import User from '../../models/user';
+import act from '../../common/remote/activitypub/act';
+
+export default ({ data }, done) => User.findOne({ _id: data.actor })
+ .then(actor => act(actor, data.outbox))
+ .then(() => done(), done);
diff --git a/src/processor/report-github-failure.ts b/src/processor/http/report-github-failure.ts
index 610ffe2767..53924a0fbd 100644
--- a/src/processor/report-github-failure.ts
+++ b/src/processor/http/report-github-failure.ts
@@ -1,6 +1,6 @@
import * as request from 'request';
-import User from '../models/user';
-const createPost = require('../server/api/endpoints/posts/create');
+import User from '../../models/user';
+const createPost = require('../../server/api/endpoints/posts/create');
export default ({ data }, done) => {
const asyncBot = User.findOne({ _id: data.userId });
diff --git a/src/processor/index.ts b/src/processor/index.ts
index f06cf24e87..cd271d3720 100644
--- a/src/processor/index.ts
+++ b/src/processor/index.ts
@@ -1,4 +1,13 @@
import queue from '../queue';
-import reportGitHubFailure from './report-github-failure';
+import http from './http';
-export default () => queue.process('gitHubFailureReport', reportGitHubFailure);
+/*
+ 256 is the default concurrency limit of Mozilla Firefox and Google
+ Chromium.
+
+ a8af215e691f3a2205a3758d2d96e9d328e100ff - chromium/src.git - Git at Google
+ https://chromium.googlesource.com/chromium/src.git/+/a8af215e691f3a2205a3758d2d96e9d328e100ff
+ Network.http.max-connections - MozillaZine Knowledge Base
+ http://kb.mozillazine.org/Network.http.max-connections
+*/
+export default () => queue.process('http', 256, http);