Package ghidra.util.graph.attributes

# Class AttributeManager<T extends KeyedObject>

java.lang.Object
ghidra.util.graph.attributes.AttributeManager<T>

public class AttributeManager<T extends KeyedObject> extends Object
Class which creates and keeps track of attributes defined for a single KeyIndexableSet.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `DOUBLE_TYPE`
  Use this String as the attributeType to create an DoubleAttribute.
  `static final String`
  `INTEGER_TYPE`
  Use this String as the attributeType to create an IntegerAttribute.
  `static final String`
  `LONG_TYPE`
  Use this String as the attributeType to create an LongAttribute.
  `static final String`
  `OBJECT_TYPE`
  Use this String as the attributeType to create an ObjectAttribute.
  `static final String`
  `STRING_TYPE`
  Use this String as the attributeType to create an StringAttribute.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AttributeManager(KeyIndexableSet<T> attributedSet)`
  Constructor.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `clear()`
  Clears all of the attributes managed by this AttributeManager while leaving the attributes defined.
  `Attribute<T>`
  `createAttribute(String attributeName, String attributeType)`
  Create a new attribute.
  `Attribute<T>`
  `getAttribute(String attributeName)`
  Returns the attribute with the specified name.
  `String[]`
  `getAttributeNames()`
  Returns an array of all names of attributes managed by this AttributeManager.
  `boolean`
  `hasAttributeNamed(String attributeName)`
  Returns true if there is an attribute with the specified name managed by this attribute manager.
  `void`
  `removeAttribute(String attributeName)`
  Remove the attribute with the specified name from this AttributeManager.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### INTEGER_TYPE

    public static final String INTEGER_TYPE
    Use this String as the attributeType to create an IntegerAttribute.
    See Also:
      - Constant Field Values

  - ### LONG_TYPE

    public static final String LONG_TYPE
    Use this String as the attributeType to create an LongAttribute.
    See Also:
      - Constant Field Values

  - ### DOUBLE_TYPE

    public static final String DOUBLE_TYPE
    Use this String as the attributeType to create an DoubleAttribute.
    See Also:
      - Constant Field Values

  - ### STRING_TYPE

    public static final String STRING_TYPE
    Use this String as the attributeType to create an StringAttribute.
    See Also:
      - Constant Field Values

  - ### OBJECT_TYPE

    public static final String OBJECT_TYPE
    Use this String as the attributeType to create an ObjectAttribute.
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### AttributeManager

    public AttributeManager(KeyIndexableSet<T> attributedSet)
    Constructor.
    Parameters:
      `attributedSet` - The KeyIndexableSet whose Attributes this AttributeManager manages.

- ## Method Details

  - ### createAttribute

    public Attribute<T> createAttribute(String attributeName, String attributeType)
    Create a new attribute.
    Parameters:
      `attributeName` - The name used to identify this Attribute.
      `attributeType` - The type of Attribute to construct. Public static Strings have been defined for the various choices.

  - ### removeAttribute

    public void removeAttribute(String attributeName)
    Remove the attribute with the specified name from this AttributeManager.

  - ### hasAttributeNamed

    public boolean hasAttributeNamed(String attributeName)
    Returns true if there is an attribute with the specified name managed by this attribute manager.

  - ### getAttribute

    public Attribute<T> getAttribute(String attributeName)
    Returns the attribute with the specified name. Returns null if there is no attribute with that name.

  - ### getAttributeNames

    public String[] getAttributeNames()
    Returns an array of all names of attributes managed by this AttributeManager.

  - ### clear

    public void clear()
    Clears all of the attributes managed by this AttributeManager while leaving the attributes defined.