Skip to content

Commit aeebdf7

Browse files
committed
Create GetHomeRenderUseCase
1 parent 61ea64a commit aeebdf7

File tree

4 files changed

+21
-12
lines changed

4 files changed

+21
-12
lines changed

src/commonMain/kotlin/com/yesferal/hornsapp/core/data/abstraction/remote/RenderRemoteDataSource.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,8 @@ package com.yesferal.hornsapp.core.data.abstraction.remote
33

44
import com.yesferal.hornsapp.core.domain.entity.render.CategoryRender
55
import com.yesferal.hornsapp.core.domain.entity.render.ScreenRender
6-
import kotlinx.coroutines.flow.Flow
76

87
interface RenderRemoteDataSource {
9-
val homeRender: Flow<List<ScreenRender>>
10-
val categoryRender: Flow<List<CategoryRender>>
8+
suspend fun getHomeRender(): List<ScreenRender>?
9+
suspend fun getCategoryRender(): List<CategoryRender>?
1110
}

src/commonMain/kotlin/com/yesferal/hornsapp/core/data/repository/RenderRepositoryImpl.kt

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@ import com.yesferal.hornsapp.core.data.abstraction.remote.RenderRemoteDataSource
55
import com.yesferal.hornsapp.core.domain.abstraction.RenderRepository
66
import com.yesferal.hornsapp.core.domain.entity.render.CategoryRender
77
import com.yesferal.hornsapp.core.domain.entity.render.ScreenRender
8-
import kotlinx.coroutines.flow.Flow
98

109
class RenderRepositoryImpl(private val renderRemoteDataSource: RenderRemoteDataSource): RenderRepository {
11-
12-
override fun getHomeRender(): Flow<List<ScreenRender>> {
13-
return renderRemoteDataSource.homeRender
10+
override suspend fun getHomeRender(): List<ScreenRender>? {
11+
return renderRemoteDataSource.getHomeRender()
1412
}
1513

16-
override fun getCategoryRender(): Flow<List<CategoryRender>> {
17-
return renderRemoteDataSource.categoryRender
14+
override suspend fun getCategoryRender(): List<CategoryRender>? {
15+
return renderRemoteDataSource.getCategoryRender()
1816
}
1917
}

src/commonMain/kotlin/com/yesferal/hornsapp/core/domain/abstraction/RenderRepository.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,8 @@ package com.yesferal.hornsapp.core.domain.abstraction
33

44
import com.yesferal.hornsapp.core.domain.entity.render.CategoryRender
55
import com.yesferal.hornsapp.core.domain.entity.render.ScreenRender
6-
import kotlinx.coroutines.flow.Flow
76

87
interface RenderRepository {
9-
fun getHomeRender(): Flow<List<ScreenRender>>
10-
fun getCategoryRender(): Flow<List<CategoryRender>>
8+
suspend fun getHomeRender(): List<ScreenRender>?
9+
suspend fun getCategoryRender(): List<CategoryRender>?
1110
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
/* Copyright © 2025 HornsApp. All rights reserved. */
2+
package com.yesferal.hornsapp.core.domain.usecase.render
3+
4+
import com.yesferal.hornsapp.core.domain.abstraction.RenderRepository
5+
import com.yesferal.hornsapp.core.domain.entity.render.ScreenRender
6+
7+
class GetHomeRenderUseCase(
8+
private val repository: RenderRepository
9+
) {
10+
suspend operator fun invoke(): List<ScreenRender>? {
11+
return repository.getHomeRender()
12+
}
13+
}

0 commit comments

Comments
 (0)