@Override public boolean isVisible() { return visibilityFunction == null || visibilityFunction.test(this); } }
public boolean isVisible(SInstance sInstance) { return visible.test(sInstance); } }
default <T> IPredicate<? super T> not(IPredicate<T> predicate) { return it -> !predicate.test(it); }
default <T> IPredicate<? super T> not(IPredicate<T> predicate) { return it -> !predicate.test(it); }
@Override public boolean isActive(WicketBuildContext ctx, IWicketComponentMapper mapper) { return (active != null) ? active.test(ctx.getCurrentInstance()) : true; } };
default public IMappingModel<T> filter(IPredicate<T> filter) { return map(it -> filter.test(it) ? it : null); }
default public IMappingModel<T> filter(IPredicate<T> filter) { return map(it -> filter.test(it) ? it : null); }
@Override @SuppressWarnings("unchecked") public void onConfigure(Component component) { component.setVisible(predicate.test((T) component.getDefaultModelObject())); } };
@Override @SuppressWarnings("unchecked") public void onConfigure(Component component) { component.setVisible(predicate.test((T) component.getDefaultModelObject())); } };
private static List<ValidationError> collectNestedErrors(FeedbackFence feedbackFence, Collection<SInstance> rootInstances, IPredicate<ValidationError> filter) { final Set<ValidationError> result = new LinkedHashSet<>(); for (SInstance rootInstance : rootInstances) { final SDocument document = rootInstance.getDocument(); final Map<String, SInstance> lowerBoundInstances = collectLowerBoundInstances(feedbackFence); SInstances.visit(rootInstance, (i, v) -> { if (lowerBoundInstances.keySet().contains(i.getPathFull())) { v.dontGoDeeper(); } else { document.getValidationErrors(i.getId()).stream() .filter(it -> (filter == null) || filter.test(it)) .distinct() .forEach(result::add); } }); } return new ArrayList<>(result); }
@Override public void validate(IValidatable<T> validatable) { if (isInvalidTest.test(validatable.getValue())) { validatable.error(BaseValidator.validationError(errorMessage)); } } };
private static List<IValidationError> collectNestedErrors(FeedbackFence feedbackFence, Collection<SInstance> rootInstances, IPredicate<IValidationError> filter) { final List<IValidationError> result = new ArrayList<>(); for (SInstance rootInstance : rootInstances) { final SDocument document = rootInstance.getDocument(); final Set<? extends SInstance> lowerBoundInstances = collectLowerBoundInstances(feedbackFence); SInstances.visit(rootInstance, (i, v) -> { if (lowerBoundInstances.contains(i)) { v.dontGoDeeper(); } else { document.getValidationErrors(i.getId()).stream() .filter(it -> (filter == null) || filter.test(it)) .forEach(result::add); } }); } return result; }
@Override public void validate(IValidatable<T> validatable) { if (isInvalidTest.test(validatable.getValue())) { validatable.error(BaseValidator.validationError(errorMessage)); } } };
private BSActionPanel.ActionConfig<SInstance> buildShowAnnotationsActionConfig() { IPredicate<SInstance> hasAnyRefusal = it -> it.asAtrAnnotation().hasAnyRefusal(); IPredicate<SInstance> hasAnyAnnotable = it -> it.asAtrAnnotation().hasAnyAnnotable(); IPredicate<SInstance> hasAnyAnnotation = it -> it.asAtrAnnotation().hasAnyAnnotationOnTree(); //@formatter:off IFunction<SInstance, String> titleFunc = it -> hasAnyRefusal.test(it) ? "Possui anotação rejeitada" : hasAnyAnnotation.test(it) ? "Possui anotação" : hasAnyAnnotable.test(it) ? "Possui anotável" : null; IFunction<SInstance, IModel<Icon>> iconFunc = it -> $m.ofValue( hasAnyRefusal.test(it) ? Icon.of("annotation-icon annotation-icon-rejected") : hasAnyAnnotation.test(it) ? Icon.of("annotation-icon annotation-icon-approved") : hasAnyAnnotable.test(it) ? Icon.of("annotation-icon annotation-icon-empty") : null ); //@formatter:on return new BSActionPanel.ActionConfig<SInstance>() .iconFunction(rowModel -> iconFunc.apply(rowModel.getObject())) .titleFunction(rowModel -> titleFunc.apply(rowModel.getObject())) .style($m.ofValue("line-height:1em; font-size: 1em;")); }
private static boolean containsNestedErrors(FeedbackFence feedbackFence, Collection<SInstance> rootInstances, IPredicate<ValidationError> filter) { for (SInstance rootInstance : rootInstances) { final SDocument document = rootInstance.getDocument(); final Map<String, SInstance> lowerBoundInstances = collectLowerBoundInstances(feedbackFence); Optional<ValidationError> f = SInstances.visit(rootInstance, (i, v) -> { if (lowerBoundInstances.keySet().contains(i.getPathFull())) { v.dontGoDeeper(); } else { Optional<ValidationError> found = document.getValidationErrors(i.getId()).stream() .filter(it -> (filter == null) || filter.test(it)) .findAny(); if (found.isPresent()) v.stop(found.get()); } }); if (f.isPresent()) return true; } return false; }
private static boolean containsNestedErrors(FeedbackFence feedbackFence, Collection<SInstance> rootInstances, IPredicate<IValidationError> filter) { for (SInstance rootInstance : rootInstances) { final SDocument document = rootInstance.getDocument(); final Set<? extends SInstance> lowerBoundInstances = collectLowerBoundInstances(feedbackFence); Optional<IValidationError> f = SInstances.visit(rootInstance, (i, v) -> { if (lowerBoundInstances.contains(i)) { v.dontGoDeeper(); } else { Optional<IValidationError> found = document.getValidationErrors(i.getId()).stream() .filter(it -> (filter == null) || filter.test(it)) .findAny(); if (found.isPresent()) v.stop(found.get()); } }); if (f.isPresent()) return true; } return false; }
@Override public Iterable<SInstanceAction> getActions(ISInstanceActionCapable target, SInstance instance) { final boolean annotatable = instance.asAtrAnnotation().isAnnotated(); if (!annotatable || !annotationsVisible.test(instance)) return Collections.emptyList(); final boolean editable = annotationsEditable.test(instance); SInstanceAction editAction = new SInstanceAction(SInstanceAction.ActionType.NORMAL) .setIcon(resolveIcon(instance)) .setText(getEditActionTitle(instance)) .setPosition(Integer.MAX_VALUE) .setPreview(resolvePreview(instance, editable)) .setActionHandler(new EditAnnotationHandler()); return Collections.singletonList(editAction); }