constructor()

in src/routes/Plugin/PluginRuleHandle/HystrixRuleHandle.js [32:78]


  constructor(props) {
    super(props);
    props.onRef(this);
    let requestVolumeThreshold = "20",
      errorThresholdPercentage = "50",
      maxConcurrentRequests = "100",
      sleepWindowInMilliseconds = "5000",
      timeout = "3000",
      groupKey = "",
      commandKey = "",
      callBackUri = "",
      executionIsolationStrategy = 1,
      hystrixThreadPoolConfig = {
        coreSize: 10,
        maximumSize: 10,
        maxQueueSize: 12,
      };
    if (props.handle) {
      const myHandle = JSON.parse(props.handle);
      requestVolumeThreshold = myHandle.requestVolumeThreshold;
      errorThresholdPercentage = myHandle.errorThresholdPercentage;
      maxConcurrentRequests = myHandle.maxConcurrentRequests;
      sleepWindowInMilliseconds = myHandle.sleepWindowInMilliseconds;
      timeout = myHandle.timeout;
      groupKey = myHandle.groupKey;
      commandKey = myHandle.commandKey;
      if (typeof myHandle.executionIsolationStrategy !== "undefined") {
        executionIsolationStrategy = myHandle.executionIsolationStrategy;
      }
      if (myHandle.hystrixThreadPoolConfig) {
        hystrixThreadPoolConfig = myHandle.hystrixThreadPoolConfig;
      }
      callBackUri = myHandle.callBackUri;
    }
    this.state = {
      requestVolumeThreshold,
      errorThresholdPercentage,
      maxConcurrentRequests,
      sleepWindowInMilliseconds,
      timeout,
      groupKey,
      commandKey,
      executionIsolationStrategy,
      hystrixThreadPoolConfig,
      callBackUri,
    };
  }