Skip to content

Commit

Permalink
QoL
Browse files Browse the repository at this point in the history
  • Loading branch information
bencegelei committed Jan 17, 2025
1 parent f6f6baa commit 700e6e4
Showing 1 changed file with 3 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@
import java.util.function.BiConsumer;
import java.util.function.BiFunction;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;

Expand Down Expand Up @@ -174,7 +173,7 @@ private boolean haveDefaultsAnyOf(final Collection<EClass> classes, final Collec
.filter(t -> t instanceof EClass).map(t -> (EClass) t))
.filter(eClass -> eClass.isPresent())
.flatMap(eClass -> eClass.get().getEAllStructuralFeatures().stream())
.anyMatch(c -> AsmUtils.getExtensionAnnotationByName(c, "default", false).isPresent())) {;
.anyMatch(c -> AsmUtils.getExtensionAnnotationByName(c, "default", false).isPresent())) {
return true;
}
checked.addAll(classes);
Expand Down Expand Up @@ -747,7 +746,7 @@ protected void applyDeepDefaultsOf(EClass clazz, Payload payload) {
.processor((_payload, context) -> {
if (!requireNonNullElse(_payload.getAs(Boolean.class, DEFAULT_VALUES_LOADED_KEY), false)
&& !_payload.containsKey(identifierProvider.getName())) {
Payload defaultValues = getDefaultsOf(context.getType()); // TODO: whitelist
Payload defaultValues = readDefaultsOf(context.getType());
for (Map.Entry<String, Object> e : defaultValues.entrySet()) {
// putIfAbsent is intentionally avoided to keep explicitly set null values
if (!_payload.containsKey(e.getKey())) {
Expand All @@ -766,7 +765,7 @@ protected void applyDeepDefaultsOf(EClass clazz, Payload payload) {
protected Collection<Payload> readRangeOf(final EReference reference, final Payload payload, QueryCustomizer<ID> queryCustomizer, boolean stateful) {
final EReference rangeTransferRelation = AsmUtils.getExtensionAnnotationValue(reference, "range", false)
.map(rangeTransferRelationName -> reference.getEContainingClass().getEAllReferences().stream().filter(r -> rangeTransferRelationName.equals(r.getName())).findAny()
.orElseThrow(() -> new IllegalStateException("Refence not found on containing class: " + rangeTransferRelationName)))
.orElseThrow(() -> new IllegalStateException("Reference not found on containing class: " + rangeTransferRelationName)))
.orElseThrow(() -> new IllegalStateException("No range defined"));

ID instanceId = payload != null ? payload.getAs(identifierProvider.getType(), identifierProvider.getName()) : null;
Expand Down

0 comments on commit 700e6e4

Please sign in to comment.