Skip to content

Commit

Permalink
Mount widget interfaces to admin tool #10701
Browse files Browse the repository at this point in the history
  • Loading branch information
anatol-sialitski committed Sep 26, 2024
1 parent 6a9b846 commit 3840daa
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -96,14 +96,11 @@ private void verifyMounts( final WidgetDescriptor widgetDescriptor, final WebReq
final DescriptorKey toolDescriptorKey =
DescriptorKey.from( resolveApplicationKey( toolMatcher.group( "appKey" ) ), toolMatcher.group( "toolName" ) );
final AdminToolDescriptor adminToolDescriptor = adminToolDescriptorService.getByKey( toolDescriptorKey );
if ( adminToolDescriptor != null && !adminToolDescriptor.getInterfaces().isEmpty() )
if ( adminToolDescriptor != null && !adminToolDescriptor.getInterfaces().isEmpty() &&
widgetDescriptor.getInterfaces().stream().noneMatch( adminToolDescriptor::hasInterface ) )
{
if ( widgetDescriptor.getInterfaces().stream().noneMatch( adminToolDescriptor::hasInterface ) )
{
throw WebException.notFound(
String.format( "Widget [%s] is not mounted to admin tool [%s]", widgetDescriptor.getKey(),
toolDescriptorKey ) );
}
throw WebException.notFound(
String.format( "Widget [%s] is not mounted to admin tool [%s]", widgetDescriptor.getKey(), toolDescriptorKey ) );
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ public void testParseWithInterfaces()
assertEquals( 2, toolDescriptor.getInterfaces().size() );

final Set<String> interfaces = toolDescriptor.getInterfaces();
assertTrue( interfaces.contains( "generic" ) );
assertTrue( interfaces.contains( "admin.dashboard.content-studio" ) );
assertTrue( interfaces.contains( "admin.dashboard" ) );
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<principal>role:system.admin</principal>
</allow>
<interfaces>
<interface>generic</interface>
<interface>admin.dashboard.content-studio</interface>
<interface>admin.dashboard</interface>
</interfaces>
</tool>

0 comments on commit 3840daa

Please sign in to comment.