LiveSessionBuilder
class LiveSessionBuilder[R, Ctx]Defined by scalive.LiveSessionBuilder. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1155-1278)
Methods7
apply
def apply[R1](routes: (LiveRouteFragment[R1] { type Input >: Ctx })*): LiveSession[&[R, R1]]Defined by scalive.LiveSessionBuilder.apply. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1266-1277)
guardConnectedTurns
def guardConnectedTurns[Result <: Unit](guard: Ctx => zio.IO[LiveConnectedTurnFailure, Result]): LiveSessionBuilder[R, Ctx]Appends a policy check before each connected application turn.
Guards at one boundary run in declaration order; session guards run before route guards. The
callback receives the context available at this builder. Succeed with Unit to continue, or
fail with LiveConnectedTurnFailure for a controlled halt, redirect, reload, or disconnect.
Guards are inherited by nested LiveViews and do not run during mount, disconnected rendering,
or framework cleanup.
Defined by scalive.LiveSessionBuilder.guardConnectedTurns. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1254-1264)
withAdmission
def withAdmission[R1, Claims, Out, Result, Id](aspect: LiveSessionMountAspect[R1, Ctx, Claims, Out])(connectionId: Claims => Id)(using append: ContextAppend.Aux[Ctx, Out, Result], connections: zio.package.Tag[LiveConnections[Id]]): LiveSessionBuilder.Admitted[&[&[R, R1], LiveConnections[Id]], Result]Adds the session's single active-connection admission boundary.
The signed aspect claim supplies the application-owned connection identifier. Connected mount registers the physical transport before invoking the aspect's authoritative callback.
Defined by scalive.LiveSessionBuilder.withAdmission. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1193-1208)
withConnectedResources
def withConnectedResources[Result <: Unit](initialize: (Ctx, ConnectedResources) => zio.Task[Result]): LiveSessionBuilder[R, Ctx]Appends session setup before route setup and connected mount, in declaration order.
Defined by scalive.LiveSessionBuilder.withConnectedResources. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1163-1173)
withLayout
def withLayout(value: LiveLayout[Any, Ctx]): LiveSessionBuilder[R, Ctx]Defined by scalive.LiveSessionBuilder.withLayout. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1210-1218)
def withLayout[LayoutContext](layout: LiveLayout[Any, LayoutContext], select: Ctx => LayoutContext): LiveSessionBuilder[R, Ctx]Appends a layout, selecting its input from the context available at this declaration. The pure selector adapts only the layout; later aspects preserve this context selection.
Defined by scalive.LiveSessionBuilder.withLayout. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1223-1226)
withMountAspect
def withMountAspect[R1, Claims, Out, Result](aspect: LiveSessionMountAspect[R1, Ctx, Claims, Out])(using append: ContextAppend.Aux[Ctx, Out, Result]): LiveSessionBuilder[&[R, R1], Result]Defined by scalive.LiveSessionBuilder.withMountAspect. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1175-1186)
withRootLayout
def withRootLayout(value: LiveRootLayout[Any, Ctx]): LiveSessionBuilder[R, Ctx]Defined by scalive.LiveSessionBuilder.withRootLayout. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1228-1236)
def withRootLayout[LayoutContext](layout: LiveRootLayout[Any, LayoutContext], select: Ctx => LayoutContext): LiveSessionBuilder[R, Ctx]Replaces the session root, selecting its input from this declaration's context. Key and render select independently, so the selector must be pure and deterministic.
Defined by scalive.LiveSessionBuilder.withRootLayout. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1241-1244)
Values1
name
val name: StringDefined by scalive.LiveSessionBuilder.name. View source (scalive/api/src/scalive/routing/LiveRouting.scala:1156-1156)