@Override
    public boolean equals(Object o) {
      if (this == o) return true;
      if (o == null || getClass() != o.getClass()) return false;

      DimensionCacheKey that = (DimensionCacheKey) o;

      if (!Objects.equals(rule, that.rule)) return false;
      return Objects.equals(tagBasedResourceIds, that.tagBasedResourceIds);
    }
Add a MetricRule to be used to configure a custom TTL using the value from {@link
MetricRule#listMetricsCacheTtl} to override the default expiry

@param metricRule
@return this
src/main/java/io/prometheus/cloudwatch/CachingDimensionSource.java