@Override public String toString() { StringBuilder builder = new StringBuilder() // .append(status) // .append(" ") // .append(order); completions.forEach(it -> builder.append('\n') // .append("> ").append(it)); return builder.toString(); }
private List<DbAction<?>> deleteAll(Class<?> entityType) { List<DbAction<?>> actions = new ArrayList<>(); context.findPersistentPropertyPaths(entityType, PersistentProperty::isEntity) .filter(p -> !p.getRequiredLeafProperty().isEmbedded()) .forEach(p -> actions.add(new DbAction.DeleteAll<>(p))); Collections.reverse(actions); DbAction.DeleteAllRoot<?> result = new DbAction.DeleteAllRoot<>(entityType); actions.add(result); return actions; }
/** * Add {@link DbAction.Delete} actions to the {@link AggregateChange} for deleting all referenced entities. * * @param id id of the aggregate root, of which the referenced entities get deleted. * @param aggregateChange the change object to which the actions should get added. Must not be {@code null} */ private List<DbAction<?>> deleteReferencedEntities(Object id, AggregateChange<?> aggregateChange) { List<DbAction<?>> actions = new ArrayList<>(); context.findPersistentPropertyPaths(aggregateChange.getEntityType(), PersistentProperty::isEntity) .filter(p -> !p.getRequiredLeafProperty().isEmbedded()) .forEach(p -> actions.add(new DbAction.Delete<>(id, p))); Collections.reverse(actions); return actions; } }
/** * Rolls back the stock decreases handled for {@link OrderCompleted} events. * * @param event must not be {@literal null}. */ @EventListener public void on(OrderCancelled event) { Order order = event.getOrder(); if (!order.isCompleted()) { return; } order.getOrderLines() // .map(this::updateStockFor) // .forEach(inventory::save); }
private Set<BeanDefinition> findCandidateBeanDefinitions(ImplementationDetectionConfiguration config) { String postfix = config.getImplementationPostfix(); ClassPathScanningCandidateComponentProvider provider = new ClassPathScanningCandidateComponentProvider(false, environment); provider.setResourceLoader(resourceLoader); provider.setResourcePattern(String.format(CUSTOM_IMPLEMENTATION_RESOURCE_PATTERN, postfix)); provider.setMetadataReaderFactory(config.getMetadataReaderFactory()); provider.addIncludeFilter((reader, factory) -> true); config.getExcludeFilters().forEach(it -> provider.addExcludeFilter(it)); return config.getBasePackages().stream()// .flatMap(it -> provider.findCandidateComponents(it).stream())// .collect(Collectors.toSet()); }
@Override public Streamable<BeanDefinition> getCandidates(ResourceLoader loader) { RepositoryComponentProvider scanner = new RepositoryComponentProvider(getIncludeFilters(), registry); scanner.setConsiderNestedRepositoryInterfaces(shouldConsiderNestedRepositories()); scanner.setEnvironment(environment); scanner.setResourceLoader(loader); getExcludeFilters().forEach(it -> scanner.addExcludeFilter(it)); return Streamable.of(() -> getBasePackages().stream()// .flatMap(it -> scanner.findCandidateComponents(it).stream())); }