Class: Aws::S3Interface::S3AclParser

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

Overview

:nodoc:

Constant Summary

Constants inherited from AwsParser

AwsParser::DEFAULT_XML_LIBRARY

Instance Attribute Summary

Attributes inherited from AwsParser

#result, #xml_lib, #xmlpath

Instance Method Summary collapse

Methods inherited from AwsParser

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

Constructor Details

This class inherits a constructor from Aws::AwsParser

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Aws::AwsParser

Instance Method Details

#resetObject



1143
1144
1145
1146
# File 'lib/s3/right_s3_interface.rb', line 1143

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

#tagend(name) ⇒ Object



1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
# File 'lib/s3/right_s3_interface.rb', line 1152

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



1148
1149
1150
# File 'lib/s3/right_s3_interface.rb', line 1148

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