@Override public String toString() { if (toStringCache == null) { toStringCache = type.getName() + "/" + subType.getFacet().getRegistrationTreeName().map(tree -> tree + ".").orElse("") + subType.getName() + subType.getSuffix().map(suffix -> "+" + suffix).orElse("") + parameters.entrySet().stream().map(entry -> ";" + entry.getKey() + "=" + entry.getValue()) .collect(Collectors.joining()); } return toStringCache; } }
@Test public void test_facet_lookup_works () { final Optional<Facet> vendorFacet = Facet.forRegistrationTreeName("vnd"); assertThat(vendorFacet).isNotNull(); assertThat(vendorFacet.isPresent()).isTrue(); assertThat(vendorFacet.get()).isNotNull(); assertThat(vendorFacet.get()).isEqualTo(Facet.VENDOR); }
Facet givenFacet = Facet.forRegistrationTreeName(facetString).orElse(Facet.STANDARD); Optional<String> givenSuffix = (suffixString == null || suffixString.isEmpty()) ? Optional.empty() : Optional.of(suffixString);
@Override public String toString() { if (toStringCache == null) { toStringCache = subType.getFacet().getRegistrationTreeName().map(tree -> tree + ".").orElse("") + subType.getName() + subType.getSuffix().map(suffix -> "+" + suffix).orElse(""); } return toStringCache; } }
@Test public void test_facet_lookup_with_null_name_fails () { final Optional<Facet> vendorFacet = Facet.forRegistrationTreeName(null); assertThat(vendorFacet).isNotNull(); assertThat(vendorFacet.isPresent()).isFalse(); }
private MediaRangeSubType mrSubType(String typeString) { if (MediaRange.WILDCARD_SUBTYPE.toString().equals(typeString)) return MediaRange.WILDCARD_SUBTYPE; MimeType.Facet facet = MimeType.Facet.STANDARD; if (typeString.startsWith(MimeType.Facet.VENDOR.getRegistrationTreeName().get())) facet = MimeType.Facet.VENDOR; Optional<String> suffix = Optional.empty(); if (typeString.endsWith("+json")) suffix = Optional.of("json"); return new MimeMediaRangeSubType(MimeType.SubType.of(facet, typeString, suffix)); }
@Test public void test_facet_lookup_with_unknown_name_fails () { final Optional<Facet> vendorFacet = Facet.forRegistrationTreeName("tacos"); assertThat(vendorFacet).isNotNull(); assertThat(vendorFacet.isPresent()).isFalse(); } }
@Override public int hashCode() { int result = getFacet().hashCode(); result = 122949829 * result + getName().hashCode(); result = 122949829 * result + getSuffix().hashCode(); return result; } }