@@ -115,6 +115,10 @@ export interface IEppoClient {
115
115
116
116
useCustomAssignmentCache ( cache : AssignmentCache < Cacheable > ) : void ;
117
117
118
+ setConfigurationRequestParameters (
119
+ configurationRequestParameters : ExperimentConfigurationRequestParameters ,
120
+ ) : void ;
121
+
118
122
fetchFlagConfigurations ( ) : void ;
119
123
120
124
stopPolling ( ) : void ;
@@ -141,21 +145,27 @@ export default class EppoClient implements IEppoClient {
141
145
private isGracefulFailureMode = true ;
142
146
private assignmentCache : AssignmentCache < Cacheable > | undefined ;
143
147
private configurationStore : IConfigurationStore ;
144
- private configurationRequestConfig : ExperimentConfigurationRequestParameters | undefined ;
148
+ private configurationRequestParameters : ExperimentConfigurationRequestParameters | undefined ;
145
149
private requestPoller : IPoller | undefined ;
146
150
147
151
constructor (
148
152
configurationStore : IConfigurationStore ,
149
- configurationRequestConfig ?: ExperimentConfigurationRequestParameters ,
153
+ configurationRequestParameters ?: ExperimentConfigurationRequestParameters ,
150
154
) {
151
155
this . configurationStore = configurationStore ;
152
- this . configurationRequestConfig = configurationRequestConfig ;
156
+ this . configurationRequestParameters = configurationRequestParameters ;
157
+ }
158
+
159
+ public setConfigurationRequestParameters (
160
+ configurationRequestParameters : ExperimentConfigurationRequestParameters ,
161
+ ) {
162
+ this . configurationRequestParameters = configurationRequestParameters ;
153
163
}
154
164
155
165
public async fetchFlagConfigurations ( ) {
156
- if ( ! this . configurationRequestConfig ) {
166
+ if ( ! this . configurationRequestParameters ) {
157
167
throw new Error (
158
- 'Eppo SDK unable to fetch flag configurations without a request configuration ' ,
168
+ 'Eppo SDK unable to fetch flag configurations without configuration request parameters ' ,
159
169
) ;
160
170
}
161
171
@@ -165,13 +175,13 @@ export default class EppoClient implements IEppoClient {
165
175
}
166
176
167
177
const axiosInstance = axios . create ( {
168
- baseURL : this . configurationRequestConfig . baseUrl || DEFAULT_BASE_URL ,
169
- timeout : this . configurationRequestConfig . requestTimeoutMs || DEFAULT_REQUEST_TIMEOUT_MS ,
178
+ baseURL : this . configurationRequestParameters . baseUrl || DEFAULT_BASE_URL ,
179
+ timeout : this . configurationRequestParameters . requestTimeoutMs || DEFAULT_REQUEST_TIMEOUT_MS ,
170
180
} ) ;
171
181
const httpClient = new HttpClient ( axiosInstance , {
172
- apiKey : this . configurationRequestConfig . apiKey ,
173
- sdkName : this . configurationRequestConfig . sdkName ,
174
- sdkVersion : this . configurationRequestConfig . sdkVersion ,
182
+ apiKey : this . configurationRequestParameters . apiKey ,
183
+ sdkName : this . configurationRequestParameters . sdkName ,
184
+ sdkVersion : this . configurationRequestParameters . sdkVersion ,
175
185
} ) ;
176
186
const configurationRequestor = new ExperimentConfigurationRequestor (
177
187
this . configurationStore ,
@@ -183,16 +193,17 @@ export default class EppoClient implements IEppoClient {
183
193
configurationRequestor . fetchAndStoreConfigurations . bind ( configurationRequestor ) ,
184
194
{
185
195
maxStartRetries :
186
- this . configurationRequestConfig . numInitialRequestRetries ??
196
+ this . configurationRequestParameters . numInitialRequestRetries ??
187
197
DEFAULT_INITIAL_CONFIG_REQUEST_RETRIES ,
188
198
maxPollRetries :
189
- this . configurationRequestConfig . numPollRequestRetries ??
199
+ this . configurationRequestParameters . numPollRequestRetries ??
190
200
DEFAULT_POLL_CONFIG_REQUEST_RETRIES ,
191
201
pollAfterSuccessfulStart :
192
- this . configurationRequestConfig . pollAfterSuccessfulInitialization ?? false ,
202
+ this . configurationRequestParameters . pollAfterSuccessfulInitialization ?? false ,
193
203
pollAfterFailedStart :
194
- this . configurationRequestConfig . pollAfterFailedInitialization ?? false ,
195
- errorOnFailedStart : this . configurationRequestConfig . throwOnFailedInitialization ?? false ,
204
+ this . configurationRequestParameters . pollAfterFailedInitialization ?? false ,
205
+ errorOnFailedStart :
206
+ this . configurationRequestParameters . throwOnFailedInitialization ?? false ,
196
207
} ,
197
208
) ;
198
209
0 commit comments