TV-Browser 3.3.3 API

tvbrowser.core.plugin
Class AbstractPluginProxy

java.lang.Object
  extended by tvbrowser.core.plugin.AbstractPluginProxy
All Implemented Interfaces:
ContextMenuIf, InfoIf, Marker, PluginAccess, ProgramReceiveIf, java.lang.Comparable<ProgramReceiveIf>, ButtonActionIf, PluginProxy
Direct Known Subclasses:
BeanShellPluginProxy, JavaPluginProxy

public abstract class AbstractPluginProxy
extends java.lang.Object
implements PluginProxy, ContextMenuIf

An abstract implementation of a plugin proxy. Encapsulates all calls to the plugin.

This means that

Author:
Til Schneider, www.murfman.de

Nested Class Summary
 
Nested classes/interfaces inherited from interface tvbrowser.core.plugin.PluginProxy
PluginProxy.Comparator
 
Field Summary
static java.lang.String DEFAULT_PLUGIN_ICON_NAME
           
protected static Localizer mLocalizer
          The localizer for this class.
 
Fields inherited from interface devplugin.ContextMenuIf
ACTIONKEY_KEYBOARD_EVENT
 
Constructor Summary
protected AbstractPluginProxy()
           
 
Method Summary
 void addToArtificialPluginTree(MutableProgram program)
           
protected  void assertActivatedState()
          Checks whether the plugin is activated.
 boolean canReceiveProgramsWithTarget()
          Gets whether the plugin supports receiving programs from other plugins with target.
 boolean canUseProgramTree()
           
 int compareTo(ProgramReceiveIf other)
           
protected abstract  boolean doCanReceiveProgramsWithTarget()
          Really gets whether the plugin supports receiving programs from other plugins with target.
protected abstract  boolean doCanUseProgramTree()
           
protected abstract  PluginsProgramFilter[] doGetAvailableFilter()
          Really returns the available program filters that the plugin supports.
protected abstract  java.lang.Class<? extends PluginsFilterComponent>[] doGetAvailableFilterComponentClasses()
          Really gets the available filter component classes.
protected abstract  ActionMenu doGetButtonAction()
          Really gets the action to use for the main menu and the toolbar.
protected abstract  ActionMenu doGetContextMenuActions(Channel channel)
          Really gets the actions for the context menu of a channel.
protected abstract  ActionMenu doGetContextMenuActions(Program program)
          Really gets the actions for the context menu of a program.
protected abstract  ImportanceValue doGetImportanceValueForProgram(Program p)
          Gets the importance value of a program.The importance of all active plugins is used to determinate the opacity of the used colors of a program, therefor a mean value of all values is used.
protected abstract  PluginInfo doGetInfo()
          Really gets the meta information about the plugin.
protected abstract  javax.swing.Icon[] doGetMarkIcons(Program p)
          Really gets the icon to use for marking programs in the program table.
protected abstract  int doGetMarkPriorityForProgram(Program p)
          Really gets the mark priority for the given Program.
protected abstract  ProgramReceiveTarget[] doGetProgramReceiveTargets()
          Really return an array of receive target or null if there is no target
protected abstract  javax.swing.Icon[] doGetProgramTableIcons(Program program)
          Really gets the icons this Plugin provides for the given program.
protected abstract  java.lang.String doGetProgramTableIconText()
          Gets the description text for the program table icons provided by this Plugin.
protected abstract  SettingsTabProxy doGetSettingsTab()
          Rally gets the SettingsTab object, which is added to the settings-window.
protected abstract  void doHandleTvBrowserStartFinished()
           
protected abstract  void doHandleTvDataAdded(ChannelDayProgram newProg)
          This method is automatically called, when TV data was added.
protected abstract  void doHandleTvDataAdded(MutableChannelDayProgram newProg)
          This method is automatically called, when TV data was added.
protected abstract  void doHandleTvDataDeleted(ChannelDayProgram oldProg)
          This method is automatically called, when TV data was deleted.
protected abstract  void doHandleTvDataTouched(ChannelDayProgram removedDayProgram, ChannelDayProgram addedDayProgram)
          This method is automatically called, when TV data was touched.
protected abstract  void doHandleTvDataUpdateFinished()
          This method is automatically called, when the TV data update is finished.
protected abstract  boolean doIsAllowedToDeleteProgramFilter(PluginsProgramFilter programFilter)
          Really return if a program filter can be deleted.
