RoleGraph

trait RoleGraph

API defining an generic interface for all kind of role graphs.

class Object
trait Matchable
class Any

Value members

Abstract methods

def addBinding(player: AnyRef, role: AnyRef): Unit

Adds a plays relationship between core and role.

Adds a plays relationship between core and role.

Value Params
player

the player instance to add the given role

role

the role instance to add

def addPart(other: RoleGraph): Boolean

RoleGraph given as other would get part of this.

RoleGraph given as other would get part of this.

Value Params
other

the RoleGraph for integration in this one.

def allPlayers: Seq[AnyRef]

Returns a Seq of all players

Returns a Seq of all players

Returns

a Seq of all players

def containsPlayer(player: AnyRef): Boolean

Checks if the role graph contains the given player.

Checks if the role graph contains the given player.

Value Params
player

the player instance to check

Returns

true if the role graph contains the given player, false otherwise

def coreFor(role: AnyRef): Seq[AnyRef]
def detach(other: RoleGraph): Unit

Removes all players and plays-relationships specified in other from this RoleGraph.

Removes all players and plays-relationships specified in other from this RoleGraph.

Value Params
other

the RoleGraph all players and plays-relationships specified in should removed from this

def facets(player: AnyRef): Seq[Value]

Returns a Seq of all facets attached to the given player (core object).

Returns a Seq of all facets attached to the given player (core object).

Value Params
player

the player instance to get the facets for

Returns

a Seq of all facets of core player. Returns an empty Seq if the given player is not in the role-playing graph.

def predecessors(player: AnyRef): Seq[AnyRef]

Returns a list of all predecessors of the given player, i.e. a transitive closure of its cores (deep roles).

Returns a list of all predecessors of the given player, i.e. a transitive closure of its cores (deep roles).

Value Params
player

the player instance to calculate the cores of

Returns

a list of all predecessors of the given player

def removeBinding(player: AnyRef, role: AnyRef): Unit

Removes a plays relationship between core and role.

Removes a plays relationship between core and role.

Value Params
player

the player instance to remove the given role from

role

the role instance to remove

def removePlayer(player: AnyRef): Unit

Removes the given player from the graph. This should remove its binding too!

Removes the given player from the graph. This should remove its binding too!

Value Params
player

the player to remove

def roles(player: AnyRef): Seq[AnyRef]

Returns a Seq of all roles attached to the given player (core object).

Returns a Seq of all roles attached to the given player (core object).

Value Params
player

the player instance to get the roles for

Returns

a Seq of all roles of core player. Returns an empty Seq if the given player is not in the role-playing graph.