Remove resolveRemoteUserObjects method of remote/activitypub/resolver

The value of the value returned by resolveRemoteUserObjects method of
remote/activitypub/resolver was inconsistent.
This commit is contained in:
Akihiko Odaki
2018-04-03 20:39:27 +09:00
parent f5a948acac
commit c22cb37759
5 changed files with 28 additions and 46 deletions

View File

@@ -1,12 +1,5 @@
import RemoteUserObject from '../../models/remote-user-object';
import { IObject } from './type';
const request = require('request-promise-native');
type IResult = {
resolver: Resolver;
object: IObject;
};
export default class Resolver {
private requesting: Set<string>;
@@ -42,7 +35,7 @@ export default class Resolver {
return { resolver, object };
}
private async resolveCollection(value) {
public async resolveCollection(value) {
const resolved = typeof value === 'string' ?
await this.resolveUnrequestedOne(value) :
{ resolver: this, object: value };
@@ -66,14 +59,6 @@ export default class Resolver {
return resolved;
}
public async resolve(value): Promise<Array<Promise<IResult>>> {
const { resolver, object } = await this.resolveCollection(value);
return object
.filter(element => !resolver.requesting.has(element))
.map(resolver.resolveUnrequestedOne.bind(resolver));
}
public resolveOne(value) {
if (this.requesting.has(value)) {
throw new Error();
@@ -81,20 +66,4 @@ export default class Resolver {
return this.resolveUnrequestedOne(value);
}
public async resolveRemoteUserObjects(value) {
const { resolver, object } = await this.resolveCollection(value);
return object.filter(element => !resolver.requesting.has(element)).map(element => {
if (typeof element === 'string') {
const object = RemoteUserObject.findOne({ uri: element });
if (object !== null) {
return object;
}
}
return resolver.resolveUnrequestedOne(element);
});
}
}