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

#result, #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



1065
1066
1067
1068
# File 'lib/s3/right_s3_interface.rb', line 1065

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

#tagend(name) ⇒ Object



1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
# File 'lib/s3/right_s3_interface.rb', line 1072

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



1069
1070
1071
# File 'lib/s3/right_s3_interface.rb', line 1069

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