Class: RightAws::S3Interface::S3AclParser

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



1096
1097
1098
1099
# File 'lib/s3/right_s3_interface.rb', line 1096

def reset
  @result          = {:grantees=>[], :owner=>{}}
  @current_grantee = {}
end

#tagend(name) ⇒ Object



1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
# File 'lib/s3/right_s3_interface.rb', line 1103

def tagend(name)
  case name
      # service info
    when 'ID'
      if @xmlpath == 'AccessControlPolicy/Owner'
        @result[:owner][:id] = @text
      else
        @current_grantee[:id] = @text
      end
    when 'DisplayName'
      if @xmlpath == 'AccessControlPolicy/Owner'
        @result[:owner][:display_name] = @text
      else
        @current_grantee[:display_name] = @text
      end
    when 'URI'
      @current_grantee[:uri] = @text
    when 'Permission'
      @current_grantee[:permissions] = @text
    when 'Grant'
      @result[:grantees] << @current_grantee
  end
end

#tagstart(name, attributes) ⇒ Object



1100
1101
1102
# File 'lib/s3/right_s3_interface.rb', line 1100

def tagstart(name, attributes)
  @current_grantee = { :attributes => attributes } if name=='Grantee'
end