libbluray | branch: master | hpi1 <h...@anonymous.org> | Wed Apr 13 14:32:53 2016 +0300| [8d5b21ff8286b4e6afa2462723b71c5e05b38cd4] | committer: hpi1
org.bluray.ti: improve compatibility > http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=8d5b21ff8286b4e6afa2462723b71c5e05b38cd4 --- .../bdj/java/org/bluray/ti/CodingType.java | 2 ++ .../bdj/java/org/bluray/ti/DiscEjectedEvent.java | 2 -- .../bdj/java/org/bluray/ti/DiscInsertedEvent.java | 2 -- .../bdj/java/org/bluray/ti/DiscManager.java | 21 ++++++++++---------- .../bdj/java/org/bluray/ti/PlayItemImpl.java | 10 +++++----- .../bdj/java/org/bluray/ti/PlayListImpl.java | 8 ++++---- .../bdj/java/org/bluray/ti/TitleComponentImpl.java | 14 ++++++------- .../bdj/java/org/bluray/ti/TitleImpl.java | 15 ++++++++++++++ 8 files changed, 43 insertions(+), 31 deletions(-) diff --git a/src/libbluray/bdj/java/org/bluray/ti/CodingType.java b/src/libbluray/bdj/java/org/bluray/ti/CodingType.java index b6c72b5..d7e24f3 100644 --- a/src/libbluray/bdj/java/org/bluray/ti/CodingType.java +++ b/src/libbluray/bdj/java/org/bluray/ti/CodingType.java @@ -22,6 +22,8 @@ package org.bluray.ti; public class CodingType { protected CodingType(String name) { this.name = name; + if (name == null) + throw new NullPointerException("name is null"); } public String toString() { diff --git a/src/libbluray/bdj/java/org/bluray/ti/DiscEjectedEvent.java b/src/libbluray/bdj/java/org/bluray/ti/DiscEjectedEvent.java index 4ef56f4..9861598 100644 --- a/src/libbluray/bdj/java/org/bluray/ti/DiscEjectedEvent.java +++ b/src/libbluray/bdj/java/org/bluray/ti/DiscEjectedEvent.java @@ -23,6 +23,4 @@ public class DiscEjectedEvent extends DiscStatusEvent { public DiscEjectedEvent(Object source) { super(source); } - - private static final long serialVersionUID = -5165934355777383590L; } diff --git a/src/libbluray/bdj/java/org/bluray/ti/DiscInsertedEvent.java b/src/libbluray/bdj/java/org/bluray/ti/DiscInsertedEvent.java index c4a499c..c9d2fb3 100644 --- a/src/libbluray/bdj/java/org/bluray/ti/DiscInsertedEvent.java +++ b/src/libbluray/bdj/java/org/bluray/ti/DiscInsertedEvent.java @@ -23,6 +23,4 @@ public class DiscInsertedEvent extends DiscStatusEvent { public DiscInsertedEvent(Object source) { super(source); } - - private static final long serialVersionUID = -474637357700362624L; } diff --git a/src/libbluray/bdj/java/org/bluray/ti/DiscManager.java b/src/libbluray/bdj/java/org/bluray/ti/DiscManager.java index 02ea654..a5feddd 100644 --- a/src/libbluray/bdj/java/org/bluray/ti/DiscManager.java +++ b/src/libbluray/bdj/java/org/bluray/ti/DiscManager.java @@ -21,8 +21,11 @@ package org.bluray.ti; import java.util.LinkedList; +import org.videolan.BDJListeners; + public class DiscManager { + private static DiscManager instance; private static final Object instanceLock = new Object(); public static DiscManager getDiscManager() { @@ -38,30 +41,26 @@ public class DiscManager { } public Disc getCurrentDisc() { - return disc; + return new DiscImpl(discId); } public void addDiscStatusEventListener(DiscStatusListener listener) { - synchronized(listeners) { - listeners.add(listener); - } + listeners.add(listener); } public void removeDiscStatusEventListener(DiscStatusListener listener) { - synchronized(listeners) { - listeners.remove(listener); - } + listeners.remove(listener); } + // XXX not allowed to add new public methods -- should be done in Impl class public void setCurrentDisc(String id) { if (org.videolan.BDJXletContext.getCurrentContext() == null) { - disc = new DiscImpl(id); + discId = id; } else { System.err.println("Ignoring disc ID (from Xlet)"); } } - private LinkedList listeners = new LinkedList(); - private static DiscManager instance; - private DiscImpl disc = null; + private BDJListeners listeners = new BDJListeners(); + private String discId = null; } diff --git a/src/libbluray/bdj/java/org/bluray/ti/PlayItemImpl.java b/src/libbluray/bdj/java/org/bluray/ti/PlayItemImpl.java index 3e64e1c..05eda8c 100644 --- a/src/libbluray/bdj/java/org/bluray/ti/PlayItemImpl.java +++ b/src/libbluray/bdj/java/org/bluray/ti/PlayItemImpl.java @@ -51,7 +51,7 @@ public class PlayItemImpl implements PlayItem { public Locator getLocator() { int title = Libbluray.getCurrentTitle(); try { - return new BDLocator("bd://" + title + ".PLAYLIST:" + playlistId + ".ITEM:" + playitemId); + return new BDLocator("bd://" + Integer.toHexString(title) + ".PLAYLIST:" + playlistId + ".ITEM:" + playitemId); } catch (InvalidLocatorException e) { return null; } @@ -95,8 +95,8 @@ public class PlayItemImpl implements PlayItem { return components; } - int playlistId; - int playitemId; - TIClip clip; - Title service; + private int playlistId; + private int playitemId; + private TIClip clip; + private Title service; } diff --git a/src/libbluray/bdj/java/org/bluray/ti/PlayListImpl.java b/src/libbluray/bdj/java/org/bluray/ti/PlayListImpl.java index 8a4359d..1300d25 100644 --- a/src/libbluray/bdj/java/org/bluray/ti/PlayListImpl.java +++ b/src/libbluray/bdj/java/org/bluray/ti/PlayListImpl.java @@ -75,8 +75,8 @@ public class PlayListImpl implements PlayList { return null; } - String filename; - PlaylistInfo playlist; - int id; - Title service; + private String filename; + private PlaylistInfo playlist; + private int id; + private Title service; } diff --git a/src/libbluray/bdj/java/org/bluray/ti/TitleComponentImpl.java b/src/libbluray/bdj/java/org/bluray/ti/TitleComponentImpl.java index 6b28f98..da2c2f7 100644 --- a/src/libbluray/bdj/java/org/bluray/ti/TitleComponentImpl.java +++ b/src/libbluray/bdj/java/org/bluray/ti/TitleComponentImpl.java @@ -111,11 +111,11 @@ public class TitleComponentImpl implements TitleComponent { return stream.getSubPathId(); } - int stream_number; - StreamInfo stream; - StreamType type; - boolean primary; - int playlistId; - int playitemId; - Title service; + private int stream_number; + private StreamInfo stream; + private StreamType type; + private boolean primary; + private int playlistId; + private int playitemId; + private Title service; } diff --git a/src/libbluray/bdj/java/org/bluray/ti/TitleImpl.java b/src/libbluray/bdj/java/org/bluray/ti/TitleImpl.java index a63f2d1..e4f216e 100644 --- a/src/libbluray/bdj/java/org/bluray/ti/TitleImpl.java +++ b/src/libbluray/bdj/java/org/bluray/ti/TitleImpl.java @@ -52,6 +52,12 @@ public class TitleImpl implements Title { } public String getName() { + if (titleNum == 0) + return "Top Menu"; + if (titleNum == 65535) + return "First Playback"; + if (titleNum == 65534) + return "Suspended Title"; return "Title " + titleNum; } @@ -69,6 +75,15 @@ public class TitleImpl implements Title { return TitleType.UNKNOWN; } + public boolean equals(Object obj) { + if (!(obj instanceof TitleImpl)) { + return false; + } + TitleImpl other = (TitleImpl)obj; + int otherNum = other.getTitleNum(); + return otherNum == titleNum; + } + public boolean hasMultipleInstances() { return false; } _______________________________________________ libbluray-devel mailing list libbluray-devel@videolan.org https://mailman.videolan.org/listinfo/libbluray-devel