class ZAWS::AWSCLI::Data::IAM::RolePolicy

Public Class Methods

new(shellout, iam) click to toggle source
# File lib/zaws/external/awscli/data/iam/role_policy.rb, line 7
def initialize(shellout, iam)
  @shellout=shellout
  @iam=iam
  @subnet_hash=nil
end

Public Instance Methods

load(command, data, verbose) click to toggle source
# File lib/zaws/external/awscli/data/iam/role_policy.rb, line 17
def load(command, data, verbose)
  @subnet_raw_data = data
  verbose.puts(@subnet_raw_data) if verbose
  @subnet_hash=nil
  begin
    @subnet_hash =JSON.parse(data)
  rescue JSON::ParserError => e
  end
end
resource_instance_ids() click to toggle source
# File lib/zaws/external/awscli/data/iam/role_policy.rb, line 31
def resource_instance_ids()
  instance_ids=nil
  if @subnet_hash and @subnet_hash["PolicyDocument"] and @subnet_hash["PolicyDocument"]["Statement"]
    statements = @subnet_hash["PolicyDocument"]["Statement"]
    statements.each do |item|
      if item["Resource"]
        item["Resource"].each do |res|
          if res =~ /:instance/
            instance_ids += ("\n" + res[/([^\/]+)$/]) if !instance_ids.nil?
            instance_ids = res[/([^\/]+)$/] if instance_ids.nil?
          end
        end
      end
    end
  end
  instance_ids
end
validJSON() click to toggle source
# File lib/zaws/external/awscli/data/iam/role_policy.rb, line 13
def validJSON
  return (@subnet_hash.nil?)
end
view() click to toggle source
# File lib/zaws/external/awscli/data/iam/role_policy.rb, line 27
def view()
  return @subnet_raw_data
end