Scenario

onera.pmlanalyzer.pml.model.configuration.TransactionLibrary.Scenario$
See theScenario companion class

Builder of platform Scenario

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Concise view

embedFunctions

def all(implicit owner: Owner): Set[T]

Provide all the object of the current type created for the platform, including the ones created in composite components

Provide all the object of the current type created for the platform, including the ones created in composite components

Attributes

owner

the name of the platform owning the objects

Returns:

set of created objects

Inherited from:
PMLNodeBuilder
def allDirect(implicit owner: Owner): Set[T]

Provide all the object of the current type created for the platform, without the ones created in composite components

Provide all the object of the current type created for the platform, without the ones created in composite components

Attributes

owner

the name of the platform owning the objects

Returns:

set of created objects

Inherited from:
PMLNodeBuilder

Value members

Concrete methods

def apply[A, B](iniTgtL: => Set[A], iniTgtR: => Set[B])(using name: Name, ta: AsTransaction[Set[A]], tb: AsTransaction[Set[B]]): Scenario

Build scenario from two write/read based transactions

Build scenario from two write/read based transactions

Attributes

A

the type of left request

B

the type of right request

iniTgtL

the set of initiator/target of left member

iniTgtR

the set of initiator/target of right member

name

the implicitly derived name

tA

the type tag of left member to solve erasure issue

tB

the type tag of right member to solve erasure issue

Returns:

the corresponding scenario

def apply(tr: ScenarioLike)(implicit name: Name): Scenario

Build a scenario from a transaction or another scenario

Build a scenario from a transaction or another scenario

Attributes

A

the type of request

name

the implicitly derived name

t

the type tag to solve erasure issue

tr

the original scenario like

Returns:

the resulting scenario

def apply(tr: Transaction*)(implicit name: Name): Scenario

Build a Scenario from a bunch of transactions, this should not be used with anonymous transaction

Build a Scenario from a bunch of transactions, this should not be used with anonymous transaction

Attributes

A

the type of targeted service

name

the implicit name of the scenario (same as the variable used to refer to it)

t

the type tag to distinguish the type of target service

tr

the set of transactions

Returns:

a scenario

def apply(name: UserScenarioId, iniTgt: () => Set[(Service, Service)], sw: () => Set[Application])(implicit owner: Owner): Scenario

Main constructor of a scenario, note that scenarios are memoized, so if the same name is used in the same platform the constructor will send back the previous definition of the scenario

Main constructor of a scenario, note that scenarios are memoized, so if the same name is used in the same platform the constructor will send back the previous definition of the scenario

Attributes

iniTgt

the set of initial/target services defining the scenario

name

the name of the scenario

owner

the owner of the transaction (the platform)

sw

the applications that may invoke this scenario

Returns:

the transaction (not used for now)

Inherited fields

protected val _memo: HashMap[(Symbol, Symbol), Scenario]

Attributes

Inherited from:
PMLNodeBuilder