def validate.policy

mylsm-lsm-store@0.6.0.1 · src/coordinator/Protocol.bend:731

import mylsm-lsm-store@0.6.0.1/src/coordinator/Protocol.bend as Protocol
import Base
import bend-kit-bytes@0.3.2.0/bytes.bend as Bytes

731def validate.policy(
732  request_id: U32,
733  operation: U32,
734  payload: Bytes.Bytes,
735  version_valid: Bool,
736  generation_valid: Bool,
737  operation_valid: Bool,
738  size_valid: Bool
739) -> Decision:
740  match version_valid:
741    case False{}: VersionMismatch{}
742    case True{}:
743      match generation_valid:
744        case False{}: StaleGeneration{}
745        case True{}:
746          match operation_valid:
747            case False{}: UnsupportedRequestOperation{}
748            case True{}:
749              match size_valid:
750                case False{}: ResourceLimit{}
751                case True{}: Accepted{request_id, operation, payload}

Uses (4)

Used by (1)