congrats Icon
New! Tabnine Pro 14-day free trial
Start a free trial
Tabnine Logo
Config
Code IndexAdd Tabnine to your IDE (free)

How to use
Config
in
cc.soham.toggle.objects

Best Java code snippets using cc.soham.toggle.objects.Config (Showing top 20 results out of 315)

origin: s0h4m/toggle

public void setConfig(Config config) {
  // check for the config map
  if (config.getFeatureMap() == null)
    config.generateFeatureMap();
  setSourceType(SourceType.CONFIG);
  // store source
  PersistUtils.storeSourceType(getContext(), SourceType.CONFIG);
  // store config
  storeConfigInMem(config);
  PersistUtils.storeConfig(getContext(), config);
}
origin: s0h4m/toggle

@NonNull
private static Config getStandardConfig(String metadata) {
  List<Rule> rules = new ArrayList<>();
  Value value1 = new Value(14, 18, null, null, null, null, null, null);
  Value value2 = new Value(null, null, null, null, 1453196880000L, null, null, null);
  rules.add(new Rule(Toggle.DISABLED, metadata, value1));
  rules.add(new Rule(Toggle.DISABLED, metadata, value2));
  Feature featureVideo = new Feature("video", null, Toggle.ENABLED, featureMetadata, rules);
  Feature featureAudio = new Feature("audio", Toggle.ENABLED, null, featureMetadata, rules);
  Feature featureSpeech = new Feature("speech", null, Toggle.DISABLED, featureMetadata, rules);
  List<Feature> features = new ArrayList<>();
  features.add(featureVideo);
  features.add(featureAudio);
  features.add(featureSpeech);
  return new Config("myapp", features);
}
origin: s0h4m/toggle

public Config(String name, List<Feature> features) {
  this.name = name;
  this.features = features;
  generateFeatureMap();
}
origin: s0h4m/toggle

/**
 * Code for enabling/disabling a feature based on a request ({@link CheckRequest}) and a config ({@link Config})
 *
 * @param config
 * @param checkRequest
 * @return
 */
public CheckResponse processConfig(Config config, CheckRequest checkRequest) {
  if (config != null && config.getFeatureMap().containsKey(checkRequest.featureName)) {
    Feature feature = config.getFeatureMap().get(checkRequest.featureName);
    ResponseDecisionMeta responseDecisionMeta = handleFeature(feature, checkRequest);
    // if there is a decisive state (either enabled or disabled) initiate the callback and break
    return new CheckResponse(checkRequest.featureName, responseDecisionMeta.state, responseDecisionMeta.featureMetadata, responseDecisionMeta.ruleMetadata);
  }
  // a) feature not found or b) no state could be made based on the config
  // check if there was no default state in the request, send enabled (default toggle)
  String state;
  if (checkRequest.defaultState == null) {
    state = DEFAULT_STATE;
  } else {
    state = checkRequest.defaultState;
  }
  return new CheckResponse(checkRequest.featureName, state, null, null, false);
}
origin: s0h4m/toggle

@Test
public void processConfig_featureNotPresent_null_returnsEnabled() {
  Toggle toggle = new Toggle(context);
  List<Rule> rules = new ArrayList<>();
  Value value = new Value(14, 18, null, null, null, null, null, null);
  rules.add(new Rule(Toggle.DISABLED, ruleMetadata, value));
  Feature featureVideo = new Feature("video", null, null, featureMetadata, rules);
  Feature featureAudio = new Feature("audio", Toggle.ENABLED, null, featureMetadata, rules);
  Feature featureSpeech = new Feature("speech", null, Toggle.DISABLED, featureMetadata, rules);
  List<Feature> features = new ArrayList<>();
  features.add(featureVideo);
  features.add(featureAudio);
  features.add(featureSpeech);
  Config config = new Config("myapp", features);
  // check the feature map
  assertValidConfig(config);
  String featureToBeSearched = "share";
  String defaultStateInRequest = null;
  CheckRequest checkRequest = new CheckRequest(toggle, featureToBeSearched, null, defaultStateInRequest, false, null);
  CheckResponse checkResponse = toggle.processConfig(config, checkRequest);
  assertThat(checkResponse.featureName).isEqualTo(featureToBeSearched);
  assertThat(checkResponse.ruleMetadata).isEqualTo(null);
  assertThat(checkResponse.cached).isFalse();
  assertThat(checkResponse.state).isEqualTo(Toggle.DEFAULT_STATE);
}
origin: s0h4m/toggle

