I hereby claim:
- I am rarmatei on github.
- I am rarmatei (https://keybase.io/rarmatei) on keybase.
- I have a public key whose fingerprint is 6655 927D 4FF5 6C27 65A7 ADF3 5EB5 9F4D 663E 9A37
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
[ | |
{"albumId": "10", "artistName":"Beyoncé", "collectionName":"Lemonade", "artworkUrl100":"http://is1.mzstatic.com/image/thumb/Music20/v4/23/c1/9e/23c19e53-783f-ae47-7212-03cc9998bd84/source/100x100bb.jpg", "releaseDate":"2016-04-25T07:00:00Z", "primaryGenreName":"Pop", "url": "https://www.youtube.com/embed/PeonBmeFR8o?rel=0&controls=0&showinfo=0"}, | |
{"albumId": "11", "artistName":"Beyoncé", "collectionName":"Dangerously In Love", "artworkUrl100":"http://is1.mzstatic.com/image/thumb/Music/v4/18/93/6d/18936d85-8f6b-7597-87ef-62c4c5211298/source/100x100bb.jpg", "releaseDate":"2003-06-24T07:00:00Z", "primaryGenreName":"Pop", "url": "https://www.youtube.com/embed/ViwtNLUqkMY?rel=0&controls=0&showinfo=0"}, | |
{"albumId": "12", "artistName":"Beyoncé", "collectionName":"I Am... Sasha Fierce", "artworkUrl100":"http://is2.mzstatic.com/image/thumb/Music/v4/1b/93/48/1b9348ed-c859-5ac0-c040-b54d0ec5bc50/source/100x100bb.jpg", "releaseDate":"2008-11-18T08:00:00Z", "primaryGenreName":"Pop", "url": |
Rx.Observable.using( | |
function resourceFactory() { | |
return { | |
name: 'my resource', | |
unsubscribe() { | |
console.log("resource disposed"); | |
} | |
}; | |
}, | |
function obsFactory(resource) { |
function refCount(source) { | |
let length = 0; | |
const onNewSubscriber = () => { | |
const onUnsubscribe = () => { | |
length--; | |
if(length === 0) { | |
source.connect().unsubscribe(); | |
} | |
}; | |
length++; |
function delayedRefCount(delay) { | |
return (source) => { | |
let length = 0; | |
let timeout; | |
const onNewSubscriber = () => { | |
const onUnsubscribe = () => { | |
length--; | |
if (length === 0) { | |
timeout = setTimeout(() => { | |
source.connect().unsubscribe(); |
subscribeUpdates | |
.scan((total, change) => change + total, 0) | |
.switchMap(count => { | |
return count === 0 | |
? Observable.timer(delay) | |
.do(_ => /* tear-down logic */ ) | |
: Observable.never(); | |
}); |
function delayedRefCount(delay) { | |
return (source) => { | |
const subscribeUpdates = new Subject(); | |
let trackerConnection; | |
let subscriptionTracker = subscribeUpdates.scan((total, change) => change + total, 0) | |
.switchMap(count => { | |
return count === 0 | |
? Observable.timer(delay) | |
.do(_ => source.connect().unsubscribe() || trackerConnection.unsubscribe()) | |
: Observable.never(); |
class MyService { | |
constructor() { | |
this._producer = Rx.Observable.interval(1000) | |
.publish(); | |
} | |
private _producer: Rx.ConnectableObservable<number>; | |
startItUp(): Rx.Observable<number> { |
class MyService { | |
constructor() { | |
this._producer = Rx.Observable.of(1) | |
.publish(); | |
} | |
private _producer: Rx.ConnectableObservable<number>; | |
startItUp(): Rx.Observable<number> { |
class MyService3 { | |
constructor() { | |
this._producer = Rx.Observable.of(1) | |
.publish(); | |
} | |
private _producer: Rx.ConnectableObservable<number>; | |
startItUp(): Rx.Observable<number> { |