2626@ NoArgsConstructor
2727@ Schema (
2828 title = "A Singer tap to fetch data from a Salesforce account." ,
29- description = "Full documentation can be found [here](https://gitlab .com/meltano /tap-salesforce.git )"
29+ description = "Full documentation can be found [here](https://github .com/singer-io /tap-salesforce)"
3030)
3131public class Salesforce extends AbstractPythonTap implements RunnableTask <AbstractPythonTap .Output > {
3232 @ NotNull
@@ -50,35 +50,6 @@ public class Salesforce extends AbstractPythonTap implements RunnableTask<Abstra
5050 @ Builder .Default
5151 private final Property <Boolean > isSandbox = Property .of (false );
5252
53- @ NotNull
54- @ Schema (
55- title = "Generate a STATE message every N records."
56- )
57- @ Builder .Default
58- private final Property <Integer > stateMessageThreshold = Property .of (1000 );
59-
60- @ NotNull
61- @ Schema (
62- title = "Maximum number of threads to use."
63- )
64- @ Builder .Default
65- private final Property <Integer > maxWorkers = Property .of (8 );
66-
67- @ Schema (
68- title = "Salesforce username."
69- )
70- private Property <String > username ;
71-
72- @ Schema (
73- title = "Salesforce password."
74- )
75- private Property <String > password ;
76-
77- @ Schema (
78- title = "Your Salesforce Account access token."
79- )
80- private Property <String > securityToken ;
81-
8253 @ Schema (
8354 title = "Salesforce client ID."
8455 )
@@ -94,6 +65,14 @@ public class Salesforce extends AbstractPythonTap implements RunnableTask<Abstra
9465 )
9566 private Property <String > refreshToken ;
9667
68+ @ Schema (
69+ title = "The lookback_window." ,
70+ description = "(in seconds) subtracts the desired amount of seconds from the bookmark to sync past data. Recommended value: 10 seconds."
71+ )
72+ @ PluginProperty (dynamic = true )
73+ @ Builder .Default
74+ private Property <Integer > lookbackWindow = Property .of (10 );
75+
9776 @ NotNull
9877 @ Schema (
9978 title = "Determines how much historical data will be extracted." ,
@@ -116,22 +95,8 @@ public Map<String, Object> configuration(RunContext runContext) throws IllegalVa
11695 .put ("api_type" , runContext .render (this .apiType ).as (ApiType .class ).orElseThrow ())
11796 .put ("select_fields_by_default" , runContext .render (this .selectFieldsByDefault ).as (Boolean .class ).orElseThrow ())
11897 .put ("is_sandbox" , runContext .render (this .isSandbox ).as (Boolean .class ).orElseThrow ())
119- .put ("state_message_threshold" , runContext .render (this .stateMessageThreshold ).as (Integer .class ).orElseThrow ())
120- .put ("max_workers" , runContext .render (this .maxWorkers ).as (Integer .class ).orElseThrow ())
12198 .put ("start_date" , runContext .render (this .startDate .toString ()));
12299
123- if (this .username != null ) {
124- builder .put ("username" , runContext .render (this .username ).as (String .class ).orElseThrow ());
125- }
126-
127- if (this .password != null ) {
128- builder .put ("password" , runContext .render (this .password ).as (String .class ).orElseThrow ());
129- }
130-
131- if (this .securityToken != null ) {
132- builder .put ("security_token" , runContext .render (this .securityToken ).as (String .class ).orElseThrow ());
133- }
134-
135100 if (this .clientId != null ) {
136101 builder .put ("client_id" , runContext .render (this .clientId ).as (String .class ).orElseThrow ());
137102 }
@@ -144,16 +109,16 @@ public Map<String, Object> configuration(RunContext runContext) throws IllegalVa
144109 builder .put ("refresh_token" , runContext .render (this .refreshToken ).as (String .class ).orElseThrow ());
145110 }
146111
147- if (this .username != null ) {
148- builder .put ("username " , runContext .render (this .username ).as (String .class ).orElseThrow ());
112+ if (this .lookbackWindow != null ) {
113+ builder .put ("lookback_window " , runContext .render (this .lookbackWindow ).as (Integer .class ).orElseThrow ());
149114 }
150115
151116 return builder .build ();
152117 }
153118
154119 @ Override
155120 public Property <List <String >> pipPackages () {
156- return Property .of (Collections .singletonList ("git+https://gitlab.com/meltano/ tap-salesforce.git " ));
121+ return Property .of (Collections .singletonList ("tap-salesforce" ));
157122 }
158123
159124 @ Override
0 commit comments