Details
Description
TlsCipherSuite and TlsProtocol are entities that contain only an id and an element.
It should be more efficient to directly store the element (ciphersuite or protocol) in the entity that needs it.
Morevover it adds some complication :
* There is one more join table to map container with real ciphersuite
* the id of those TlsCiphersuite/Protocol must be managed. Currently, they are "AUTO" GeneratedValue (without sequence) and are the cause of problems during SQL migration.
The best is to delete these entity, directly store ciphersuite or protocols in entities concerned and simplify the schema.
For example List or Set of enumeration can be stored using :
@ElementCollection
@CollectionTable(name="tls_test_case_expectedalertdescriptions", joinColumns = @JoinColumn(name = "tls_test_case_id"))
@Column(name="element")
private Set<TlsAlertDescription> expectedAlertDescriptions;
It should be more efficient to directly store the element (ciphersuite or protocol) in the entity that needs it.
Morevover it adds some complication :
* There is one more join table to map container with real ciphersuite
* the id of those TlsCiphersuite/Protocol must be managed. Currently, they are "AUTO" GeneratedValue (without sequence) and are the cause of problems during SQL migration.
The best is to delete these entity, directly store ciphersuite or protocols in entities concerned and simplify the schema.
For example List or Set of enumeration can be stored using :
@ElementCollection
@CollectionTable(name="tls_test_case_expectedalertdescriptions", joinColumns = @JoinColumn(name = "tls_test_case_id"))
@Column(name="element")
private Set<TlsAlertDescription> expectedAlertDescriptions;