Sha256: 8e4407848ef14bce0ab1c5bd51bba6808cc37c65c1190a0232d385bfbdb2d987
Contents?: true
Size: 1.85 KB
Versions: 1
Compression:
Stored size: 1.85 KB
Contents
# frozen_string_literal: true module Fog module Storage class Aliyun class Real # List existing storage containers # # ==== Parameters # * options<~Hash>: # * 'maxKeys'<~Integer> - Upper limit to number of results returned # * 'marker'<~String> - Only return objects with name greater than this value # # ==== Returns # def get_containers(options = {}) options = options.reject { |_key, value| value.nil? } bucket = options[:bucket] bucket ||= @aliyun_oss_bucket prefix = options[:prefix] marker = options[:marker] maxKeys = options[:maxKeys] delimiter = '/' path = '' if prefix path += '?prefix=' + prefix path += '&marker=' + marker if marker path += '&max-keys=' + maxKeys if maxKeys path += '&delimiter=' + delimiter if delimiter elsif marker path += '?marker=' + marker path += '&max-keys=' + maxKeys if maxKeys path += '&delimiter=' + delimiter if delimiter elsif maxKeys path += '?max-keys=' + maxKeys path += '&delimiter=' + delimiter if delimiter elsif delimiter path += '?delimiter=' + delimiter end location = get_bucket_location(bucket) endpoint = 'http://' + location + '.aliyuncs.com' resource = bucket + '/' ret = request( expects: [200, 203, 400], method: 'GET', path: path, resource: resource, bucket: bucket ) xml = ret.data[:body] result = XmlSimple.xml_in(xml)['CommonPrefixes'] end end class Mock def get_containers(options = {}); end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fog-aliyun-0.3.1 | lib/fog/aliyun/requests/storage/get_containers.rb |