public class PluginManagerImpl extends Object implements PluginManager
SEARCHER_TYPE_BOOLEAN, SEARCHER_TYPE_EXACTLY, SEARCHER_TYPE_KEYWORD, SEARCHER_TYPE_REGULAR_EXPRESSION
Modifier and Type | Method and Description |
---|---|
JPopupMenu |
createPluginContextMenu(Program program,
ContextMenuIf caller)
Creates a context menu for the given program containing all plugins.
|
ProgramSearcher |
createProgramSearcher(int type,
String searchTerm,
boolean caseSensitive)
Creates a ProgramSearcher.
|
PluginAccess |
getActivatedPluginForId(String pluginId)
Gets the activated plugin with the given ID.
|
PluginAccess[] |
getActivatedPlugins()
Returns all activated Plugins.
|
ProgramRatingIf[] |
getAllProgramRatingIfs()
Gets all ProgramRatingIfs of all plugins.
|
ProgramFilter[] |
getAvailableFilters()
Returns an array of all available filters.
|
AbstractPluginProgramFormating[] |
getAvailableGlobalPuginProgramFormatings()
Gets the available global program configurations.
|
Iterator<Program> |
getChannelDayProgram(Date date,
Channel channel)
Gets an iterator through all programs of the specified channel at the
specified date.
|
Date |
getCurrentDate()
Get the date currently shown in the program table.
|
TvDataService |
getDataService(String dataServiceClassName)
Deprecated.
|
TvDataServiceProxy |
getDataServiceProxy(String id) |
PluginAccess |
getDefaultContextMenuPlugin()
Gets the plugin that is used as default in the context menu.
|
Program |
getExampleProgram()
Returns an example program.
|
FilterManager |
getFilterManager()
Returns the filter manager of TV-Browser.
|
ImageIcon |
getIconFromTheme(Plugin plugin,
String category,
String iconName,
int size)
Returns an icon from the icon-theme-system
If your plugin has icons that are not available as icons within an theme, you can add
your icons into your jar-file.
|
ImageIcon |
getIconFromTheme(Plugin plugin,
ThemeIcon icon)
Returns an Icon from the Icon-Theme-System
If your Plugin has Icons that are not available as Icons within an Theme, you can add
your Icons into your Jar-File.
|
Plugin[] |
getInstalledPlugins()
Deprecated.
Since 1.1. Use
getActivatedPlugins() instead. |
static PluginManager |
getInstance()
Returns the instance of this class, if
there is no instance it is created first.
|
String |
getJavaPluginId(Plugin javaPlugin)
Gets the ID of the given Java plugin.
|
Program[] |
getMarkedPrograms()
Return all marked programs.
|
Program |
getProgram(Date date,
String progID)
Gets a program.
|
ProgramReceiveIf |
getReceiceIfForId(String id)
Return the ReceiveIfFor given id or
null if there is
no ReceiveIf for the given id. |
ProgramReceiveIf[] |
getReceiveIfs()
Return all Plugins/Functions that are able to receive programs.
|
ProgramReceiveIf[] |
getReceiveIfs(ProgramReceiveIf caller,
ProgramReceiveTarget callerTarget)
Return all Plugins/Functions that are able to receive programs.
|
Channel[] |
getSubscribedChannels()
Gets all channels the user has subscribed.
|
TvBrowserSettings |
getTvBrowserSettings()
Returns some settings a plugin may need.
|
void |
goToDate(Date date)
Let TV-Browser change the date to the given date.
|
void |
handleProgramDoubleClick(Program program)
Handles a double click on a program.
|
void |
handleProgramDoubleClick(Program program,
ContextMenuIf caller)
Handles a double click on a program.
|
void |
handleProgramMiddleClick(Program program)
Handles a middle click on a program.
|
void |
handleProgramMiddleClick(Program program,
ContextMenuIf caller)
Handles a middle click on a program.
|
void |
handleProgramSingleClick(Program program)
Handles a single left click on a program.
|
void |
handleProgramSingleClick(Program program,
ContextMenuIf caller)
Handles a single left click on a program.
|
protected void |
handleTvBrowserStartFinished() |
void |
scrollToChannel(Channel channel)
Let TV-Browser scroll to the given channel.
|
void |
scrollToProgram(Program program)
Let TV-Browser scroll to the given program.
|
void |
scrollToTime(int time)
Let TV-Browser scroll to the given time.
|
Program[] |
search(String regex,
boolean inTitle,
boolean inText,
boolean caseSensitive,
Channel[] channels,
Date startDate,
int nrDays)
Deprecated.
Use
createProgramSearcher(int, String, boolean)
instead. |
Program[] |
search(String regex,
boolean caseSensitive,
ProgramFieldType[] fieldArr,
Date startDate,
int nrDays,
Channel[] channels,
boolean sortByStartTime)
Deprecated.
Since 1.1. Use
createProgramSearcher(int, String, boolean)
instead. |
void |
showSettings(Plugin plugin)
Show the Settings-Dialog for a Plugin
|
void |
showSettings(String settingsItem)
Show the Settings-Dialog with a Specific SettingsItem
|
public static PluginManager getInstance()
public Program getProgram(Date date, String progID)
getProgram
in interface PluginManager
date
- The date when the program is shown.progID
- The ID of the program.null
if there is no such program.public Channel[] getSubscribedChannels()
getSubscribedChannels
in interface PluginManager
public Iterator<Program> getChannelDayProgram(Date date, Channel channel)
getChannelDayProgram
in interface PluginManager
date
- The date of the programs.channel
- The channel of the programs.null
if the requested data is not available.public Program[] search(String regex, boolean inTitle, boolean inText, boolean caseSensitive, Channel[] channels, Date startDate, int nrDays) throws TvBrowserException
createProgramSearcher(int, String, boolean)
instead.search
in interface PluginManager
regex
- The regular expression programs must match to.inTitle
- Should be searched in the title?inText
- Should be searched in the desription?caseSensitive
- Should the search be case sensitive?channels
- The channels to search in.startDate
- The date to start the search.nrDays
- The number of days to include after the start date. If
negative the days before the start date are used.TvBrowserException
- If there is a syntax error in the regular expression.public Program[] search(String regex, boolean caseSensitive, ProgramFieldType[] fieldArr, Date startDate, int nrDays, Channel[] channels, boolean sortByStartTime) throws TvBrowserException
createProgramSearcher(int, String, boolean)
instead.search
in interface PluginManager
regex
- The regular expression programs must match to.caseSensitive
- Should the search be case sensitive?fieldArr
- The fields to search instartDate
- The date to start the search.nrDays
- The number of days to include after the start date. If
negative the days before the start date are used.channels
- The channels to search in.sortByStartTime
- Should the results be sorted by the start time?
If not, the results will be grouped by date and channel and the
search will be faster.TvBrowserException
- If there is a syntax error in the regular expression.public ProgramSearcher createProgramSearcher(int type, String searchTerm, boolean caseSensitive) throws TvBrowserException
createProgramSearcher
in interface PluginManager
type
- The searcher type to create. Must be one of
PluginManager.SEARCHER_TYPE_EXACTLY
, PluginManager.SEARCHER_TYPE_KEYWORD
,
PluginManager.SEARCHER_TYPE_REGULAR_EXPRESSION
or
PluginManager.SEARCHER_TYPE_BOOLEAN
.searchTerm
- The search term the searcher should look for.caseSensitive
- Specifies whether the searcher should be case sensitive.TvBrowserException
- If creating the program searcher failed.public PluginAccess[] getActivatedPlugins()
getActivatedPlugins
in interface PluginManager
public String getJavaPluginId(Plugin javaPlugin)
getJavaPluginId
in interface PluginManager
javaPlugin
- The Java plugin to get the ID for.public PluginAccess getActivatedPluginForId(String pluginId)
getActivatedPluginForId
in interface PluginManager
pluginId
- The ID of the wanted plugin.null
if no such plugin
exists or if the plugin is not activated.public Plugin[] getInstalledPlugins()
getActivatedPlugins()
instead.
This method always returns an empty array! Use
getActivatedPlugins()
instead!
getInstalledPlugins
in interface PluginManager
public TvDataService getDataService(String dataServiceClassName)
getDataService
in interface PluginManager
dataServiceClassName
- the class name of the wanted TvDataService.null
if there is no such
TvDataService.public TvDataServiceProxy getDataServiceProxy(String id)
getDataServiceProxy
in interface PluginManager
public JPopupMenu createPluginContextMenu(Program program, ContextMenuIf caller)
createPluginContextMenu
in interface PluginManager
program
- The program to create the context menu forcaller
- The calling plugin.public ProgramFilter[] getAvailableFilters()
getAvailableFilters
in interface PluginManager
FilterManager.getAvailableFilters()
instead.public Program getExampleProgram()
getExampleProgram
in interface PluginManager
public void handleProgramSingleClick(Program program)
PluginManager
Executes the single left click context menu function. Plugins should use handleProgramDoubleClick(Program program, Plugin caller). It prevents the Plugin to be activated a second time.
handleProgramSingleClick
in interface PluginManager
program
- The program to pass to the single left click context menu function.public void handleProgramSingleClick(Program program, ContextMenuIf caller)
PluginManager
Executes the default context menu plugin.
handleProgramSingleClick
in interface PluginManager
program
- The program to pass to the default context menu function.caller
- The ContextMenuIf that calls this. Prevents the ContextMenuIf
to be activated twicepublic void handleProgramDoubleClick(Program program)
Executes the default context menu plugin. Plugins should use handleProgramDoubleClick(Program program, Plugin caller). It prevetns the Plugin to be activated a second time.
handleProgramDoubleClick
in interface PluginManager
program
- The program to pass to the default context menu plugin.public void handleProgramDoubleClick(Program program, ContextMenuIf caller)
Executes the default context menu plugin.
handleProgramDoubleClick
in interface PluginManager
program
- The program to pass to the default context menu plugin.caller
- ContextMenuIf that calls this. Prevents the ContextMenuIf to be activated twicepublic void handleProgramMiddleClick(Program program)
Executes the middle click context menu plugin. Plugins should use handleProgramMiddleClick(Program program, Plugin caller). It prevents the Plugin to be activated a second time.
handleProgramMiddleClick
in interface PluginManager
program
- The program to pass to the middle click context menu plugin.public void handleProgramMiddleClick(Program program, ContextMenuIf caller)
Executes the middle click context menu plugin.
handleProgramMiddleClick
in interface PluginManager
program
- The program to pass to the middle click context menu plugin.caller
- ContextMenuIf that calls this. Prevents the ContextMenuIf to be activated twice.public PluginAccess getDefaultContextMenuPlugin()
public TvBrowserSettings getTvBrowserSettings()
getTvBrowserSettings
in interface PluginManager
public ImageIcon getIconFromTheme(Plugin plugin, String category, String iconName, int size)
getIconFromTheme
in interface PluginManager
plugin
- Plugin that wants to load an iconcategory
- Category of the icon (action, etc...)iconName
- icon name without file extensionsize
- Size of the iconnull
if notpublic ImageIcon getIconFromTheme(Plugin plugin, ThemeIcon icon)
getIconFromTheme
in interface PluginManager
plugin
- Plugin that wants to load an Iconicon
- ThemeIcon that represents the Iconpublic void showSettings(Plugin plugin)
showSettings
in interface PluginManager
plugin
- Use this Pluginpublic void showSettings(String settingsItem)
showSettings
in interface PluginManager
settingsItem
- SettingsItem to show (e.g. SettingsItem.CHANNELS)public Program[] getMarkedPrograms()
getMarkedPrograms
in interface PluginManager
public ProgramReceiveIf[] getReceiveIfs()
getReceiveIfs
in interface PluginManager
public ProgramReceiveIf[] getReceiveIfs(ProgramReceiveIf caller, ProgramReceiveTarget callerTarget)
getReceiveIfs
in interface PluginManager
caller
- The caller ProgramReceiveIf.callerTarget
- The target that calls the receive if array.public ProgramReceiveIf getReceiceIfForId(String id)
null
if there is
no ReceiveIf for the given id.getReceiceIfForId
in interface PluginManager
id
- The id of the ReceiveIf.null
public void scrollToProgram(Program program)
scrollToProgram
in interface PluginManager
program
- The program to scroll to.public void scrollToTime(int time)
scrollToTime
in interface PluginManager
time
- The time to scroll to in minutes after midnight.public void scrollToChannel(Channel channel)
scrollToChannel
in interface PluginManager
channel
- The channel to scroll to.public void goToDate(Date date)
goToDate
in interface PluginManager
date
- The date to show the program for.public FilterManager getFilterManager()
getFilterManager
in interface PluginManager
null
if TV-Browser isn't fully loaded.protected void handleTvBrowserStartFinished()
public AbstractPluginProgramFormating[] getAvailableGlobalPuginProgramFormatings()
getAvailableGlobalPuginProgramFormatings
in interface PluginManager
public Date getCurrentDate()
PluginManager
getCurrentDate
in interface PluginManager
public ProgramRatingIf[] getAllProgramRatingIfs()
getAllProgramRatingIfs
in interface PluginManager
TV-Browser 2.7.6, Copyright (C) 04-2003 Martin Oberhauser (martin@tvbrowser.org)