blast-graph-angular2
Version:
 **with** 
181 lines (180 loc) • 11.7 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { Subject } from 'rxjs/index';
export class Attachment {
/**
* @param {?} attachmentId
* @param {?} key
* @param {?} logService
*/
constructor(attachmentId, key, logService) {
this._key = key;
this._attachmentId = attachmentId;
this._loadStream = new Subject();
this._addStream = new Subject();
this._changeStream = new Subject();
this._removeStream = new Subject();
this._tickStream = new Subject();
this._logService = logService;
}
/**
* @return {?}
*/
isList() {
return this._isList;
}
/**
* @return {?}
*/
getAttachmentId() {
return this._attachmentId;
}
/**
* @return {?}
*/
getKey() {
return this._key;
}
/**
* @return {?}
*/
getData() {
return this._data;
}
/**
* @return {?}
*/
getListData() {
return this._listData;
}
/**
* @param {?} data
* @return {?}
*/
setData(data) {
if (data === undefined) {
this._data = {};
}
else {
this._data = data;
}
this._isList = false;
}
/**
* @param {?} data
* @return {?}
*/
setListData(data) {
if (data === undefined) {
this._listData = [];
}
else {
this._listData = data;
}
this._isList = true;
}
/**
* @param {?} data
* @return {?}
*/
load(data) {
this._logService.log('attachment ' + this._key + ' loaded', data);
if (data !== undefined) {
this._loadStream.next(data);
}
else {
// we need to send back empty data if collection had nothing
if (this._isList) {
this._loadStream.next(undefined);
}
else {
this._loadStream.next(undefined);
}
}
this._tickStream.next(data);
}
/**
* @param {?} data
* @return {?}
*/
added(data) {
this._logService.log('attachment ' + this._key + ' added', data);
this._addStream.next(data);
this._tickStream.next(data);
}
/**
* @param {?} data
* @return {?}
*/
changed(data) {
this._logService.log('attachment ' + this._key + ' changed', data);
this._changeStream.next(data);
this._tickStream.next(data);
}
/**
* @param {?} data
* @return {?}
*/
removed(data) {
this._logService.log('attachment ' + this._key + ' removed', data);
this._removeStream.next(data);
this._tickStream.next(data);
}
/**
* @return {?}
*/
loadStream() {
return this._loadStream;
}
/**
* @return {?}
*/
addedStream() {
return this._addStream;
}
/**
* @return {?}
*/
changedStream() {
return this._changeStream;
}
/**
* @return {?}
*/
removedStream() {
return this._removeStream;
}
/**
* @return {?}
*/
onTick() {
return this._tickStream;
}
}
if (false) {
/** @type {?} */
Attachment.prototype._isList;
/** @type {?} */
Attachment.prototype._key;
/** @type {?} */
Attachment.prototype._data;
/** @type {?} */
Attachment.prototype._listData;
/** @type {?} */
Attachment.prototype._attachmentId;
/** @type {?} */
Attachment.prototype._loadStream;
/** @type {?} */
Attachment.prototype._addStream;
/** @type {?} */
Attachment.prototype._changeStream;
/** @type {?} */
Attachment.prototype._removeStream;
/** @type {?} */
Attachment.prototype._tickStream;
/** @type {?} */
Attachment.prototype._logService;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0YWNobWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2JsYXN0LWdyYXBoLWFuZ3VsYXIyLyIsInNvdXJjZXMiOlsic3JjL2F0dGFjaG1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFFbkMsTUFBTTs7Ozs7O0lBYUYsWUFBWSxZQUFvQixFQUFFLEdBQVcsRUFBRSxVQUFzQjtRQUNqRSxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztRQUNoQixJQUFJLENBQUMsYUFBYSxHQUFHLFlBQVksQ0FBQztRQUNsQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDbkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0tBQ2pDOzs7O0lBRUQsTUFBTTtRQUNGLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0tBQ3ZCOzs7O0lBRUQsZUFBZTtRQUNYLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO0tBQzdCOzs7O0lBRUQsTUFBTTtRQUNGLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0tBQ3BCOzs7O0lBRUQsT0FBTztRQUNILE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0tBQ3JCOzs7O0lBRUQsV0FBVztRQUNQLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO0tBQ3pCOzs7OztJQUVELE9BQU8sQ0FBQyxJQUFTO1FBQ2IsRUFBRSxDQUFDLENBQUMsSUFBSSxLQUFLLFNB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QUMzQjtDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2dTZXJ2aWNlfSBmcm9tICcuL2xvZy1zZXJ2aWNlJztcbmltcG9ydCB7U3ViamVjdH0gZnJvbSAncnhqcy9pbmRleCc7XG5cbmV4cG9ydCBjbGFzcyBBdHRhY2htZW50IHtcbiAgICBfaXNMaXN0OiBib29sZWFuO1xuICAgIF9rZXk6IHN0cmluZztcbiAgICBfZGF0YTogYW55O1xuICAgIF9saXN0RGF0YTogYW55W107XG4gICAgX2F0dGFjaG1lbnRJZDogc3RyaW5nO1xuICAgIF9sb2FkU3RyZWFtOiBTdWJqZWN0PGFueT47XG4gICAgX2FkZFN0cmVhbTogU3ViamVjdDxhbnk+O1xuICAgIF9jaGFuZ2VTdHJlYW06IFN1YmplY3Q8YW55PjtcbiAgICBfcmVtb3ZlU3RyZWFtOiBTdWJqZWN0PGFueT47XG4gICAgX3RpY2tTdHJlYW06IFN1YmplY3Q8YW55PjtcbiAgICBfbG9nU2VydmljZTogTG9nU2VydmljZTtcblxuICAgIGNvbnN0cnVjdG9yKGF0dGFjaG1lbnRJZDogc3RyaW5nLCBrZXk6IHN0cmluZywgbG9nU2VydmljZTogTG9nU2VydmljZSkge1xuICAgICAgICB0aGlzLl9rZXkgPSBrZXk7XG4gICAgICAgIHRoaXMuX2F0dGFjaG1lbnRJZCA9IGF0dGFjaG1lbnRJZDtcbiAgICAgICAgdGhpcy5fbG9hZFN0cmVhbSA9IG5ldyBTdWJqZWN0KCk7XG4gICAgICAgIHRoaXMuX2FkZFN0cmVhbSA9IG5ldyBTdWJqZWN0KCk7XG4gICAgICAgIHRoaXMuX2NoYW5nZVN0cmVhbSA9IG5ldyBTdWJqZWN0KCk7XG4gICAgICAgIHRoaXMuX3JlbW92ZVN0cmVhbSA9IG5ldyBTdWJqZWN0KCk7XG4gICAgICAgIHRoaXMuX3RpY2tTdHJlYW0gPSBuZXcgU3ViamVjdCgpO1xuICAgICAgICB0aGlzLl9sb2dTZXJ2aWNlID0gbG9nU2VydmljZTtcbiAgICB9XG5cbiAgICBpc0xpc3QoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0xpc3Q7XG4gICAgfVxuXG4gICAgZ2V0QXR0YWNobWVudElkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hdHRhY2htZW50SWQ7XG4gICAgfVxuXG4gICAgZ2V0S2V5KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9rZXk7XG4gICAgfVxuXG4gICAgZ2V0RGF0YSgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0YTtcbiAgICB9XG5cbiAgICBnZXRMaXN0RGF0YSgpOiBhbnlbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9saXN0RGF0YTtcbiAgICB9XG5cbiAgICBzZXREYXRhKGRhdGE6IGFueSkge1xuICAgICAgICBpZiAoZGF0YSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLl9kYXRhID0ge307XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9kYXRhID0gZGF0YTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9pc0xpc3QgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBzZXRMaXN0RGF0YShkYXRhOiBhbnlbXSkge1xuICAgICAgICBpZiAoZGF0YSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLl9saXN0RGF0YSA9IFtdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fbGlzdERhdGEgPSBkYXRhO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2lzTGlzdCA9IHRydWU7XG4gICAgfVxuXG4gICAgbG9hZChkYXRhOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fbG9nU2VydmljZS5sb2coJ2F0dGFjaG1lbnQgJyArIHRoaXMuX2tleSArICcgbG9hZGVkJywgZGF0YSk7XG4gICAgICAgIGlmIChkYXRhICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2xvYWRTdHJlYW0ubmV4dChkYXRhKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIHdlIG5lZWQgdG8gc2VuZCBiYWNrIGVtcHR5IGRhdGEgaWYgY29sbGVjdGlvbiBoYWQgbm90aGluZ1xuICAgICAgICAgICAgaWYgKHRoaXMuX2lzTGlzdCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2xvYWRTdHJlYW0ubmV4dCh1bmRlZmluZWQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9sb2FkU3RyZWFtLm5leHQodW5kZWZpbmVkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLl90aWNrU3RyZWFtLm5leHQoZGF0YSk7XG4gICAgfVxuXG4gICAgYWRkZWQoZGF0YTogYW55KSB7XG4gICAgICAgIHRoaXMuX2xvZ1NlcnZpY2UubG9nKCdhdHRhY2htZW50ICcgKyB0aGlzLl9rZXkgKyAnIGFkZGVkJywgZGF0YSk7XG4gICAgICAgIHRoaXMuX2FkZFN0cmVhbS5uZXh0KGRhdGEpO1xuICAgICAgICB0aGlzLl90aWNrU3RyZWFtLm5leHQoZGF0YSk7XG4gICAgfVxuXG4gICAgY2hhbmdlZChkYXRhOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fbG9nU2VydmljZS5sb2coJ2F0dGFjaG1lbnQgJyArIHRoaXMuX2tleSArICcgY2hhbmdlZCcsIGRhdGEpO1xuICAgICAgICB0aGlzLl9jaGFuZ2VTdHJlYW0ubmV4dChkYXRhKTtcbiAgICAgICAgdGhpcy5fdGlja1N0cmVhbS5uZXh0KGRhdGEpO1xuICAgIH1cblxuICAgIHJlbW92ZWQoZGF0YTogYW55KSB7XG4gICAgICAgIHRoaXMuX2xvZ1NlcnZpY2UubG9nKCdhdHRhY2htZW50ICcgKyB0aGlzLl9rZXkgKyAnIHJlbW92ZWQnLCBkYXRhKTtcbiAgICAgICAgdGhpcy5fcmVtb3ZlU3RyZWFtLm5leHQoZGF0YSk7XG4gICAgICAgIHRoaXMuX3RpY2tTdHJlYW0ubmV4dChkYXRhKTtcbiAgICB9XG5cbiAgICBsb2FkU3RyZWFtKCk6IFN1YmplY3Q8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sb2FkU3RyZWFtO1xuICAgIH1cblxuICAgIGFkZGVkU3RyZWFtKCk6IFN1YmplY3Q8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hZGRTdHJlYW07XG4gICAgfVxuXG4gICAgY2hhbmdlZFN0cmVhbSgpOiBTdWJqZWN0PGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2hhbmdlU3RyZWFtO1xuICAgIH1cblxuICAgIHJlbW92ZWRTdHJlYW0oKTogU3ViamVjdDxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3JlbW92ZVN0cmVhbTtcbiAgICB9XG4gICAgb25UaWNrKCk6IFN1YmplY3Q8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl90aWNrU3RyZWFtO1xuICAgIH1cbn1cbiJdfQ==