mirror of
https://github.com/corda/corda.git
synced 2025-06-11 20:01:46 +00:00
Finished porting change to make JPA entities non-final and serializable.
This commit is contained in:
@ -1,6 +1,7 @@
|
|||||||
package com.r3.corda.networkmanage.common.persistence.entity
|
package com.r3.corda.networkmanage.common.persistence.entity
|
||||||
|
|
||||||
import com.r3.corda.networkmanage.common.persistence.CrlIssuer
|
import com.r3.corda.networkmanage.common.persistence.CrlIssuer
|
||||||
|
import java.io.Serializable
|
||||||
import java.security.cert.X509CRL
|
import java.security.cert.X509CRL
|
||||||
import java.time.Instant
|
import java.time.Instant
|
||||||
import javax.persistence.*
|
import javax.persistence.*
|
||||||
@ -26,4 +27,4 @@ class CertificateRevocationListEntity(
|
|||||||
|
|
||||||
@Column(name = "modified_at", nullable = false)
|
@Column(name = "modified_at", nullable = false)
|
||||||
val modifiedAt: Instant = Instant.now()
|
val modifiedAt: Instant = Instant.now()
|
||||||
)
|
) : Serializable
|
@ -3,6 +3,7 @@ package com.r3.corda.networkmanage.common.persistence.entity
|
|||||||
import com.r3.corda.networkmanage.common.persistence.RequestStatus
|
import com.r3.corda.networkmanage.common.persistence.RequestStatus
|
||||||
import net.corda.core.identity.CordaX500Name
|
import net.corda.core.identity.CordaX500Name
|
||||||
import org.hibernate.envers.Audited
|
import org.hibernate.envers.Audited
|
||||||
|
import java.io.Serializable
|
||||||
import java.math.BigInteger
|
import java.math.BigInteger
|
||||||
import java.security.cert.CRLReason
|
import java.security.cert.CRLReason
|
||||||
import java.time.Instant
|
import java.time.Instant
|
||||||
@ -57,4 +58,4 @@ data class CertificateRevocationRequestEntity(
|
|||||||
@Audited
|
@Audited
|
||||||
@Column(name = "remark", length = 256)
|
@Column(name = "remark", length = 256)
|
||||||
val remark: String? = null
|
val remark: String? = null
|
||||||
)
|
) : Serializable
|
@ -19,6 +19,7 @@ import net.corda.core.identity.CordaX500Name
|
|||||||
import net.corda.nodeapi.internal.crypto.x509Certificates
|
import net.corda.nodeapi.internal.crypto.x509Certificates
|
||||||
import org.bouncycastle.pkcs.PKCS10CertificationRequest
|
import org.bouncycastle.pkcs.PKCS10CertificationRequest
|
||||||
import org.hibernate.envers.Audited
|
import org.hibernate.envers.Audited
|
||||||
|
import java.io.Serializable
|
||||||
import java.math.BigInteger
|
import java.math.BigInteger
|
||||||
import java.security.cert.CertPath
|
import java.security.cert.CertPath
|
||||||
import java.time.Instant
|
import java.time.Instant
|
||||||
@ -69,7 +70,7 @@ data class CertificateSigningRequestEntity(
|
|||||||
@ManyToOne
|
@ManyToOne
|
||||||
@JoinColumn(name = "private_network", foreignKey = ForeignKey(name = "FK__CSR__PN"))
|
@JoinColumn(name = "private_network", foreignKey = ForeignKey(name = "FK__CSR__PN"))
|
||||||
val privateNetwork: PrivateNetworkEntity? = null
|
val privateNetwork: PrivateNetworkEntity? = null
|
||||||
) {
|
) : Serializable {
|
||||||
fun toCertificateSigningRequest(): CertificateSigningRequest {
|
fun toCertificateSigningRequest(): CertificateSigningRequest {
|
||||||
return CertificateSigningRequest(
|
return CertificateSigningRequest(
|
||||||
requestId = requestId,
|
requestId = requestId,
|
||||||
@ -108,7 +109,7 @@ data class CertificateDataEntity(
|
|||||||
|
|
||||||
@Column(name = "cert_serial_number", unique = true, nullable = false, columnDefinition = "NUMERIC(28)")
|
@Column(name = "cert_serial_number", unique = true, nullable = false, columnDefinition = "NUMERIC(28)")
|
||||||
val certificateSerialNumber: BigInteger
|
val certificateSerialNumber: BigInteger
|
||||||
) {
|
) : Serializable {
|
||||||
fun toCertificateData(): CertificateData = CertificateData(certificateStatus, certPath)
|
fun toCertificateData(): CertificateData = CertificateData(certificateStatus, certPath)
|
||||||
|
|
||||||
val legalName: CordaX500Name get() {
|
val legalName: CordaX500Name get() {
|
||||||
@ -125,4 +126,4 @@ data class PrivateNetworkEntity(
|
|||||||
|
|
||||||
@Column(name = "name", length = 255, nullable = false)
|
@Column(name = "name", length = 255, nullable = false)
|
||||||
val networkName: String
|
val networkName: String
|
||||||
)
|
) : Serializable
|
@ -14,6 +14,7 @@ import net.corda.core.internal.DigitalSignatureWithCert
|
|||||||
import net.corda.core.serialization.serialize
|
import net.corda.core.serialization.serialize
|
||||||
import net.corda.nodeapi.internal.network.NetworkMap
|
import net.corda.nodeapi.internal.network.NetworkMap
|
||||||
import net.corda.nodeapi.internal.network.SignedNetworkMap
|
import net.corda.nodeapi.internal.network.SignedNetworkMap
|
||||||
|
import java.io.Serializable
|
||||||
import java.security.cert.X509Certificate
|
import java.security.cert.X509Certificate
|
||||||
import javax.persistence.*
|
import javax.persistence.*
|
||||||
|
|
||||||
@ -41,7 +42,7 @@ class NetworkMapEntity(
|
|||||||
@ManyToOne(optional = false, fetch = FetchType.EAGER)
|
@ManyToOne(optional = false, fetch = FetchType.EAGER)
|
||||||
@JoinColumn(name = "network_parameters", nullable = false)
|
@JoinColumn(name = "network_parameters", nullable = false)
|
||||||
val networkParameters: NetworkParametersEntity
|
val networkParameters: NetworkParametersEntity
|
||||||
) {
|
) : Serializable {
|
||||||
fun toSignedNetworkMap(): SignedNetworkMap {
|
fun toSignedNetworkMap(): SignedNetworkMap {
|
||||||
return SignedNetworkMap(networkMap.serialize(), DigitalSignatureWithCert(certificate, signature))
|
return SignedNetworkMap(networkMap.serialize(), DigitalSignatureWithCert(certificate, signature))
|
||||||
}
|
}
|
||||||
|
@ -14,6 +14,7 @@ import net.corda.core.internal.DigitalSignatureWithCert
|
|||||||
import net.corda.core.node.NetworkParameters
|
import net.corda.core.node.NetworkParameters
|
||||||
import net.corda.core.serialization.serialize
|
import net.corda.core.serialization.serialize
|
||||||
import net.corda.nodeapi.internal.network.SignedNetworkParameters
|
import net.corda.nodeapi.internal.network.SignedNetworkParameters
|
||||||
|
import java.io.Serializable
|
||||||
import java.security.cert.X509Certificate
|
import java.security.cert.X509Certificate
|
||||||
import java.time.Instant
|
import java.time.Instant
|
||||||
import javax.persistence.*
|
import javax.persistence.*
|
||||||
@ -43,12 +44,13 @@ class NetworkParametersEntity(
|
|||||||
@Column(name = "cert")
|
@Column(name = "cert")
|
||||||
@Convert(converter = X509CertificateConverter::class)
|
@Convert(converter = X509CertificateConverter::class)
|
||||||
val certificate: X509Certificate?
|
val certificate: X509Certificate?
|
||||||
) {
|
) : Serializable {
|
||||||
val isSigned: Boolean get() = certificate != null && signature != null
|
val isSigned: Boolean get() = certificate != null && signature != null
|
||||||
|
|
||||||
fun toSignedNetworkParameters(): SignedNetworkParameters {
|
fun toSignedNetworkParameters(): SignedNetworkParameters {
|
||||||
if (certificate == null || signature == null) throw IllegalStateException("Network parameters entity is not signed: $hash")
|
val cert = certificate ?: throw IllegalStateException("Network parameters entity is not signed: $hash")
|
||||||
return SignedNetworkParameters(networkParameters.serialize(), DigitalSignatureWithCert(certificate, signature))
|
val sign = signature ?: throw IllegalStateException("Network parameters entity is not signed: $hash")
|
||||||
|
return SignedNetworkParameters(networkParameters.serialize(), DigitalSignatureWithCert(cert, sign))
|
||||||
}
|
}
|
||||||
|
|
||||||
fun copy(parametersHash: String = this.hash,
|
fun copy(parametersHash: String = this.hash,
|
||||||
|
@ -11,6 +11,7 @@
|
|||||||
package com.r3.corda.networkmanage.common.persistence.entity
|
package com.r3.corda.networkmanage.common.persistence.entity
|
||||||
|
|
||||||
import net.corda.nodeapi.internal.SignedNodeInfo
|
import net.corda.nodeapi.internal.SignedNodeInfo
|
||||||
|
import java.io.Serializable
|
||||||
import java.time.Instant
|
import java.time.Instant
|
||||||
import javax.persistence.*
|
import javax.persistence.*
|
||||||
|
|
||||||
@ -40,7 +41,7 @@ data class NodeInfoEntity(
|
|||||||
@Column(name = "published_at", nullable = false)
|
@Column(name = "published_at", nullable = false)
|
||||||
val publishedAt: Instant = Instant.now(),
|
val publishedAt: Instant = Instant.now(),
|
||||||
|
|
||||||
@ManyToOne(fetch = FetchType.LAZY)
|
@ManyToOne(fetch = FetchType.EAGER)
|
||||||
@JoinColumn(name = "accepted_params_update")
|
@JoinColumn(name = "accepted_params_update")
|
||||||
val acceptedParametersUpdate: ParametersUpdateEntity?
|
val acceptedParametersUpdate: ParametersUpdateEntity?
|
||||||
)
|
) : Serializable
|
||||||
|
@ -2,6 +2,7 @@ package com.r3.corda.networkmanage.common.persistence.entity
|
|||||||
|
|
||||||
import net.corda.core.crypto.SecureHash
|
import net.corda.core.crypto.SecureHash
|
||||||
import net.corda.nodeapi.internal.network.ParametersUpdate
|
import net.corda.nodeapi.internal.network.ParametersUpdate
|
||||||
|
import java.io.Serializable
|
||||||
import java.time.Instant
|
import java.time.Instant
|
||||||
import javax.persistence.*
|
import javax.persistence.*
|
||||||
|
|
||||||
@ -26,7 +27,7 @@ data class ParametersUpdateEntity(
|
|||||||
@Column(name = "status", length = 16, nullable = false, columnDefinition = "NVARCHAR(16)")
|
@Column(name = "status", length = 16, nullable = false, columnDefinition = "NVARCHAR(16)")
|
||||||
@Enumerated(EnumType.STRING)
|
@Enumerated(EnumType.STRING)
|
||||||
val status: UpdateStatus = UpdateStatus.NEW
|
val status: UpdateStatus = UpdateStatus.NEW
|
||||||
) {
|
) : Serializable {
|
||||||
fun toParametersUpdate(): ParametersUpdate {
|
fun toParametersUpdate(): ParametersUpdate {
|
||||||
return ParametersUpdate(SecureHash.parse(networkParameters.hash), description, updateDeadline)
|
return ParametersUpdate(SecureHash.parse(networkParameters.hash), description, updateDeadline)
|
||||||
}
|
}
|
||||||
|
@ -16,6 +16,7 @@ import net.corda.node.utilities.AffinityExecutor
|
|||||||
import net.corda.nodeapi.internal.persistence.CordaPersistence
|
import net.corda.nodeapi.internal.persistence.CordaPersistence
|
||||||
import net.corda.nodeapi.internal.persistence.NODE_DATABASE_PREFIX
|
import net.corda.nodeapi.internal.persistence.NODE_DATABASE_PREFIX
|
||||||
import org.hibernate.Session
|
import org.hibernate.Session
|
||||||
|
import java.io.Serializable
|
||||||
import java.time.Duration
|
import java.time.Duration
|
||||||
import java.time.LocalDateTime
|
import java.time.LocalDateTime
|
||||||
import java.time.temporal.ChronoField
|
import java.time.temporal.ChronoField
|
||||||
@ -57,7 +58,7 @@ class RunOnceService(private val database: CordaPersistence, private val machine
|
|||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = TABLE)
|
@Table(name = TABLE)
|
||||||
class MutualExclusion(machineNameInit: String, pidInit: String, timeStampInit: LocalDateTime, versionInit: Long = 0) {
|
class MutualExclusion(machineNameInit: String, pidInit: String, timeStampInit: LocalDateTime, versionInit: Long = 0) : Serializable {
|
||||||
@Column(name = ID, insertable = false, updatable = false)
|
@Column(name = ID, insertable = false, updatable = false)
|
||||||
@Id
|
@Id
|
||||||
val id: Char = 'X'
|
val id: Char = 'X'
|
||||||
|
@ -155,7 +155,7 @@ object TestSchema : MappedSchema(SchemaFamily::class.java, 1, setOf(Parent::clas
|
|||||||
@Suppress("unused")
|
@Suppress("unused")
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "children")
|
@Table(name = "children")
|
||||||
class Child {
|
class Child : Serializable {
|
||||||
@Id
|
@Id
|
||||||
@GeneratedValue
|
@GeneratedValue
|
||||||
@Column(name = "child_id", unique = true, nullable = false)
|
@Column(name = "child_id", unique = true, nullable = false)
|
||||||
|
Reference in New Issue
Block a user