modules/media/src/main/java/com/sun/media/jfxmediaimpl/platform/PlatformManager.java
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
--- 1,7 ----
/*
! * Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
*** 164,173 ****
--- 164,192 ----
}
return outTypes;
}
+ public List<String> getSupportedProtocols() {
+ ArrayList<String> outProtocols = new ArrayList<String>();
+
+ if (!platforms.isEmpty()) {
+ for (Platform platty : platforms) {
+ String[] npt = platty.getSupportedProtocols();
+ if (npt != null) {
+ for (String p : npt) {
+ if (!outProtocols.contains(p)) {
+ outProtocols.add(p);
+ }
+ }
+ }
+ }
+ }
+
+ return outProtocols;
+ }
+
public MetadataParser createMetadataParser(Locator source) {
for (Platform platty : platforms) {
MetadataParser parser = platty.createMetadataParser(source);
if (parser != null) {
return parser;
*** 178,190 ****
}
// FIXME: Make Media non-platform specific, it doesn't need to be
public Media createMedia(Locator source) {
String mimeType = source.getContentType();
// go down the list until we get one that can be created
for (Platform platty : platforms) {
! if (platty.canPlayContentType(mimeType)) {
Media outMedia = platty.createMedia(source);
if (null != outMedia) {
return outMedia;
}
}
--- 197,210 ----
}
// FIXME: Make Media non-platform specific, it doesn't need to be
public Media createMedia(Locator source) {
String mimeType = source.getContentType();
+ String protocol = source.getProtocol();
// go down the list until we get one that can be created
for (Platform platty : platforms) {
! if (platty.canPlayContentType(mimeType) && platty.canPlayProtocol(protocol)) {
Media outMedia = platty.createMedia(source);
if (null != outMedia) {
return outMedia;
}
}
*** 193,205 ****
return null;
}
public MediaPlayer createMediaPlayer(Locator source) {
String mimeType = source.getContentType();
// go down the list until we get one that can be created
for (Platform platty : platforms) {
! if (platty.canPlayContentType(mimeType)) {
MediaPlayer outPlayer = platty.createMediaPlayer(source);
if (null != outPlayer) {
return outPlayer;
}
}
--- 213,226 ----
return null;
}
public MediaPlayer createMediaPlayer(Locator source) {
String mimeType = source.getContentType();
+ String protocol = source.getProtocol();
// go down the list until we get one that can be created
for (Platform platty : platforms) {
! if (platty.canPlayContentType(mimeType) && platty.canPlayProtocol(protocol)) {
MediaPlayer outPlayer = platty.createMediaPlayer(source);
if (null != outPlayer) {
return outPlayer;
}
}