CacheControl { public boolean isEmpty() { return !noCache && !noStore && !noTransform && maxAgeSeconds < 0; } CacheControl(boolean noCache, boolean noStore, boolean noTransform, long maxAgeSeconds); boolean isEmpty(); final boolean noCache(); final boolean noStore(); final boolean noTransform(); final long maxAgeSeconds(); abstract CacheControlBuilder toBuilder(); abstract String asHeaderValue(); @Override boolean equals(@Nullable Object o); @Override int hashCode(); @Override String toString();  }
@Test public void testIsEmpty() { final CacheControl cc = new CacheControlImplBuilder().build(); assertThat(cc.isEmpty()).isTrue(); assertThat(cc.noCache()).isFalse(); assertThat(cc.noStore()).isFalse(); assertThat(cc.noTransform()).isFalse(); assertThat(cc.maxAgeSeconds()).isEqualTo(-1); assertThat(cc.asHeaderValue()).isEmpty(); assertThat(cc.toString()).isEqualTo("CacheControlImpl(<empty>)"); }