Skip to content

Commit

Permalink
refactor to reduce duplication
Browse files Browse the repository at this point in the history
  • Loading branch information
Grunet authored May 25, 2024
1 parent 3501fed commit cce4d64
Showing 1 changed file with 9 additions and 13 deletions.
22 changes: 9 additions & 13 deletions src/provider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,17 +41,21 @@ class DenoProvider implements Provider {
async initialize?(_context?: EvaluationContext | undefined): Promise<void> {
const kvJson = await this.#kv.get([FEATURE_FLAGS_KEY]);

this.#saveFlagDefinitionsWithErrorHandling(kvJson.value);

this.#watchFlagDefinitions();
}

#saveFlagDefinitionsWithErrorHandling(flagDefinitions: unknown) {
try {
this.#saveFlagDefinitions(kvJson.value);
this.#saveFlagDefinitions(flagDefinitions);
} catch (error) {
// No-op in case something went wrong (e.g. the flags definition file not being parseable)
// FlagdCore should default to returning default values if this happens
console.error(error);
console.log("Old flag definitions:", this.#flagDefinitions);
console.log("New flag definitions:", kvJson.value);
console.log("New flag definitions:", flagDefinitions);
}

this.#watchFlagDefinitions();
}

#saveFlagDefinitions(flagDefinitions: unknown) {
Expand All @@ -77,15 +81,7 @@ class DenoProvider implements Provider {
continue;
}

try {
this.#saveFlagDefinitions(flagDefinitions);
} catch (error) {
console.error(error);
console.log("Old flag definitions:", this.#flagDefinitions);
console.log("New flag definitions:", flagDefinitions);

continue;
}
this.#saveFlagDefinitionsWithErrorHandling(flagDefinitions);
}
}

Expand Down

0 comments on commit cce4d64

Please sign in to comment.