equal
deleted
inserted
replaced
274 x.close(); |
274 x.close(); |
275 } |
275 } |
276 } |
276 } |
277 |
277 |
278 static class CustomPolicy extends Policy { |
278 static class CustomPolicy extends Policy { |
|
279 static final Policy DEFAULT_POLICY = Policy.getPolicy(); |
279 final PermissionCollection perms = new Permissions(); |
280 final PermissionCollection perms = new Permissions(); |
|
281 |
280 CustomPolicy(Permission... permissions) { |
282 CustomPolicy(Permission... permissions) { |
281 java.util.Arrays.stream(permissions).forEach(perms::add); |
283 java.util.Arrays.stream(permissions).forEach(perms::add); |
282 |
284 |
283 // needed for the HTTP(S) server |
285 // needed for the HTTP(S) server |
284 InetAddress loopback = InetAddress.getLoopbackAddress(); |
286 InetAddress loopback = InetAddress.getLoopbackAddress(); |
299 public PermissionCollection getPermissions(CodeSource codesource) { |
301 public PermissionCollection getPermissions(CodeSource codesource) { |
300 return perms; |
302 return perms; |
301 } |
303 } |
302 |
304 |
303 public boolean implies(ProtectionDomain domain, Permission perm) { |
305 public boolean implies(ProtectionDomain domain, Permission perm) { |
304 return perms.implies(perm); |
306 return perms.implies(perm) || DEFAULT_POLICY.implies(domain, perm); |
305 } |
307 } |
306 } |
308 } |
307 } |
309 } |