Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagegroovy
import edu.internet2.middleware.grouper.app.graph.RelationGraph
def graph = new RelationGraph(session).assignStartObject(inObject).assignParentLevels(-1).assignChildLevels(-1).assignShowMemberCounts(true)

...

Code Block
languagegroovy
graph.assignParentLevels(int)  // default -1
graph.assignChildLevels(int)   // default -1
assignMaxSiblings(int)         // default 50

These are the number of parent and child levels to recursively visit before stopping prematurely. A value of -1 represents all levels. Note that there is a hard limit of 100 levels, as an emergency stop against infinite cycles, which shouldn't occur under normal circumstances.

...

Code Block
languagegroovy
graph.assignSkipFolderNamePatterns(Set<String>)  // default none, use e.g. ["^etc:.*", "^$"] to exclude root and etc folders
*graph.assignSkipGroupNamePatterns(Set<String>)  // todo

...

  • default, graph
  • stem, start_stem, skip_stem
  • group, start_group
  • loader_group, start_loader_group
  • complement_group, intersect_group
  • subject, start_subject
  • provisioner
  • edge, edge_loader, edge_provisioner, edge_stem, edge_membership
  • edge_complement_left, edge_complement_right, edge_intersect_left, edge_intersect_right

Typical methods

Code Block
languagegroovy
import edu.internet2.middleware.grouper.app.visualization.*
def settings = new VisualSettings()

settings.getGroupUiLinkPrefix()
settings.getStemUiLinkPrefix()

def styleSetNames = settings.getStyleSetNames()  // ["default", "graphviz", "text"]
def defaultStyleSet = settings.getDefaultStyleSet()
def styleSet = settings.getStyleSet("graphviz")

def styleNames = styleSet.getStyleNames() // ["default", "graph", "stem", "start_stem", "skip_stem", "group" ...]
def styleGroup = styleSet.getStyle("group")

def groupFont = styleGroup.getProperty("font")
def stemColor = styleSet.getStyleProperty("stem", "color")
def stemBorderOrDefault = styleSet.getStyleProperty("stem", "border", "0")

...