@Override
public void onSuccess(Config config) {
  // calculate the map
  config.generateFeatureMap();
  // store in mem
  Toggle.storeConfigInMem(config);
  // call the success method
  configRetrievedSuccess(config, checkRequest);
}
origin: s0h4m/toggle

private void assertValidConfig(Config config) {
  assertThat(config.getFeatureMap()).isNotNull();
  assertThat(config.getFeatureMap().get("video")).isNotNull();
  assertThat(config.getFeatureMap().get("audio")).isNotNull();
  assertThat(config.getFeatureMap().get("speech")).isNotNull();
  assertThat(config.getFeatureMap().get("random")).isNull();
}
origin: s0h4m/toggle

@Test
public void processConfig_featurePresent_apiLevel_matchDisabled_returnsDisabled() {
  Toggle toggle = new Toggle(context);
  List<Rule> rules = new ArrayList<>();
  Value value = new Value(14, 18, null, null, null, null, null, null);
  rules.add(new Rule(Toggle.DISABLED, ruleMetadata, value));
  Feature featureVideo = new Feature("video", null, Toggle.ENABLED, featureMetadata, rules);
  Feature featureAudio = new Feature("audio", Toggle.ENABLED, null, featureMetadata, rules);
  Feature featureSpeech = new Feature("speech", null, Toggle.DISABLED, featureMetadata, rules);
  List<Feature> features = new ArrayList<>();
  features.add(featureVideo);
  features.add(featureAudio);
  features.add(featureSpeech);
  Config config = new Config("myapp", features);
  // check the feature map
  assertValidConfig(config);
  String featureToBeSearched = "video";
  String defaultStateInRequest = Toggle.ENABLED;
  PowerMockito.spy(RuleMatcher.class);
  Mockito.when(RuleMatcher.getBuildVersion()).thenReturn(16);
  CheckRequest checkRequest = new CheckRequest(toggle, featureToBeSearched, null, defaultStateInRequest, false, null);
  CheckResponse checkResponse = toggle.processConfig(config, checkRequest);
  assertThat(checkResponse.featureName).isEqualTo(featureToBeSearched);
  assertThat(checkResponse.ruleMetadata).isEqualTo(ruleMetadata);
  assertThat(checkResponse.cached).isTrue();
  assertThat(checkResponse.state).isEqualTo(Toggle.DISABLED);
}
origin: s0h4m/toggle

@Override
protected SetConfigResponse doInBackground(Void... params) {
  Config config = ConversionUtils.convertStringToConfig(configInString);
  // generate the map
  config.generateFeatureMap();
  // store in memory
  Toggle.storeConfigInMem(config);
  // persist
  PersistUtils.storeConfig(context, config);
  return new SetConfigResponse(config);
}
origin: s0h4m/toggle

@Test
public void processConfig_featurePresent_apiLevel_matchEnabled_returnsEnabled() {
  Toggle toggle = new Toggle(context);
  List<Rule> rules = new ArrayList<>();
  Value value = new Value(14, 18, null, null, null, null, null, null);
  rules.add(new Rule(Toggle.ENABLED, ruleMetadata, value));
  Feature featureVideo = new Feature("video", null, Toggle.DISABLED, featureMetadata, rules);
  Feature featureAudio = new Feature("audio", Toggle.ENABLED, null, featureMetadata, rules);
  Feature featureSpeech = new Feature("speech", null, Toggle.DISABLED, featureMetadata, rules);
  List<Feature> features = new ArrayList<>();
  features.add(featureVideo);
  features.add(featureAudio);
  features.add(featureSpeech);
  Config config = new Config("myapp", features);
  // check the feature map
  assertValidConfig(config);
  String featureToBeSearched = "video";
  String defaultStateInRequest = Toggle.DISABLED;
  PowerMockito.spy(RuleMatcher.class);
  Mockito.when(RuleMatcher.getBuildVersion()).thenReturn(16);
  CheckRequest checkRequest = new CheckRequest(toggle, featureToBeSearched, null, defaultStateInRequest, false, null);
  CheckResponse checkResponse = toggle.processConfig(config, checkRequest);
  assertThat(checkResponse.featureName).isEqualTo(featureToBeSearched);
  assertThat(checkResponse.ruleMetadata).isEqualTo(ruleMetadata);
  assertThat(checkResponse.cached).isTrue();
  assertThat(checkResponse.state).isEqualTo(Toggle.ENABLED);
}
origin: s0h4m/toggle

