Skip to content

Commit b3cd54d

Browse files
committed
v0.7
1 parent 79a8573 commit b3cd54d

File tree

9 files changed

+54
-49
lines changed

9 files changed

+54
-49
lines changed

dachs-audit/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<parent>
44
<groupId>com.ethlo.dachs</groupId>
55
<artifactId>dachs</artifactId>
6-
<version>0.6</version>
6+
<version>0.7</version>
77
</parent>
88
<artifactId>dachs-audit</artifactId>
99
</project>

dachs-common-jpa/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<parent>
44
<groupId>com.ethlo.dachs</groupId>
55
<artifactId>dachs</artifactId>
6-
<version>0.6</version>
6+
<version>0.7</version>
77
</parent>
88
<artifactId>dachs-common-jpa</artifactId>
99
<name>Dachs - Common JPA</name>

dachs-common-jpa/src/main/java/com/ethlo/dachs/jpa/EntityUtil.java

Lines changed: 46 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -66,51 +66,56 @@ private <T> void extractChangeData(final List<PropertyChange<?>> propChanges, fi
6666
if (fieldFilter.test(field))
6767
{
6868
final String fieldName = field.getName();
69-
Object value = ReflectionUtils.getField(field, target);
70-
71-
if (isEntity(value))
72-
{
73-
value = persistenceUnitUtil.getIdentifier(value);
74-
}
75-
else if (value instanceof Collection)
76-
{
77-
final Collection tmp = new LinkedList<>();
78-
for (Object v : (Collection) value)
79-
{
80-
if (isEntity(v))
81-
{
82-
tmp.add(persistenceUnitUtil.getIdentifier(v));
83-
}
84-
else
85-
{
86-
tmp.add(v);
87-
}
88-
}
89-
value = tmp;
90-
}
91-
else if (value instanceof Map)
92-
{
93-
final Map tmp = new LinkedHashMap<>();
94-
Set<Entry> set = ((Map) value).entrySet();
95-
for (Entry e : set)
96-
{
97-
if (isEntity(e.getValue()))
98-
{
99-
tmp.put(e.getKey(), (persistenceUnitUtil.getIdentifier(e.getValue())));
100-
}
101-
else
102-
{
103-
tmp.put(e.getKey(), e.getValue());
104-
}
105-
}
106-
value = tmp;
107-
}
108-
69+
final Object value = getAuditValue(ReflectionUtils.getField(field, target));
10970
propChanges.add(new PropertyChange(fieldName, field.getType(), deleted ? value : null, deleted ? null : value));
11071
}
11172
}
11273

113-
private boolean isEntity(Object value)
74+
@SuppressWarnings({ "unchecked", "rawtypes" })
75+
public Object getAuditValue(Object value)
76+
{
77+
if (isEntity(value))
78+
{
79+
value = persistenceUnitUtil.getIdentifier(value);
80+
}
81+
else if (value instanceof Collection)
82+
{
83+
final Collection tmp = new LinkedList<>();
84+
for (Object v : (Collection) value)
85+
{
86+
if (isEntity(v))
87+
{
88+
tmp.add(persistenceUnitUtil.getIdentifier(v));
89+
}
90+
else
91+
{
92+
tmp.add(v);
93+
}
94+
}
95+
return tmp;
96+
}
97+
else if (value instanceof Map)
98+
{
99+
final Map tmp = new LinkedHashMap<>();
100+
Set<Entry> set = ((Map) value).entrySet();
101+
for (Entry e : set)
102+
{
103+
if (isEntity(e.getValue()))
104+
{
105+
tmp.put(e.getKey(), (persistenceUnitUtil.getIdentifier(e.getValue())));
106+
}
107+
else
108+
{
109+
tmp.put(e.getKey(), e.getValue());
110+
}
111+
}
112+
return tmp;
113+
}
114+
115+
return value;
116+
}
117+
118+
public boolean isEntity(Object value)
114119
{
115120
if (value != null)
116121
{

dachs-common-test/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<parent>
44
<groupId>com.ethlo.dachs</groupId>
55
<artifactId>dachs</artifactId>
6-
<version>0.6</version>
6+
<version>0.7</version>
77
</parent>
88
<artifactId>dachs-common-test</artifactId>
99
<name>Dachs - Common Test</name>

dachs-common/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<parent>
44
<groupId>com.ethlo.dachs</groupId>
55
<artifactId>dachs</artifactId>
6-
<version>0.6</version>
6+
<version>0.7</version>
77
</parent>
88
<artifactId>dachs-common</artifactId>
99
<name>Dachs - Common</name>

dachs-eclipselink/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<parent>
44
<groupId>com.ethlo.dachs</groupId>
55
<artifactId>dachs</artifactId>
6-
<version>0.6</version>
6+
<version>0.7</version>
77
</parent>
88
<artifactId>dachs-eclipselink</artifactId>
99
<name>Dachs - EclipseLink</name>

dachs-eclipselink/src/main/java/com/ethlo/dachs/eclipselink/EclipseLinkEntityEventListener.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ private List<PropertyChange<?>> handleModification(DescriptorEvent event)
9898
continue;
9999
}
100100

101-
entityUtil.extractSingle(attrName, attrType, oldValue, newValue, propChanges);
101+
entityUtil.extractSingle(attrName, attrType, entityUtil.getAuditValue(oldValue), entityUtil.getAuditValue(newValue), propChanges);
102102
}
103103
return propChanges;
104104
}

dachs-hibernate/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<parent>
44
<groupId>com.ethlo.dachs</groupId>
55
<artifactId>dachs</artifactId>
6-
<version>0.6</version>
6+
<version>0.7</version>
77
</parent>
88
<artifactId>dachs-hibernate</artifactId>
99
<name>Dachs - Hibernate</name>

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<modelVersion>4.0.0</modelVersion>
33
<groupId>com.ethlo.dachs</groupId>
44
<artifactId>dachs</artifactId>
5-
<version>0.6</version>
5+
<version>0.7</version>
66
<name>Dachs - Data Change Snitch</name>
77
<packaging>pom</packaging>
88
<parent>

0 commit comments

Comments
 (0)