Github user merrimanr commented on a diff in the pull request:
https://github.com/apache/metron/pull/787#discussion_r144306688
--- Diff: metron-interface/metron-alerts/src/app/service/update.service.ts
---
@@ -32,13 +33,31 @@ export class UpdateService {
defaultHeaders = {'Content-Type': 'application/json',
'X-Requested-With': 'XMLHttpRequest'};
+ alertChangedSource = new Subject<PatchRequest>();
+ alertChanged$ = this.alertChangedSource.asObservable();
constructor(private http: Http) { }
public patch(patchRequest: PatchRequest): Observable<{}> {
let url = '/api/v1/update/patch';
- return this.http.patch(url, patchRequest, new RequestOptions({headers:
new Headers(this.defaultHeaders)}))
- .catch(HttpUtil.handleError);
+ let observable = Observable.create((observer => {
--- End diff --
I'm not suggesting we move the alertChangedSource call to all the
subscribing components. Instead you can move that call to a map function
similar to:
```
this.http.patch(url, patchRequest, new RequestOptions({headers: new
Headers(this.defaultHeaders)}))
.catch(HttpUtil.handleError)
.map(res => {
this.alertChangedSource.next(patchRequest);
return res;
}
.subscribe(result => reqCompleted(result));
```
---