public CheckResponse getAndProcessCachedConfigSync(final CheckRequest checkRequest) {
  Config config = null;
  try {
    config = PersistUtils.getConfigSync(getContext());
  } catch (Exception exception) {
    exception.printStackTrace();
    return getExceptionCheckResponse(checkRequest);
  }
  // check for null
  if (config == null) {
    if (checkRequest.defaultState == null) {
      throw new IllegalStateException("No configuration found (Config) and no default state configured in the state check");
    }
    return new CheckResponse(checkRequest.featureName, checkRequest.defaultState, null, null, true);
  } else {
    // generate the map
    config.generateFeatureMap();
  }
  // process the config
  CheckResponse checkResponse = processConfig(config, checkRequest);
  return checkResponse;
}
origin: s0h4m/toggle

@Test
public void processConfig_featureNotPresent_defaultEnabled_returnsEnabled() {
  Toggle toggle = new Toggle(context);
  List<Rule> rules = new ArrayList<>();
  Value value = new Value(14, 18, null, null, null, null, null, null);
  rules.add(new Rule(Toggle.DISABLED, ruleMetadata, value));
  Feature featureVideo = new Feature("video", null, null, featureMetadata, rules);
  Feature featureAudio = new Feature("audio", Toggle.ENABLED, null, featureMetadata, rules);
  Feature featureSpeech = new Feature("speech", null, Toggle.DISABLED, featureMetadata, rules);
  List<Feature> features = new ArrayList<>();
  features.add(featureVideo);
  features.add(featureAudio);
  features.add(featureSpeech);
  Config config = new Config("myapp", features);
  // check the feature map
  assertValidConfig(config);
  String featureToBeSearched = "share";
  String defaultStateInRequest = Toggle.ENABLED;
  CheckRequest checkRequest = new CheckRequest(toggle, featureToBeSearched, null, defaultStateInRequest, false, null);
  CheckResponse checkResponse = toggle.processConfig(config, checkRequest);
  assertThat(checkResponse.featureName).isEqualTo(featureToBeSearched);
  assertThat(checkResponse.ruleMetadata).isEqualTo(null);
  assertThat(checkResponse.cached).isFalse();
  assertThat(checkResponse.state).isEqualTo(defaultStateInRequest);
}
origin: s0h4m/toggle

config.generateFeatureMap();
origin: s0h4m/toggle

@Test
public void processConfig_featurePresent_butNoDefaultOrMatchInConfig_defaultInRequestDisabled_returnsDisabled() {
  Toggle toggle = new Toggle(context);
  List<Rule> rules = new ArrayList<>();
  Value value = new Value(14, 18, null, null, null, null, null, null);
  rules.add(new Rule(Toggle.DISABLED, ruleMetadata, value));
  Feature featureVideo = new Feature("video", null, null, featureMetadata, rules);
  Feature featureAudio = new Feature("audio", Toggle.ENABLED, null, featureMetadata, rules);
  Feature featureSpeech = new Feature("speech", null, Toggle.DISABLED, featureMetadata, rules);
  List<Feature> features = new ArrayList<>();
  features.add(featureVideo);
  features.add(featureAudio);
  features.add(featureSpeech);
  Config config = new Config("myapp", features);
  // check the feature map
  assertValidConfig(config);
  String featureToBeSearched = "video";
  String defaultStateInRequest = Toggle.DISABLED;
  PowerMockito.spy(RuleMatcher.class);
  Mockito.when(RuleMatcher.getBuildVersion()).thenReturn(20);
  CheckRequest checkRequest = new CheckRequest(toggle, featureToBeSearched, null, defaultStateInRequest, false, null);
  CheckResponse checkResponse = toggle.processConfig(config, checkRequest);
  assertThat(checkResponse.featureName).isEqualTo(featureToBeSearched);
  assertThat(checkResponse.ruleMetadata).isEqualTo(null);
  assertThat(checkResponse.cached).isTrue();
  assertThat(checkResponse.state).isEqualTo(defaultStateInRequest);
}
origin: s0h4m/toggle

