Skip to content

Commit 06d6f97

Browse files
committed
Issue #68.
1 parent 01deed4 commit 06d6f97

File tree

2 files changed

+18
-6
lines changed

2 files changed

+18
-6
lines changed

basic/src/main/java/org/jvnet/jaxb2_commons/plugin/simpleequals/SimpleEqualsPlugin.java

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -111,10 +111,18 @@ protected void generate(ClassOutline classOutline, JDefinedClass theClass) {
111111
final Collection<JType> possibleTypes = FieldUtils
112112
.getPossibleTypes(fieldOutline, Aspect.EXPOSED);
113113
final boolean isAlwaysSet = leftFieldAccessor.isAlwaysSet();
114-
final JExpression leftHasSetValue = exposedType.isPrimitive() ? JExpr.TRUE
115-
: leftValue.ne(JExpr._null());
116-
final JExpression rightHasSetValue = exposedType.isPrimitive() ? JExpr.TRUE
117-
: rightValue.ne(JExpr._null());
114+
// final JExpression leftHasSetValue = exposedType.isPrimitive() ? JExpr.TRUE
115+
// : leftValue.ne(JExpr._null());
116+
final JExpression leftHasSetValue = (leftFieldAccessor.isAlwaysSet() || leftFieldAccessor
117+
.hasSetValue() == null) ? JExpr.TRUE
118+
: leftFieldAccessor.hasSetValue();
119+
120+
// final JExpression rightHasSetValue = exposedType.isPrimitive() ? JExpr.TRUE
121+
// : rightValue.ne(JExpr._null());
122+
123+
final JExpression rightHasSetValue = (rightFieldAccessor.isAlwaysSet() || rightFieldAccessor
124+
.hasSetValue() == null) ? JExpr.TRUE
125+
: rightFieldAccessor.hasSetValue();
118126

119127
getCodeGenerator().generate(
120128
block,

basic/src/main/java/org/jvnet/jaxb2_commons/plugin/simplehashcode/SimpleHashCodePlugin.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,12 @@ protected void generate(ClassOutline classOutline, JDefinedClass theClass) {
105105
final Collection<JType> possibleTypes = FieldUtils
106106
.getPossibleTypes(fieldOutline, Aspect.EXPOSED);
107107
final boolean isAlwaysSet = fieldAccessor.isAlwaysSet();
108-
final JExpression hasSetValue = exposedType.isPrimitive() ? JExpr.TRUE
109-
: value.ne(JExpr._null());
108+
// final JExpression hasSetValue = exposedType.isPrimitive() ? JExpr.TRUE
109+
// : value.ne(JExpr._null());
110+
111+
final JExpression hasSetValue = (fieldAccessor.isAlwaysSet() || fieldAccessor
112+
.hasSetValue() == null) ? JExpr.TRUE
113+
: fieldAccessor.hasSetValue();
110114
getCodeGenerator().generate(
111115
block,
112116
exposedType,

0 commit comments

Comments
 (0)