Class: RightAws::S3Interface::S3ListBucketParser

Inherits:
RightAWSParser show all
Defined in:
lib/s3/right_s3_interface.rb

Overview

:nodoc:

Constant Summary

Constants inherited from RightAWSParser

RightAWSParser::DEFAULT_XML_LIBRARY

Instance Attribute Summary

Attributes inherited from RightAWSParser

#full_tag_name, #result, #tag, #xml_lib, #xmlpath

Instance Method Summary collapse

Methods inherited from RightAWSParser

#initialize, #method_missing, #parse, #tag_end, #tag_start, #tagtext, #text, xml_lib, xml_lib=

Constructor Details

This class inherits a constructor from RightAws::RightAWSParser

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class RightAws::RightAWSParser

Instance Method Details

#resetObject



1010
1011
1012
1013
1014
# File 'lib/s3/right_s3_interface.rb', line 1010

def reset
  @result      = []
  @service     = {}
  @current_key = {}
end

#tagend(name) ⇒ Object



1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
# File 'lib/s3/right_s3_interface.rb', line 1018

def tagend(name)
  case name
      # service info
    when 'Name'        then @service['name']         = @text
    when 'Prefix'      then @service['prefix']       = @text
    when 'Marker'      then @service['marker']       = @text
    when 'MaxKeys'     then @service['max-keys']     = @text
    when 'Delimiter'   then @service['delimiter']    = @text
    when 'IsTruncated' then @service['is_truncated'] = (@text =~ /false/ ? false : true)
      # key data
    when 'Key'         then @current_key[:key]                = @text
    when 'LastModified'then @current_key[:last_modified]      = @text
    when 'ETag'        then @current_key[:e_tag]              = @text
    when 'Size'        then @current_key[:size]               = @text.to_i
    when 'StorageClass'then @current_key[:storage_class]      = @text
    when 'ID'          then @current_key[:owner_id]           = @text
    when 'DisplayName' then @current_key[:owner_display_name] = @text
    when 'Contents'
      @current_key[:service] = @service
      @result << @current_key
  end
end

#tagstart(name, attributes) ⇒ Object



1015
1016
1017
# File 'lib/s3/right_s3_interface.rb', line 1015

def tagstart(name, attributes)
  @current_key = {} if name == 'Contents'
end