devplugin

## Class ProgramReceiveTarget

- java.lang.Object
- - devplugin.ProgramReceiveTarget

- All Implemented Interfaces:
    java.lang.Comparable<ProgramReceiveTarget>

      public final class ProgramReceiveTarget
      extends java.lang.Object
      implements java.lang.Comparable<ProgramReceiveTarget>

  Is a target for receiving of program from other plugins.
  If your plugin should be able to receive programs from other plugins and handle those programs in a specific way you have to create ProgramReceiveTargets for the plugin.
  To do this use the constructor `public ProgramReceiveTarget(ProgramReceiveIf receiveIf, String name, String targetId)` . The `receiveIf` is you Plugin, the `name` is the name the user will be see for selection of the target and the `targetId` is a unique id which is used for identifying the target.
  If your plugin only supports one target simply don't override the method `getProgramReceiveTargets()`.
  If you want to compare two targets always use the equals method.
  Example:
  Plugin name MyPlugin.
  MyPlugin is a plugin which want to receive programs for two types of targets. One target will be used to show the received programs in a dialog window, the other target will be used to mark the programs for the plugin.
  MyPlugin overrides the methods used for identifying it as a receiveable plugin:
  `public boolean canReceiveProgramsWithTarget() {
  return true;
  }
  public boolean receivePrograms(Program[] programArr, ProgramReceiveTarget receiveTarget) {
  ProgramReceiveTarget[] targets = getSupportedTargets();
  if(targets[0].equals(receiveTarget)
  showProgramsInDialog(programArr);
  else if (targets[1].equals(receiveTarget)
  for(Program p : programArr)
  p.mark(this);
  }
  public ProgramReceiveTarget[] getProgramReceiveTargets() {
  return getSupportedTargets();
  }`
  The method `getSupportedTargets()` looks like this:
  `private ProgramReceiveTarget[] getSupportedTargets() {
  ProgramReceiveTarget target1 = new ProgramReceiveTarget(this,"Show programs in dialog","showDialog");
  ProgramReceiveTarget target2 = new ProgramReceiveTarget(this,"Mark programs for MyPlugin","markPrograms");
  return new ProgramReceiveTarget[] {target1,target2};
  }`
  With this code the plugin MyPlugin is able to receive the programs from other plugins and handle it in the specified manner.
  Since:
    2.5
  Author:
    René Mach

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ProgramReceiveTarget(java.io.ObjectInputStream in)` Creates an instance of the ProgramReceiveTarget.
    `ProgramReceiveTarget(ProgramReceiveIf receiveIf, java.lang.String name, java.lang.String targetId)` Creates an instance of the ProgramReceiveTarget.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `compareTo(ProgramReceiveTarget other)`
    `static ProgramReceiveTarget[]` | `createDefaultTargetArrayForProgramReceiveIf(ProgramReceiveIf receiveIf)` Creates the default target for a ProgramReceiveIf.
    `static ProgramReceiveTarget` | `createDefaultTargetForProgramReceiveIfId(java.lang.String receiveIfId)` Creates the default target for an id of a ProgramReceiveIf.
    `boolean` | `equals(java.lang.Object o)`
    `ProgramReceiveIf` | `getReceifeIfForIdOfTarget()`
    `java.lang.String` | `getReceiveIfId()`
    `java.lang.String` | `getTargetId()`
    `java.lang.String` | `getTargetName()` get the target name (for display)
    `int` | `hashCode()`
    `static boolean` | `isDefaultProgramReceiveTargetForProgramReceiveIf(ProgramReceiveIf receiveIf, ProgramReceiveTarget receiveTarget)` Checks if the given target is the default target for the given ProgramReceiveIf.
    `boolean` | `isReceiveTargetWithIdOfProgramReceiveIf(ProgramReceiveIf receiveIf, java.lang.String id)` Checks if the given id is used by this instance of ProgramReceiveTarget and contains to the given ProgramReceiveIf.
    `void` | `receivePrograms(Program[] programs)` Send the programs to the receive target
    `java.lang.String` | `toString()`
    `void` | `writeData(java.io.ObjectOutputStream out)` Use this to save a target.

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ProgramReceiveTarget

          public ProgramReceiveTarget(ProgramReceiveIf receiveIf,
                              java.lang.String name,
                              java.lang.String targetId)

      Creates an instance of the ProgramReceiveTarget. Use this to create a target from the plugin for the other plugins to read.
      Parameters:
        `receiveIf` - The ProgramReceiveIf (your Plugin) to create for.
        `name` - The name of the target.
        `targetId` - The unique id of the target.

    - #### ProgramReceiveTarget

          public ProgramReceiveTarget(java.io.ObjectInputStream in)
                               throws java.io.IOException,
                                      java.lang.ClassNotFoundException

      Creates an instance of the ProgramReceiveTarget. Use this to load an target previously saved with `writeData(ObjectOutputStream)`.
      Parameters:
        `in` - The input stream.
      Throws:
        `java.io.IOException`
        `java.lang.ClassNotFoundException`

  - ### Method Detail

    - #### createDefaultTargetArrayForProgramReceiveIf

          public static ProgramReceiveTarget[] createDefaultTargetArrayForProgramReceiveIf(ProgramReceiveIf receiveIf)

      Creates the default target for a ProgramReceiveIf.
      Parameters:
        `receiveIf` - The ProgramReceiveIf to create the null target for.
      Returns:
        The default target for ProgramReceiveIf.

    - #### createDefaultTargetForProgramReceiveIfId

          public static ProgramReceiveTarget createDefaultTargetForProgramReceiveIfId(java.lang.String receiveIfId)

      Creates the default target for an id of a ProgramReceiveIf.
      Parameters:
        `receiveIfId` - The id of the ProgramReceiveIf to create for.
      Returns:
        The default target for the id of the ProgramReceiveIf.

    - #### writeData

          public void writeData(java.io.ObjectOutputStream out)
                         throws java.io.IOException

      Use this to save a target.
      Parameters:
        `out` -
      Throws:
        `java.io.IOException`

    - #### getTargetName

          public java.lang.String getTargetName()

      get the target name (for display)
      Returns:
        target name
      Since:
        3.0

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### getReceiveIfId

          public java.lang.String getReceiveIfId()

      Returns:
        The id of the ProgramReceiveIf of this target.

    - #### getTargetId

          public java.lang.String getTargetId()

      Returns:
        The id of this target.

    - #### equals

          public boolean equals(java.lang.Object o)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### getReceifeIfForIdOfTarget

          public ProgramReceiveIf getReceifeIfForIdOfTarget()

      Returns:
        The ProgramReceiveIf for the ProgramReceiveIfId of this target.

    - #### isDefaultProgramReceiveTargetForProgramReceiveIf

          public static boolean isDefaultProgramReceiveTargetForProgramReceiveIf(ProgramReceiveIf receiveIf,
                                                                 ProgramReceiveTarget receiveTarget)

      Checks if the given target is the default target for the given ProgramReceiveIf.
      Parameters:
        `receiveIf` - The ProgramReceiveIf to check.
        `receiveTarget` - The ProgramReceiveTarget to check.
      Returns:
        True if the receiveTarget is the default ProgramReceiveTarget for the ProgramReceiveIf.

    - #### isReceiveTargetWithIdOfProgramReceiveIf

          public boolean isReceiveTargetWithIdOfProgramReceiveIf(ProgramReceiveIf receiveIf,
                                                        java.lang.String id)

      Checks if the given id is used by this instance of ProgramReceiveTarget and contains to the given ProgramReceiveIf.
      Parameters:
        `id` - The id to check.
        `receiveIf` - The receive if to which the ProgramReceiveTarget is connected.
      Returns:
        True if this instance is using the id and contains to the given ProgramReceiveIf.

    - #### compareTo

          public int compareTo(ProgramReceiveTarget other)

      Specified by:
        `compareTo` in interface `java.lang.Comparable<ProgramReceiveTarget>`

    - #### receivePrograms

          public void receivePrograms(Program[] programs)

      Send the programs to the receive target
      Parameters:
        `programs` - programs to send
      Since:
        3.0

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