Skip to content

Commit 59f60bc

Browse files
committed
Read API: Adapt the code to #72
1 parent d017d44 commit 59f60bc

File tree

8 files changed

+253
-16
lines changed

8 files changed

+253
-16
lines changed

src/api_saisie_read_piqi.ml

Lines changed: 169 additions & 9 deletions
Large diffs are not rendered by default.

src/decoders.ml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,4 +179,9 @@ module Api_saisie_read = struct
179179
decode Translate.Api_saisie_read.ProtocToPiqi.identifier_person
180180
Api_saisie_read_protoc.decode_pb_identifier_person
181181
Api_saisie_read_protoc.decode_json_identifier_person
182+
183+
let decode_paginated_data_parameters =
184+
decode Translate.Api_saisie_read.ProtocToPiqi.paginated_data_parameters
185+
Api_saisie_read_protoc.decode_pb_paginated_data_parameters
186+
Api_saisie_read_protoc.decode_json_paginated_data_parameters
182187
end

src/decoders.mli

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,4 +51,6 @@ module Api_saisie_read : sig
5151
val decode_index_person : Api_saisie_read_piqi.index_person t
5252
val decode_fiche_parameters : Api_saisie_read_piqi.fiche_parameters t
5353
val decode_identifier_person : Api_saisie_read_piqi.identifier_person t
54+
val decode_paginated_data_parameters :
55+
Api_saisie_read_piqi.paginated_data_parameters t
5456
end

src/encoders.ml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,18 @@ module Api_saisie_read = struct
158158
encode Translate.Api_saisie_read.PiqiToProtoc.nb_ancestors
159159
Api_saisie_read_protoc.encode_pb_nb_ancestors
160160
Api_saisie_read_protoc.encode_json_nb_ancestors
161+
162+
let encode_paginated_personal_events =
163+
encode
164+
Translate.Api_saisie_read.PiqiToProtoc.paginated_personal_events
165+
Api_saisie_read_protoc.encode_pb_paginated_personal_events
166+
Api_saisie_read_protoc.encode_json_paginated_personal_events
167+
168+
let encode_paginated_witnessed_events =
169+
encode
170+
Translate.Api_saisie_read.PiqiToProtoc.paginated_witnessed_events
171+
Api_saisie_read_protoc.encode_pb_paginated_witnessed_events
172+
Api_saisie_read_protoc.encode_json_paginated_witnessed_events
161173
end
162174

163175
let encode_int32 i = function

src/encoders.mli

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,10 @@ module Api_saisie_read : sig
4141
val encode_person : Api_saisie_read_piqi.person t
4242
val encode_graph_tree : Api_saisie_read_piqi.graph_tree t
4343
val encode_nb_ancestors : Api_saisie_read_piqi.nb_ancestors t
44+
val encode_paginated_personal_events :
45+
Api_saisie_read_piqi.paginated_personal_events t
46+
val encode_paginated_witnessed_events :
47+
Api_saisie_read_piqi.paginated_witnessed_events t
4448
end
4549

4650
val encode_int32 : int32 t

src/plugin_api.ml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,16 +55,16 @@ let get_paginated_data conf base =
5555
let params =
5656
Plugin_api_lib.Api_util.get_params
5757
conf
58-
Plugin_api_lib.Api_saisie_read_piqi_ext.parse_paginated_data_parameters
58+
Plugin_api_lib.Decoders.Api_saisie_read.decode_paginated_data_parameters
5959
in
6060
match
6161
Plugin_api_lib.Api_saisie_read.get_paginated_data ~conf ~base params
6262
with
6363
| `Personal_events events ->
64-
Plugin_api_lib.Api_saisie_read_piqi_ext.gen_paginated_personal_events
64+
Plugin_api_lib.Encoders.Api_saisie_read.encode_paginated_personal_events
6565
events
6666
| `Witnessed_events events ->
67-
Plugin_api_lib.Api_saisie_read_piqi_ext.gen_paginated_witnessed_events
67+
Plugin_api_lib.Encoders.Api_saisie_read.encode_paginated_witnessed_events
6868
events
6969
in
7070
Plugin_api_lib.Api_util.print_result conf data

src/translate.ml

Lines changed: 46 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2952,6 +2952,24 @@ module Api_saisie_read = struct
29522952
Api_saisie_read_protoc.(
29532953
({ event_witness_type; husband; wife; witness_note } : event_witness))
29542954

