Sha256: 2c08ad3eac126a1b0d506f2c20c0755ae30a667ab32a8b6885d59e0352596618

Contents?: true

Size: 674 Bytes

Versions: 5

Compression:

Stored size: 674 Bytes

Contents

module CloudConnect
  module Channels

    # Retrieve list of channels
    # WARNING: This method uses calls not officially supported by Mobile Devices.
    #
    # @return [Array of Hashie::Mash] Channels
    def channels(reload = false)
      return @channels if @channels && !reload
      page  = 1
      limit = 100
      channels = []
      while (slice = connection.get(connection.build_url("channels", :per_page => limit, :page => page)).body).size > 0
        page += 1
        channels += slice.map!{|hash| hash.values.first} if slice.size > 0
        slice.size < limit ? break : sleep(1)
      end
      @channels = channels.sort_by(&:channel)
    end

  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
cloud_connect-2.0.2 lib/cloud_connect/client/channels.rb
cloud_connect-2.0.1 lib/cloud_connect/client/channels.rb
cloud_connect-2.0.0 lib/cloud_connect/client/channels.rb
cloud_connect-0.0.2 lib/cloud_connect/client/channels.rb
cloud_connect-0.0.1 lib/cloud_connect/client/channels.rb