Sha256: 4e7cd9a2f9251ce058494329a9ce24c168b7d038ed5c3188bf736cab7b23b2af

Contents?: true

Size: 651 Bytes

Versions: 5

Compression:

Stored size: 651 Bytes

Contents

module CloudConnect
  module Fields

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

Version data entries

5 entries across 5 versions & 1 rubygems

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