Class LongValueExtractor

java.lang.Object
microsim.reflection.LongValueExtractor

public class LongValueExtractor extends Object
Not of interest for users. It uses java reflection to call objects' methods which return double values. It is used by Statistics objects.

Title: JAS

Description: Java Agent-based Simulation library

Copyright (C) 2002 Michele Sonnessa

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
Author:
Michele Sonnessa
  • Field Details

    • method

      protected Method method
    • field

      protected Field field
    • target

      protected Object target
  • Constructor Details

    • LongValueExtractor

      public LongValueExtractor(Object target, 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.
    • LongValueExtractor

      public LongValueExtractor(Class<?> target, 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.
  • Method Details

    • getLong

      public long getLong(Object target)
      Invoke the method of the target object and return its double result.
      Parameters:
      target - Object to be invoked.
      Returns:
      The requested double value.
    • getLong

      public long getLong()
      Invoke the method of the object passed to constructor and return its double result.
      Returns:
      The requested double value.
    • getLongValue

      public long getLongValue(int valueID)
      This is an implementation of the IDblSource interface. It calls the getDouble() method.
      Parameters:
      valueID - This parameter is ignored. It is put for compatibility with the IDblSource interface.
      Returns:
      The requested double value.