Package ghidra.program.database.properties

# Class StringPropertyMapDB

java.lang.Object
ghidra.program.database.DatabaseObject
ghidra.program.database.properties.PropertyMapDB<String>
ghidra.program.database.properties.StringPropertyMapDB

All Implemented Interfaces:
  `PropertyMap<String>`, `StringPropertyMap`

public class StringPropertyMapDB extends PropertyMapDB<String> implements StringPropertyMap
Property manager that deals with properties that are of String type and stored with a database table.

- ## Field Summary

  ### Fields inherited from class ghidra.program.database.properties.PropertyMapDB

  `addrMap, cache, changeMgr, dbHandle, DEFAULT_CACHE_SIZE, errHandler, lock, name, NO_SCHEMA_FIELD_NAMES, NO_SCHEMA_FIELDS, PROPERTY_VALUE_COL, propertyTable, schema, SCHEMA_FIELD_NAMES`

  ### Fields inherited from class ghidra.program.database.DatabaseObject

  `key`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StringPropertyMapDB(DBHandle dbHandle, OpenMode openMode, ErrorHandler errHandler, ChangeManager changeMgr, AddressMap addrMap, String name, TaskMonitor monitor)`
  Construct an String property map.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `add(Address addr, String value)`
  Add a String value at the specified address.
  `String`
  `get(Address addr)`
  Returns the property value stored at the specified address or null if no property found.
  `String`
  `getString(Address addr)`
  Get the String value at the given address.

  ### Methods inherited from class ghidra.program.database.properties.PropertyMapDB

  `createTable, delete, getAddressKeyIterator, getAddressKeyIterator, getAddressKeyIterator, getFirstPropertyAddress, getLastPropertyAddress, getName, getNextPropertyAddress, getPreviousPropertyAddress, getPropertyIterator, getPropertyIterator, getPropertyIterator, getPropertyIterator, getPropertyIterator, getPropertyIterator, getSize, getTableName, getTableName, hasProperty, intersects, intersects, invalidate, moveRange, refresh, remove, removeRange, setCacheSize, validate`

  ### Methods inherited from class ghidra.program.database.DatabaseObject

  `checkDeleted, checkIsValid, checkIsValid, getKey, isDeleted, isInvalid, keyChanged, refresh, setDeleted, setInvalid`

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

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

  ### Methods inherited from interface ghidra.program.model.util.PropertyMap

  `getFirstPropertyAddress, getLastPropertyAddress, getName, getNextPropertyAddress, getPreviousPropertyAddress, getPropertyIterator, getPropertyIterator, getPropertyIterator, getPropertyIterator, getPropertyIterator, getPropertyIterator, getSize, hasProperty, intersects, intersects, moveRange, remove, removeRange`

  ### Methods inherited from interface ghidra.program.model.util.StringPropertyMap

  `add, getValueClass`

- ## Constructor Details

  - ### StringPropertyMapDB

    public StringPropertyMapDB(DBHandle dbHandle, OpenMode openMode, ErrorHandler errHandler, ChangeManager changeMgr, AddressMap addrMap, String name, TaskMonitor monitor) throws VersionException, CancelledException, IOException
    Construct an String property map.
    Parameters:
      `dbHandle` - database handle.
      `openMode` - the mode that the program was openned in or null if instantiated during cache invalidate. Used to detect versioning error only.
      `errHandler` - database error handler.
      `changeMgr` - change manager for event notification
      `addrMap` - address map.
      `name` - property name.
      `monitor` - progress monitor that is only used when upgrading
    Throws:
      `VersionException` - if the database version is not the expected version.
      `CancelledException` - if the user cancels the upgrade operation.
      `IOException` - if a database io error occurs.

- ## Method Details

  - ### add

    public void add(Address addr, String value)
    Description copied from interface: `StringPropertyMap`
    Add a String value at the specified address.
    Specified by:
      `add` in interface `StringPropertyMap`
    Parameters:
      `addr` - address for the property
      `value` - value of the property

  - ### getString

    public String getString(Address addr)
    Description copied from interface: `StringPropertyMap`
    Get the String value at the given address.
    Specified by:
      `getString` in interface `StringPropertyMap`
    Parameters:
      `addr` - the address from where to get the String value
    Returns:
      String or null if property not found at addr.

  - ### get

    public String get(Address addr)
    Description copied from interface: `PropertyMap`
    Returns the property value stored at the specified address or null if no property found.
    Specified by:
      `get` in interface `PropertyMap<String>`
    Parameters:
      `addr` - property address
    Returns:
      property value