1LAYER Tech Documentation
  • Intro
  • 1LAYER AI
    • AI Cognitive Framework
  • 1LAYER DeFi
    • Smart Contract System
      • Flows
        • Swap Flow
          • Interchain Swap
          • Intrachain Swap
        • Vault Flow
      • Smart Contracts
        • Broadcaster Components Diagram
        • User Components Diagram
        • Admin Components Diagram
Powered by GitBook
On this page
  1. 1LAYER DeFi
  2. Smart Contract System
  3. Smart Contracts

Broadcaster Components Diagram

This page contains the components diagram for the Operator Role.

PreviousSmart ContractsNextUser Components Diagram

Last updated 9 months ago

This component diagram focuses on the broadcaster role and its interactions within the system. Here's a breakdown of the diagram:

  1. Main Components:

    • RolesManager: Manages roles, including the MESSAGES_BROADCASTER role.

    • Registry: Provides access to other components and configurations.

    • InterNetworkExecutor: Handles cross-network message execution.

    • Gateway: Processes cross-chain messages.

    • OneLayerGateway: An alternative gateway implementation.

    • Broadcaster: Represents the external entity with the broadcaster role.

  2. Relationships:

    • Dashed lines with open arrows (..>) represent dependencies or usage.

  3. Entry Points:

    • InterNetworkExecutor: The execute(ExecutionMessage) method is an entry point for the broadcaster.

    • OneLayerGateway: The receiveMessage(CrossChainMessage) method is another entry point for the broadcaster.

  4. Key Interactions:

    • The Broadcaster interacts directly with InterNetworkExecutor and OneLayerGateway.

    • All components depend on the Registry for accessing other parts of the system.

    • The Registry uses the RolesManager to check roles.

Diagram Code
classDiagram
    class RolesManager {
        +MESSAGES_BROADCASTER
        +hasRole()
    }

    class Registry {
        +getRolesManager()
        +getInterNetworkExecutor()
        +getCentralGateway()
    }

    class InterNetworkExecutor {
        +execute(ExecutionMessage)
    }

    class OneLayerGateway {
        +receiveMessage(CrossChainMessage)
    }

    class Broadcaster["Broadcaster (External)"]

    Registry --> RolesManager : uses
    InterNetworkExecutor --> Registry : uses
    OneLayerGateway --> Registry : uses

    Broadcaster --> InterNetworkExecutor : calls
    Broadcaster --> OneLayerGateway : calls

    class InterNetworkExecutor {
        <<entrypoint>>
    }
    class OneLayerGateway {
        <<entrypoint>>
    }