public static URL getMediaServerContentURL(DiskManagerFileInfo file) {
//TorrentListViewsUtils.debugDCAD("enter - getMediaServerContentURL");
PluginManager pm = AzureusCoreFactory.getSingleton().getPluginManager();
PluginInterface pi = pm.getPluginInterfaceByID("azupnpav", false);
if (pi == null) {
Logger.log(new LogEvent(LogIDs.UI3, "Media server plugin not found"));
return null;
}
if (!pi.getPluginState().isOperational()) {
Logger.log(new LogEvent(LogIDs.UI3, "Media server plugin not operational"));
return null;
}
try {
Program program = Program.findProgram(".qtl");
boolean hasQuickTime = program == null ? false
: (program.getName().toLowerCase().indexOf("quicktime") != -1);
pi.getIPC().invoke("setQuickTimeAvailable", new Object[] {
new Boolean(hasQuickTime)
});
Object url = pi.getIPC().invoke("getContentURL", new Object[] {
file
});
if (url instanceof String) {
return new URL( (String) url);
}