Class FieldIntrospector

  • All Implemented Interfaces:
    Introspector

    public class FieldIntrospector
    extends Object
    implements Introspector
    The IntrospectionField introspector provides a field manipulation implementation of the introspection interfaces. Its behavior adheres to the following:
    • Properties are discovered by searching for an object's fields (visibility neutral)
    • Property value are manipulated by setting field values (visibility neutral)

    Copyright (c) 2002-2023 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. See for project information https://simulation.tudelft.nl. The DSOL project is distributed under a three-clause BSD-style license, which can be found at https://https://simulation.tudelft.nl/dsol/docs/latest/license.html.

    Since:
    1.5
    Author:
    Peter Jacobs , Alexander Verbraeck, Niels Lang.
    • Constructor Detail

      • FieldIntrospector

        public FieldIntrospector()
        constructs a new FieldIntrospector.
      • FieldIntrospector

        public FieldIntrospector​(boolean useDeepIntrospection)
        constructs a new FieldIntrospector.
        Parameters:
        useDeepIntrospection - boolean; whether to use deep introspection
    • Method Detail

      • getProperties

        public Property[] getProperties​(Object introspectedObject)
        Specified by:
        getProperties in interface Introspector
        Parameters:
        introspectedObject - Object; the introspected object
        Returns:
        Retrieves properties of the introspected object. The properties' values can themselves be introspectable. An empty array is returned if no introspected object has been set.
      • getProperty

        public Property getProperty​(Object introspectedObject,
                                    String property)
        Retrieves the {see Property}with a given name from an introspected object.
        Specified by:
        getProperty in interface Introspector
        Parameters:
        introspectedObject - Object; The introspected object.
        property - String; The name of the property to be retrieved
        Returns:
        A {see Property}instance for the given object and property name.
      • getPropertyNames

        public String[] getPropertyNames​(Object introspectedObject)
        Retrieves the names of the properties of the introspected object.
        Specified by:
        getPropertyNames in interface Introspector
        Parameters:
        introspectedObject - Object; The introspected object.
        Returns:
        An unordered array of the introspected object's property names.