@Override
protected CheckResponse doInBackground(Void... params) {
  // convert string to config
  Config config = ConversionUtils.convertStringToConfig(configInString);
  // generate the map
  config.generateFeatureMap();
  // store config
  Toggle.storeConfigInMem(config);
  PersistUtils.storeConfig(checkRequest.toggle.getContext(), config);
  // process the resultant config
  CheckResponse result = checkRequest.toggle.processConfig(config, checkRequest);
  // disable the cache flag since this is a live request
  result.cached = false;
  return result;
}
origin: s0h4m/toggle

@Test
public void processConfig_featurePresent_defaultPresentMatchInConfigEnabled_defaultInRequestAbsent_returnsEnabled() {
  Toggle toggle = new Toggle(context);
  List<Rule> rules = new ArrayList<>();
  Value value = new Value(14, 18, null, null, null, null, null, null);
  rules.add(new Rule(Toggle.DISABLED, ruleMetadata, value));
  Feature featureVideo = new Feature("video", null, Toggle.ENABLED, featureMetadata, rules);
  Feature featureAudio = new Feature("audio", Toggle.ENABLED, null, featureMetadata, rules);
  Feature featureSpeech = new Feature("speech", null, Toggle.DISABLED, featureMetadata, rules);
  List<Feature> features = new ArrayList<>();
  features.add(featureVideo);
  features.add(featureAudio);
  features.add(featureSpeech);
  Config config = new Config("myapp", features);
  // check the feature map
  assertValidConfig(config);
  String featureToBeSearched = "video";
  String defaultStateInRequest = null;
  PowerMockito.spy(RuleMatcher.class);
  Mockito.when(RuleMatcher.getBuildVersion()).thenReturn(20);
  CheckRequest checkRequest = new CheckRequest(toggle, featureToBeSearched, null, defaultStateInRequest, false, null);
  CheckResponse checkResponse = toggle.processConfig(config, checkRequest);
  assertThat(checkResponse.featureName).isEqualTo(featureToBeSearched);
  assertThat(checkResponse.ruleMetadata).isEqualTo(null);
  assertThat(checkResponse.cached).isTrue();
  assertThat(checkResponse.state).isEqualTo(Toggle.ENABLED);
}
origin: s0h4m/toggle

public void setConfig(JsonElement configInJson) {
  setSourceType(SourceType.JSONOBJECT);
  // store source
  PersistUtils.storeSourceType(getContext(), SourceType.JSONOBJECT);
  // convert from json to config
  Config config = ConversionUtils.convertJSONObjectToConfig(configInJson);
  // generate the map
  config.generateFeatureMap();
  // store config
  storeConfigInMem(config);
  PersistUtils.storeConfig(getContext(), config);
}
origin: s0h4m/toggle

