Skip to content

Commit

Permalink
fix: package (#38)
Browse files Browse the repository at this point in the history
  • Loading branch information
adrielcafe authored Oct 26, 2019
1 parent 74a4ada commit 0839831
Show file tree
Hide file tree
Showing 76 changed files with 320 additions and 279 deletions.
6 changes: 3 additions & 3 deletions app/proguard-rules.pro
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@
# kotlinx.serialization
-keepattributes *Annotation*, InnerClasses
-dontnote kotlinx.serialization.SerializationKt
-keep,includedescriptorclasses class com.jcaique.domain.models.**$$serializer { *; }
-keepclassmembers class com.jcaique.domain.models.** {
-keep,includedescriptorclasses class com.jcaique.dialetus.domain.models.**$$serializer { *; }
-keepclassmembers class com.jcaique.dialetus.domain.models.** {
*** Companion;
}
-keepclasseswithmembers class com.jcaique.domain.models.** {
-keepclasseswithmembers class com.jcaique.dialetus.domain.models.** {
kotlinx.serialization.KSerializer serializer(...);
}

Expand Down
4 changes: 2 additions & 2 deletions app/src/main/java/com/jcaique/dialetus/DialetusApplication.kt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package com.jcaique.dialetus

import android.app.Application
import com.jcaique.data.di.dataModule
import com.jcaique.presentation.di.presentationModule
import com.jcaique.dialetus.data.di.dataModule
import com.jcaique.dialetus.presentation.di.presentationModule
import kotlinx.coroutines.Dispatchers
import org.kodein.di.Kodein
import org.kodein.di.KodeinAware
Expand Down
14 changes: 0 additions & 14 deletions data/src/main/java/com/jcaique/data/mappers/DialectsMapper.kt

This file was deleted.

8 changes: 0 additions & 8 deletions data/src/main/java/com/jcaique/data/mappers/RegionsMapper.kt

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.data
package com.jcaique.dialetus.data

internal object Consts {
const val URL = "https://dialetus-service.herokuapp.com/"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
package com.jcaique.data.di
package com.jcaique.dialetus.data.di

import com.jcaique.data.Consts.URL
import com.jcaique.data.networking.OkHttpClientProvider
import com.jcaique.data.networking.RetrofitProvider
import com.jcaique.data.service.DialetusGateway
import com.jcaique.data.service.dialects.DialectsInfrastructure
import com.jcaique.data.service.regions.RegionsInfrastructure
import com.jcaique.domain.dialects.DialectsService
import com.jcaique.domain.regions.RegionsService
import com.jcaique.dialetus.data.Consts.URL
import com.jcaique.dialetus.data.networking.OkHttpClientProvider
import com.jcaique.dialetus.data.networking.RetrofitProvider
import com.jcaique.dialetus.data.service.DialetusGateway
import com.jcaique.dialetus.data.service.dialects.DialectsInfrastructure
import com.jcaique.dialetus.data.service.regions.RegionsInfrastructure
import com.jcaique.dialetus.domain.dialects.DialectsService
import com.jcaique.dialetus.domain.regions.RegionsService
import okhttp3.logging.HttpLoggingInterceptor
import org.kodein.di.Kodein
import org.kodein.di.generic.bind
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package com.jcaique.dialetus.data.mappers

import com.jcaique.dialetus.data.responses.DialectResponse
import com.jcaique.dialetus.domain.models.Dialect
import com.jcaique.dialetus.domain.models.DialectSlug

internal object DialectsMapper {

fun toDomain(response: DialectResponse): Dialect =
Dialect(
response.slug,
response.dialect,
response.meanings,
response.examples
)

fun toDomain(response: Map.Entry<String, List<DialectResponse>>): Pair<DialectSlug, List<Dialect>> =
DialectSlug(response.key) to response.value.map(
DialectsMapper::toDomain)
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package com.jcaique.dialetus.data.mappers

import com.jcaique.dialetus.data.responses.RegionResponse
import com.jcaique.dialetus.domain.models.Region

internal object RegionsMapper {
fun toDomain(response: RegionResponse): Region =
Region(response.name, response.total)
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
package com.jcaique.data.networking
package com.jcaique.dialetus.data.networking

internal suspend fun <T> executionHandler(func: suspend () -> T): T {
val transformers = listOf(HttpErrorHandler, SerializationErrorHandler)
val transformers = listOf(
HttpErrorHandler,
SerializationErrorHandler
)
return try {
func.invoke()
} catch (throwable: Throwable) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.jcaique.data.networking
package com.jcaique.dialetus.data.networking

import com.jcaique.domain.errors.ErrorTransformer
import com.jcaique.domain.errors.GatewayIntegrationIssues
import com.jcaique.dialetus.domain.errors.ErrorTransformer
import com.jcaique.dialetus.domain.errors.GatewayIntegrationIssues
import java.net.HttpURLConnection.HTTP_BAD_REQUEST
import java.net.HttpURLConnection.HTTP_NOT_FOUND
import retrofit2.HttpException
Expand All @@ -11,7 +11,9 @@ internal object HttpErrorHandler : ErrorTransformer {
private const val HTTP_CLIENT_CLOSED_REQUEST = 499

override suspend fun transform(incoming: Throwable): Throwable = when (incoming) {
is HttpException -> handleHttpError(incoming.code())
is HttpException -> handleHttpError(
incoming.code()
)
else -> incoming
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.data.networking
package com.jcaique.dialetus.data.networking

import okhttp3.Interceptor
import okhttp3.OkHttpClient
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.data.networking
package com.jcaique.dialetus.data.networking

import com.jakewharton.retrofit2.converter.kotlinx.serialization.asConverterFactory
import kotlinx.serialization.json.Json
Expand All @@ -19,7 +19,10 @@ internal object RetrofitProvider {

fun provide(url: String, okHttpClient: OkHttpClient) = Retrofit.Builder()
.baseUrl(url)
.addConverterFactory(json.asConverterFactory(contentType))
.addConverterFactory(
json.asConverterFactory(
contentType
))
.client(okHttpClient)
.build()
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.jcaique.data.networking
package com.jcaique.dialetus.data.networking

import com.jcaique.domain.errors.ErrorTransformer
import com.jcaique.domain.errors.UnexpectedResponse
import com.jcaique.dialetus.domain.errors.ErrorTransformer
import com.jcaique.dialetus.domain.errors.UnexpectedResponse
import kotlinx.serialization.MissingFieldException
import kotlinx.serialization.SerializationException
import kotlinx.serialization.UnknownFieldException
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.data.responses
package com.jcaique.dialetus.data.responses

import kotlinx.serialization.Serializable

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.data.responses
package com.jcaique.dialetus.data.responses

import kotlinx.serialization.Serializable

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.jcaique.data.service
package com.jcaique.dialetus.data.service

import com.jcaique.data.responses.DialectResponse
import com.jcaique.data.responses.RegionResponse
import com.jcaique.dialetus.data.responses.DialectResponse
import com.jcaique.dialetus.data.responses.RegionResponse
import retrofit2.http.GET
import retrofit2.http.Path
import retrofit2.http.Query
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package com.jcaique.dialetus.data.service.dialects

import com.jcaique.dialetus.data.mappers.DialectsMapper
import com.jcaique.dialetus.data.networking.executionHandler
import com.jcaique.dialetus.data.service.DialetusGateway
import com.jcaique.dialetus.domain.dialects.DialectsService
import com.jcaique.dialetus.domain.models.Dialect
import com.jcaique.dialetus.domain.models.DialectSlug

internal class DialectsInfrastructure(private val api: DialetusGateway) :
DialectsService {

override suspend fun getDialectsBy(region: String): List<Dialect> =
executionHandler {
api.getDialectsBy(region)
.map(DialectsMapper::toDomain)
}

override suspend fun searchDialects(query: String): Map<DialectSlug, List<Dialect>> =
executionHandler {
api.searchDialects(query)
.map(DialectsMapper::toDomain)
.toMap()
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package com.jcaique.dialetus.data.service.regions

import com.jcaique.dialetus.data.mappers.RegionsMapper
import com.jcaique.dialetus.data.networking.executionHandler
import com.jcaique.dialetus.data.service.DialetusGateway
import com.jcaique.dialetus.domain.models.Region
import com.jcaique.dialetus.domain.regions.RegionsService

internal class RegionsInfrastructure(private val api: DialetusGateway) :
RegionsService {

override suspend fun fetchRegions(): List<Region> =
executionHandler {
api.fetchRegions().map { RegionsMapper.toDomain(it) }
}
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.jcaique.data.common
package com.jcaique.dialetus.data.common

import com.jcaique.data.networking.RetrofitProvider
import com.jcaique.data.service.DialetusGateway
import com.jcaique.dialetus.data.networking.RetrofitProvider
import com.jcaique.dialetus.data.service.DialetusGateway
import okhttp3.OkHttpClient
import okhttp3.logging.HttpLoggingInterceptor
import okhttp3.mockwebserver.MockResponse
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.data.common
package com.jcaique.dialetus.data.common

internal fun Any.loadFile(path: String) =
this.javaClass.classLoader.getResourceAsStream(path).bufferedReader().use { it.readText() }
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package com.jcaique.data.dialects
package com.jcaique.dialetus.data.dialects

import com.jcaique.data.common.SetupScenario
import com.jcaique.data.common.loadFile
import com.jcaique.data.service.dialects.DialectsInfrastructure
import com.jcaique.domain.dialects.DialectsService
import com.jcaique.domain.models.Dialect
import com.jcaique.domain.models.DialectSlug
import com.jcaique.dialetus.data.common.SetupScenario
import com.jcaique.dialetus.data.common.loadFile
import com.jcaique.dialetus.data.service.dialects.DialectsInfrastructure
import com.jcaique.dialetus.domain.dialects.DialectsService
import com.jcaique.dialetus.domain.models.Dialect
import com.jcaique.dialetus.domain.models.DialectSlug
import kotlinx.coroutines.runBlocking
import org.assertj.core.api.Java6Assertions.assertThat
import org.junit.Before
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package com.jcaique.data.regions
package com.jcaique.dialetus.data.regions

import com.jcaique.data.common.SetupScenario
import com.jcaique.data.common.loadFile
import com.jcaique.data.service.regions.RegionsInfrastructure
import com.jcaique.domain.models.Region
import com.jcaique.domain.regions.RegionsService
import com.jcaique.dialetus.data.common.SetupScenario
import com.jcaique.dialetus.data.common.loadFile
import com.jcaique.dialetus.data.service.regions.RegionsInfrastructure
import com.jcaique.dialetus.domain.models.Region
import com.jcaique.dialetus.domain.regions.RegionsService
import kotlinx.coroutines.runBlocking
import org.assertj.core.api.Java6Assertions.assertThat
import org.junit.Before
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.jcaique.domain.dialects
package com.jcaique.dialetus.domain.dialects

import com.jcaique.domain.models.Dialect
import com.jcaique.domain.models.DialectSlug
import com.jcaique.dialetus.domain.models.Dialect
import com.jcaique.dialetus.domain.models.DialectSlug

interface DialectsService {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.domain.errors
package com.jcaique.dialetus.domain.errors

interface ErrorTransformer {
suspend fun transform(incoming: Throwable): Throwable
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.domain.errors
package com.jcaique.dialetus.domain.errors

sealed class GatewayIntegrationIssues : Throwable() {
object NotFound : GatewayIntegrationIssues()
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
package com.jcaique.dialetus.domain.errors

object UnexpectedResponse : Throwable()
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.domain.models
package com.jcaique.dialetus.domain.models

import java.io.Serializable

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.domain.models
package com.jcaique.dialetus.domain.models

import java.io.Serializable

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.jcaique.domain.models
package com.jcaique.dialetus.domain.models

import java.io.Serializable

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package com.jcaique.dialetus.domain.regions

import com.jcaique.dialetus.domain.models.Region

interface RegionsService {

suspend fun fetchRegions(): List<Region>
}

This file was deleted.

Loading

0 comments on commit 0839831

Please sign in to comment.