Static class with helpers for use with graph objects
The public interface of this class is useful for creating objects that have the same graph characteristics
of those returned by methods of the SDK. This class also represents the internal implementation of the
FBGraphObject protocol, used by the Facebook SDK. Application code should not use the
FBGraphObject class to
access instances and instance members, favoring the protocol.
Used to create a graph object for, usually for use in posting a new graph object or action
Used to wrap an existing dictionary with a
The dictionary representing the underlying object to wrap
Normally you will not need to call this method, as the Facebook SDK already "FBGraphObject-ifys" json objects
FBRequestConnection. However, you may have other reasons to create json objects in your
application, which you would like to treat as a graph object. The pattern for doing this is that you pass the root
node of the json to this method, to retrieve a wrapper. From this point, if you traverse the graph, any other objects
deeper in the hierarchy will be wrapped as
FBGraphObject's in a lazy fashion.
This method is designed to avoid unnecessary memory allocations, and object copying. Due to this, the method does not copy the source object if it can be avoided, but rather wraps and uses it as is. The returned object derives callers shoudl use the returned object after calls to this method, rather than continue to call methods on the original object.
Used to compare two
FBGraphObjects to determine if represent the same object. We do not overload
the concept of equality as there are various types of equality that may be important for an
(for instance, two different
FBGraphObjects could represent the same object, but contain different
subsets of fields).