Repository: wicket Updated Branches: refs/heads/pr-86-media_tags 2daff3da3 -> 9d5daccdb
WICKET-5819 Tracks enum uppercased, startbyte / endbyte refactoring Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/9d5daccd Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/9d5daccd Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/9d5daccd Branch: refs/heads/pr-86-media_tags Commit: 9d5daccdb1386c91b5d0316b911957873a36bbfd Parents: 2daff3d Author: klopfdreh <[email protected]> Authored: Tue Feb 24 21:21:53 2015 +0100 Committer: klopfdreh <[email protected]> Committed: Tue Feb 24 21:21:53 2015 +0100 ---------------------------------------------------------------------- .../media/MediaStreamingResourceReference.java | 40 +++++------------ .../apache/wicket/markup/html/media/Track.java | 46 +++++++++++++------- .../html/media/MediaTagsExtendedTestPage.java | 2 +- 3 files changed, 43 insertions(+), 45 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/9d5daccd/wicket-core/src/main/java/org/apache/wicket/markup/html/media/MediaStreamingResourceReference.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/media/MediaStreamingResourceReference.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/media/MediaStreamingResourceReference.java index bdaf5e6..03903df 100755 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/media/MediaStreamingResourceReference.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/media/MediaStreamingResourceReference.java @@ -127,34 +127,18 @@ public class MediaStreamingResourceReference extends PackageResourceReference String range = rangeHeader.substring(rangeHeader.indexOf('=') + 1, rangeHeader.length()); String[] rangeParts = Strings.split(range, '-'); - if ("0".equals(rangeParts[0])) - { - webResponse.setHeader("Content-Range", "bytes 0-" + (length - 1) + "/" + - length); - resourceResponse.setContentLength(length); - } - else - { - startbyte = Long.parseLong(rangeParts[0]); - if (rangeParts.length == 2) - { - if (!"".equals(rangeParts[1].trim())) - { - endbyte = Long.parseLong(rangeParts[1]); - } - else - { - endbyte = length - 1; - } - } - else - { - endbyte = length - 1; - } - webResponse.setHeader("Content-Range", "bytes " + startbyte + '-' + - endbyte + '/' + length); - resourceResponse.setContentLength((endbyte - startbyte) + 1); - } + + String startByteString = rangeParts[0]; + String endByteString = rangeParts[1]; + + startbyte = startByteString != null && !startByteString.trim().equals("") + ? Long.parseLong(startByteString) : 0; + endbyte = endByteString != null && !endByteString.trim().equals("") + ? Long.parseLong(endByteString) : length - 1; + + webResponse.setHeader("Content-Range", "bytes " + startbyte + '-' + + endbyte + '/' + length); + resourceResponse.setContentLength((endbyte - startbyte) + 1); } // Apply the writer callback to send the requested part to the client http://git-wip-us.apache.org/repos/asf/wicket/blob/9d5daccd/wicket-core/src/main/java/org/apache/wicket/markup/html/media/Track.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/media/Track.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/media/Track.java index 1dc5b52..cef3914 100755 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/media/Track.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/media/Track.java @@ -35,6 +35,27 @@ public class Track extends WebMarkupContainer { private static final long serialVersionUID = 1L; + /** + * To be used for the kind attribute + */ + public enum Kind + { + SUBTITLES("subtitles"), CAPTIONS("captions"), DESCRIPTIONS("descriptions"), CHAPTERS( + "chapters"), METADATA("metadata"); + + private String realName; + + Kind(String realName) + { + this.realName = realName; + } + + public String getRealName() + { + return realName; + } + } + private Kind kind; private String label; @@ -90,7 +111,8 @@ public class Track extends WebMarkupContainer this(id, model, url, null, null); } - private Track(String id, IModel<?> model, String url, PageParameters pageParameters, ResourceReference resourceReference) + private Track(String id, IModel<?> model, String url, PageParameters pageParameters, + ResourceReference resourceReference) { super(id, model); this.url = url; @@ -116,7 +138,7 @@ public class Track extends WebMarkupContainer Kind _kind = getKind(); if (_kind != null) { - tag.put("kind", _kind.name()); + tag.put("kind", _kind.getRealName()); } String _label = getLabel(); @@ -159,28 +181,28 @@ public class Track extends WebMarkupContainer /** * Sets the kind of the track belongs to the media component<br> * <br> - * <b>subtitles</b>: Transcription or translation of the dialogue, suitable for when the sound + * <b>SUBTITLES</b>: Transcription or translation of the dialogue, suitable for when the sound * is available but not understood (e.g. because the user does not understand the language of * the media resource's soundtrack). Displayed over the video.<br> * <br> - * <b>captions</b>: Transcription or translation of the dialogue, sound effects, relevant + * <b>CAPTIONS</b>: Transcription or translation of the dialogue, sound effects, relevant * musical cues, and other relevant audio information, suitable for when the soundtrack is * unavailable (e.g. because it is muted or because the user is deaf). Displayed over the video; * labeled as appropriate for the hard-of-hearing.<br> * <br> - * <b>descriptions</b>: Textual descriptions of the video component of the media resource, + * <b>DESCRIPTIONS</b>: Textual descriptions of the video component of the media resource, * intended for audio synthesis when the visual component is unavailable (e.g. because the user * is interacting with the application without a screen while driving, or because the user is * blind). Synthesized as separate audio track.<br> * <br> - * <b>chapters</b>: Chapter titles, intended to be used for navigating the media resource. + * <b>CHAPTERS</b>: Chapter titles, intended to be used for navigating the media resource. * Displayed as an interactive list in the user agent's interface.<br> * <br> - * <b>metadata</b>: Tracks intended for use from script. Not displayed by the user agent.<br> + * <b>METADATA</b>: Tracks intended for use from script. Not displayed by the user agent.<br> * <br> * * @param kind - * the kind + * the kind */ public void setKind(Kind kind) { @@ -249,12 +271,4 @@ public class Track extends WebMarkupContainer { this.srclang = srclang; } - - /** - * To be used for the kind attribute - */ - public enum Kind - { - subtitles, captions, descriptions, chapters, metadata - } } http://git-wip-us.apache.org/repos/asf/wicket/blob/9d5daccd/wicket-core/src/test/java/org/apache/wicket/markup/html/media/MediaTagsExtendedTestPage.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/media/MediaTagsExtendedTestPage.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/media/MediaTagsExtendedTestPage.java index b21b4bb..d530894 100644 --- a/wicket-core/src/test/java/org/apache/wicket/markup/html/media/MediaTagsExtendedTestPage.java +++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/media/MediaTagsExtendedTestPage.java @@ -41,7 +41,7 @@ public class MediaTagsExtendedTestPage extends WebPage // tack tag Track track = new Track("track", new PackageResourceReference(MediaTagsTestPage.class,"dummySubtitles.vtt")); - track.setKind(Kind.subtitles); + track.setKind(Kind.SUBTITLES); track.setLabel("Subtitles of video"); track.setSrclang(Locale.GERMANY); track.setDefaultTrack(true);
