public class GormRuntimeHints extends java.lang.Object implements org.springframework.aot.hint.RuntimeHintsRegistrar
Registers the persistence runtime a datastore reaches through Groovy.
Reading and writing an entity goes through the mapping context, the persister for its datastore, and the query and event machinery around them, and Groovy reaches all of it dynamically. Fields are registered as well as methods because a persister hands work to anonymous inner classes that read the state they captured as properties -- deleting an entity reads the session that way -- and a native image that keeps only the members something asked for leaves the class present with that state unreachable.
Which datastore is registered follows from what is on the classpath: the scan covers the shared packages, and an implementation puts its own persisters and query support in them, so MongoDB and the others are covered without naming any of them here.
Recording this with the framework rather than leaving it to a tracing agent matters because the agent records only what ran. Reads are exercised by anything that opens a page; the write and delete paths reach persister internals that a read never touches, so they fail for the first person who saves or removes a record.
| Type Params | Return Type | Name and description |
|---|---|---|
|
public void |
registerHints(org.springframework.aot.hint.RuntimeHints hints, java.lang.ClassLoader classLoader) |
| Methods inherited from class | Name |
|---|---|
class java.lang.Object |
java.lang.Object#equals(java.lang.Object), java.lang.Object#getClass(), java.lang.Object#hashCode(), java.lang.Object#notify(), java.lang.Object#notifyAll(), java.lang.Object#toString(), java.lang.Object#wait(), java.lang.Object#wait(long), java.lang.Object#wait(long, int) |