You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by pa...@apache.org on 2021/12/02 14:37:59 UTC

[felix-dev] branch master updated: FELIX-3351: allow permissions with only a name (patch provided by Bob Ziuchkovski)

This is an automated email from the ASF dual-hosted git repository.

pauls pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/felix-dev.git


The following commit(s) were added to refs/heads/master by this push:
     new d464194  FELIX-3351: allow permissions with only a name (patch provided by Bob Ziuchkovski)
d464194 is described below

commit d46419409c792ca997c1d02d82b6046d75e4644c
Author: Karl Pauls <ka...@gmail.com>
AuthorDate: Thu Dec 2 15:37:49 2021 +0100

    FELIX-3351: allow permissions with only a name (patch provided by Bob Ziuchkovski)
---
 .../felix/framework/security/util/Permissions.java       | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/framework.security/src/main/java/org/apache/felix/framework/security/util/Permissions.java b/framework.security/src/main/java/org/apache/felix/framework/security/util/Permissions.java
index 801182e..2e8ec42 100644
--- a/framework.security/src/main/java/org/apache/felix/framework/security/util/Permissions.java
+++ b/framework.security/src/main/java/org/apache/felix/framework/security/util/Permissions.java
@@ -609,9 +609,19 @@ public final class Permissions
         // target + "\n\n");
         try
         {
-            return (Permission) m_action.getConstructor(target,
-                new Class[] { String.class, String.class }).newInstance(
-                new Object[] { name, action });
+            try
+            {
+                return (Permission) m_action.getConstructor(target,
+                    new Class[] { String.class, String.class }).newInstance(
+                    new Object[] { name, action });
+            }
+            // Fall-back to action-less constructor
+            catch (NoSuchMethodException ex)
+            {
+                return (Permission) m_action.getConstructor(target,
+                    new Class[] { String.class }).newInstance(
+                    new Object[] { name });
+            }
         }
         catch (Exception ex)
         {