[libbluray-devel] javax.tv.service: fix permission objects
hpi1
git at videolan.org
Wed Apr 13 11:14:27 CEST 2016
libbluray | branch: master | hpi1 <hpi1 at anonymous.org> | Wed Apr 13 12:07:04 2016 +0300| [58223b2a6513e6e780eb75780baae91bc6fa2bc0] | committer: hpi1
javax.tv.service: fix permission objects
> http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=58223b2a6513e6e780eb75780baae91bc6fa2bc0
---
.../bdj/java/javax/tv/service/ReadPermission.java | 32 ++++++++++-------
.../tv/service/selection/SelectPermission.java | 38 ++++++++------------
.../selection/ServiceContextPermission.java | 25 ++++++-------
3 files changed, 44 insertions(+), 51 deletions(-)
diff --git a/src/libbluray/bdj/java/javax/tv/service/ReadPermission.java b/src/libbluray/bdj/java/javax/tv/service/ReadPermission.java
index fba3340..3066da4 100644
--- a/src/libbluray/bdj/java/javax/tv/service/ReadPermission.java
+++ b/src/libbluray/bdj/java/javax/tv/service/ReadPermission.java
@@ -25,35 +25,41 @@ import java.io.Serializable;
public final class ReadPermission extends Permission implements Serializable {
public ReadPermission(Locator locator) {
- super(locator.toExternalForm());
+ super(locator == null ? "*" : locator.toExternalForm());
- this.locator = locator.toExternalForm();
+ if (locator == null)
+ this.locator = "*";
+ else
+ this.locator = locator.toExternalForm();
}
public ReadPermission(String locator, String actions) {
- super(null);
+ super(locator == null ? "*" : locator);
+
+ if (locator == null)
+ throw new NullPointerException();
this.locator = locator;
}
public boolean implies(Permission perm) {
- return (perm instanceof ReadPermission) && (this.equals(perm) || this.equals("*"));
+ if (perm == null)
+ throw new NullPointerException();
+ if (!(perm instanceof ReadPermission))
+ return false;
+
+ ReadPermission other = (ReadPermission)perm;
+ return locator.equals(other.locator) || locator.equals("*");
}
public boolean equals(Object obj) {
- if (obj == null)
- return false;
if (this == obj)
return true;
- if (getClass() != obj.getClass())
+ if (!(obj instanceof ReadPermission))
return false;
+
ReadPermission other = (ReadPermission) obj;
- if (locator == null) {
- if (other.locator != null)
- return false;
- } else if (!locator.equals(other.locator))
- return false;
- return true;
+ return locator.equals(other.locator);
}
public int hashCode() {
diff --git a/src/libbluray/bdj/java/javax/tv/service/selection/SelectPermission.java b/src/libbluray/bdj/java/javax/tv/service/selection/SelectPermission.java
index a6c29a9..9127a0b 100644
--- a/src/libbluray/bdj/java/javax/tv/service/selection/SelectPermission.java
+++ b/src/libbluray/bdj/java/javax/tv/service/selection/SelectPermission.java
@@ -25,33 +25,34 @@ import java.io.Serializable;
public final class SelectPermission extends Permission implements Serializable {
public SelectPermission(Locator locator, String actions) {
- super(locator.toExternalForm());
+ super(locator == null ? "*" : locator.toExternalForm());
- if (!actions.equals("own") && !actions.equals("*"))
- throw new IllegalArgumentException();
+ if (actions == null)
+ throw new NullPointerException();
- this.locator = locator.toExternalForm();
+ this.locator = locator == null ? "*" : locator.toExternalForm();
this.actions = actions;
}
public SelectPermission(String locator, String actions) {
- super(locator);
+ super(locator == null ? "*" : locator);
- if (!actions.equals("own") && !actions.equals("*"))
- throw new IllegalArgumentException();
+ if (actions == null)
+ throw new NullPointerException();
- this.locator = locator;
+ this.locator = locator == null ? "*" : locator;
this.actions = actions;
}
public boolean implies(Permission perm) {
if (!(perm instanceof SelectPermission))
return false;
- if (!perm.getActions().equals(actions) && !actions.equals("*"))
- return false;
SelectPermission sperm = (SelectPermission) perm;
+ if (!sperm.actions.equals(actions) && !actions.equals("*"))
+ return false;
+
if (!sperm.locator.equals(locator) && !locator.equals("*"))
return false;
@@ -59,22 +60,13 @@ public final class SelectPermission extends Permission implements Serializable {
}
public boolean equals(Object obj) {
- if (obj == null)
- return false;
- if (this == obj)
- return true;
- if (getClass() != obj.getClass())
+ if (!(obj instanceof SelectPermission))
return false;
+
SelectPermission other = (SelectPermission) obj;
- if (actions == null) {
- if (other.actions != null)
- return false;
- } else if (!actions.equals(other.actions))
+ if (!actions.equals(other.actions))
return false;
- if (locator == null) {
- if (other.locator != null)
- return false;
- } else if (!locator.equals(other.locator))
+ if (!locator.equals(other.locator))
return false;
return true;
}
diff --git a/src/libbluray/bdj/java/javax/tv/service/selection/ServiceContextPermission.java b/src/libbluray/bdj/java/javax/tv/service/selection/ServiceContextPermission.java
index 551920d..2c37eac 100644
--- a/src/libbluray/bdj/java/javax/tv/service/selection/ServiceContextPermission.java
+++ b/src/libbluray/bdj/java/javax/tv/service/selection/ServiceContextPermission.java
@@ -26,18 +26,23 @@ public final class ServiceContextPermission extends BasicPermission {
public ServiceContextPermission(String name, String actions) {
super(name);
+ if (name == null || actions == null)
+ throw new NullPointerException();
+
this.name = name;
this.actions = actions;
}
public boolean implies(Permission perm) {
+ if (perm == null)
+ throw new NullPointerException();
if (!(perm instanceof ServiceContextPermission))
return false;
- if (!perm.getActions().equals(actions) && !actions.equals("*"))
- return false;
ServiceContextPermission scperm = (ServiceContextPermission) perm;
+ if (!scperm.actions.equals(actions) && !actions.equals("*"))
+ return false;
if (!scperm.name.equals(name) && !name.equals("*"))
return false;
@@ -45,22 +50,12 @@ public final class ServiceContextPermission extends BasicPermission {
}
public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (!super.equals(obj))
- return false;
- if (getClass() != obj.getClass())
+ if (!(obj instanceof ServiceContextPermission))
return false;
ServiceContextPermission other = (ServiceContextPermission) obj;
- if (actions == null) {
- if (other.actions != null)
- return false;
- } else if (!actions.equals(other.actions))
+ if (!actions.equals(other.actions))
return false;
- if (name == null) {
- if (other.name != null)
- return false;
- } else if (!name.equals(other.name))
+ if (!name.equals(other.name))
return false;
return true;
}
More information about the libbluray-devel
mailing list