@Service
class IssuePileService(val issuePileRepository: IssuePileRepository) : IssuePileRepository

A service for issue piles

Parameters

issuePileRepository

The issue pile repository

Constructors

Link copied to clipboard
constructor(issuePileRepository: IssuePileRepository)

Properties

Functions

Link copied to clipboard
open override fun <S : IssuePileData?> count(example: Example<S?>?): Mono<Long?>?
open override fun count(): Mono<Long?>?
Link copied to clipboard
open override fun delete(entity: IssuePileData?): Mono<Void?>?
Link copied to clipboard
open override fun deleteAll(): Mono<Void?>?
open override fun deleteAll(entities: Iterable<out IssuePileData?>?): Mono<Void?>?
open override fun deleteAll(entityStream: Publisher<out IssuePileData?>?): Mono<Void?>?
Link copied to clipboard
open override fun deleteAllById(ids: Iterable<out ObjectId?>?): Mono<Void?>?
Link copied to clipboard
open override fun deleteById(id: ObjectId?): Mono<Void?>?
open override fun deleteById(id: Publisher<ObjectId?>?): Mono<Void?>?
Link copied to clipboard
open override fun <S : IssuePileData?> exists(example: Example<S?>?): Mono<Boolean?>?
Link copied to clipboard
open override fun existsById(id: ObjectId?): Mono<Boolean?>?
open override fun existsById(id: Publisher<ObjectId?>?): Mono<Boolean?>?
Link copied to clipboard
open override fun <S : IssuePileData?> findAll(example: Example<S?>?): Flux<S?>?
open override fun <S : IssuePileData?> findAll(example: Example<S?>?, sort: Sort?): Flux<S?>?
open override fun findAll(): Flux<IssuePileData?>?
open override fun findAll(sort: Sort?): Flux<IssuePileData?>?
Link copied to clipboard
open override fun findAllById(ids: Iterable<ObjectId?>?): Flux<IssuePileData?>?
open override fun findAllById(idStream: Publisher<ObjectId?>?): Flux<IssuePileData?>?
Link copied to clipboard
open override fun <S : IssuePileData?, R : Any?, P : Publisher<R?>?> findBy(example: Example<S?>?, queryFunction: Function<FluentQuery.ReactiveFluentQuery<S?>?, P?>?): P?
Link copied to clipboard
open override fun findById(id: ObjectId?): Mono<IssuePileData?>?
open override fun findById(id: Publisher<ObjectId?>?): Mono<IssuePileData?>?
Link copied to clipboard
open suspend override fun findByImsProjectAndGithubId(imsProject: String, githubId: String): IssuePileData?

Find an issue pile by IMS project ID and GitHub ID

Link copied to clipboard
open suspend override fun findByImsProjectAndHasUnsyncedData(imsProject: String, hasUnsyncedData: Boolean): List<IssuePileData>

Find all issue piles by IMS project ID and whether they have unsynced data

Link copied to clipboard
open suspend override fun findByImsProjectAndNeedsCommentRequest(imsProject: String, needsCommentRequest: Boolean): List<IssuePileData>

Find all issue piles by IMS project ID requiring a new Comment request

Link copied to clipboard
open suspend override fun findByImsProjectAndNeedsTimelineRequest(imsProject: String, needsTimelineRequest: Boolean): List<IssuePileData>

Find all issue piles by IMS project ID requiring a new Timeline request

open suspend override fun findFirstByImsProjectOrderByLastUpdateDesc(imsProject: String): IssuePileData?

Find an issue pile by IMS project ID and GitHub ID

Link copied to clipboard
open override fun <S : IssuePileData?> findOne(example: Example<S?>?): Mono<S?>?
Link copied to clipboard
open override fun <S : IssuePileData?> insert(entity: S?): Mono<S?>?
open override fun <S : IssuePileData?> insert(entities: Iterable<S?>?): Flux<S?>?
open override fun <S : IssuePileData?> insert(entities: Publisher<S?>?): Flux<S?>?
Link copied to clipboard
suspend fun integrateIssue(imsProject: IMSProject, data: IssueReadQuery.Data.Repository.Issues.Node)

Integrate an issue into the database

Link copied to clipboard
suspend fun integrateTimelineItem(issue: ObjectId, data: TimelineReadQuery.Data.IssueNode.TimelineItems.Node)

Integrate a timeline item into the database

Link copied to clipboard
fun mapTimelineItem(data: TimelineReadQuery.Data.IssueNode.TimelineItems.Node): GithubTimelineItem?

Map a TimelineItem from the API to the Database

Link copied to clipboard
suspend fun markCommentDone(issue: ObjectId, comment: String, updatedAt: OffsetDateTime, body: String)

Mark a comment as needing no new comment request

Link copied to clipboard
suspend fun markIssueSynced(issue: ObjectId)

Mark an issue as done

Link copied to clipboard
suspend fun markIssueTimelineDone(issue: ObjectId)

Mark an issue as needing no new timeline request

Link copied to clipboard
open override fun <S : IssuePileData?> save(entity: S?): Mono<S?>?
Link copied to clipboard
open override fun <S : IssuePileData?> saveAll(entities: Iterable<S?>?): Flux<S?>?
open override fun <S : IssuePileData?> saveAll(entityStream: Publisher<S?>?): Flux<S?>?