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



1121
1122
1123
1124
# File 'lib/s3/right_s3_interface.rb', line 1121

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

#tagend(name) ⇒ Object



1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
# File 'lib/s3/right_s3_interface.rb', line 1130

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



1126
1127
1128
# File 'lib/s3/right_s3_interface.rb', line 1126

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