Class ProductManager

java.lang.Object
org.esa.snap.core.datamodel.ProductManager

public class ProductManager extends Object
A type-safe container for elements of the type Product. ProductListeners can be added to inform if a Product was added or removed.
  • Constructor Details

    • ProductManager

      public ProductManager()
      Constructs an product manager with an empty list of products.
  • Method Details

    • getProductCount

      public int getProductCount()
      Returns:
      The number of products in this product manager.
    • getProduct

      public Product getProduct(int index)
      Gets the product at the given index.
      Parameters:
      index - the index
      Returns:
      The product at the given index.
    • getProductDisplayNames

      public String[] getProductDisplayNames()
      Returns the display names of all products currently managed.
      Returns:
      an array containing the display names, never null, but the array can have zero length
      See Also:
    • getProductNames

      public String[] getProductNames()
      Returns the names of all products currently managed.
      Returns:
      an array containing the names, never null, but the array can have zero length
    • getProducts

      public Product[] getProducts()
      Returns an array of all products currently managed.
      Returns:
      an array containing the products, never null, but the array can have zero length
    • getProductByDisplayName

      public Product getProductByDisplayName(String displayName)
      Parameters:
      displayName - The product's display name.
      Returns:
      The product with the given display name.
    • getProductByRefNo

      public Product getProductByRefNo(int refNo)
      Parameters:
      refNo - The reference number.
      Returns:
      The product with the given reference number.
    • getProduct

      public Product getProduct(String name)
      Parameters:
      name - The product name.
      Returns:
      The product with the given name.
    • getProductIndex

      public int getProductIndex(Product product)
    • containsProduct

      public boolean containsProduct(String name)
      Tests whether a product with the given name is contained in this list.
      Parameters:
      name - the product name
      Returns:
      true, if so
    • contains

      public boolean contains(Product product)
      Tests whether the given product is contained in this list.
      Parameters:
      product - The product.
      Returns:
      true if so.
    • addProduct

      public void addProduct(Product product)
      Adds the given product to this product manager if it does not already exists and sets it's reference number one biger than the greatest reference number in this product manager.
      Parameters:
      product - the product to be added, ignored if null
    • removeProduct

      public boolean removeProduct(Product product)
      Removes the given product from this product manager if it exists.
      Parameters:
      product - the product to be removed, ignored if null
      Returns:
      true, if the product was removed
    • removeAllProducts

      public void removeAllProducts()
      Removes all product from this list.
    • addListener

      public boolean addListener(ProductManager.Listener listener)
      Adds a ProductManagerListener to this product manager. The ProductManagerListener is informed each time a product was added or removed.
      Parameters:
      listener - the listener to be added.
      Returns:
      true if the listener was added, otherwise false.
    • removeListener

      public boolean removeListener(ProductManager.Listener listener)
      Removes a ProductManagerListener from this product manager.
      Parameters:
      listener - The listener.
      Returns:
      true, if the listener was removed, otherwise false.