Skip to content

Instantly share code, notes, and snippets.

@JacekDubikowski
Created December 2, 2022 18:25
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Embed
What would you like to do?
Catch block
class TransactionalInterceptedWriter {
private CodeBlock catchClause() {
return CodeBlock.builder()
.beginControlFlow("catch ($T e)", Exception.class)
.beginControlFlow("try")
.addStatement(TRANSACTION_MANAGER + ".rollback()")
.endControlFlow()
.beginControlFlow("catch ($T innerException)", Exception.class)
.addStatement("throw new $T(innerException)", RuntimeException.class)
.endControlFlow()
.addStatement("throw new $T(e)", RuntimeException.class)
.endControlFlow()
.build();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment