SequentialFlowBuilder

@AutomationDsl
class SequentialFlowBuilder : AutomationFlowBuilder, StarterNodeDsl, ManualStarterNodeDsl, ConditionNodeDsl, StateReaderNodeDsl, ActionNodeDsl, ParallelNodeDsl, SelectNodeDsl, DelayNodeDsl, SuppressionNodeDsl, AssignmentNodeDsl

Type-safe builder that builds a SequentialFlow Node.

Summary

Public constructors

Create a SequentialFlow instance.

Public functions

SequentialFlow

Build a SequentialFlow.

Inherited functions

From com.google.home.automation.ActionNodeDsl
open Unit
action(
    entityExpression: TypedExpression<TypedEntity<HomeObjectType>?>,
    block: ActionBuilder.() -> Unit
)

Build and add an Action.

open Unit
HomeObjectType> action(
    entityExpression: TypedExpression<List<TypedEntity>?>,
    block: ActionBuilder.() -> Unit
)

Build and add an Action.

open Unit
action(structure: Structure, block: ActionBuilder.() -> Unit)

Build and add an Action.

open Unit
action(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    block: ActionBuilder.() -> Unit
)

Build and add an Action.

open Unit
action(
    unknownEntity: UnknownEntity,
    entityType: TypeFactory<HomeObjectType>,
    block: ActionBuilder.() -> Unit
)

Build an Action using an UnknownEntity.

From com.google.home.automation.AssignmentNodeDsl
open Unit

A variable can generally only be assigned once per automation.

open Unit
open AssignmentNodeDsl.Variable
Any?> variable()
From com.google.home.automation.AutomationFlowBuilder
open List<Node>
From com.google.home.automation.AutomationFlowContributor
From com.google.home.automation.ConditionNodeDsl
open Unit
From com.google.home.automation.DelayNodeDsl
open Unit
delayFor(duration: Duration)
From com.google.home.automation.ManualStarterNodeDsl
From com.google.home.automation.ParallelNodeDsl
open Unit
From com.google.home.automation.SelectNodeDsl
open Unit
From com.google.home.automation.StarterNodeDsl
open TypedExpression
Event> starter(
    entityExpression: TypedExpression<TypedEntity<HomeObjectType>?>,
    event: EventFactory
)

Create a Starter from an Expression of Entity and an Event and add it.

open TypedExpression
Event, U : HomeObjectType> starter(
    entityExpression: TypedExpression<List<TypedEntity>?>,
    event: EventFactory
)

Create a Starter from an Expression of Entity list and an Event and add it.

open TypedExpression
Trait> starter(
    entityExpression: TypedExpression<TypedEntity<HomeObjectType>?>,
    trait: TraitFactory
)

Create a Starter from an Expression of Entity and a Trait and add it.

open TypedExpression
Trait, U : HomeObjectType> starter(
    entityExpression: TypedExpression<List<TypedEntity>?>,
    trait: TraitFactory
)

Create a Starter from an Expression of Entity list and a Trait and add it.

open TypedExpression
Event> starter(structure: Structure, event: EventFactory)

Create a Starter from a Structure and an Event and add it.

open TypedExpression
Trait> starter(structure: Structure, trait: TraitFactory)

Create a Starter from a Structure and a Trait and add it.

open TypedExpression
Event> starter(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    event: EventFactory
)

Create a Starter from a Device and an Event and add it.

open TypedExpression
Trait> starter(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    trait: TraitFactory
)

Create a Starter from a Device and a Trait and add it.

open TypedExpression
Event> starter(
    entityExpression: TypedExpression<TypedEntity<HomeObjectType>?>,
    event: EventFactory,
    block: ParametersBuilder.() -> Unit
)

Create a Starter from an Expression of Entity and a Trait and add it.

open TypedExpression
Event, U : HomeObjectType> starter(
    entityExpression: TypedExpression<List<TypedEntity>?>,
    event: EventFactory,
    block: ParametersBuilder.() -> Unit
)

Create a Starter from an Expression of Entity list and a Trait and add it.

open TypedExpression
Event> starter(
    structure: Structure,
    event: EventFactory,
    block: ParametersBuilder.() -> Unit
)

Create a Starter from a Structure and an Event and add it.

open TypedExpression
Event> starter(
    unknownEntity: UnknownEntity,
    entityType: TypeFactory<HomeObjectType>,
    event: EventFactory
)

Create a Starter from an UnknownEntity and an Event and add it.

open TypedExpression
Trait> starter(
    unknownEntity: UnknownEntity,
    entityType: TypeFactory<HomeObjectType>,
    trait: TraitFactory
)

Create a Starter from an UnknownEntity and a Trait and add it.

open TypedExpression
Event> starter(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    event: EventFactory,
    block: ParametersBuilder.() -> Unit
)

Create a Starter from a Device and a Trait and add it.

open TypedExpression
Event> starter(
    unknownEntity: UnknownEntity,
    deviceType: DeviceTypeFactory<DeviceType>,
    event: EventFactory,
    block: ParametersBuilder.() -> Unit
)

Create a Starter from an UnknownEntity and an Event and add it.

From com.google.home.automation.StateReaderNodeDsl
open TypedExpression
Trait> stateReader(
    entityExpression: TypedExpression<TypedEntity<HomeObjectType>?>,
    trait: TraitFactory
)

Build a StateReader.

open TypedExpression<Map<TypedEntity, T>>
Trait, U : HomeObjectType> stateReader(
    entityExpression: TypedExpression<List<TypedEntity>?>,
    trait: TraitFactory
)

Build a StateReader.

open TypedExpression
Trait> stateReader(structure: Structure, trait: TraitFactory)

Build a StateReader.

open TypedExpression
Trait> stateReader(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    trait: TraitFactory
)

Build a StateReader.

open TypedExpression
Trait> stateReader(
    unknownEntity: UnknownEntity,
    entityType: TypeFactory<HomeObjectType>,
    trait: TraitFactory
)

Build a StateReader using an UnknownEntity.

From com.google.home.automation.SuppressionNodeDsl
open Unit
suppressFor(duration: Duration)

Public constructors

SequentialFlowBuilder

SequentialFlowBuilder(nodes: List<Node> = emptyList())

Create a SequentialFlow instance.

Public functions

build

fun build(): SequentialFlow

Build a SequentialFlow.

Returns
SequentialFlow

A SequentialFlow instance.