Skip to content

Commit b7bf8fc

Browse files
committed
Fixes issue with serialized polled items (stack overflow).
1 parent 9a8e80f commit b7bf8fc

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

dhis/src/main/java/org/dhis2/fhir/adapter/dhis/service/impl/DhisMetadataPolledItemDeserializer.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import com.fasterxml.jackson.databind.JsonNode;
3434
import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
3535
import com.fasterxml.jackson.databind.node.ObjectNode;
36+
import org.dhis2.fhir.adapter.dhis.poll.PolledItems;
3637

3738
import java.io.IOException;
3839
import java.util.Iterator;
@@ -72,6 +73,11 @@ public DhisMetadataPolledItems deserialize( JsonParser p, DeserializationContext
7273
}
7374
}
7475

75-
return p.getCodec().treeToValue( rootNode, DhisMetadataPolledItems.class );
76+
return new DhisMetadataPolledItems( p.getCodec().treeToValue( rootNode, InternalDhisMetadataPolledItems.class ) );
77+
}
78+
79+
public static class InternalDhisMetadataPolledItems extends PolledItems<DhisMetadataPolledItem>
80+
{
81+
private static final long serialVersionUID = -3139366174834526658L;
7682
}
7783
}

dhis/src/main/java/org/dhis2/fhir/adapter/dhis/service/impl/DhisMetadataPolledItems.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,10 @@ public DhisMetadataPolledItems( @Nonnull List<DhisMetadataPolledItem> items )
5353
{
5454
setItems( items );
5555
}
56+
57+
public DhisMetadataPolledItems( @Nonnull PolledItems<DhisMetadataPolledItem> polledItems )
58+
{
59+
setItems( polledItems.getItems() );
60+
setPager( polledItems.getPager() );
61+
}
5662
}

0 commit comments

Comments
 (0)