Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ For seamless type support in Hibernate ORM, you should pick one of the following

| Hibernate Version | Artifact |
|-------------------------------|----------------------------------------------------------------------------------------------------------------------|
| 7.0, 7.1 | [org.framefork:typed-ids-hibernate-70](https://central.sonatype.com/artifact/org.framefork/typed-ids-hibernate-70) |
| 6.6, 6.5, 6.4, and 6.3 | [org.framefork:typed-ids-hibernate-63](https://central.sonatype.com/artifact/org.framefork/typed-ids-hibernate-63) |
| 6.2 | [org.framefork:typed-ids-hibernate-62](https://central.sonatype.com/artifact/org.framefork/typed-ids-hibernate-62) |
| 6.1 | [org.framefork:typed-ids-hibernate-61](https://central.sonatype.com/artifact/org.framefork/typed-ids-hibernate-61) |
Expand Down
18 changes: 10 additions & 8 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,23 +22,25 @@ testcontainers-base = { module = "org.testcontainers:testcontainers" }
testcontainers-postgresql = { module = "org.testcontainers:postgresql" }
testcontainers-mysql = { module = "org.testcontainers:mysql" }
testcontainers-junit-jupiter = { module = "org.testcontainers:junit-jupiter" }
datasource-hikaricp = { module = "com.zaxxer:HikariCP", version = "4.0.3" }
datasource-hikaricp = { module = "com.zaxxer:HikariCP", version = "5.1.0" }
datasource-proxy = { module = "net.ttddyy:datasource-proxy", version = "1.10" }
postgresql = { module = "org.postgresql:postgresql", version = "42.7.4" }
mysql = { module = "com.mysql:mysql-connector-j", version = "8.3.0" }
postgresql = { module = "org.postgresql:postgresql", version = "42.7.8" }
mysql = { module = "com.mysql:mysql-connector-j", version = "9.4.0" }
logback-classic = { module = "ch.qos.logback:logback-classic", version = "1.5.12" }
hibernate-orm-v61 = { group = "org.hibernate.orm", name = "hibernate-core", version = "6.1.7.Final" }
hibernate-orm-v62 = { group = "org.hibernate.orm", name = "hibernate-core", version = "6.2.36.Final" }
hibernate-orm-v62 = { group = "org.hibernate.orm", name = "hibernate-core", version = "6.2.45.Final" }
hibernate-orm-v63 = { group = "org.hibernate.orm", name = "hibernate-core", version = "6.3.2.Final" }
hibernate-orm-v64 = { group = "org.hibernate.orm", name = "hibernate-core", version = "6.4.10.Final" }
hibernate-orm-v65 = { group = "org.hibernate.orm", name = "hibernate-core", version = "6.5.3.Final" }
hibernate-orm-v66 = { group = "org.hibernate.orm", name = "hibernate-core", version = "6.6.26.Final" }
hibernate-orm-v66 = { group = "org.hibernate.orm", name = "hibernate-core", version = "6.6.29.Final" }
hibernate-orm-v70 = { group = "org.hibernate.orm", name = "hibernate-core", version = "7.0.10.Final" }
hibernate-orm-v71 = { group = "org.hibernate.orm", name = "hibernate-core", version = "7.1.0.Final" }
hibernate-orm-v71 = { group = "org.hibernate.orm", name = "hibernate-core", version = "7.1.1.Final" }
hibernate-models-v70 = { group = "org.hibernate.models", name = "hibernate-models", version = "1.0.0" }
hypersistence-utils-hibernate61 = { group = "io.hypersistence", name = "hypersistence-utils-hibernate-60", version = "3.9.4" }
hypersistence-utils-hibernate62 = { group = "io.hypersistence", name = "hypersistence-utils-hibernate-62", version = "3.9.4" }
hypersistence-utils-hibernate63 = { group = "io.hypersistence", name = "hypersistence-utils-hibernate-63", version = "3.10.3" }
hypersistence-utils-hibernate70 = { group = "io.hypersistence", name = "hypersistence-utils-hibernate-70", version = "3.10.3" }
hypersistence-utils-hibernate63 = { group = "io.hypersistence", name = "hypersistence-utils-hibernate-63", version = "3.11.0" }
hypersistence-utils-hibernate70 = { group = "io.hypersistence", name = "hypersistence-utils-hibernate-70", version = "3.11.0" }
hypersistence-utils-hibernate71 = { group = "io.hypersistence", name = "hypersistence-utils-hibernate-71", version = "3.11.0" }
hypersistence-tsid = { module = "io.hypersistence:hypersistence-tsid", version = "2.1.4" }
kotlinx-serialization = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version = "1.7.0" }
swagger-v3-core-jakarta = { module = "io.swagger.core.v3:swagger-core-jakarta", version = "2.2.35" }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,18 +34,26 @@ public void testSchema()
var table1 = getIdColumnInfo(em, BigIntAppGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table1.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table1.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table1.get("column_default", String.class)).isNull();
assertThat(table1.get("extra", String.class)).isEmpty();

var table2 = getIdColumnInfo(em, BigIntDbAutoGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table2.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table2.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table2.get("column_default", String.class)).isNull();
assertThat(table2.get("extra", String.class)).isEmpty();

var table3 = getIdColumnInfo(em, BigIntDbIdentityGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table3.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table3.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table3.get("column_default", String.class)).isNull();
assertThat(table3.get("extra", String.class)).isEqualToIgnoringCase("auto_increment");

var table4 = getIdColumnInfo(em, BigIntDbSequenceGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table4.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table4.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table4.get("column_default", String.class)).isNull();
assertThat(table4.get("extra", String.class)).isEmpty();
});
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,27 @@ public void testSchema()
doInJPA(em -> {
var table1 = getIdColumnInfo(em, BigIntAppGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table1.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table1.get("column_default", String.class)).isNull();
assertThat(table1.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table1.get("identity_generation", String.class)).isNull();

var table2 = getIdColumnInfo(em, BigIntDbAutoGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table2.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table2.get("column_default", String.class)).isNull();
assertThat(table2.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table2.get("identity_generation", String.class)).isNull();

var table3 = getIdColumnInfo(em, BigIntDbIdentityGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table3.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table3.get("column_default", String.class)).startsWith("nextval('");
assertThat(table3.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table3.get("identity_generation", String.class)).isNull();

var table4 = getIdColumnInfo(em, BigIntDbSequenceGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table4.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table4.get("column_default", String.class)).isNull();
assertThat(table4.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table4.get("identity_generation", String.class)).isNull();
});
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,18 +34,26 @@ public void testSchema()
var table1 = getIdColumnInfo(em, BigIntAppGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table1.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table1.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table1.get("column_default", String.class)).isNull();
assertThat(table1.get("extra", String.class)).isEmpty();

var table2 = getIdColumnInfo(em, BigIntDbAutoGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table2.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table2.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table2.get("column_default", String.class)).isNull();
assertThat(table2.get("extra", String.class)).isEmpty();

var table3 = getIdColumnInfo(em, BigIntDbIdentityGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table3.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table3.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table3.get("column_default", String.class)).isNull();
assertThat(table3.get("extra", String.class)).isEqualToIgnoringCase("auto_increment");

var table4 = getIdColumnInfo(em, BigIntDbSequenceGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table4.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table4.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table4.get("column_default", String.class)).isNull();
assertThat(table4.get("extra", String.class)).isEmpty();
});
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,27 @@ public void testSchema()
doInJPA(em -> {
var table1 = getIdColumnInfo(em, BigIntAppGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table1.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table1.get("column_default", String.class)).isNull();
assertThat(table1.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table1.get("identity_generation", String.class)).isNull();

var table2 = getIdColumnInfo(em, BigIntDbAutoGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table2.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table2.get("column_default", String.class)).isNull();
assertThat(table2.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table2.get("identity_generation", String.class)).isNull();

var table3 = getIdColumnInfo(em, BigIntDbIdentityGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table3.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table3.get("column_default", String.class)).startsWith("nextval('");
assertThat(table3.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table3.get("identity_generation", String.class)).isNull();

var table4 = getIdColumnInfo(em, BigIntDbSequenceGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table4.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table4.get("column_default", String.class)).isNull();
assertThat(table4.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table4.get("identity_generation", String.class)).isNull();
});
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,18 +34,26 @@ public void testSchema()
var table1 = getIdColumnInfo(em, BigIntAppGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table1.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table1.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table1.get("column_default", String.class)).isNull();
assertThat(table1.get("extra", String.class)).isEmpty();