2955+
and translate_paginated_personal_events
2956+
{Api_saisie_read_piqi.Paginated_personal_events.elements;
2957+
page_number;
2958+
total_count} :
2959+
Api_saisie_read_protoc.paginated_personal_events =
2960+
{Api_saisie_read_protoc.elements = List.map translate_event elements;
2961+
page_number;
2962+
total_count}
2963+
2964+
and translate_paginated_witnessed_events
2965+
{Api_saisie_read_piqi.Paginated_witnessed_events.elements;
2966+
page_number;
2967+
total_count} :
2968+
Api_saisie_read_protoc.paginated_witnessed_events =
2969+
{Api_saisie_read_protoc.elements = List.map event_witness elements;
2970+
page_number;
2971+
total_count}
2972+
29552973
and fiche_person person_protoc
29562974
Api_saisie_read_piqi.Fiche_person.
29572975
{
@@ -3084,8 +3102,10 @@ module Api_saisie_read = struct
30843102
let mother = Option.map simple_person mother in
30853103
let families = List.map translate_family families in
30863104
let sosa = translate_sosa sosa in
3087-
let events = List.map translate_event events in
3088-
let events_witnesses = List.map event_witness events_witnesses in
3105+
let events = translate_paginated_personal_events events in
3106+
let events_witnesses =
3107+
translate_paginated_witnessed_events events_witnesses
3108+
in
30893109
let person =
30903110
Api_saisie_read_protoc.(
30913111
({
@@ -3135,8 +3155,8 @@ module Api_saisie_read = struct
31353155
mother;
31363156
families;
31373157
sosa;
3138-
events;
3139-
events_witnesses;
3158+
events = Some events;
3159+
events_witnesses = Some events_witnesses;
31403160
baseprefix;
31413161
is_contemporary;
31423162
name_is_hidden;
@@ -3251,6 +3271,12 @@ module Api_saisie_read = struct
32513271

32523272
let nb_ancestors Api_saisie_read_piqi.Nb_ancestors.{ nb } =
32533273
Api_saisie_read_protoc.(({ nb } : nb_ancestors))
3274+
3275+
let paginated_personal_events events =
3276+
translate_paginated_personal_events events
3277+
3278+
let paginated_witnessed_events events =
3279+
translate_paginated_witnessed_events events
32543280
end
32553281

32563282
module ProtocToPiqi = struct
@@ -3295,5 +3321,21 @@ module Api_saisie_read = struct
32953321
simple_graph_info;
32963322
no_event;
32973323
}
3324+
3325+
let page {Api_saisie_read_protoc.number; element_count} =
3326+
{Api_saisie_read_piqi.Page.number; element_count}
3327+
3328+
let paginated_data_type = function
3329+
| Api_saisie_read_protoc.Personal_event -> `personal_event
3330+
| Api_saisie_read_protoc.Witnessed_event -> `witnessed_event
3331+
3332+
let paginated_data_parameters
3333+
{Api_saisie_read_protoc.person_id; type_; page = page_} =
3334+
{Api_saisie_read_piqi.Paginated_data_parameters.person_id;
3335+
type_ = paginated_data_type type_;
3336+
page =
3337+
page
3338+
(Option.value
3339+
~default:(Api_saisie_read_protoc.default_page ()) page_)}
32983340
end
32993341
end

src/translate.mli

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,14 @@ module Api_saisie_read : sig
212212

213213
val nb_ancestors :
214214
Api_saisie_read_piqi.nb_ancestors -> Api_saisie_read_protoc.nb_ancestors
215+
216+
val paginated_personal_events :
217+
Api_saisie_read_piqi.paginated_personal_events ->
218+
Api_saisie_read_protoc.paginated_personal_events
219+
220+
val paginated_witnessed_events :
221+
Api_saisie_read_piqi.paginated_witnessed_events ->
222+
Api_saisie_read_protoc.paginated_witnessed_events
215223
end
216224

217225
module ProtocToPiqi : sig
@@ -229,5 +237,9 @@ module Api_saisie_read : sig
229237
val identifier_person :
230238
Api_saisie_read_protoc.identifier_person ->
231239
Api_saisie_read_piqi.identifier_person
240+
241+
val paginated_data_parameters :
242+
Api_saisie_read_protoc.paginated_data_parameters ->
243+
Api_saisie_read_piqi.paginated_data_parameters
232244
end
233245
end

0 commit comments

Comments
 (0)