summaryrefslogtreecommitdiff
path: root/src/services/register-or-fetch-instance-doc.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/services/register-or-fetch-instance-doc.ts')
-rw-r--r--src/services/register-or-fetch-instance-doc.ts17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/services/register-or-fetch-instance-doc.ts b/src/services/register-or-fetch-instance-doc.ts
index d418cd12ce..9957edd3db 100644
--- a/src/services/register-or-fetch-instance-doc.ts
+++ b/src/services/register-or-fetch-instance-doc.ts
@@ -1,15 +1,20 @@
-import Instance, { IInstance } from '../models/instance';
-import federationChart from '../services/chart/federation';
+import { Instance } from '../models/entities/instance';
+import { Instances } from '../models';
+import { federationChart } from './chart';
+import { genId } from '../misc/gen-id';
+import { toPuny } from '../misc/convert-host';
-export async function registerOrFetchInstanceDoc(host: string): Promise<IInstance> {
- if (host == null) return null;
+export async function registerOrFetchInstanceDoc(host: string): Promise<Instance> {
+ host = toPuny(host);
- const index = await Instance.findOne({ host });
+ const index = await Instances.findOne({ host });
if (index == null) {
- const i = await Instance.insert({
+ const i = await Instances.save({
+ id: genId(),
host,
caughtAt: new Date(),
+ lastCommunicatedAt: new Date(),
system: null // TODO
});