Overview   Project   Class   Tree   Index 
CEF C++ API Docs - Revision 1123
FRAMES    NO FRAMES
SUMMARY:  INNER | FIELD | CONSTR | METHOD

(default)
Class CefXmlObject

CefBase
   |
   +--CefXmlObject

   in cef_xml_object.h

class CefXmlObject
extends CefBase

Thread safe class for representing XML data as a structured object. This class should not be used with large XML documents because all data will be resident in memory at the same time. This implementation supports a restricted set of XML features:

(1) Processing instructions, whitespace and comments are ignored.
(2) Elements and attributes must always be referenced using the fully
    qualified name (ie, namespace:localname).
(3) Empty elements () and elements with zero-length values ()
    are considered the same.
(4) Element nodes are considered part of a value if:
    (a) The element node follows a non-element node at the same depth
        (see 5), or
    (b) The element node does not have a namespace and the parent node does.
(5) Mixed node types at the same depth are combined into a single element
    value as follows:
    (a) All node values are concatenated to form a single string value.
    (b) Entity reference nodes are resolved to the corresponding entity
        value.
    (c) Element nodes are represented by their outer XML string.


Inner Classes, Typedefs, and Enums
typedef CefXmlObject::AttributeMap
          
typedef CefXmlObject::ObjectVector
          
 
Constructor Summary
explicit CefXmlObject( const CefString& name )
          Create a new object with the specified name.
virtual ~CefXmlObject()
          
 
Method Summary
 bool AddChild( CefRefPtr< CefXmlObject > child )
          
 void Append( CefRefPtr< CefXmlObject > object, bool overwriteAttributes )
          Append a duplicate of the children and attributes of the specified object to this object.
 void Clear()
          Clears this object's children and attributes.
 void ClearAttributes()
          
 void ClearChildren()
          
 CefRefPtr< CefXmlObject > Duplicate()
          Return a new object with the same name, children and attributes as this object.
 CefRefPtr< CefXmlObject > FindChild( const CefString& name )
          Find the first child with the specified name.
 size_t FindChildren( const CefString& name, CefXmlObject::ObjectVector& children )
          Find all children with the specified name.
 size_t GetAttributeCount()
          
 size_t GetAttributes( CefXmlObject::AttributeMap& attributes )
          
 CefString GetAttributeValue( const CefString& name )
          
 size_t GetChildCount()
          
 size_t GetChildren( CefXmlObject::ObjectVector& children )
          
 CefString GetName()
          Access the object's name.
 CefRefPtr< CefXmlObject > GetParent()
          
 CefString GetValue()
          
 bool HasAttribute( const CefString& name )
          
 bool HasAttributes()
          Access the object's attributes.
 bool HasChild( CefRefPtr< CefXmlObject > child )
          
 bool HasChildren()
          Access the object's children.
 bool HasParent()
          Access the object's parent.
 bool HasValue()
          Access the object's value.
 bool Load( CefRefPtr< CefStreamReader > stream, CefXmlReader::EncodingType encodingType, const CefString& URI, CefString* loadError )
          Load the contents of the specified XML stream into this object.
 bool RemoveChild( CefRefPtr< CefXmlObject > child )
          
 void Set( CefRefPtr< CefXmlObject > object )
          Set the name, children and attributes of this object to a duplicate of the specified object's contents.
 bool SetAttributeValue( const CefString& name, const CefString& value )
          
 bool SetName( const CefString& name )
          
 bool SetValue( const CefString& value )
          
   
Methods inherited from class CefBase
AddRef, Release, GetRefCt
 

Constructor Detail

CefXmlObject

public explicit CefXmlObject( const CefString& name );
Create a new object with the specified name. An object name must always be at least one character long.

~CefXmlObject

public virtual ~CefXmlObject();


Method Detail

AddChild

public bool AddChild( CefRefPtr< CefXmlObject > child );

Append

public void Append( CefRefPtr< CefXmlObject > object, bool overwriteAttributes );
Append a duplicate of the children and attributes of the specified object to this object. If |overwriteAttributes| is true then any attributes in this object that also exist in the specified object will be overwritten with the new values. The name of this object is not changed.

Clear

public void Clear();
Clears this object's children and attributes. The name and parenting of this object are not changed.

ClearAttributes

public void ClearAttributes();

ClearChildren

public void ClearChildren();

Duplicate

public CefRefPtr< CefXmlObject > Duplicate();
Return a new object with the same name, children and attributes as this object. The parent of the new object will be NULL.

FindChild

public CefRefPtr< CefXmlObject > FindChild( const CefString& name );
Find the first child with the specified name.

FindChildren

public size_t FindChildren( const CefString& name, CefXmlObject::ObjectVector& children );
Find all children with the specified name.

GetAttributeCount

public size_t GetAttributeCount();

GetAttributes

public size_t GetAttributes( CefXmlObject::AttributeMap& attributes );

GetAttributeValue

public CefString GetAttributeValue( const CefString& name );

GetChildCount

public size_t GetChildCount();

GetChildren

public size_t GetChildren( CefXmlObject::ObjectVector& children );

GetName

public CefString GetName();
Access the object's name. An object name must always be at least one character long.

GetParent

public CefRefPtr< CefXmlObject > GetParent();

GetValue

public CefString GetValue();

HasAttribute

public bool HasAttribute( const CefString& name );

HasAttributes

public bool HasAttributes();
Access the object's attributes. Attributes must have unique names.

HasChild

public bool HasChild( CefRefPtr< CefXmlObject > child );

HasChildren

public bool HasChildren();
Access the object's children. Each object can only have one parent so attempting to add an object that already has a parent will fail. Removing a child will set the child's parent to NULL. Adding a child will set the child's parent to this object. This object's value, if any, will be cleared if a child is added.

HasParent

public bool HasParent();
Access the object's parent. The parent can be NULL if this object has not been added as the child on another object.

HasValue

public bool HasValue();
Access the object's value. An object cannot have a value if it also has children. Attempting to set the value while children exist will fail.

Load

public bool Load( CefRefPtr< CefStreamReader > stream, CefXmlReader::EncodingType encodingType, const CefString& URI, CefString* loadError );
Load the contents of the specified XML stream into this object. The existing children and attributes, if any, will first be cleared.

RemoveChild

public bool RemoveChild( CefRefPtr< CefXmlObject > child );

Set

public void Set( CefRefPtr< CefXmlObject > object );
Set the name, children and attributes of this object to a duplicate of the specified object's contents. The existing children and attributes, if any, will first be cleared.

SetAttributeValue

public bool SetAttributeValue( const CefString& name, const CefString& value );

SetName

public bool SetName( const CefString& name );

SetValue

public bool SetValue( const CefString& value );

 Overview   Project   Class   Tree   Index 
CEF C++ API Docs - Revision 1123
FRAMES    NO FRAMES
SUMMARY:  INNER | FIELD | CONSTR | METHOD

Chromium Embedded Framework (CEF) Copyright © 2011 Marshall A. Greenblatt