summaryrefslogtreecommitdiffstats
path: root/js/service/Resource.js
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2014-05-22 02:40:44 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2014-05-22 02:40:44 +0200
commit23246ea3987d8a60d3ea344ca93d209d082c3337 (patch)
treee8a63fcd0e3cfdd02c3ab78a2001413d2e83bfc1 /js/service/Resource.js
parent2b4da592f1c8a2210f9ba49a9e24eb2056e5d4a8 (diff)
add keep unread, read, read feed and starring
Diffstat (limited to 'js/service/Resource.js')
-rw-r--r--js/service/Resource.js9
1 files changed, 9 insertions, 0 deletions
diff --git a/js/service/Resource.js b/js/service/Resource.js
index 7683099da..072abca18 100644
--- a/js/service/Resource.js
+++ b/js/service/Resource.js
@@ -12,6 +12,7 @@ app.factory('Resource', () => {
class Resource {
+
constructor (http, BASE_URL, id='id') {
this.id = id;
this.values = [];
@@ -20,12 +21,14 @@ app.factory('Resource', () => {
this.BASE_URL = BASE_URL;
}
+
receive (objs) {
for (let obj of objs) {
this.add(obj);
}
}
+
add (obj) {
let existing = this.hashMap[obj[this.id]];
@@ -40,14 +43,17 @@ app.factory('Resource', () => {
}
}
+
size () {
return this.values.length;
}
+
get (id) {
return this.hashMap[id];
}
+
delete (id) {
// find index of object that should be deleted
let deleteAtIndex = this.values.findIndex(e => e[this.id] === id);
@@ -61,6 +67,7 @@ app.factory('Resource', () => {
}
}
+
clear () {
this.hashMap = {};
@@ -72,10 +79,12 @@ app.factory('Resource', () => {
}
}
+
getAll () {
return this.values;
}
+
}
return Resource;