Files
note-service-server/src/models/database/permaLink.js
2018-09-05 17:02:52 +01:00

56 lines
1.6 KiB
JavaScript

import Sequelize from 'sequelize';
import {BaseDatabase} from './baseDatabase';
import {Logger} from '../logger';
export class PermaLinkTools extends BaseDatabase {
static async listAll() {
let PermaNote = BaseDatabase.PermaNote;
return PermaNote.findAll();
}
static async newNote(uid, endpoint, text, id) {
let PermaNote = BaseDatabase.PermaNote;
id = id || null;
try {
let note = await PermaNote.create({
uid: uid,
endpoint: endpoint,
text: text,
creatorid: id
});
return note;
} catch (e) {
Logger.error(`An error occured while inserting user a note with the endpoint ${endpoint} into permanote table: ${e}`);
return -1;
}
}
static async getNoteByUID(uid) {
let PermaNote = BaseDatabase.PermaNote;
try {
let note = await PermaNote.findOne({where: {uid: uid}});
if (note == null) return -1;
return note;
} catch (e) {
Logger.error(`An error occured while querying for a permanote by uid ${uid}: ${e}`);
return -1;
}
}
static async getNoteByEndpoint(endpoint) {
let PermaNote = BaseDatabase.PermaNote;
try {
let note = await PermaNote.findOne({where: {endpoint: endpoint}});
if (note == null) return -1;
return note;
} catch (e) {
Logger.error(`An error occured while querying for a permanote by endpoint ${endpoint}: ${e}`);
return -1;
}
}
}