Sha256: 0de8afe9021823d615f8208e1925241aff9b461500ffcb4cb039461ec9dbc0ff

Contents?: true

Size: 594 Bytes

Versions: 2

Compression:

Stored size: 594 Bytes

Contents

module Backport
  module Server
    # A mixin for Backport servers that communicate with clients.
    #
    # Connectable servers check clients for incoming data on each tick.
    #
    module Connectable
      # @return [void]
      def starting
        clients.map(&:run)
      end

      # @return [void]
      def stopping
        clients.map(&:stop)
      end

      # @return [Array<Client>]
      def clients
        @clients ||= []
      end

      private

      # @return [Mutex]
      def mutex
        @mutex ||= Mutex.new
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
getargv-0.3.3-universal-darwin vendor/bundle/ruby/3.3.0/gems/backport-1.2.0/lib/backport/server/connectable.rb
backport-1.2.0 lib/backport/server/connectable.rb