Added slices
Change-Id: I9dfaa9348fa82da844a04c0c2a58ce07e9fa3a28
diff --git a/src/app/services/stores/instance.store.ts b/src/app/services/stores/instance.store.ts
index a87630c..9a07095 100644
--- a/src/app/services/stores/instance.store.ts
+++ b/src/app/services/stores/instance.store.ts
@@ -2,11 +2,11 @@
import {Injectable} from '@angular/core';
import {BehaviorSubject} from 'rxjs/Rx';
-import {IInstance} from '../../interfaces/instance.interface';
+import {IInstance} from '../../interfaces/models.interface';
import {InstanceService} from '../rest/instance.service';
-import * as _ from 'lodash';
import {IWSEvent} from '../../interfaces/ws.interface';
import {GlobalEvent} from '../websockets/websocket.global';
+import {ObservableCollectionHandler} from '../helpers/store.service';
@Injectable()
export class InstanceStore {
@@ -14,25 +14,10 @@
constructor(private instanceService: InstanceService, private globalEvent: GlobalEvent) {
this.loadInitialData();
this.globalEvent.list()
- .filter((e: IWSEvent) => {
- console.log('filter', e);
- return e.model === 'Instance';
- })
+ .filter((e: IWSEvent) => e.model === 'Instance')
.subscribe(
(event: IWSEvent) => {
-
- const collection = this._instances.value;
-
- const exist = _.find(collection, (i) => {
- return i.id === event.msg.object.id;
- });
-
- // remove in order to update
- if (exist) {
- _.remove(collection, {id: event.msg.object.id});
- }
- collection.push(event.msg.object);
- this._instances.next(collection);
+ ObservableCollectionHandler.update(event, this._instances);
}
);
}