Class Supplier

java.lang.Object
org.rexxla.bsf.engines.rexx.Supplier
All Implemented Interfaces:
Enumeration

public class Supplier extends Object implements Enumeration
Class modelled after the ooRexx class "Supplier". Needs the ArrayWrapper class. Allows iterating over an array (regardless of its dimension). In the case an entry of the array is null, that entry is not reflected in the supplier object.
------------------------ Apache Version 2.0 license -------------------------
    Copyright (C) 2001-2021 Rony G. Flatscher

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
 ----------------------------------------------------------------------------- 
Version:
1.06, 20210209
Author:
Rony G. Flatscher (WU-Wien/Wirtschaftsuniversität Wien, http://www.wu-wien.ac.at/english)
  • Field Details

    • version

      public static String version
      Version string indicating version of this class (majorVersion*100+minorVersion concatenated with a dot and the sorted date of last change.
  • Constructor Details

    • Supplier

      public Supplier(Object arrObject, boolean bRexxStyle) throws ClassNotFoundException, org.apache.bsf.BSFException
      Creates an instance of the class using the ArrayWrapper class.
      Parameters:
      arrObject - an array (of any dimension)
      bRexxStyle - true format index-part in Object Rexx style (indexing starts with 1 and multiple indices are delimited with commas), false format index-part in Java style (indexing starts with 0 and multiple indices are delimited by enclosing each index in square brackets)
      Throws:
      ClassNotFoundException
      org.apache.bsf.BSFException
    • Supplier

      public Supplier(Object arrObject) throws ClassNotFoundException, org.apache.bsf.BSFException
      Creates an instance of the class using the ArrayWrapper class. Uses the Java style of indexing for the index part of the supplier object.
      Parameters:
      arrObject - an array (of any dimension)
      Throws:
      ClassNotFoundException
      org.apache.bsf.BSFException
    • Supplier

      public Supplier(Object[] values, Object[] indices)
      Creates an instance of the class.
      Parameters:
      values - a single-dimensioned array containing the values (items)
      indices - a single-dimensioned array containing the indices of v
  • Method Details

    • allIndexes

      public Object[] allIndexes()
      Returns single dimensioned (Java) array object containing the remaining indexes. Like in ooRexx 3.2.0 the array will only contain all elements starting from the current pointed to element on (i.e., index/item pairs already processed will not show up in the returned array object). The supplier object itself is considered to be exhausted from this time on, such that available() will return
      false
      .
      Returns:
      single dimensioned array object containing the remaining indexes.
    • allItems

      public Object[] allItems()
      Returns single dimensioned (Java) array object containing the remaining items. Like in ooRexx 3.2.0 the array will only contain all elements starting from the current pointed to element on (i.e., index/item pairs already processed will not show up in the returned array object). The supplier object itself is considered to be exhausted from this time on, such that available() will return
      false
      .
      Returns:
      single dimensioned array object containing the remaining items.
    • available

      public boolean available()
      Tests whether an index/value pair is available.
      Returns:
      true, if an index/value pair is available, false else.
    • next

      public void next()
      Move to the next item/value pair, if any.
    • item

      public Object item()
      Returns the item (value) part of the supplier object.
      Returns:
      the item (value) part of the supplier object
    • index

      public Object index()
      Returns the index part of the supplier object.
      Returns:
      the index part of the supplier object
    • supplier

      public Supplier supplier()
      Returns the Supplier object itself.
      Returns:
      this Supplier object
    • hasMoreElements

      public boolean hasMoreElements()
      Implements the interface java.util.Enumeration.hasMoreElements().
      Specified by:
      hasMoreElements in interface Enumeration
    • nextElement

      public Object nextElement() throws NoSuchElementException
      Implements the interface java.util.Enumeration.nextElement().
      Specified by:
      nextElement in interface Enumeration
      Throws:
      NoSuchElementException - raised, if using the Enumerator interface and moving beyond the end of the supplier object.