protected abstract  void doLoadSettings(java.io.File userDirectory)
          Really loads the settings for this plugin.
protected abstract  void doOnActivation()
           
protected abstract  void doOnDeactivation()
           
protected abstract  boolean doReceivePrograms(Program[] programArr, ProgramReceiveTarget receiveTarget)
          Really receives a list of programs from another plugin with target.
protected abstract  boolean doReceiveValues(java.lang.String[] values, ProgramReceiveTarget receiveTarget)
          Really receives a list of Strings from another plugin with a target.
protected abstract  void doSaveSettings(java.io.File userDirectory, boolean log)
          Really saves the settings for this plugin.
 PluginTreeNode getArtificialRootNode()
           
 PluginsProgramFilter[] getAvailableFilter()
          Returns the available program filters that the plugin supports.
 java.lang.Class<? extends PluginsFilterComponent>[] getAvailableFilterComponentClasses()
          Returns the available plugins filter component classes.
 ActionMenu getButtonAction()
          Gets the action to use for the main menu and the toolbar.
 ActionMenu getContextMenuActions(Channel channel)
          Gets the actions for the context menu of a channel.
 ActionMenu getContextMenuActions(Program program)
          Gets the actions for the context menu of a program.
 ImportanceValue getImportanceValueForProgram(Program p)
          Gets the importance value of a program.The importance of all active plugins is used to determinate the opacity of the used colors of a program, therefor a mean value of all values is used.
 PluginInfo getInfo()
          Gets the meta information about the plugin.
 javax.swing.Icon getMarkIcon()
          Gets the icon to use for marking programs in the program table.
 javax.swing.Icon[] getMarkIcons(Program p)
          Gets the icons to use for marking programs in the program table.
 int getMarkPriorityForProgram(Program p)
          Gets the mark priority for the given program that this Plugin uses.
 javax.swing.Icon getPluginIcon()
          get the icon to represent this plugin in the settings
 ProgramReceiveTarget[] getProgramReceiveTargets()
          Returns an array of receive target or null if there is no target
 javax.swing.Icon[] getProgramTableIcons(Program program)
          Gets the icons this Plugin provides for the given program.
 java.lang.String getProgramTableIconText()
          Gets the description text for the program table icons provided by this Plugin.
 SettingsTabProxy getSettingsTab()
          Gets the SettingsTab object, which is added to the settings-window.
 void handlePluginException(java.lang.Throwable t)
          Handles a runtime exception that was caused by the plugin.
 void handleTvBrowserStartFinished()
          This method is called when the TV-Browser start is complete.
 void handleTvDataAdded(ChannelDayProgram newProg)
          This method is automatically called, when TV data was added.
 void handleTvDataAdded(MutableChannelDayProgram newProg)
          This method is automatically called, when TV data was added.
 void handleTvDataDeleted(ChannelDayProgram oldProg)
          This method is automatically called, when TV data was deleted.
 void handleTvDataTouched(ChannelDayProgram removedDayProgram, ChannelDayProgram addedDayProgram)
          This method is automatically called, when TV data was touched (that means something was done with it).
 void handleTvDataUpdateFinished()
          This method is automatically called, when the TV data update is finished.
 boolean hasArtificialPluginTree()
           
 boolean isActivated()
          Gets whether the plugin is currently activated.
 boolean isAllowedToDeleteProgramFilter(PluginsProgramFilter programFilter)
          Is used to track if a program filter be deleted.
(package private)  void loadSettings(java.io.File userDirectory)
          Loads the settings for this plugin.
 void onActivation()
          This method is automatically called after activating the plugin (either during the TV-Browser startup phase or after manually activating the disabled plugin in the settings).
 void onDeactivation()
          This method is automatically called after deactivating the plugin.
 boolean receivePrograms(Program[] programArr, ProgramReceiveTarget receiveTarget)
          Receives a list of programs from another plugin with a target.
 boolean receiveValues(java.lang.String[] values, ProgramReceiveTarget receiveTarget)
          Receives a list of Strings from another plugin with a target.
 void removeArtificialPluginTree()
           
(package private)  void saveSettings(java.io.File userDirectory, boolean log)
          Saves the settings for this plugin.
(package private)  void setActivated(boolean activated)
          Sets whether the plugin is currently activated.
