Skip to content

Commit 20042f5

Browse files
authored
Added spring boot application for cosv (#2903)
* Added spring boot application for cosv * Added spring boot application for cosv * Added spring boot application for cosv
1 parent c0b8b8e commit 20042f5

18 files changed

Lines changed: 141 additions & 39 deletions

File tree

gradle/plugins/src/main/kotlin/com/saveourtool/save/buildutils/spring-boot-app-configuration.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ tasks.withType<BootRun>().configureEach {
3333
os.isWindows -> append(",win")
3434
os.isMacOsX -> append(",mac")
3535
}
36-
if (listOf("save-sandbox", "save-backend").any { project.path.contains(it) }) {
36+
if (listOf("save-sandbox", "save-backend", "save-cosv").any { project.path.contains(it) }) {
3737
append(",secure")
3838
}
3939
}

save-cloud-common/src/jvmMain/kotlin/com/saveourtool/save/entities/Notification.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import com.saveourtool.save.spring.entity.BaseEntityWithDateAndDto
55
import javax.persistence.Entity
66
import javax.persistence.JoinColumn
77
import javax.persistence.ManyToOne
8+
import javax.persistence.Table
89

910
import kotlinx.datetime.toKotlinLocalDateTime
1011

@@ -13,6 +14,7 @@ import kotlinx.datetime.toKotlinLocalDateTime
1314
* @property user
1415
*/
1516
@Entity
17+
@Table(schema = "save_cloud", name = "notification")
1618
class Notification(
1719
var message: String,
1820

save-cloud-common/src/jvmMain/kotlin/com/saveourtool/save/entities/Organization.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import kotlinx.serialization.Serializable
2121
*/
2222
@Entity
2323
@Serializable
24+
@Table(schema = "save_cloud", name = "organization")
2425
data class Organization(
2526
var name: String,
2627
@Enumerated(EnumType.STRING)

save-cloud-common/src/jvmMain/kotlin/com/saveourtool/save/entities/User.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import kotlinx.datetime.toKotlinLocalDateTime
3131
*/
3232
@Entity
3333
@Suppress("LongParameterList")
34+
@Table(schema = "save_cloud", name = "user")
3435
class User(
3536
var name: String,
3637
var password: String?,

save-cloud-common/src/jvmMain/kotlin/com/saveourtool/save/utils/BlockingBridge.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.saveourtool.save.utils
22

33
import org.jetbrains.annotations.NonBlocking
4+
import org.springframework.stereotype.Component
45
import reactor.core.publisher.Flux
56
import reactor.core.publisher.Mono
67
import reactor.core.scheduler.Scheduler
@@ -17,6 +18,7 @@ import kotlinx.coroutines.withContext
1718
* @property ioScheduler [Scheduler] for IO operations for [Mono] and [Flux]
1819
* @property ioDispatcher [CoroutineDispatcher] for IO operations in suspend function
1920
*/
21+
@Component
2022
class BlockingBridge(
2123
val ioScheduler: Scheduler = Schedulers.boundedElastic(),
2224
val ioDispatcher: CoroutineDispatcher = Dispatchers.IO,

save-cosv-frontend/webpack.config.d/dev-server.js

Lines changed: 1 addition & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -7,42 +7,9 @@ config.devServer = Object.assign(
77
return middlewares;
88
},
99
proxy: [
10-
{
11-
context: ["/api/sandbox/**"],
12-
target: 'http://localhost:5400',
13-
logLevel: 'debug',
14-
onProxyReq: function (proxyReq, req, res) {
15-
proxyReq.setHeader("X-Authorization-Id", "1");
16-
proxyReq.setHeader("X-Authorization-Name", "admin");
17-
proxyReq.setHeader("X-Authorization-Roles", "ROLE_SUPER_ADMIN");
18-
proxyReq.setHeader("X-Authorization-Status", "ACTIVE");
19-
}
20-
},
21-
{
22-
context: ["/api/demo/**"],
23-
target: 'http://localhost:5421',
24-
logLevel: 'debug',
25-
onProxyReq: function (proxyReq, req, res) {
26-
proxyReq.setHeader("X-Authorization-Id", "1");
27-
proxyReq.setHeader("X-Authorization-Name", "admin");
28-
proxyReq.setHeader("X-Authorization-Roles", "ROLE_SUPER_ADMIN");
29-
proxyReq.setHeader("X-Authorization-Status", "ACTIVE");
30-
}
31-
},
32-
{
33-
context: ["/api/cpg/**"],
34-
target: 'http://localhost:5500',
35-
logLevel: 'debug',
36-
onProxyReq: function (proxyReq, req, res) {
37-
proxyReq.setHeader("X-Authorization-Id", "1");
38-
proxyReq.setHeader("X-Authorization-Name", "admin");
39-
proxyReq.setHeader("X-Authorization-Roles", "ROLE_SUPER_ADMIN");
40-
proxyReq.setHeader("X-Authorization-Status", "ACTIVE");
41-
}
42-
},
4310
{
4411
context: ["/api/**"],
45-
target: 'http://localhost:5800',
12+
target: 'http://localhost:5700',
4613
logLevel: 'debug',
4714
onProxyReq: function (proxyReq, req, res) {
4815
proxyReq.setHeader("X-Authorization-Id", "1");

save-cosv/build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
plugins {
22
id("com.saveourtool.save.buildutils.kotlin-jvm-configuration")
33
id("com.saveourtool.save.buildutils.spring-boot-configuration")
4+
id("com.saveourtool.save.buildutils.spring-data-configuration")
5+
id("com.saveourtool.save.buildutils.spring-boot-app-configuration")
46
id("com.saveourtool.save.buildutils.code-quality-convention")
57
alias(libs.plugins.kotlin.plugin.serialization)
68
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
package com.saveourtool.save.cosv
2+
3+
import com.saveourtool.save.cosv.configs.ConfigProperties
4+
import com.saveourtool.save.s3.DefaultS3Configuration
5+
import org.springframework.boot.SpringApplication
6+
import org.springframework.boot.autoconfigure.SpringBootApplication
7+
import org.springframework.boot.autoconfigure.domain.EntityScan
8+
import org.springframework.boot.context.properties.EnableConfigurationProperties
9+
import org.springframework.context.annotation.Import
10+
11+
/**
12+
* An entrypoint for spring for save-cosv
13+
*/
14+
@SpringBootApplication(scanBasePackages = ["com.saveourtool.save.utils", "com.saveourtool.save"])
15+
@EnableConfigurationProperties(ConfigProperties::class)
16+
@Import(
17+
DefaultS3Configuration::class,
18+
)
19+
@EntityScan("com.saveourtool.save.entities")
20+
class CosvApplication
21+
22+
fun main(args: Array<String>) {
23+
SpringApplication.run(CosvApplication::class.java, *args)
24+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package com.saveourtool.save.cosv.configs
2+
3+
import com.saveourtool.save.s3.S3OperationsProperties
4+
import org.springframework.boot.context.properties.ConfigurationProperties
5+
import org.springframework.boot.context.properties.ConstructorBinding
6+
import java.nio.file.Path
7+
8+
/**
9+
* Class for properties
10+
*
11+
* @property s3Storage configuration of S3 storage
12+
* @property workingDir a local folder for tmp files
13+
*/
14+
@ConstructorBinding
15+
@ConfigurationProperties(prefix = "cosv")
16+
data class ConfigProperties(
17+
override val s3Storage: S3OperationsProperties,
18+
val workingDir: Path,
19+
) : S3OperationsProperties.Provider

save-cosv/src/main/kotlin/com/saveourtool/save/cosv/repository/NotificationRepository.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.saveourtool.save.cosv.repository
22

33
import com.saveourtool.save.entities.Notification
4+
import com.saveourtool.save.spring.repository.BaseEntityRepository
45
import org.springframework.data.jpa.repository.Query
56
import org.springframework.data.repository.query.Param
67
import org.springframework.stereotype.Repository
@@ -9,7 +10,7 @@ import org.springframework.stereotype.Repository
910
* The repository of notification entities.
1011
*/
1112
@Repository
12-
interface NotificationRepository {
13+
interface NotificationRepository : BaseEntityRepository<Notification> {
1314
/**
1415
* @param message message of notification
1516
* @param userId id of user

0 commit comments

Comments
 (0)