Skip to content

Commit 87361ff

Browse files
committed
add StatelessSession.getIdentifier() because repositories need it
this was already added to ORM SS in 6.6
1 parent 84a8b13 commit 87361ff

File tree

5 files changed

+34
-0
lines changed

5 files changed

+34
-0
lines changed

hibernate-reactive-core/src/main/java/org/hibernate/reactive/mutiny/Mutiny.java

+11
Original file line numberDiff line numberDiff line change
@@ -1877,6 +1877,17 @@ default Uni<Void> refresh(Object entity, LockModeType lockModeType) {
18771877
*/
18781878
<T> Uni<T> fetch(T association);
18791879

1880+
/**
1881+
* Return the identifier value of the given entity, which may be detached.
1882+
*
1883+
* @param entity a persistent instance associated with this session
1884+
*
1885+
* @return the identifier
1886+
*
1887+
* @since 3.0
1888+
*/
1889+
Object getIdentifier(Object entity);
1890+
18801891
/**
18811892
* Obtain a native SQL result set mapping defined via the annotation
18821893
* {@link jakarta.persistence.SqlResultSetMapping}.

hibernate-reactive-core/src/main/java/org/hibernate/reactive/mutiny/impl/MutinyStatelessSessionImpl.java

+5
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,11 @@ public <T> Uni<T> fetch(T association) {
193193
return uni( () -> delegate.reactiveFetch( association, false ) );
194194
}
195195

196+
@Override
197+
public Object getIdentifier(Object entity) {
198+
return delegate.getIdentifier(entity);
199+
}
200+
196201
// @Override
197202
// public <T> ResultSetMapping<T> getResultSetMapping(Class<T> resultType, String mappingName) {
198203
// return delegate.getResultSetMapping( resultType, mappingName );

hibernate-reactive-core/src/main/java/org/hibernate/reactive/session/ReactiveStatelessSession.java

+2
Original file line numberDiff line numberDiff line change
@@ -71,4 +71,6 @@ public interface ReactiveStatelessSession extends ReactiveQueryProducer, Reactiv
7171
boolean isOpen();
7272

7373
void close(CompletableFuture<Void> closing);
74+
75+
Object getIdentifier(Object entity);
7476
}

hibernate-reactive-core/src/main/java/org/hibernate/reactive/stage/Stage.java

+11
Original file line numberDiff line numberDiff line change
@@ -1916,6 +1916,17 @@ default CompletionStage<Void> refresh(Object entity, LockModeType lockModeType)
19161916
*/
19171917
<T> CompletionStage<T> fetch(T association);
19181918

1919+
/**
1920+
* Return the identifier value of the given entity, which may be detached.
1921+
*
1922+
* @param entity a persistent instance associated with this session
1923+
*
1924+
* @return the identifier
1925+
*
1926+
* @since 3.0
1927+
*/
1928+
Object getIdentifier(Object entity);
1929+
19191930
/**
19201931
* Obtain a native SQL result set mapping defined via the annotation
19211932
* {@link jakarta.persistence.SqlResultSetMapping}.

hibernate-reactive-core/src/main/java/org/hibernate/reactive/stage/impl/StageStatelessSessionImpl.java

+5
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,11 @@ public <T> CompletionStage<T> fetch(T association) {
132132
return delegate.reactiveFetch( association, false );
133133
}
134134

135+
@Override
136+
public Object getIdentifier(Object entity) {
137+
return delegate.getIdentifier(entity);
138+
}
139+
135140
@Override
136141
public <T> CompletionStage<T> withTransaction(Function<Stage.Transaction, CompletionStage<T>> work) {
137142
return currentTransaction == null

0 commit comments

Comments
 (0)