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 on the file you specify on TXMLPropStorage.FileName.

Wrapper class around 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.
Getter for the property TCustomXMLPropStorage.FileName.
The current value of the property TCustomXMLPropStorage.FileName.
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 the actual writing of a value from 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 the final class for the XML Form Session Properties storage.
TForm.SessionProperties TINIPropStorage TJSONPropStorage
Implements a configation 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

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 speciy 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.
Intial 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.