Skip to content

Commit ec355d5

Browse files
committed
Merge branch '2.6'
Conflicts: hibernate3/pom.xml hibernate4/pom.xml hibernate4/src/main/java/com/fasterxml/jackson/datatype/hibernate4/HibernateProxySerializer.java hibernate5/pom.xml hibernate5/src/main/java/com/fasterxml/jackson/datatype/hibernate5/HibernateProxySerializer.java pom.xml release-notes/VERSION
2 parents d2652d9 + fc4ab3f commit ec355d5

File tree

5 files changed

+61
-9
lines changed

5 files changed

+61
-9
lines changed

hibernate3/src/main/java/com/fasterxml/jackson/datatype/hibernate3/HibernateProxySerializer.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import com.fasterxml.jackson.core.*;
99
import com.fasterxml.jackson.databind.*;
1010
import com.fasterxml.jackson.databind.jsontype.TypeSerializer;
11+
import com.fasterxml.jackson.databind.ser.ContextualSerializer;
1112
import com.fasterxml.jackson.databind.ser.impl.PropertySerializerMap;
1213

1314
/**
@@ -21,6 +22,7 @@
2122
*/
2223
public class HibernateProxySerializer
2324
extends JsonSerializer<HibernateProxy>
25+
implements ContextualSerializer
2426
{
2527
/**
2628
* Property that has proxy value to handle
@@ -48,6 +50,18 @@ public HibernateProxySerializer(boolean forceLazyLoading)
4850
_property = null;
4951
}
5052

53+
public HibernateProxySerializer(boolean forceLazyLoading, BeanProperty property)
54+
{
55+
_forceLazyLoading = forceLazyLoading;
56+
_dynamicSerializers = PropertySerializerMap.emptyForProperties();
57+
_property = property;
58+
}
59+
60+
@Override
61+
public JsonSerializer<?> createContextual(SerializerProvider prov, BeanProperty property) {
62+
return new HibernateProxySerializer(this._forceLazyLoading);
63+
}
64+
5165
/*
5266
/**********************************************************************
5367
/* JsonSerializer impl

hibernate4/src/main/java/com/fasterxml/jackson/datatype/hibernate4/HibernateProxySerializer.java

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import com.fasterxml.jackson.databind.JsonSerializer;
1010
import com.fasterxml.jackson.databind.SerializerProvider;
1111
import com.fasterxml.jackson.databind.jsontype.TypeSerializer;
12+
import com.fasterxml.jackson.databind.ser.ContextualSerializer;
1213
import com.fasterxml.jackson.databind.ser.impl.PropertySerializerMap;
1314

1415
import org.hibernate.engine.spi.Mapping;
@@ -27,6 +28,7 @@
2728
*/
2829
public class HibernateProxySerializer
2930
extends JsonSerializer<HibernateProxy>
31+
implements ContextualSerializer
3032
{
3133
/**
3234
* Property that has proxy value to handle
@@ -51,21 +53,32 @@ public class HibernateProxySerializer
5153

5254
public HibernateProxySerializer(boolean forceLazyLoading)
5355
{
54-
this(forceLazyLoading, false, null);
56+
this(forceLazyLoading, false, null, null);
5557
}
5658

5759
public HibernateProxySerializer(boolean forceLazyLoading, boolean serializeIdentifier) {
58-
this(forceLazyLoading, serializeIdentifier, null);
60+
this(forceLazyLoading, serializeIdentifier, null, null);
5961
}
6062

6163
public HibernateProxySerializer(boolean forceLazyLoading, boolean serializeIdentifier, Mapping mapping) {
64+
this(forceLazyLoading, serializeIdentifier, mapping, null);
65+
}
66+
67+
public HibernateProxySerializer(boolean forceLazyLoading, boolean serializeIdentifier, Mapping mapping,
68+
BeanProperty property) {
6269
_forceLazyLoading = forceLazyLoading;
6370
_serializeIdentifier = serializeIdentifier;
6471
_mapping = mapping;
6572
_dynamicSerializers = PropertySerializerMap.emptyForProperties();
66-
_property = null;
73+
_property = property;
6774
}
68-
75+
76+
@Override
77+
public JsonSerializer<?> createContextual(SerializerProvider prov, BeanProperty property) {
78+
return new HibernateProxySerializer(this._forceLazyLoading, _serializeIdentifier,
79+
_mapping, property);
80+
}
81+
6982
/*
7083
/**********************************************************************
7184
/* JsonSerializer impl

hibernate5/src/main/java/com/fasterxml/jackson/datatype/hibernate5/HibernateProxySerializer.java

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import com.fasterxml.jackson.databind.JsonSerializer;
1010
import com.fasterxml.jackson.databind.SerializerProvider;
1111
import com.fasterxml.jackson.databind.jsontype.TypeSerializer;
12+
import com.fasterxml.jackson.databind.ser.ContextualSerializer;
1213
import com.fasterxml.jackson.databind.ser.impl.PropertySerializerMap;
1314

1415
import org.hibernate.engine.spi.Mapping;
@@ -27,6 +28,7 @@
2728
*/
2829
public class HibernateProxySerializer
2930
extends JsonSerializer<HibernateProxy>
31+
implements ContextualSerializer
3032
{
3133
/**
3234
* Property that has proxy value to handle
@@ -51,21 +53,32 @@ public class HibernateProxySerializer
5153

5254
public HibernateProxySerializer(boolean forceLazyLoading)
5355
{
54-
this(forceLazyLoading, false, null);
56+
this(forceLazyLoading, false, null, null);
5557
}
5658

5759
public HibernateProxySerializer(boolean forceLazyLoading, boolean serializeIdentifier) {
58-
this(forceLazyLoading, serializeIdentifier, null);
60+
this(forceLazyLoading, serializeIdentifier, null, null);
5961
}
6062

6163
public HibernateProxySerializer(boolean forceLazyLoading, boolean serializeIdentifier, Mapping mapping) {
64+
this(forceLazyLoading, serializeIdentifier, mapping, null);
65+
}
66+
67+
public HibernateProxySerializer(boolean forceLazyLoading, boolean serializeIdentifier, Mapping mapping,
68+
BeanProperty property) {
6269
_forceLazyLoading = forceLazyLoading;
6370
_serializeIdentifier = serializeIdentifier;
6471
_mapping = mapping;
6572
_dynamicSerializers = PropertySerializerMap.emptyForProperties();
66-
_property = null;
67-
}
68-
73+
_property = property;
74+
}
75+
76+
@Override
77+
public JsonSerializer<?> createContextual(SerializerProvider prov, BeanProperty property) {
78+
return new HibernateProxySerializer(this._forceLazyLoading, _serializeIdentifier,
79+
_mapping, property);
80+
}
81+
6982
/*
7083
/**********************************************************************
7184
/* JsonSerializer impl

release-notes/CREDITS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Hibernate module, version 2.x
44

55
Tatu Saloranta, tatu.saloranta@iki.fi: author
66

7+
------------
78
Contributors
89
------------
910

@@ -21,3 +22,8 @@ Edouard Oger (eoger@github)
2122

2223
#67: Provide support for Hibernate 5.x
2324
(2.6.0)
25+
26+
Tiago Peruzzo (peruzzo@github)
27+
28+
#70: Infinite recursion due to `@JsonIgnoreProperties` not passed to property
29+
(2.6.5)

release-notes/VERSION

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,12 @@ Project: jackson-datatype-hibernate
1111
#81: Hibernate4Module causes Type Erasure
1212
(reported by agorina@github)
1313

14+
2.6.5 (not yet released)
15+
16+
#70: Infinite recursion due to `@JsonIgnoreProperties` not passed to property
17+
(reported, fix contributed by Tiago P)
18+
19+
2.6.4 (07-Dec-2015)
1420
2.6.3 (12-Oct-2015)
1521
2.6.2 (15-Sep-2015)
1622
2.6.1 (09-Aug-2015)

0 commit comments

Comments
 (0)