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



1042
1043
1044
1045
1046
# File 'lib/s3/right_s3_interface.rb', line 1042

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

#tagend(name) ⇒ Object



1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
# File 'lib/s3/right_s3_interface.rb', line 1050

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



1047
1048
1049
# File 'lib/s3/right_s3_interface.rb', line 1047

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