@Test
public void processConfig_featurePresent_defaultPresentInConfigDisabled_defaultInRequestEnabled_returnsEnabled() {
  Toggle toggle = new Toggle(context);
  List<Rule> rules = new ArrayList<>();
  Value value = new Value(14, 18, null, null, null, null, null, null);
  rules.add(new Rule(Toggle.DISABLED, ruleMetadata, value));
  Feature featureVideo = new Feature("video", null, Toggle.DISABLED, featureMetadata, rules);
  Feature featureAudio = new Feature("audio", Toggle.ENABLED, null, featureMetadata, rules);
  Feature featureSpeech = new Feature("speech", null, Toggle.DISABLED, featureMetadata, rules);
  List<Feature> features = new ArrayList<>();
  features.add(featureVideo);
  features.add(featureAudio);
  features.add(featureSpeech);
  Config config = new Config("myapp", features);
  // check the feature map
  assertValidConfig(config);
  String featureToBeSearched = "video";
  String defaultStateInRequest = Toggle.ENABLED;
  PowerMockito.spy(RuleMatcher.class);
  Mockito.when(RuleMatcher.getBuildVersion()).thenReturn(20);
  CheckRequest checkRequest = new CheckRequest(toggle, featureToBeSearched, null, defaultStateInRequest, false, null);
  CheckResponse checkResponse = toggle.processConfig(config, checkRequest);
  assertThat(checkResponse.featureName).isEqualTo(featureToBeSearched);
  assertThat(checkResponse.ruleMetadata).isEqualTo(null);
  assertThat(checkResponse.cached).isTrue();
  assertThat(checkResponse.state).isEqualTo(defaultStateInRequest);
}
origin: s0h4m/toggle

public void setConfig(String configInString) {
  setSourceType(SourceType.STRING);
  // store source
  PersistUtils.storeSourceType(getContext(), SourceType.STRING);
  // convert from string to config
  Config config = ConversionUtils.convertStringToConfig(configInString);
  // generate the map
  config.generateFeatureMap();
  // store config
  storeConfigInMem(config);
  PersistUtils.storeConfig(getContext(), config);
}
origin: s0h4m/toggle

/**
 * Process config tests
 */
// set 1: feature not present
@Test
public void processConfig_featureNotPresent_defaultDisabled_returnsDisabled() {
  Toggle toggle = new Toggle(context);
  List<Rule> rules = new ArrayList<>();
  Value value = new Value(14, 18, null, null, null, null, null, null);
  rules.add(new Rule(Toggle.DISABLED, ruleMetadata, value));
  Feature featureVideo = new Feature("video", null, null, featureMetadata, rules);
  Feature featureAudio = new Feature("audio", Toggle.ENABLED, null, featureMetadata, rules);
  Feature featureSpeech = new Feature("speech", null, Toggle.DISABLED, featureMetadata, rules);
  List<Feature> features = new ArrayList<>();
  features.add(featureVideo);
  features.add(featureAudio);
  features.add(featureSpeech);
  Config config = new Config("myapp", features);
  // check the feature map
  assertValidConfig(config);
  String featureToBeSearched = "share";
  String defaultStateInRequest = Toggle.DISABLED;
  CheckRequest checkRequest = new CheckRequest(toggle, featureToBeSearched, null, defaultStateInRequest, false, null);
  CheckResponse checkResponse = toggle.processConfig(config, checkRequest);
  assertThat(checkResponse.featureName).isEqualTo(featureToBeSearched);
  assertThat(checkResponse.ruleMetadata).isEqualTo(null);
  assertThat(checkResponse.cached).isFalse();
  assertThat(checkResponse.state).isEqualTo(defaultStateInRequest);
}
cc.soham.toggle.objectsConfig

Most used methods

  • getFeatureMap
    Gets the Map of features for lookup use
  • <init>
  • generateFeatureMap
    Generates a Map out of the features List

Popular in Java

  • Making http requests using okhttp
  • getExternalFilesDir (Context)
  • getApplicationContext (Context)
  • scheduleAtFixedRate (Timer)
  • Color (java.awt)
    The Color class is used to encapsulate colors in the default sRGB color space or colors in arbitrary
  • HttpURLConnection (java.net)
    An URLConnection for HTTP (RFC 2616 [http://tools.ietf.org/html/rfc2616]) used to send and receive d
  • Arrays (java.util)
    This class contains various methods for manipulating arrays (such as sorting and searching). This cl
  • HashSet (java.util)
    HashSet is an implementation of a Set. All optional operations (adding and removing) are supported.
  • Scanner (java.util)
    A parser that parses a text string of primitive types and strings with the help of regular expressio
  • Callable (java.util.concurrent)
    A task that returns a result and may throw an exception. Implementors define a single method with no
  • Top 15 Vim Plugins
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimAtomGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyStudentsTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now