fbdc708368e7eb37dc95fd8bd6038bc24ddb9d10
[JavaForFun] /
1 package de.spring.example.persistence.domain.audit;
2
3 import org.hibernate.envers.RevisionListener;
4
5 import de.spring.example.context.UsernameThreadContext;
6
7 public class MyCustomRevisionListener implements RevisionListener {     
8         
9         protected MyCustomRevisionListener() {
10                 
11         }
12         
13         @Override
14         public void newRevision(Object revisionEntity) {
15                 MyCustomRevision myCustomRevision = (MyCustomRevision) revisionEntity;
16                 
17                 final String username = getSafeUsername();
18                 myCustomRevision.setUsername(username);
19                 
20         }
21         
22         private String getSafeUsername() {
23                 String userName = UsernameThreadContext.getUsername();
24                 
25                 if (userName == null) {
26                         userName = "NO_USER";
27                 }
28                 
29                 return userName;
30         }
31
32 }