[rfc][icedtea-web][policyeditor] CustomPermission no-actions constructor
Jiri Vanek
jvanek at redhat.com
Thu Jun 19 13:30:03 UTC 2014
On 06/16/2014 11:09 PM, Andrew Azores wrote:
> Hi,
>
> This patch very simply adds a new constructor to model CustomPermissions which do not have any
> actions, rather than forcing no-actions permissions to be instantiated by passing an empty string
> for the actions argument.
>
Well if this serves you...
few minors. Can go in with those fixed.
> diff --git a/netx/net/sourceforge/jnlp/security/policyeditor/CustomPermission.java b/netx/net/sourceforge/jnlp/security/policyeditor/CustomPermission.java
> --- a/netx/net/sourceforge/jnlp/security/policyeditor/CustomPermission.java
> +++ b/netx/net/sourceforge/jnlp/security/policyeditor/CustomPermission.java
> @@ -61,6 +61,16 @@
> public final String type, target, actions;
>
> /**
> + * Constructor for custom basic permissions (ie those without actions)
Please mention that its behaviour si same as this(type, target, "");
> + * @param type eg java.io.FilePermission
> + * @param target eg ${user.home}${/}*
> + */
> + public CustomPermission(final String type, final String target) {
> + this(type, target, "");
> + }
> +
> + /**
> + * Constructor for custom permissions with actions
> * @param type eg java.io.FilePermission
> * @param target eg ${user.home}${/}*
> * @param actions eg read,write
> diff --git a/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/CustomPermissionTest.java b/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/CustomPermissionTest.java
> --- a/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/CustomPermissionTest.java
> +++ b/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/CustomPermissionTest.java
> @@ -117,7 +117,7 @@
>
> @Test
> public void testToStringWithoutActions() throws Exception {
> - final CustomPermission cp = new CustomPermission("java.lang.RuntimePermission", "createClassLoader", "");
Please do not remove this test. This constructor is stil valid
> + final CustomPermission cp = new CustomPermission("java.lang.RuntimePermission", "createClassLoader");
add test with this new constructor.
> final String expected = "permission java.lang.RuntimePermission \"createClassLoader\";";
> assertEquals(expected, cp.toString());
> }
> @@ -126,7 +126,7 @@
> public void testCompareTo() throws Exception {
> final CustomPermission cp1 = new CustomPermission("java.io.FilePermission", "*", "read");
> final CustomPermission cp2 = new CustomPermission("java.io.FilePermission", "${user.home}${/}*", "read");
> - final CustomPermission cp3 = new CustomPermission("java.lang.RuntimePermission", "queuePrintJob", "");
> + final CustomPermission cp3 = new CustomPermission("java.lang.RuntimePermission", "queuePrintJob");
same here
> assertTrue("cp1.compareTo(cp2) should be > 0", cp1.compareTo(cp2) > 0);
> assertTrue("cp1.compareTo(cp1) should be 0", cp1.compareTo(cp1) == 0);
> assertTrue("cp2.compareTo(cp3) should be < 0", cp2.compareTo(cp3) < 0);
> diff --git a/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/CustomPolicyViewerTest.java b/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/CustomPolicyViewerTest.java
> --- a/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/CustomPolicyViewerTest.java
> +++ b/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/CustomPolicyViewerTest.java
> @@ -55,7 +55,7 @@
>
> private CustomPolicyViewer viewer;
> private static final String CODEBASE ="http://example.com";
> - private static final CustomPermission PERMISSION = new CustomPermission("java.lang.RuntimePermission", "createClassLoader", "");
> + private static final CustomPermission PERMISSION = new CustomPermission("java.lang.RuntimePermission", "createClassLoader");
and here
>
> @Before
> public void setupViewer() {
> diff --git a/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEditorTest.java b/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEditorTest.java
> --- a/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEditorTest.java
> +++ b/tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEditorTest.java
> @@ -143,7 +143,7 @@
> @Test
> public void testAddCustomPermission() throws Exception {
> final String codebase ="http://example.com";
> - final CustomPermission customPermission = new CustomPermission("java.lang.RuntimePermission", "createClassLoader", "");
> + final CustomPermission customPermission = new CustomPermission("java.lang.RuntimePermission", "createClassLoader");
and here
> editor.addCustomPermission(codebase, customPermission);
> assertTrue(editor.getCustomPermissions(codebase).contains(customPermission));
> }
> @@ -151,7 +151,7 @@
> @Test
> public void testClearCustomPermissions() throws Exception {
> final String codebase ="http://example.com";
> - final CustomPermission customPermission = new CustomPermission("java.lang.RuntimePermission", "createClassLoader", "");
> + final CustomPermission customPermission = new CustomPermission("java.lang.RuntimePermission", "createClassLoader");
and here
> editor.addCustomPermission(codebase, customPermission);
> assertTrue(editor.getCustomPermissions(codebase).contains(customPermission));
> editor.clearCustomPermissions(codebase);
> @@ -251,4 +251,4 @@
> map.get("-codebase").equals("http://example.com http://icedtea.classpath.org"));
> }
>
> -}
> \ No newline at end of file
> +}
>
ty!
J.
More information about the distro-pkg-dev
mailing list