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



1128
1129
1130
1131
# File 'lib/s3/right_s3_interface.rb', line 1128

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

#tagend(name) ⇒ Object



1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
# File 'lib/s3/right_s3_interface.rb', line 1135

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



1132
1133
1134
# File 'lib/s3/right_s3_interface.rb', line 1132

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