Beamable SDK
Public Member Functions | List of all members
Beamable.Common.Assistant.BeamHintStorage Class Reference

Defines a storage for BeamHints. This implementation is header-based, meaning: More...

Inheritance diagram for Beamable.Common.Assistant.BeamHintStorage:
Inheritance graph
[legend]
Collaboration diagram for Beamable.Common.Assistant.BeamHintStorage:
Collaboration graph
[legend]

Public Member Functions

 BeamHintStorage ()
 Creates a new BeamHintStorage instance. Makes no assumptions with respect to what types of hints will be stored here.
 
IEnumerator< BeamHintGetEnumerator ()
 Allows iteration over storage with for-each and use of LINQ methods directly over BeamHints.
 
void AddOrReplaceHint (BeamHintType type, string hintDomain, string uniqueId, object hintContextObj=null)
 Adds a hint to the storage. More...
 
void AddOrReplaceHint (BeamHintHeader header, object hintContextObj=null)
 Adds a hint to the storage. More...
 
void AddOrReplaceHints (IEnumerable< BeamHintHeader > headers, IEnumerable< object > hintContextObjs)
 Takes in two parallel IEnumerable<T> (same-length arrays) of BeamHintHeader/object pairs and add them to the storage. More...
 
void AddOrReplaceHints (IEnumerable< BeamHint > bakedHints)
 Adds the given BeamHints. More...
 
void RemoveHint (BeamHintHeader header)
 Removes the BeamHint identified by the header . More...
 
void RemoveHint (BeamHint hint)
 Removes the given hint from the storage. More...
 
void RemoveHints (IEnumerable< BeamHintHeader > headers)
 Removes the BeamHints identified by the given headers from the storage. More...
 
void RemoveHints (IEnumerable< BeamHint > hints)
 Removes the given hints from the storage. More...
 
int RemoveAllHints (IEnumerable< string > hintDomains, IEnumerable< string > hintIds)
 Removes all hints that Regex.Match(string) of any of the given hintDomains and hintIds . More...
 
int RemoveAllHints (BeamHintType type)
 Remove all hints of the given type . More...
 
int RemoveAllHints (string hintDomainRegex=".*", string idRegex=".*")
 Removes all hints that Regex.Match(string) of the given hintDomainRegex and idRegex . More...
 
BeamHint GetHint (BeamHintHeader header)
 Given a header , returns a BeamHint containing it's associated BeamHint.ContextObject. More...
 

Detailed Description

Defines a storage for BeamHints. This implementation is header-based, meaning:

Member Function Documentation

◆ AddOrReplaceHint() [1/2]

void Beamable.Common.Assistant.BeamHintStorage.AddOrReplaceHint ( BeamHintHeader  header,
object  hintContextObj = null 
)
inline

Adds a hint to the storage.

Parameters
headerA pre-built BeamHintHeader to add.
hintContextObjAny arbitrary data that you wish to tie to the hint.

Implements Beamable.Common.Assistant.IBeamHintStorage.

◆ AddOrReplaceHint() [2/2]

void Beamable.Common.Assistant.BeamHintStorage.AddOrReplaceHint ( BeamHintType  type,
string  hintDomain,
string  uniqueId,
object  hintContextObj = null 
)
inline

Adds a hint to the storage.

Parameters
typeThe type of hint that it is.
originSystemThe system that originated this hint.
hintDomainAn arbitrary contextual grouping for the hint.
uniqueIdAn id, unique when combined with hintDomain , that identifies the hint.
hintContextObjAny arbitrary data that you wish to tie to the hint.

Implements Beamable.Common.Assistant.IBeamHintStorage.

◆ AddOrReplaceHints() [1/2]

void Beamable.Common.Assistant.BeamHintStorage.AddOrReplaceHints ( IEnumerable< BeamHint bakedHints)
inline

◆ AddOrReplaceHints() [2/2]

void Beamable.Common.Assistant.BeamHintStorage.AddOrReplaceHints ( IEnumerable< BeamHintHeader headers,
IEnumerable< object >  hintContextObjs 
)
inline

Takes in two parallel IEnumerable<T> (same-length arrays) of BeamHintHeader/object pairs and add them to the storage.

Implements Beamable.Common.Assistant.IBeamHintStorage.

◆ GetHint()

BeamHint Beamable.Common.Assistant.BeamHintStorage.GetHint ( BeamHintHeader  header)
inline

Given a header , returns a BeamHint containing it's associated BeamHint.ContextObject.

Implements Beamable.Common.Assistant.IBeamHintStorage.

◆ RemoveAllHints() [1/3]

int Beamable.Common.Assistant.BeamHintStorage.RemoveAllHints ( BeamHintType  type)
inline

Remove all hints of the given type .

Parameters
typeThe BeamHintTypes to remove.
Returns
The amount of BeamHints removed.

Implements Beamable.Common.Assistant.IBeamHintStorage.

◆ RemoveAllHints() [2/3]

int Beamable.Common.Assistant.BeamHintStorage.RemoveAllHints ( IEnumerable< string >  hintDomains,
IEnumerable< string >  hintIds 
)
inline

Removes all hints that Regex.Match(string) of any of the given hintDomains and hintIds .

Implements Beamable.Common.Assistant.IBeamHintStorage.

◆ RemoveAllHints() [3/3]

int Beamable.Common.Assistant.BeamHintStorage.RemoveAllHints ( string  hintDomainRegex = ".*",
string  idRegex = ".*" 
)
inline

Removes all hints that Regex.Match(string) of the given hintDomainRegex and idRegex .

Implements Beamable.Common.Assistant.IBeamHintStorage.

◆ RemoveHint() [1/2]

void Beamable.Common.Assistant.BeamHintStorage.RemoveHint ( BeamHint  hint)
inline

Removes the given hint from the storage.

Implements Beamable.Common.Assistant.IBeamHintStorage.

◆ RemoveHint() [2/2]

void Beamable.Common.Assistant.BeamHintStorage.RemoveHint ( BeamHintHeader  header)
inline

Removes the BeamHint identified by the header .

Implements Beamable.Common.Assistant.IBeamHintStorage.

◆ RemoveHints() [1/2]

void Beamable.Common.Assistant.BeamHintStorage.RemoveHints ( IEnumerable< BeamHint hints)
inline

Removes the given hints from the storage.

Implements Beamable.Common.Assistant.IBeamHintStorage.

◆ RemoveHints() [2/2]

void Beamable.Common.Assistant.BeamHintStorage.RemoveHints ( IEnumerable< BeamHintHeader headers)
inline

Removes the BeamHints identified by the given headers from the storage.

Implements Beamable.Common.Assistant.IBeamHintStorage.


The documentation for this class was generated from the following file: