Class IntegerInvoker

java.lang.Object
microsim.statistics.reflectors.IntegerInvoker
All Implemented Interfaces:
IntSource

public class IntegerInvoker extends Object implements IntSource
Employs Java reflection to call objects' methods which return integer values.
  • Field Details

    • method

      protected Method method
    • field

      protected Field field
    • target

      protected Object target
  • Constructor Details

    • IntegerInvoker

      public IntegerInvoker(@NonNull @NonNull Object target, @NonNull @NonNull String fieldName, boolean isMethod)
      Constructor.
      Parameters:
      target - It is the target object.
      fieldName - A string representing the name of the method to invoke.
      isMethod - If true the fieldName is a method, otherwise it is a property of the object.
      Throws:
      NullPointerException - when any of the input parameters is null.
    • IntegerInvoker

      public IntegerInvoker(@NonNull @NonNull Class<?> target, @NonNull @NonNull String fieldName, boolean isMethod)
      Constructor.
      Parameters:
      target - It is the class of the target object.
      fieldName - A string representing the name of the method to invoke.
      isMethod - If true the fieldName is a method, otherwise it is a property of the object.
      Throws:
      NullPointerException - when any of the input parameters is null.
  • Method Details

    • getInt

      public int getInt(@NonNull @NonNull Object target)
      Invokes the method of the target object and return its double result.
      Parameters:
      target - Object to be invoked.
      Returns:
      The requested double value.
      Throws:
      NullPointerException - when target is null.
    • getInt

      public int getInt()
      Invokes the method of the object passed to constructor and return its double result.
      Returns:
      The requested double value.
    • getIntValue

      public int getIntValue(@Nullable @Nullable Enum<?> valueID)
      This is an implementation of the IntSource interface. It calls the getInt(Object) method.
      Specified by:
      getIntValue in interface IntSource
      Parameters:
      valueID - This parameter is ignored. It is put for compatibility with the IntSource interface.
      Returns:
      The requested double value.