+7 (977) 266 90 86 || alex@anvics.ru
Monster Scrum
Планирование проекта и прозрачность их исполнения может стать ключом к эффективности и залогом успеха. Мы верим в SCRUM- подход работы над проектами и создали инструмент, который поможет выйти на качественно новый уровень результативности.
Процесс
Программинг
override fun loadStatuses() {
        if (checkIfLoadingNow()) return
        api.getConfiguration(globalData.getActiveBoardId())
                .subscribeOn(Schedulers.io())
                .subscribe({ columnsDataResponse ->
                    if (columnsDataResponse.isSuccessResp()) {
                        observeStatuses(columnsDataResponse.body()
                                .columnConfig.columns.flatMap(Column::statuses))
                    }
                }, { throwable -> error(throwable) })
    }
    private fun observeStatuses(statusLinks: List<StatusLink>) {
        Observable.fromArray(statusLinks)
                .flatMapIterable { it }
                .flatMap { statusLink ->
                    api.getSelfStatus(statusLink.self).observeOn(Schedulers.io()) // parallel
                }
                .map(Response<JiraStatus>::body)
                .buffer(statusLinks.size)
                .timeout(WAIT_MAX, TimeUnit.MILLISECONDS)
                .doOnTerminate { progressSubj.onNext(false) }
                .subscribe({ jiraStatuses ->
                    statusesSubj.onNext(jiraStatuses)
                }, { throwable -> error(throwable) })
    }
    override fun statusesObservable(): Observable<List<JiraStatus>> = statusesSubj
Приложение "Monster Scrum" скоро появится в App Store и Google Play!
Made on
Tilda