(package private) abstract  void setParentFrame(java.awt.Frame parent)
          Sets the parent frame to the plugin.
 java.lang.String toString()
          Gets the name of the plugin.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface tvbrowser.core.plugin.PluginProxy
getAfterDataUpdateInfoPanel, getPluginCenterPanelWrapper, getPluginFileName, getProgramRatingIfs, getRootNode, handleTvBrowserSettingsChanged, handleTvDataUpdateStarted
 
Methods inherited from interface devplugin.PluginAccess
getId
 
Methods inherited from interface tvbrowser.core.plugin.ButtonActionIf
getButtonActionDescription
 
Methods inherited from interface devplugin.InfoIf
getId, getPluginCategory
 

Field Detail

DEFAULT_PLUGIN_ICON_NAME

public static final java.lang.String DEFAULT_PLUGIN_ICON_NAME
See Also:
Constant Field Values

mLocalizer

protected static final Localizer mLocalizer
The localizer for this class.

Constructor Detail

AbstractPluginProxy

protected AbstractPluginProxy()
Method Detail

isActivated

public final boolean isActivated()
Gets whether the plugin is currently activated.

Specified by:
isActivated in interface PluginProxy
Returns:
whether the plugin is currently activated.
See Also:
setActivated(boolean), assertActivatedState()

setActivated

final void setActivated(boolean activated)
Sets whether the plugin is currently activated.

