Package play.db.jpa

Interface JPAApi

All Known Implementing Classes:
DefaultJPAApi

public interface JPAApi
JPA API.
  • Method Summary

    Modifier and Type
    Method
    Description
    jakarta.persistence.EntityManager
    em(String name)
    Get a newly created EntityManager for the specified persistence unit name.
    void
    Close all entity manager factories.
    Initialise JPA entity manager factories.
    void
    withTransaction(String name, boolean readOnly, Consumer<jakarta.persistence.EntityManager> block)
    Run a block of code with a newly created EntityManager for the named Persistence Unit.
    <T> T
    withTransaction(String name, boolean readOnly, Function<jakarta.persistence.EntityManager,T> block)
    Run a block of code with a newly created EntityManager for the named Persistence Unit.
    void
    withTransaction(String name, Consumer<jakarta.persistence.EntityManager> block)
    Run a block of code with a newly created EntityManager for the named Persistence Unit.
    <T> T
    withTransaction(String name, Function<jakarta.persistence.EntityManager,T> block)
    Run a block of code with a newly created EntityManager for the named Persistence Unit.
    void
    withTransaction(Consumer<jakarta.persistence.EntityManager> block)
    Run a block of code with a newly created EntityManager for the default Persistence Unit.
    <T> T
    withTransaction(Function<jakarta.persistence.EntityManager,T> block)
    Run a block of code with a newly created EntityManager for the default Persistence Unit.
  • Method Details

    • start

      JPAApi start()
      Initialise JPA entity manager factories.
      Returns:
      JPAApi instance
    • em

      jakarta.persistence.EntityManager em(String name)
      Get a newly created EntityManager for the specified persistence unit name.
      Parameters:
      name - The persistence unit name
      Returns:
      EntityManager for the specified persistence unit name
    • withTransaction

      <T> T withTransaction(Function<jakarta.persistence.EntityManager,T> block)
      Run a block of code with a newly created EntityManager for the default Persistence Unit.
      Type Parameters:
      T - type of result
      Parameters:
      block - Block of code to execute
      Returns:
      code execution result
    • withTransaction

      void withTransaction(Consumer<jakarta.persistence.EntityManager> block)
      Run a block of code with a newly created EntityManager for the default Persistence Unit.
      Parameters:
      block - Block of code to execute
    • withTransaction

      <T> T withTransaction(String name, Function<jakarta.persistence.EntityManager,T> block)
      Run a block of code with a newly created EntityManager for the named Persistence Unit.
      Type Parameters:
      T - type of result
      Parameters:
      name - The persistence unit name
      block - Block of code to execute
      Returns:
      code execution result
    • withTransaction

      void withTransaction(String name, Consumer<jakarta.persistence.EntityManager> block)
      Run a block of code with a newly created EntityManager for the named Persistence Unit.
      Parameters:
      name - The persistence unit name
      block - Block of code to execute
    • withTransaction

      <T> T withTransaction(String name, boolean readOnly, Function<jakarta.persistence.EntityManager,T> block)
      Run a block of code with a newly created EntityManager for the named Persistence Unit.
      Type Parameters:
      T - type of result
      Parameters:
      name - The persistence unit name
      readOnly - Is the transaction read-only?
      block - Block of code to execute
      Returns:
      code execution result
    • withTransaction

      void withTransaction(String name, boolean readOnly, Consumer<jakarta.persistence.EntityManager> block)
      Run a block of code with a newly created EntityManager for the named Persistence Unit.
      Parameters:
      name - The persistence unit name
      readOnly - Is the transaction read-only?
      block - Block of code to execute
    • shutdown

      void shutdown()
      Close all entity manager factories.