Skip to content

Commit 58b1f0b

Browse files
authored
Added configuration for save db in cosv module (#2906)
* Added configuration for save db in cosv module
1 parent 0596ff2 commit 58b1f0b

64 files changed

Lines changed: 870 additions & 289 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

save-backend/src/main/kotlin/com/saveourtool/save/backend/controllers/vulnerability/event/VulnerabilityMetadataListener.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@ import com.saveourtool.save.backend.service.NotificationService
44
import com.saveourtool.save.backend.service.UserDetailsService
55
import com.saveourtool.save.domain.Role
66
import com.saveourtool.save.entities.Notification
7-
import com.saveourtool.save.entities.cosv.VulnerabilityMetadata
8-
import com.saveourtool.save.entities.cosv.evententities.VulnerabilityMetadataEvent
97
import com.saveourtool.save.entities.vulnerability.VulnerabilityStatus
8+
import com.saveourtool.save.entitiescosv.VulnerabilityMetadata
9+
import com.saveourtool.save.entitiescosv.evententities.VulnerabilityMetadataEvent
10+
1011
import org.springframework.context.event.EventListener
1112
import org.springframework.stereotype.Component
1213

save-backend/src/main/kotlin/com/saveourtool/save/backend/repository/ProjectProblemRepository.kt

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

33
import com.saveourtool.save.entities.ProjectProblem
4-
import com.saveourtool.save.entities.cosv.VulnerabilityMetadata
4+
import com.saveourtool.save.entitiescosv.VulnerabilityMetadata
55
import com.saveourtool.save.spring.repository.BaseEntityRepository
66
import org.springframework.data.jpa.repository.Query
77
import org.springframework.data.repository.query.Param

save-backend/src/main/kotlin/com/saveourtool/save/backend/service/ProjectProblemService.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ class ProjectProblemService(
5555
name = problem.name,
5656
description = problem.description,
5757
critical = problem.critical,
58-
vulnerabilityMetadata = vulnerabilityMetadata,
58+
vulnerabilityMetadataId = vulnerabilityMetadata?.requiredId(),
5959
project = project,
6060
userId = user.requiredId(),
6161
isClosed = false,
@@ -75,7 +75,7 @@ class ProjectProblemService(
7575
description = projectProblemDto.description
7676
critical = projectProblemDto.critical
7777
isClosed = projectProblemDto.isClosed
78-
this.vulnerabilityMetadata = vulnerabilityMetadata
78+
this.vulnerabilityMetadataId = vulnerabilityMetadata?.requiredId()
7979
}
8080
projectProblemRepository.save(problem)
8181
}

save-cloud-common/src/commonMain/kotlin/com/saveourtool/save/entities/cosv/VulnerabilityExt.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import kotlinx.serialization.Serializable
1313
**/
1414
@Serializable
1515
data class VulnerabilityExt(
16-
val metadataDto: VulnerabilityMetadataDto,
16+
val metadataDto: VulnerabilityMetadataDtoWithUserAndOrganization,
1717
val cosv: RawCosvSchema,
1818
val saveContributors: List<UserInfo>,
1919
) {

save-cloud-common/src/commonMain/kotlin/com/saveourtool/save/entities/cosv/VulnerabilityMetadataDto.kt

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
@file:Suppress("HEADER_MISSING_IN_NON_SINGLE_CLASS_FILE")
2+
13
package com.saveourtool.save.entities.cosv
24

35
import com.saveourtool.save.entities.OrganizationDto
@@ -14,8 +16,6 @@ import kotlinx.serialization.Serializable
1416
* @property severityNum [com.saveourtool.osv4k.Severity.scoreNum]
1517
* @property modified [com.saveourtool.osv4k.OsvSchema.modified]
1618
* @property submitted
17-
* @property user
18-
* @property organization
1919
* @property language
2020
* @property status
2121
* @property tags
@@ -28,8 +28,6 @@ data class VulnerabilityMetadataDto(
2828
val severityNum: Float,
2929
val modified: LocalDateTime,
3030
val submitted: LocalDateTime,
31-
val user: UserInfo,
32-
val organization: OrganizationDto?,
3331
val language: VulnerabilityLanguage,
3432
val status: VulnerabilityStatus,
3533
val tags: Set<String> = emptySet(),
@@ -43,3 +41,15 @@ data class VulnerabilityMetadataDto(
4341
const val SUMMARY_LENGTH = 250
4442
}
4543
}
44+
45+
/**
46+
* @property vulnerabilityMetadataDto
47+
* @property user
48+
* @property organization
49+
**/
50+
@Serializable
51+
data class VulnerabilityMetadataDtoWithUserAndOrganization(
52+
val vulnerabilityMetadataDto: VulnerabilityMetadataDto,
53+
val user: UserInfo,
54+
val organization: OrganizationDto?,
55+
)

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import kotlinx.datetime.toKotlinLocalDateTime
1515
* @property user
1616
*/
1717
@Entity
18-
@Table(name = "comments")
18+
@Table(schema = "save_cloud", name = "comments")
1919
class Comment(
2020

2121
var message: String,

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,13 @@ data class Organization(
2727
@Enumerated(EnumType.STRING)
2828
var status: OrganizationStatus,
2929
@Contextual
30+
@Column(name = "date_created")
3031
var dateCreated: LocalDateTime,
3132
var avatar: String? = null,
3233
var description: String? = null,
34+
@Column(name = "can_create_contests")
3335
var canCreateContests: Boolean = false,
36+
@Column(name = "can_bulk_upload")
3437
var canBulkUpload: Boolean = false,
3538
var rating: Long = 0,
3639
) : BaseEntityWithDto<OrganizationDto>() {

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,15 @@ import com.fasterxml.jackson.annotation.JsonBackReference
77
import javax.persistence.Entity
88
import javax.persistence.JoinColumn
99
import javax.persistence.ManyToOne
10+
import javax.persistence.Table
1011

1112
/**
1213
* @property name
1314
* @property user
1415
* @property source
1516
*/
1617
@Entity
18+
@Table(schema = "save_cloud", name = "original_login")
1719
class OriginalLogin(
1820
var name: String,
1921
@ManyToOne

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

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
package com.saveourtool.save.entities
22

3-
import com.saveourtool.save.entities.cosv.VulnerabilityMetadata
43
import com.saveourtool.save.spring.entity.BaseEntityWithDateAndDto
54
import javax.persistence.*
65

76
/**
87
* @property name
98
* @property description
109
* @property critical
11-
* @property vulnerabilityMetadata
10+
* @property vulnerabilityMetadataId
1211
* @property project
1312
* @property userId
1413
* @property isClosed
@@ -24,9 +23,7 @@ class ProjectProblem(
2423
@Enumerated(EnumType.STRING)
2524
var critical: ProjectProblemCritical,
2625

27-
@ManyToOne
28-
@JoinColumn(name = "vulnerability_metadata_id")
29-
var vulnerabilityMetadata: VulnerabilityMetadata?,
26+
var vulnerabilityMetadataId: Long?,
3027

3128
@ManyToOne
3229
@JoinColumn(name = "project_id")
@@ -41,7 +38,7 @@ class ProjectProblem(
4138
name = name,
4239
description = description,
4340
critical = critical,
44-
identifier = vulnerabilityMetadata?.identifier,
41+
identifier = "",
4542
organizationName = project.organization.name,
4643
projectName = project.name,
4744
isClosed = isClosed,

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ class User(
4141
var company: String? = null,
4242
var location: String? = null,
4343
var linkedin: String? = null,
44+
@Column(name = "git_hub")
4445
var gitHub: String? = null,
4546
var twitter: String? = null,
4647
@Enumerated(EnumType.STRING)
@@ -54,7 +55,9 @@ class User(
5455
var originalLogins: List<OriginalLogin> = emptyList(),
5556
var rating: Long = 0,
5657
var website: String? = null,
58+
@Column(name = "free_text")
5759
var freeText: String? = null,
60+
@Column(name = "real_name")
5861
var realName: String? = null,
5962
) : BaseEntityWithDate() {
6063
/**

0 commit comments

Comments
 (0)