Skip to content

nodeCreated Method and Piping #1104

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import com.squareup.sample.container.overviewdetail.OverviewDetailScreen
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.Workflow
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.runningWorker
import com.squareup.workflow1.ui.WorkflowUiExperimentalApi
Expand All @@ -23,7 +24,8 @@ class MaybeLoadingGatekeeperWorkflow<T : Any>(
) : StatefulWorkflow<Unit, IsLoading, Unit, MayBeLoadingScreen>() {
override fun initialState(
props: Unit,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): IsLoading = false

override fun render(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.Worker
import com.squareup.workflow1.WorkflowAction
import com.squareup.workflow1.WorkflowAction.Companion.noAction
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.runningWorker
import com.squareup.workflow1.ui.Screen
Expand Down Expand Up @@ -84,7 +85,8 @@ class PerformancePoemWorkflow(

override fun initialState(
props: Poem,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State {
return if (simulatedPerfConfig.useInitializingState) {
Initializing
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ import com.squareup.sample.poetry.PoemsBrowserWorkflow
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowAction.Companion.noAction
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.runningWorker
import com.squareup.workflow1.ui.WorkflowUiExperimentalApi
Expand Down Expand Up @@ -70,7 +71,8 @@ class PerformancePoemsBrowserWorkflow(

override fun initialState(
props: ConfigAndPoems,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State {
return if (props.first.first > 0 &&
props.first.second == simulatedPerfConfig.recursionGraph.second
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import com.squareup.sample.compose.hellocompose.HelloWorkflow.State.Goodbye
import com.squareup.sample.compose.hellocompose.HelloWorkflow.State.Hello
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.parse
import com.squareup.workflow1.ui.Screen
Expand Down Expand Up @@ -34,7 +35,8 @@ object HelloWorkflow : StatefulWorkflow<Unit, State, Nothing, Rendering>() {

override fun initialState(
props: Unit,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State = snapshot?.bytes?.parse { source -> if (source.readInt() == 1) Hello else Goodbye }
?: Hello

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import com.squareup.sample.compose.hellocomposebinding.HelloWorkflow.State.Goodb
import com.squareup.sample.compose.hellocomposebinding.HelloWorkflow.State.Hello
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.parse
import com.squareup.workflow1.ui.Screen
Expand Down Expand Up @@ -34,7 +35,8 @@ object HelloWorkflow : StatefulWorkflow<Unit, State, Nothing, Rendering>() {

override fun initialState(
props: Unit,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State = snapshot?.bytes?.parse { source -> if (source.readInt() == 1) Hello else Goodbye }
?: Hello

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import com.squareup.sample.compose.hellocomposeworkflow.ComposeWorkflowImpl.Stat
import com.squareup.workflow1.Sink
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.contraMap
import com.squareup.workflow1.ui.ViewEnvironment
Expand All @@ -30,7 +31,8 @@ internal class ComposeWorkflowImpl<PropsT, OutputT : Any>(

override fun initialState(
props: PropsT,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State<PropsT, OutputT> {
val propsHolder = mutableStateOf(props, policy = structuralEqualityPolicy())
val sinkHolder = SinkHolder<OutputT>()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import com.squareup.sample.compose.hellocomposeworkflow.HelloWorkflow.State.Good
import com.squareup.sample.compose.hellocomposeworkflow.HelloWorkflow.State.Hello
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.parse
import com.squareup.workflow1.ui.WorkflowUiExperimentalApi
Expand Down Expand Up @@ -32,7 +33,8 @@ object HelloWorkflow : StatefulWorkflow<Unit, State, Nothing, ComposeScreen>() {

override fun initialState(
props: Unit,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State = snapshot?.bytes?.parse { source -> if (source.readInt() == 1) Hello else Goodbye }
?: Hello

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ import androidx.compose.ui.tooling.preview.Preview
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowExperimentalRuntime
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.config.AndroidRuntimeConfigTools
import com.squareup.workflow1.parse
import com.squareup.workflow1.ui.AndroidScreen
Expand All @@ -32,7 +33,8 @@ object InlineRenderingWorkflow : StatefulWorkflow<Unit, Int, Nothing, AndroidScr

override fun initialState(
props: Unit,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): Int = snapshot?.bytes?.parse { it.readInt() } ?: 0

override fun render(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import com.squareup.sample.compose.nestedrenderings.RecursiveWorkflow.Rendering
import com.squareup.sample.compose.nestedrenderings.RecursiveWorkflow.State
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.renderChild
import com.squareup.workflow1.ui.Screen
Expand Down Expand Up @@ -43,7 +44,8 @@ object RecursiveWorkflow : StatefulWorkflow<Unit, State, Nothing, Screen>() {

override fun initialState(
props: Unit,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State = State()

override fun render(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import com.squareup.sample.compose.textinput.TextInputWorkflow.Rendering
import com.squareup.sample.compose.textinput.TextInputWorkflow.State
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.ui.Screen
import com.squareup.workflow1.ui.TextController
Expand All @@ -29,7 +30,8 @@ object TextInputWorkflow : StatefulWorkflow<Unit, State, Nothing, Rendering>() {

override fun initialState(
props: Unit,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State = State()

override fun render(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import com.squareup.sample.hellobackbutton.AreYouSureWorkflow.State.Running
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowAction.Companion.noAction
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.ui.AndroidScreen
import com.squareup.workflow1.ui.Screen
Expand All @@ -35,7 +36,8 @@ object AreYouSureWorkflow :
StatefulWorkflow<Unit, State, Finished, Rendering>() {
override fun initialState(
props: Unit,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State = snapshot?.toParcelable() ?: Running

class Rendering(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import com.squareup.sample.hellobackbutton.HelloBackButtonWorkflow.State.Baker
import com.squareup.sample.hellobackbutton.HelloBackButtonWorkflow.State.Charlie
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.ui.toParcelable
import com.squareup.workflow1.ui.toSnapshot
import kotlinx.parcelize.Parcelize
Expand All @@ -22,7 +23,8 @@ object HelloBackButtonWorkflow : StatefulWorkflow<Unit, State, Nothing, HelloBac

override fun initialState(
props: Unit,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State = snapshot?.toParcelable() ?: Able

override fun render(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowAction
import com.squareup.workflow1.WorkflowAction.Companion.noAction
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.parse
import com.squareup.workflow1.ui.Screen
import com.squareup.workflow1.ui.WorkflowUiExperimentalApi
Expand All @@ -30,7 +31,8 @@ class RealPoemWorkflow : PoemWorkflow,

override fun initialState(
props: Poem,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): SelectedStanza {
return snapshot?.bytes?.parse { source ->
source.readInt()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import com.squareup.sample.poetry.PoemListWorkflow.Props
import com.squareup.sample.poetry.model.Poem
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.parse
import com.squareup.workflow1.ui.WorkflowUiExperimentalApi
Expand All @@ -27,7 +28,8 @@ class RealPoemsBrowserWorkflow(

override fun initialState(
props: ConfigAndPoems,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): SelectedPoem {
return snapshot?.bytes?.parse { source ->
source.readInt()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import com.squareup.sample.dungeon.DungeonAppWorkflow.State.PlayingGame
import com.squareup.sample.dungeon.board.Board
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.renderChild
import com.squareup.workflow1.runningWorker
Expand Down Expand Up @@ -38,7 +39,8 @@ class DungeonAppWorkflow(

override fun initialState(
props: Props,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State = LoadingBoardList

override fun render(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowAction
import com.squareup.workflow1.WorkflowAction.Companion.noAction
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.runningWorker
import com.squareup.workflow1.ui.Screen
Expand Down Expand Up @@ -48,7 +49,8 @@ class GameSessionWorkflow(

override fun initialState(
props: Props,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State = Loading

override fun render(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import com.squareup.sample.dungeon.board.BoardCell
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.Worker
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.runningWorker
import com.squareup.workflow1.transform
Expand All @@ -35,7 +36,8 @@ class AiWorkflow(

override fun initialState(
props: ActorProps,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State {
val startingDirection = random.nextEnum(Direction::class)
return State(startingDirection, props.ticks.createDirectionTicker(random))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import com.squareup.sample.dungeon.board.Board.Location
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.Worker
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.renderChild
import com.squareup.workflow1.runningWorker
Expand Down Expand Up @@ -72,7 +73,8 @@ class GameWorkflow(

override fun initialState(
props: Props,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State {
val board = props.board
return State(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import com.squareup.sample.dungeon.board.BoardCell
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowAction
import com.squareup.workflow1.WorkflowLocal

/**
* Workflow that represents the actual player of the game in the [GameWorkflow].
Expand Down Expand Up @@ -41,7 +42,8 @@ class PlayerWorkflow(

override fun initialState(
props: ActorProps,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): Movement = Movement(cellsPerSecond = cellsPerSecond)

override fun render(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import com.squareup.sample.timemachine.shakeable.ShakeableTimeMachineWorkflow.St
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowAction
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.runningWorker
import com.squareup.workflow1.ui.Screen
Expand Down Expand Up @@ -48,7 +49,8 @@ class ShakeableTimeMachineWorkflow<in P, O : Any, out R : Screen>(

override fun initialState(
props: PropsFactory<P>,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): State = Recording

override fun snapshotState(state: State): Snapshot? = null
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import com.squareup.sample.timemachine.RecorderWorkflow.RecorderProps.RecordValu
import com.squareup.sample.timemachine.RecorderWorkflow.Recording
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.WorkflowLocal
import kotlin.time.Duration
import kotlin.time.ExperimentalTime
import kotlin.time.TimeMark
Expand Down Expand Up @@ -49,7 +50,8 @@ internal class RecorderWorkflow<T>(

override fun initialState(
props: RecorderProps<T>,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): Recording<T> {
val now = clock.markNow()
return Recording(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package com.squareup.sample.helloterminal
import com.squareup.workflow1.Snapshot
import com.squareup.workflow1.StatefulWorkflow
import com.squareup.workflow1.Worker
import com.squareup.workflow1.WorkflowLocal
import com.squareup.workflow1.action
import com.squareup.workflow1.runningWorker
import kotlinx.coroutines.delay
Expand All @@ -29,7 +30,8 @@ class BlinkingCursorWorkflow(

override fun initialState(
props: Unit,
snapshot: Snapshot?
snapshot: Snapshot?,
workflowLocal: WorkflowLocal
): Boolean = true

override fun render(
Expand Down
Loading