Skip to content

Commit

Permalink
refactor: minor polishing
Browse files Browse the repository at this point in the history
  • Loading branch information
fabriziodemaria committed Jun 25, 2024
1 parent f013bfe commit 59cdd50
Showing 1 changed file with 20 additions and 11 deletions.
31 changes: 20 additions & 11 deletions Sources/Confidence/Confidence.swift
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,25 @@ import Combine
import os

public class Confidence: ConfidenceEventSender {
public let clientSecret: String
public var region: ConfidenceRegion
private let clientSecret: String
private var region: ConfidenceRegion
private let parent: ConfidenceContextProvider?
private let eventSenderEngine: EventSenderEngine
private let contextSubject = CurrentValueSubject<ConfidenceStruct, Never>([:])
private var removedContextKeys: Set<String> = Set()
private let confidenceQueue = DispatchQueue(label: "com.confidence.queue")
private let remoteFlagResolver: ConfidenceResolveClient
private let flagApplier: FlagApplier
private var cache = FlagResolution.EMPTY
private var storage: Storage
internal let contextReconciliatedChanges = PassthroughSubject<String, Never>()
private var cancellables = Set<AnyCancellable>()
private var currentFetchTask: Task<(), Never>?

// Internal for testing
internal let remoteFlagResolver: ConfidenceResolveClient
internal let contextReconciliatedChanges = PassthroughSubject<String, Never>()

public static let sdkId: String = "SDK_ID_SWIFT_CONFIDENCE"

required init(
clientSecret: String,
region: ConfidenceRegion,
Expand Down Expand Up @@ -255,15 +259,20 @@ public class Confidence: ConfidenceEventSender {

extension Confidence {
public class Builder {
let clientSecret: String
// Must be configured or configured automatically
internal let clientSecret: String
internal let eventStorage: EventStorage
internal let visitorId = VisitorUtil().getId()

// Can be configured
internal var region: ConfidenceRegion = .global
internal var metadata: ConfidenceMetadata?
internal var initialContext: ConfidenceStruct = [:]

// Injectable for testing
internal var flagApplier: FlagApplier?
internal var storage: Storage?
internal let eventStorage: EventStorage
internal var flagResolver: ConfidenceResolveClient?
var region: ConfidenceRegion = .global

var visitorId = VisitorUtil().getId()
var initialContext: ConfidenceStruct = [:]

/**
Initializes the builder with the given credentails.
Expand Down Expand Up @@ -312,7 +321,7 @@ extension Confidence {
credentials: ConfidenceClientCredentials.clientSecret(secret: clientSecret),
region: region)
let metadata = ConfidenceMetadata(
name: "SDK_ID_SWIFT_CONFIDENCE",
name: sdkId,
version: "0.2.2") // x-release-please-version
let uploader = RemoteConfidenceClient(
options: options,
Expand Down

0 comments on commit 59cdd50

Please sign in to comment.