@@ -426,7 +426,6 @@ public void populateUploadableFlags(CdsReadEventContext context, List<CdsData> d
426426 logger .info (
427427 "populateUploadableFlags: entity={} rows={}" , target .getQualifiedName (), data .size ());
428428
429- // Path 1: target is a parent entity with maxCount compositions — populate virtual fields
430429 List <FacetInfo > facets = findFacetsWithMaxCount (target );
431430 if (!facets .isEmpty ()) {
432431 logger .info (
@@ -499,11 +498,6 @@ public void populateUploadableFlags(CdsReadEventContext context, List<CdsData> d
499498 logger .info (
500499 "populateUploadableFlags Path2: entity={} checking for up_ expansion" ,
501500 target .getQualifiedName ());
502- // Path 2: target is an attachment entity read with $expand=up_
503- // Fiori uses up_.isXxxUploadable (via InsertRestrictions.Insertable) to control the Upload
504- // button. After an attachment delete, Fiori refreshes the attachment list with $expand=up_ —
505- // this handler populates the virtual field on the expanded parent so the button re-enables
506- // immediately without requiring the user to save.
507501 populateUploadableFlagsViaUp (context , target , data );
508502 }
509503
@@ -549,13 +543,13 @@ private void populateUploadableFlagsViaUp(
549543 return ;
550544 }
551545
552- Optional <CdsAnnotation <Object >> maxCountAnno =
546+ Optional <CdsAnnotation <Object >> maxCountAnnotation =
553547 baseParentEntity
554548 .compositions ()
555549 .filter (c -> facetName .equals (c .getName ()))
556550 .findFirst ()
557551 .flatMap (c -> c .findAnnotation (SDMConstants .ATTACHMENT_MAXCOUNT ));
558- if (!maxCountAnno .isPresent ()) {
552+ if (!maxCountAnnotation .isPresent ()) {
559553 logger .info (
560554 "populateUploadableFlagsViaUp: no maxCount for facet={} on entity={}" ,
561555 facetName ,
@@ -565,11 +559,11 @@ private void populateUploadableFlagsViaUp(
565559
566560 long maxCount ;
567561 try {
568- maxCount = Long .parseLong (maxCountAnno . get ().getValue (). toString ( ));
562+ maxCount = Long .parseLong (String . valueOf ( maxCountAnnotation . get ().getValue ()));
569563 } catch (NumberFormatException e ) {
570564 logger .debug (
571565 "populateUploadableFlagsViaUp: invalid maxCount value={} for facet={}" ,
572- maxCountAnno .get ().getValue (),
566+ maxCountAnnotation .get ().getValue (),
573567 facetName );
574568 return ;
575569 }
@@ -631,17 +625,17 @@ private List<FacetInfo> findFacetsWithMaxCount(CdsEntity target) {
631625 composition -> {
632626 String compName = composition .getName ();
633627 logger .debug ("findFacetsWithMaxCount: checking composition={}" , compName );
634- Optional <CdsAnnotation <Object >> maxCountAnno =
628+ Optional <CdsAnnotation <Object >> maxCountAnnotation =
635629 composition .findAnnotation (SDMConstants .ATTACHMENT_MAXCOUNT );
636- if (!maxCountAnno .isPresent ()) {
630+ if (!maxCountAnnotation .isPresent ()) {
637631 logger .debug (
638632 "findFacetsWithMaxCount: no maxCount annotation for composition={}" , compName );
639633 return ;
640634 }
641635
642636 long maxCount ;
643637 try {
644- maxCount = Long .parseLong (maxCountAnno .get ().getValue ().toString ());
638+ maxCount = Long .parseLong (maxCountAnnotation .get ().getValue ().toString ());
645639 } catch (NumberFormatException e ) {
646640 logger .debug (
647641 "findFacetsWithMaxCount: invalid maxCount value for composition={}" , compName );
0 commit comments