Skip to content

Commit 7b36369

Browse files
committed
chore: update codebase structure
1 parent ecc11e7 commit 7b36369

12 files changed

Lines changed: 29 additions & 22 deletions

File tree

src/main/kotlin/com/sakethh/linkora/Application.kt

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
package com.sakethh.linkora
22

3+
import com.sakethh.linkora.data.configureDatabase
34
import com.sakethh.linkora.domain.model.ServerConfig
5+
import com.sakethh.linkora.presentation.routing.websocket.configureEventsWebSocket
6+
import com.sakethh.linkora.presentation.routing.configureRouting
47
import com.sakethh.linkora.utils.SysEnvKey
5-
import com.sakethh.linkora.utils.hostedOnRemote
8+
import com.sakethh.linkora.utils.useSysEnvValues
69
import io.ktor.server.application.*
710
import io.ktor.server.engine.*
811
import io.ktor.server.netty.*
@@ -75,12 +78,13 @@ object ServerConfiguration {
7578
}
7679

7780
fun readConfig(): ServerConfig {
78-
return if (hostedOnRemote()) {
81+
return if (useSysEnvValues()) {
7982
ServerConfig(
8083
databaseUrl = "jdbc:" + System.getenv(SysEnvKey.LINKORA_DATABASE_URL.name),
8184
databaseUser = System.getenv(SysEnvKey.LINKORA_DATABASE_USER.name),
8285
databasePassword = System.getenv(SysEnvKey.LINKORA_DATABASE_PASSWORD.name), hostAddress = try {
83-
System.getenv(SysEnvKey.LINKORA_HOST_ADDRESS.name)
86+
// manually throw the exception as `getenv` may return null, and no conversion is happening here to auto-throw
87+
System.getenv(SysEnvKey.LINKORA_HOST_ADDRESS.name) ?: throw NullPointerException()
8488
} catch (_: Exception) {
8589
"0.0.0.0"
8690
}, serverPort = try {

src/main/kotlin/com/sakethh/linkora/Database.kt renamed to src/main/kotlin/com/sakethh/linkora/data/Database.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
package com.sakethh.linkora
1+
package com.sakethh.linkora.data
22

3+
import com.sakethh.linkora.ServerConfiguration
34
import com.sakethh.linkora.domain.model.ServerConfig
45
import com.sakethh.linkora.domain.tables.*
5-
import com.sakethh.linkora.utils.hostedOnRemote
6+
import com.sakethh.linkora.utils.useSysEnvValues
67
import org.jetbrains.exposed.sql.Database
78
import org.jetbrains.exposed.sql.SchemaUtils
89
import org.jetbrains.exposed.sql.transactions.transaction
@@ -54,7 +55,7 @@ fun configureDatabase() {
5455
}
5556
} else if (e.message?.contains("Database driver not found for") == true || e.message?.contains("Access denied") == true) {
5657
println(e.message)
57-
if (hostedOnRemote()) {
58+
if (useSysEnvValues()) {
5859
println("\nManually causing the crash since the correct values aren't provided through environment variables.")
5960
throw e
6061
}

src/main/kotlin/com/sakethh/linkora/EventsWebSocketManager.kt renamed to src/main/kotlin/com/sakethh/linkora/data/socket/manager/EventsWebSocketManager.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.sakethh.linkora
1+
package com.sakethh.linkora.data.socket.manager
22

33
import com.sakethh.linkora.domain.model.WebSocketEvent
44
import io.ktor.server.websocket.*

src/main/kotlin/com/sakethh/linkora/Routing.kt renamed to src/main/kotlin/com/sakethh/linkora/presentation/routing/Routing.kt

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
package com.sakethh.linkora
1+
package com.sakethh.linkora.presentation.routing
22

3+
import com.sakethh.linkora.Security
34
import com.sakethh.linkora.data.repository.FoldersImplementation
45
import com.sakethh.linkora.data.repository.LinksImplementation
56
import com.sakethh.linkora.data.repository.PanelsRepoImpl
@@ -9,10 +10,10 @@ import com.sakethh.linkora.domain.repository.LinksRepository
910
import com.sakethh.linkora.domain.repository.PanelsRepository
1011
import com.sakethh.linkora.domain.repository.SyncRepo
1112
import com.sakethh.linkora.domain.routes.SyncRoute
12-
import com.sakethh.linkora.routing.foldersRouting
13-
import com.sakethh.linkora.routing.linksRouting
14-
import com.sakethh.linkora.routing.panelsRouting
15-
import com.sakethh.linkora.routing.syncRouting
13+
import com.sakethh.linkora.presentation.routing.http.foldersRouting
14+
import com.sakethh.linkora.presentation.routing.http.linksRouting
15+
import com.sakethh.linkora.presentation.routing.http.panelsRouting
16+
import com.sakethh.linkora.presentation.routing.http.syncRouting
1617
import io.ktor.http.*
1718
import io.ktor.server.application.*
1819
import io.ktor.server.auth.*

src/main/kotlin/com/sakethh/linkora/routing/FoldersRouting.kt renamed to src/main/kotlin/com/sakethh/linkora/presentation/routing/http/FoldersRouting.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.sakethh.linkora.routing
1+
package com.sakethh.linkora.presentation.routing.http
22

33
import com.sakethh.linkora.Security
44
import com.sakethh.linkora.domain.dto.IDBasedDTO

src/main/kotlin/com/sakethh/linkora/routing/LinksRouting.kt renamed to src/main/kotlin/com/sakethh/linkora/presentation/routing/http/LinksRouting.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
package com.sakethh.linkora.routing
1+
package com.sakethh.linkora.presentation.routing.http
22

33
import com.sakethh.linkora.Security
4-
import com.sakethh.linkora.domain.Link
54
import com.sakethh.linkora.domain.dto.IDBasedDTO
65
import com.sakethh.linkora.domain.dto.link.*
76
import com.sakethh.linkora.domain.repository.LinksRepository

src/main/kotlin/com/sakethh/linkora/routing/PanelsRouting.kt renamed to src/main/kotlin/com/sakethh/linkora/presentation/routing/http/PanelsRouting.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.sakethh.linkora.routing
1+
package com.sakethh.linkora.presentation.routing.http
22

33
import com.sakethh.linkora.Security
44
import com.sakethh.linkora.domain.dto.IDBasedDTO

src/main/kotlin/com/sakethh/linkora/routing/SyncRouting.kt renamed to src/main/kotlin/com/sakethh/linkora/presentation/routing/http/SyncRouting.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.sakethh.linkora.routing
1+
package com.sakethh.linkora.presentation.routing.http
22

33
import com.sakethh.linkora.Security
44
import com.sakethh.linkora.domain.repository.SyncRepo

src/main/kotlin/com/sakethh/linkora/EventsWebSocket.kt renamed to src/main/kotlin/com/sakethh/linkora/presentation/routing/websocket/EventsWebSocketRouting.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
package com.sakethh.linkora
1+
package com.sakethh.linkora.presentation.routing.websocket
22

3-
import com.sakethh.linkora.EventsWebSocketManager.closeWriteChannel
4-
import com.sakethh.linkora.EventsWebSocketManager.initializeWriteChannel
3+
import com.sakethh.linkora.data.socket.manager.EventsWebSocketManager.closeWriteChannel
4+
import com.sakethh.linkora.data.socket.manager.EventsWebSocketManager.initializeWriteChannel
5+
import com.sakethh.linkora.Security
56
import com.sakethh.linkora.domain.dto.Correlation
67
import io.ktor.server.application.*
78
import io.ktor.server.auth.*

src/main/kotlin/com/sakethh/linkora/utils/RegularFunctions.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.sakethh.linkora.utils
22

3-
fun hostedOnRemote(): Boolean {
3+
fun useSysEnvValues(): Boolean {
44
return try {
55
System.getenv(SysEnvKey.LINKORA_SERVER_USE_ENV_VAL.name).toBooleanStrict()
66
} catch (e: Exception) {

0 commit comments

Comments
 (0)