[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/src/docs/contributor/ -> using_edges.diviner (source)

   1  @title Using Edges
   2  @group developer
   3  
   4  Guide to the Edges infrastructure.
   5  
   6  = Overview =
   7  
   8  Edges are a generic way of storing a relationship between two objects (like a
   9  Task and its attached files). If you are familiar with the Facebook associations
  10  framework, Phabricator Edges are substantially similar.
  11  
  12  An edge is defined by a source PHID (the edge origin), a destination PHID
  13  (the edge destination) and an edge type (which describes the relationship,
  14  like "is subscribed to" or "has attached file").
  15  
  16  Every edge is directional, and stored alongside the source object. Some edges
  17  are configured to automatically write an inverse edge, effectively building
  18  a bidirectional relationship. The strength of storing relationships like this
  19  is that they work when databases are partitioned or sharded.
  20  
  21  = Reading Edges =
  22  
  23  You can load edges with @{class:PhabricatorEdgeQuery}.
  24  
  25  = Writing Edges =
  26  
  27  You can edit edges with @{class:PhabricatorEdgeEditor}.
  28  
  29  = Edges and Lisk =
  30  
  31  @{class:PhabricatorLiskDAO} includes some builtin support for edges.


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1