diff --git a/src/main/java/br/ufrgs/inf/prosoft/jsonserialiser/JSONSerialiser.java b/src/main/java/br/ufrgs/inf/prosoft/jsonserialiser/JSONSerialiser.java
index d97a3b9..4a42160 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/jsonserialiser/JSONSerialiser.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/jsonserialiser/JSONSerialiser.java
@@ -188,10 +188,8 @@ public class JSONSerialiser {
}
String[] internals = {"java.", "org.ietf.", "org.omg.", "org.w3c.", "org.xml."};
ignoredPackages.addAll(Arrays.asList(internals));
- for (String ignoredPackage : ignoredPackages) {
- if (objectPackageName.startsWith(ignoredPackage)) {
- return serialiseString(String.valueOf(object));
- }
+ if (ignoredPackages.stream().anyMatch(ignoredPackage -> objectPackageName.startsWith(ignoredPackage))) {
+ return getReference(object);
}
}
if (this.visited.stream().parallel().anyMatch(visited -> visited == object)) {
@@ -347,16 +345,8 @@ public class JSONSerialiser {
}
private static StringBuilder getReference(Object object) {
- int hashCode;
- try {
- hashCode = object.hashCode();
- } catch (Exception e) {
- hashCode = object.getClass().hashCode();
- }
- return new StringBuilder().append("{\"r\":\"")
+ return new StringBuilder().append("{\"r\":\"@")
.append(object.getClass().getName())
- .append("@")
- .append(hashCode)
.append("\"}");
}
}