var table2 = getIdColumnInfo(em, BigIntDbAutoGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table2.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table2.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table2.get("column_default", String.class)).isNull();
assertThat(table2.get("extra", String.class)).isEmpty();

var table3 = getIdColumnInfo(em, BigIntDbIdentityGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table3.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table3.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table3.get("column_default", String.class)).isNull();
assertThat(table3.get("extra", String.class)).isEqualToIgnoringCase("auto_increment");

var table4 = getIdColumnInfo(em, BigIntDbSequenceGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table4.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table4.get("column_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table4.get("column_default", String.class)).isNull();
assertThat(table4.get("extra", String.class)).isEmpty();
});
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,27 @@ public void testSchema()
doInJPA(em -> {
var table1 = getIdColumnInfo(em, BigIntAppGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table1.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table1.get("column_default", String.class)).isNull();
assertThat(table1.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table1.get("identity_generation", String.class)).isNull();

var table2 = getIdColumnInfo(em, BigIntDbAutoGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table2.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table2.get("column_default", String.class)).isNull();
assertThat(table2.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table2.get("identity_generation", String.class)).isNull();

var table3 = getIdColumnInfo(em, BigIntDbIdentityGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table3.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table3.get("column_default", String.class)).startsWith("nextval('");
assertThat(table3.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table3.get("identity_generation", String.class)).isNull();

var table4 = getIdColumnInfo(em, BigIntDbSequenceGeneratedExplicitMappingEntity.TABLE_NAME);
assertThat(table4.get("data_type", String.class)).isEqualToIgnoringCase("bigint");
assertThat(table4.get("column_default", String.class)).isNull();
assertThat(table4.get("is_identity", String.class)).isEqualTo("NO");
assertThat(table4.get("identity_generation", String.class)).isNull();
});
}

Expand Down
19 changes: 19 additions & 0 deletions modules/typed-ids-hibernate-70/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
plugins {
id("framefork.java-public")
}

dependencies {
api(project(":typed-ids"))
api(libs.hibernate.orm.v70)
compileOnly(libs.hibernate.models.v70) // this is really a runtime dependency, but in runtime the version from hibernate is provided

compileOnly(libs.jetbrains.annotations)

compileOnly(libs.autoService.annotations)
annotationProcessor(libs.autoService.processor)

testImplementation(project(":typed-ids-hibernate-70-testing"))
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
}

project.description = "TypeIds seamless integration into Hibernate ORMs type system"
Loading