Exemplo n.º 1
0
    def initialize_downloadable(self, current_date):
        def on_next(current_datetime):
            self.raw_stream.on_next(self._fetch_downloadable_files(current_datetime))

        Observable.interval(1000)\
            .zip(
            self.raw_stream,
            self.raw_stream.filter(lambda x: len(x) > 0),
            lambda x, y, z: y[-1].datetime if len(y) > 0 else z[-1]
        )\
            .subscribe(on_next)
        self.raw_stream.on_next([KeyWithTimeSeriese(None, self.s_date)])

        self.downloadable_file_stream = self.raw_stream\
            .flat_map(lambda x: Observable.from_iterable(x))\
            .publish()
Exemplo n.º 2
0
    def sample(self, interval=None, sampler=None, scheduler=None):
        """Samples the observable sequence at each interval.

        1 - res = source.sample(sample_observable) # Sampler tick sequence
        2 - res = source.sample(5000) # 5 seconds
        2 - res = source.sample(5000, rx.scheduler.timeout) # 5 seconds

        Keyword arguments:
        source -- Source sequence to sample.
        interval -- Interval at which to sample (specified as an integer
            denoting milliseconds).
        scheduler -- [Optional] Scheduler to run the sampling timer on. If not
            specified, the timeout scheduler is used.

        Returns sampled observable sequence.
        """
        scheduler = scheduler or timeout_scheduler
        if not interval is None:
            return self._sample_observable(Observable.interval(interval, scheduler=scheduler))

        return self.sample_observable(sampler)
Exemplo n.º 3
0
    def sample(self, interval=None, sampler=None, scheduler=None):
        """Samples the observable sequence at each interval.

        1 - res = source.sample(sample_observable) # Sampler tick sequence
        2 - res = source.sample(5000) # 5 seconds
        2 - res = source.sample(5000, rx.scheduler.timeout) # 5 seconds

        Keyword arguments:
        source -- Source sequence to sample.
        interval -- Interval at which to sample (specified as an integer
            denoting milliseconds).
        scheduler -- [Optional] Scheduler to run the sampling timer on. If not
            specified, the timeout scheduler is used.

        Returns sampled observable sequence.
        """
        scheduler = scheduler or timeout_scheduler
        if not interval is None:
            return self._sample_observable(
                Observable.interval(interval, scheduler=scheduler))

        return self.sample_observable(sampler)
Exemplo n.º 4
0
 def projection(x):
     return Observable.interval(10, scheduler).map(lambda a, b: x).take(x)
Exemplo n.º 5
0
 def projection(x):
     return Observable.interval(
         10, scheduler).select(lambda a, b: x).take(x)