public static IFlagshipClient Start(string environmentId, string apiKey, FlagshipOptions options = null) { var context = new FlagshipContext(environmentId, apiKey, options); var flagshipClient = new FlagshipClient(context); return(flagshipClient); }
public FlagshipContext(string environmentId, string apiKey, FlagshipOptions options = null) { EnvironmentId = environmentId; ApiKey = apiKey; Options = options; Logger = options?.Logger ?? new DefaultLogger(); ExceptionHandler = options?.ExceptionHandler ?? new DefaultExceptionHandler(Logger); Sender = new Sender(this); var decisionMode = options?.DecisionMode ?? Mode.API; if (decisionMode == Mode.Bucketing) { DecisionManager = new BucketingClient(this); } else { DecisionManager = new APIDecisionManager(this); } }