@@ -58,50 +58,32 @@ def __init__(self, tag, config):
5858 initializers .append (polling_builder )
5959
6060 datasystem .initializers (initializers )
61- sync_config = datasystem_config .get ('synchronizers' )
62- if sync_config is not None :
63- primary = sync_config .get ('primary' )
64- secondary = sync_config .get ('secondary' )
65-
66- primary_builder = None
67- secondary_builder = None
61+ sync_configs = datasystem_config .get ('synchronizers' )
62+ if sync_configs is not None :
63+ sync_builders = []
6864 fallback_builder = None
6965
70- if primary is not None :
71- streaming = primary .get ('streaming' )
66+ for sync_config in sync_configs :
67+ streaming = sync_config .get ('streaming' )
7268 if streaming is not None :
73- primary_builder = streaming_ds_builder ()
74- _set_optional_value (streaming , "baseUri" , primary_builder .base_uri )
75- _set_optional_time (streaming , "initialRetryDelayMs" , primary_builder .initial_reconnect_delay )
76- elif primary .get ('polling' ) is not None :
77- polling = primary .get ('polling' )
78-
79- primary_builder = polling_ds_builder ()
80- _set_optional_value (polling , "baseUri" , primary_builder .base_uri )
81- _set_optional_time (polling , "pollIntervalMs" , primary_builder .poll_interval )
69+ builder = streaming_ds_builder ()
70+ _set_optional_value (streaming , "baseUri" , builder .base_uri )
71+ _set_optional_time (streaming , "initialRetryDelayMs" , builder .initial_reconnect_delay )
72+ sync_builders .append (builder )
73+ elif sync_config .get ('polling' ) is not None :
74+ polling = sync_config .get ('polling' )
75+
76+ builder = polling_ds_builder ()
77+ _set_optional_value (polling , "baseUri" , builder .base_uri )
78+ _set_optional_time (polling , "pollIntervalMs" , builder .poll_interval )
79+ sync_builders .append (builder )
8280
8381 fallback_builder = fdv1_fallback_ds_builder ()
8482 _set_optional_value (polling , "baseUri" , fallback_builder .base_uri )
8583 _set_optional_time (polling , "pollIntervalMs" , fallback_builder .poll_interval )
8684
87- if secondary is not None :
88- streaming = secondary .get ('streaming' )
89- if streaming is not None :
90- secondary_builder = streaming_ds_builder ()
91- _set_optional_value (streaming , "baseUri" , secondary_builder .base_uri )
92- _set_optional_time (streaming , "initialRetryDelayMs" , secondary_builder .initial_reconnect_delay )
93- elif secondary .get ('polling' ) is not None :
94- polling = secondary .get ('polling' )
95-
96- secondary_builder = polling_ds_builder ()
97- _set_optional_value (polling , "baseUri" , secondary_builder .base_uri )
98- _set_optional_time (polling , "pollIntervalMs" , secondary_builder .poll_interval )
99- fallback_builder = fdv1_fallback_ds_builder ()
100- _set_optional_value (polling , "baseUri" , fallback_builder .base_uri )
101- _set_optional_time (polling , "pollIntervalMs" , fallback_builder .poll_interval )
102-
103- if primary_builder is not None :
104- datasystem .synchronizers (primary_builder , secondary_builder )
85+ if sync_builders :
86+ datasystem .synchronizers (* sync_builders )
10587 if fallback_builder is not None :
10688 datasystem .fdv1_compatible_synchronizer (fallback_builder )
10789
0 commit comments