@Override public EnforcementFilter<M> getFilter(final I input) { final String inputResolved = PlaceholderFilter.apply(enforcement.getInput(), input, inputPlaceholder); return new ImmutableEnforcementFilter<>(enforcement, filterPlaceholder, inputResolved); }
/** * Create a copy of this object with error message set. * * @param enforcement the enforcement options * @return a copy of this object. */ public static Enforcement newEnforcement(final Enforcement enforcement) { return ImmutableEnforcement.of(enforcement.getInput(), enforcement.getFilters()); }
/** * Create a copy of this object with error message set. * * @param enforcement the enforcement options * @return a copy of this object. */ public static Enforcement newEnforcement(final Enforcement enforcement) { return ImmutableEnforcement.of(enforcement.getInput(), enforcement.getFilters()); }
@Override protected void validateSource(final Source source, final DittoHeaders dittoHeaders, final Supplier<String> sourceDescription) { source.getEnforcement().ifPresent(enforcement -> { validateTemplate(enforcement.getInput(), PlaceholderFactory.newHeadersPlaceholder(), dittoHeaders); enforcement.getFilters().forEach(filterTemplate -> validateTemplate(filterTemplate, PlaceholderFactory.newThingPlaceholder(), dittoHeaders)); }); source.getHeaderMapping().ifPresent(mapping -> validateHeaderMapping(mapping, dittoHeaders)); }
private static void validateEnforcementInput(final Enforcement enforcement, final Supplier<String> sourceDescription, final DittoHeaders dittoHeaders) { final SourceAddressPlaceholder sourceAddressPlaceholder = PlaceholderFactory.newSourceAddressPlaceholder(); try { EnforcementFactoryFactory .newEnforcementFilterFactory(enforcement, sourceAddressPlaceholder) .getFilter("dummyTopic"); } catch (final DittoRuntimeException e) { throw invalidValueForConfig(enforcement.getInput(), "input", sourceDescription.get()) .cause(e) .description(MessageFormat.format(ERROR_DESCRIPTION, enforcement.getInput(), sourceAddressPlaceholder.getSupportedNames())) .dittoHeaders(dittoHeaders) .build(); } }
@Override protected void validateSource(final Source source, final DittoHeaders dittoHeaders, final Supplier<String> sourceDescription) { source.getEnforcement().ifPresent(enforcement -> { validateTemplate(enforcement.getInput(), PlaceholderFactory.newHeadersPlaceholder(), dittoHeaders); enforcement.getFilters().forEach(filterTemplate -> validateTemplate(filterTemplate, PlaceholderFactory.newThingPlaceholder(), dittoHeaders)); }); source.getHeaderMapping().ifPresent(mapping -> validateHeaderMapping(mapping, dittoHeaders)); }
@Override protected void validateSource(final Source source, final DittoHeaders dittoHeaders, final Supplier<String> sourceDescription) { source.getEnforcement().ifPresent(enforcement -> { validateTemplate(enforcement.getInput(), PlaceholderFactory.newHeadersPlaceholder(), dittoHeaders); enforcement.getFilters().forEach(filterTemplate -> validateTemplate(filterTemplate, PlaceholderFactory.newThingPlaceholder(), dittoHeaders)); }); source.getHeaderMapping().ifPresent(mapping -> validateHeaderMapping(mapping, dittoHeaders)); }
@Override protected void validateSource(final Source source, final DittoHeaders dittoHeaders, final Supplier<String> sourceDescription) { source.getEnforcement().ifPresent(enforcement -> { validateTemplate(enforcement.getInput(), PlaceholderFactory.newHeadersPlaceholder(), dittoHeaders); enforcement.getFilters().forEach(filterTemplate -> validateTemplate(filterTemplate, PlaceholderFactory.newThingPlaceholder(), dittoHeaders)); }); source.getHeaderMapping().ifPresent(mapping -> validateHeaderMapping(mapping, dittoHeaders)); }
private static void validateEnforcementInput(final Enforcement enforcement, final Supplier<String> sourceDescription, final DittoHeaders dittoHeaders) { final SourceAddressPlaceholder sourceAddressPlaceholder = PlaceholderFactory.newSourceAddressPlaceholder(); try { EnforcementFactoryFactory .newEnforcementFilterFactory(enforcement, sourceAddressPlaceholder) .getFilter("dummyTopic"); } catch (final DittoRuntimeException e) { throw invalidValueForConfig(enforcement.getInput(), "input", sourceDescription.get()) .cause(e) .description(MessageFormat.format(ERROR_DESCRIPTION, enforcement.getInput(), sourceAddressPlaceholder.getSupportedNames())) .dittoHeaders(dittoHeaders) .build(); } }