This method may only be called by the PluginProxyManager (that's why it is package private).

Parameters:
activated - Whether the plugin is currently activated.
See Also:
isActivated(), assertActivatedState()

setParentFrame

abstract void setParentFrame(java.awt.Frame parent)
Sets the parent frame to the plugin.

Parameters:
parent - The parent frame to set.

loadSettings

final void loadSettings(java.io.File userDirectory)
                 throws TvBrowserException
Loads the settings for this plugin.

Parameters:
userDirectory - The directory where the user data is stored.
Throws:
TvBrowserException - If loading failed.

doLoadSettings

protected abstract void doLoadSettings(java.io.File userDirectory)
                                throws TvBrowserException
Really loads the settings for this plugin.

Parameters:
userDirectory - The directory where the user data is stored.
Throws:
TvBrowserException - If loading failed.

saveSettings

final void saveSettings(java.io.File userDirectory,
                        boolean log)
                 throws TvBrowserException
Saves the settings for this plugin.

Parameters:
userDirectory - The directory where the user data is stored.
Throws:
TvBrowserException - If saving failed.

doSaveSettings

protected abstract void doSaveSettings(java.io.File userDirectory,
                                       boolean log)
                                throws TvBrowserException
Really saves the settings for this plugin.

Parameters:
userDirectory - The directory where the user data is stored.
Throws:
TvBrowserException - If saving failed.

getInfo

public final PluginInfo getInfo()
Gets the meta information about the plugin.

Specified by:
getInfo in interface InfoIf
Specified by:
getInfo in interface PluginAccess
Returns:
The meta information about the plugin.

doGetInfo

protected abstract PluginInfo doGetInfo()
Really gets the meta information about the plugin.

Returns:
The meta information about the plugin.

getSettingsTab

public final SettingsTabProxy getSettingsTab()
Gets the SettingsTab object, which is added to the settings-window.

Specified by:
getSettingsTab in interface PluginProxy
Returns:
the SettingsTab object or null if the plugin does not provide this feature.

doGetSettingsTab

protected abstract SettingsTabProxy doGetSettingsTab()
Rally gets the SettingsTab object, which is added to the settings-window.

Returns:
the SettingsTab object or null if the plugin does not provide this feature.

getContextMenuActions

public final ActionMenu getContextMenuActions(Program program)
Gets the actions for the context menu of a program.

Specified by:
getContextMenuActions in interface ContextMenuIf
Parameters:
program - The program the context menu will be shown for.
Returns:
the actions this plugin provides for the given program or null if the plugin does not provide this feature.

doGetContextMenuActions

protected abstract ActionMenu doGetContextMenuActions(Program program)
Really gets the actions for the context menu of a program.

Parameters:
program - The program the context menu will be shown for.
Returns:
the actions this plugin provides for the given program or null if the plugin does not provide this feature.
See Also:
getContextMenuActions(Program)

getContextMenuActions

public final ActionMenu getContextMenuActions(Channel channel)
Gets the actions for the context menu of a channel.

Specified by:
getContextMenuActions in interface PluginProxy
Parameters:
channel - The channel the context menu will be shown for.
Returns:
the actions this plugin provides for the given channel or null if the plugin does not provide this feature.

doGetContextMenuActions

protected abstract ActionMenu doGetContextMenuActions(Channel channel)
Really gets the actions for the context menu of a channel.

Parameters:
channel - The channel the context menu will be shown for.
Returns:
the actions this plugin provides for the given channel or null if the plugin does not provide this feature.
See Also:
getContextMenuActions(Program)

getButtonAction

public final ActionMenu getButtonAction()
Gets the action to use for the main menu and the toolbar.

Specified by:
getButtonAction in interface ButtonActionIf
Specified by:
getButtonAction in interface PluginProxy
Returns:
the action to use for the menu and the toolbar or null if the plugin does not provide this feature.

doGetButtonAction

protected abstract ActionMenu doGetButtonAction()
Really gets the action to use for the main menu and the toolbar.

Returns:
the action to use for the menu and the toolbar or null if the plugin does not provide this feature.
See Also:
getButtonAction()

getMarkIcons

public javax.swing.Icon[] getMarkIcons(Program p)
Gets the icons to use for marking programs in the program table.

Specified by:
getMarkIcons in interface Marker
Specified by:
getMarkIcons in interface PluginAccess
Returns:
the icons to use for marking programs in the program table.

getMarkIcon

public javax.swing.Icon getMarkIcon()
Gets the icon to use for marking programs in the program table.

Specified by:
getMarkIcon in interface Marker
Specified by:
getMarkIcon in interface PluginAccess
Returns:
the icon to use for marking programs in the program table.

doGetMarkIcons

protected abstract javax.swing.Icon[] doGetMarkIcons(Program p)
Really gets the icon to use for marking programs in the program table.

Returns:
the icon to use for marking programs in the program table.

getProgramTableIconText

public final java.lang.String getProgramTableIconText()
Gets the description text for the program table icons provided by this Plugin.

Return null if your plugin does not provide this feature.

Specified by:
getProgramTableIconText in interface PluginAccess
Returns:
The description text for the program table icons or null if the plugin does not provide this feature.
See Also:
getProgramTableIcons(Program)

doGetProgramTableIconText

protected abstract java.lang.String doGetProgramTableIconText()
Gets the description text for the program table icons provided by this Plugin.

Return null if your plugin does not provide this feature.

Returns:
The description text for the program table icons or null if the plugin does not provide this feature.
See Also:
getProgramTableIcons(Program)

getProgramTableIcons

public final javax.swing.Icon[] getProgramTableIcons(Program program)
Gets the icons this Plugin provides for the given program. These icons will be shown in the program table under the start time.

Return null if your plugin does not provide this feature.

Specified by:
getProgramTableIcons in interface PluginAccess
Parameters:
program - The programs to get the icons for.
Returns:
The icons for the given program or null.
See Also:
getProgramTableIconText()

doGetProgramTableIcons

protected abstract javax.swing.Icon[] doGetProgramTableIcons(Program program)
Really gets the icons this Plugin provides for the given program. These icons will be shown in the program table under the start time.

Return null if your plugin does not provide this feature.

Parameters:
program - The programs to get the icons for.
Returns:
The icons for the given program or null.
See Also:
getProgramTableIconText()

handleTvDataUpdateFinished

public final void handleTvDataUpdateFinished()
This method is automatically called, when the TV data update is finished.

Specified by:
handleTvDataUpdateFinished in interface PluginProxy
See Also:
handleTvDataAdded(ChannelDayProgram), handleTvDataDeleted(ChannelDayProgram)

doHandleTvDataUpdateFinished

protected abstract void doHandleTvDataUpdateFinished()
This method is automatically called, when the TV data update is finished.

See Also:
handleTvDataAdded(ChannelDayProgram), handleTvDataDeleted(ChannelDayProgram)

handleTvDataAdded

public void handleTvDataAdded(MutableChannelDayProgram newProg)
This method is automatically called, when TV data was added. (E.g. after an update).

The TV data can be modified by the plugin!

Override this method if you want to change/add data. Don't do other things than changing/adding data, use handleTvDataAdded(ChannelDayProgram) instead.

Parameters:
newProg - The new ChannelDayProgram.
See Also:
handleTvDataDeleted(ChannelDayProgram), handleTvDataTouched(ChannelDayProgram, ChannelDayProgram)

doHandleTvDataAdded

protected abstract void doHandleTvDataAdded(MutableChannelDayProgram newProg)
This method is automatically called, when TV data was added. (E.g. after an update).

The TV data can be modified by the plugin!

Override this method if you want to change/add data. Don't do other things than changing/adding data, use handleTvDataAdded(ChannelDayProgram) instead.

Parameters:
newProg - The new ChannelDayProgram.
See Also:
handleTvDataDeleted(ChannelDayProgram), handleTvDataTouched(ChannelDayProgram, ChannelDayProgram)

handleTvDataAdded

public final void handleTvDataAdded(ChannelDayProgram newProg)
This method is automatically called, when TV data was added. (E.g. after an update).

The TV data may be modified by the plugin! So this method must be called before new TV data is saved.

Specified by:
handleTvDataAdded in interface PluginProxy
Parameters:
newProg - The new ChannelDayProgram.
See Also:
handleTvDataDeleted(ChannelDayProgram), handleTvDataUpdateFinished()

doHandleTvDataAdded

protected abstract void doHandleTvDataAdded(ChannelDayProgram newProg)
This method is automatically called, when TV data was added. (E.g. after an update).

The TV data may be modified by the plugin! So this method must be called before new TV data is saved.

Parameters:
newProg - The new ChannelDayProgram.
See Also:
handleTvDataDeleted(ChannelDayProgram), handleTvDataUpdateFinished()

handleTvDataDeleted

public final void handleTvDataDeleted(ChannelDayProgram oldProg)
This method is automatically called, when TV data was deleted. (E.g. after an update).

Specified by:
handleTvDataDeleted in interface PluginProxy
Parameters:
oldProg - The old ChannelDayProgram which was deleted.
See Also:
handleTvDataAdded(ChannelDayProgram), handleTvDataUpdateFinished()

doHandleTvDataDeleted

protected abstract void doHandleTvDataDeleted(ChannelDayProgram oldProg)
This method is automatically called, when TV data was deleted. (E.g. after an update).

Parameters:
oldProg - The old ChannelDayProgram which was deleted.
See Also:
handleTvDataAdded(ChannelDayProgram), handleTvDataUpdateFinished()

handleTvDataTouched

public final void handleTvDataTouched(ChannelDayProgram removedDayProgram,
                                      ChannelDayProgram addedDayProgram)
This method is automatically called, when TV data was touched (that means something was done with it). (E.g. after an update).

Specified by:
handleTvDataTouched in interface PluginProxy
Parameters:
removedDayProgram - The old ChannelDayProgram.
addedDayProgram - The new ChannelDayProgram.
See Also:
handleTvDataAdded(ChannelDayProgram), handleTvDataDeleted(ChannelDayProgram), handleTvDataUpdateFinished()

doHandleTvDataTouched

protected abstract void doHandleTvDataTouched(ChannelDayProgram removedDayProgram,
                                              ChannelDayProgram addedDayProgram)
This method is automatically called, when TV data was touched. (E.g. after an update of already existing TV data).

The TV data may be modified by the plugin! So this method must be called before new TV data is saved.

Parameters:
removedDayProgram - The previous ChannelDayProgram.
addedDayProgram - The new ChannelDayProgram.
See Also:
handleTvDataAdded(ChannelDayProgram), handleTvDataDeleted(ChannelDayProgram), handleTvDataUpdateFinished()

onActivation

public void onActivation()
Description copied from interface: PluginProxy
This method is automatically called after activating the plugin (either during the TV-Browser startup phase or after manually activating the disabled plugin in the settings).

Specified by:
onActivation in interface PluginProxy

doOnActivation

protected abstract void doOnActivation()

onDeactivation

public void onDeactivation()
Description copied from interface: PluginProxy
This method is automatically called after deactivating the plugin.

Specified by:
onDeactivation in interface PluginProxy

doOnDeactivation

protected abstract void doOnDeactivation()

canUseProgramTree

public boolean canUseProgramTree()
Specified by:
canUseProgramTree in interface PluginProxy
Returns:
true, if the programs of this plugin are handled by the plugin tree view

handleTvBrowserStartFinished

public void handleTvBrowserStartFinished()
This method is called when the TV-Browser start is complete.

Specified by:
handleTvBrowserStartFinished in interface PluginProxy
Since:
2.2

doHandleTvBrowserStartFinished

protected abstract void doHandleTvBrowserStartFinished()

doCanUseProgramTree

protected abstract boolean doCanUseProgramTree()

toString

public final java.lang.String toString()
Gets the name of the plugin.

This way Plugin objects may be used directly in GUI components like JLists.

Overrides:
toString in class java.lang.Object
Returns:
the name of the plugin.

handlePluginException

public void handlePluginException(java.lang.Throwable t)
Handles a runtime exception that was caused by the plugin.

Specified by:
handlePluginException in interface PluginProxy
Parameters:
t - The exception to handle

canReceiveProgramsWithTarget

public final boolean canReceiveProgramsWithTarget()
Gets whether the plugin supports receiving programs from other plugins with target.

Specified by:
canReceiveProgramsWithTarget in interface ProgramReceiveIf
Returns:
Whether the plugin supports receiving programs from other plugins with target.
Since:
2.5
See Also:
receivePrograms(Program[],ProgramReceiveTarget)

doCanReceiveProgramsWithTarget

protected abstract boolean doCanReceiveProgramsWithTarget()
Really gets whether the plugin supports receiving programs from other plugins with target.

Returns:
Whether the plugin supports receiving programs from other plugins with target.
Since:
2.5
See Also:
receivePrograms(Program[],ProgramReceiveTarget)

receivePrograms

public final boolean receivePrograms(Program[] programArr,
                                     ProgramReceiveTarget receiveTarget)
Receives a list of programs from another plugin with a target.

Specified by:
receivePrograms in interface ProgramReceiveIf
Parameters:
programArr - The programs passed from the other plugin.
receiveTarget - The target of the programs.
Returns:
true, if the programs were correctly received and the target really exists.
Since:
2.5
See Also:
canReceiveProgramsWithTarget()

doReceivePrograms

protected abstract boolean doReceivePrograms(Program[] programArr,
                                             ProgramReceiveTarget receiveTarget)
Really receives a list of programs from another plugin with target.

Parameters:
programArr - The programs passed from the other plugin with target.
receiveTarget - The target of the programs.
Since:
2.5
See Also:
canReceiveProgramsWithTarget()

receiveValues

public final boolean receiveValues(java.lang.String[] values,
                                   ProgramReceiveTarget receiveTarget)
Receives a list of Strings from another plugin with a target.

Specified by:
receiveValues in interface ProgramReceiveIf
Parameters:
values - The value array passed from the other plugin.
receiveTarget - The receive target of the programs.
Returns:
true if the value array was handled correct, false otherwise.
Since:
2.7
See Also:
canReceiveProgramsWithTarget()

doReceiveValues

protected abstract boolean doReceiveValues(java.lang.String[] values,
                                           ProgramReceiveTarget receiveTarget)
Really receives a list of Strings from another plugin with a target.

Parameters:
values - The value array passed from the other plugin.
receiveTarget - The receive target of the programs.
Returns:
true if the value array was handled correct, false otherwise.
Since:
2.7
See Also:
canReceiveProgramsWithTarget()

getProgramReceiveTargets

public final ProgramReceiveTarget[] getProgramReceiveTargets()
Returns an array of receive target or null if there is no target

Specified by:
getProgramReceiveTargets in interface ProgramReceiveIf
Returns:
The supported receive targets.
Since:
2.5
See Also:
canReceiveProgramsWithTarget(), receivePrograms(Program[],ProgramReceiveTarget)

doGetProgramReceiveTargets

protected abstract ProgramReceiveTarget[] doGetProgramReceiveTargets()
Really return an array of receive target or null if there is no target

Returns:
The supported receive targets.
Since:
2.5
See Also:
canReceiveProgramsWithTarget(), receivePrograms(Program[],ProgramReceiveTarget)

getAvailableFilter

public PluginsProgramFilter[] getAvailableFilter()
Returns the available program filters that the plugin supports.

Specified by:
getAvailableFilter in interface PluginAccess
Returns:
The available program filters that the plugin supports or null if it supports no filter.
Since:
2.5

doGetAvailableFilter

protected abstract PluginsProgramFilter[] doGetAvailableFilter()
Really returns the available program filters that the plugin supports.

Returns:
The available program filters that the plugin supports or null if it supports no filter.
Since:
2.5

isAllowedToDeleteProgramFilter

public boolean isAllowedToDeleteProgramFilter(PluginsProgramFilter programFilter)
Is used to track if a program filter be deleted. Should be make sure only the plugin itself can delete program filters.

Specified by:
isAllowedToDeleteProgramFilter in interface PluginProxy
Parameters:
programFilter - The program filter to delete.
Returns:
True if the program filter component can be deleted.
Since:
2.5

doIsAllowedToDeleteProgramFilter

protected abstract boolean doIsAllowedToDeleteProgramFilter(PluginsProgramFilter programFilter)
Really return if a program filter can be deleted.

Parameters:
programFilter - The program filter to delete.
Returns:
True if the program filter component can be deleted.
Since:
2.5

getAvailableFilterComponentClasses

public java.lang.Class<? extends PluginsFilterComponent>[] getAvailableFilterComponentClasses()
Returns the available plugins filter component classes.
ATTENTON: Use return (Class[]) new Class[] {MyFilterComponent1.class,MyFilterComponent2.class}; because the creation of a class array with generic type didn't work.

Specified by:
getAvailableFilterComponentClasses in interface PluginAccess
Returns:
The available plugins filter components classes or null if no plugins filter components are supported.
Since:
2.5

doGetAvailableFilterComponentClasses

protected abstract java.lang.Class<? extends PluginsFilterComponent>[] doGetAvailableFilterComponentClasses()
Really gets the available filter component classes.

Returns:
The available plugins filter components classes or null if no plugins filter components are supported.
Since:
2.5

getMarkPriorityForProgram

public int getMarkPriorityForProgram(Program p)
Gets the mark priority for the given program that this Plugin uses.

The mark priority can be Program.NO_MARK_PRIORITY, Program.MIN_MARK_PRIORITY, Program.LOWER_MEDIUM_MARK_PRIORITY, Program.MEDIUM_MARK_PRIORITY, Program.HIGHER_MEDIUM_MARK_PRIORITY or Program.MAX_MARK_PRIORITY.

Specified by:
getMarkPriorityForProgram in interface Marker
Parameters:
p - The program to get the mark prioriy for.
Returns:
The mark priority for the given program for this plugin.
Since:
2.5.1

doGetMarkPriorityForProgram

protected abstract int doGetMarkPriorityForProgram(Program p)
Really gets the mark priority for the given Program.

Parameters:
p - The program to get the mark priority for.
Returns:
The mark priority for the given program.

assertActivatedState

protected void assertActivatedState()
                             throws TvBrowserException
Checks whether the plugin is activated. If it is not an error message is shown.

Throws:
TvBrowserException - If the plugin is not activated

getPluginIcon

public javax.swing.Icon getPluginIcon()
Description copied from interface: PluginProxy
get the icon to represent this plugin in the settings

Specified by:
getPluginIcon in interface PluginProxy
Returns:
icon

hasArtificialPluginTree

public final boolean hasArtificialPluginTree()
Specified by:
hasArtificialPluginTree in interface PluginProxy

addToArtificialPluginTree

public final void addToArtificialPluginTree(MutableProgram program)
Specified by:
addToArtificialPluginTree in interface PluginProxy

getArtificialRootNode

public final PluginTreeNode getArtificialRootNode()
Specified by:
getArtificialRootNode in interface PluginProxy

removeArtificialPluginTree

public final void removeArtificialPluginTree()

compareTo

public int compareTo(ProgramReceiveIf other)
Specified by:
compareTo in interface java.lang.Comparable<ProgramReceiveIf>

getImportanceValueForProgram

public final ImportanceValue getImportanceValueForProgram(Program p)
Gets the importance value of a program.The importance of all active plugins is used to determinate the opacity of the used colors of a program, therefor a mean value of all values is used.

The importance value can be created as a weighted total of the following values.

Specified by:
getImportanceValueForProgram in interface PluginProxy
Parameters:
p - The program to get the importance value for.
Returns:
The importance value for the given program.
Since:
3.0

doGetImportanceValueForProgram

protected abstract ImportanceValue doGetImportanceValueForProgram(Program p)
Gets the importance value of a program.The importance of all active plugins is used to determinate the opacity of the used colors of a program, therefor a mean value of all values is used.

The importance value can be created as a weighted total of the following values.

Parameters:
p - The program to get the importance value for.
Returns:
The importance value for the given program.
Since:
3.0

TV-Browser 3.3.3 API

TV-Browser 3.3.3, Copyright (C) 2004-2008 TV-Browser Team (dev@tvbrowser.org)