Contains a component that stores Form Session Properties in XML format.

In this unit you can find an implementation of a name/value pair storage container in XML format.

This container will get the Form's Session Properties that you setup in TForm.SessionProperties and read/write them to the file specified in TXMLPropStorage.FileName.

Wrapper for the TXMLConfig class defined in the FCL XMLConf.pp unit.

More information about TXMLConfig and XMLConf are available on the FPC wiki at:

XMLConf

TXMLConfig

Deletes sub nodes on a path. The path of the node to have it's sub nodes deleted. Loads XML content from a stream. The stream to load the XML content from. Saves XML content to a stream. The stream to save the XML content to. Contains the XML document. Implements the base class for the XML Form's Session Properties Storage. Gets the value for the FileName property. The current value in the TCustomXMLPropStorage.FileName property. Returns the name of the RootSection. The current value of RootSection. Turns '.' notation into '/' notation for the XPATH-like implementation in XMLConf. The fixed path is returned with '.' replaced by '/'. The path to be fixed. Property to access the TPropStorageXMLConfig. Ask the underlying storage object for an entry. If the item is read-only. Frees an entry from the underlying storage object. Implements the actual reading of a value from the underlying storage container. The value of the section/ident requested. The section to be read. The ident to be read. If has no value then return this as default. Implements writing of a string value to the underlying storage container. The section to be written. The ident to be written. The value to be written. Erases a section from the underlying storage container. The path to the section that will be erased. Name of the file where the property data is saved in XML format. Name of the root object path on your XML file. Implements a class for XML Form Session Properties storage. TForm.SessionProperties TINIPropStorage TJSONPropStorage Implements a configuration storage mechanism using XML-tagged content.

TXMLConfigStorage is a TConfigStorage descendant which implements an XML-storage mechanism for configuration or other values.

TXMLConfigStorage allows names (paths) and values to be accessed using an XPATH-like syntax.

It provides implementations of the abstract virtual methods defined in the ancestor class. It provides overridden constructors that allow the class instance to be created for a qualified file name, a TXMLConfig instance, a subset of values in a TXMLConfig instance, or a stream. Internally, it use TXMLConfig as the storage for values in the class instance.

Use the XMLConfig property to access the internal storage for class instance. Use the overridden methods to read, write, or delete the names and values in the class instance. For example:

  • DeleteFullPathValue
  • GetFullPathValue
  • SetDeleteFullPathValue
  • SetFullPathValue
TConfigStorage
Gets the String value stored at the specified path in the XML storage.

Calls the GetValue method for the internal TXMLConfig instance.

Value retrieved from the internal storage, or ADefault when the path is not found. Path to the XML node with the requested value. Default value returned if APath is not found in the internal storage. Sets the value for the specified path. Path to the XML node where the value is stored. Value stored in the XML node for the specified path. Sets the value for or deletes the XML node at the specified path. Path to the XML node with the value updated or removed in the method. Value for the specified path. An empty value causes the path to be removed. Deletes the XML node and its content and the specified path. Path to the XML node removed in the method. Deletes the value stored in the XML node at the specified path. Path to the XML node with the value removed in the method. Removes all XML nodes stored in the XMLConfig storage.

Calls the Clear method in XMLConfig.

Constructor for the class instance.

Create is the overridden, overloaded constructor for the class instance. The overloaded variants allow the XML content to read from various sources like a file name, a TXMLConfig instance, a scoped TXMLConfig instance, or a TStream instance.

Use WriteToDisk or SaveToStream to specify where the XML content is stored .

Qualified file name where the XML content is stored. True to load existing XML content from the file, or False to create an empty storage. TXMLConfig instance where the XML paths and values are stored. Initial path for values read and written in the class instance. Stream with the XML content loaded in the XMLConfig storage. Destructor for the class instance.

Destroy is the overridden destructor for the class instance. It uses the value in FreeXMLConfig to determine whether the TXMLConfig instance in XMLConfig is freed in the method. When set to True, XMLConfig is freed and set to Nil.

Destroy calls the inherited destructor prior to exiting from the method.

TXMLConfig with the values accessed and maintained in the class instance. Read-only TXMLConfig property. Indicates whether the TXMLConfig instance is freed when the class is destroyed.

FreeXMLConfig is a Boolean property which indicates if the TXMLConfig instance in XMLConfig is freed when the class instance is destroyed.

Stores the values in XMLConfig to the specified file name. Gets the file name passed as an argument to the constructor. File passed as an argument to the overloaded constructor. Saves the content in XMLConfig to the specified TStream instance. TStream instance where the XML content is stored. Registers TXMLPropStorage on the 'Misc' tab of the component palette.