Class: AWSCDK::DataZone::CfnPolicyGrant::PolicyGrantPrincipalProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
data_zone/cfn_policy_grant.rb

Overview

The policy grant principal.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(domain_unit: nil, group: nil, project: nil, user: nil) ⇒ PolicyGrantPrincipalProperty

Returns a new instance of PolicyGrantPrincipalProperty.

Parameters:



1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
# File 'data_zone/cfn_policy_grant.rb', line 1244

def initialize(domain_unit: nil, group: nil, project: nil, user: nil)
  @domain_unit = domain_unit.is_a?(Hash) ? ::AWSCDK::DataZone::CfnPolicyGrant::DomainUnitPolicyGrantPrincipalProperty.new(**domain_unit.transform_keys(&:to_sym)) : domain_unit
  Jsii::Type.check_type(@domain_unit, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhem9uZS5DZm5Qb2xpY3lHcmFudC5Eb21haW5Vbml0UG9saWN5R3JhbnRQcmluY2lwYWxQcm9wZXJ0eSJ9XX19")), "domainUnit") unless @domain_unit.nil?
  @group = group.is_a?(Hash) ? ::AWSCDK::DataZone::CfnPolicyGrant::GroupPolicyGrantPrincipalProperty.new(**group.transform_keys(&:to_sym)) : group
  Jsii::Type.check_type(@group, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhem9uZS5DZm5Qb2xpY3lHcmFudC5Hcm91cFBvbGljeUdyYW50UHJpbmNpcGFsUHJvcGVydHkifV19fQ==")), "group") unless @group.nil?
  @project = project.is_a?(Hash) ? ::AWSCDK::DataZone::CfnPolicyGrant::ProjectPolicyGrantPrincipalProperty.new(**project.transform_keys(&:to_sym)) : project
  Jsii::Type.check_type(@project, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhem9uZS5DZm5Qb2xpY3lHcmFudC5Qcm9qZWN0UG9saWN5R3JhbnRQcmluY2lwYWxQcm9wZXJ0eSJ9XX19")), "project") unless @project.nil?
  @user = user.is_a?(Hash) ? ::AWSCDK::DataZone::CfnPolicyGrant::UserPolicyGrantPrincipalProperty.new(**user.transform_keys(&:to_sym)) : user
  Jsii::Type.check_type(@user, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhem9uZS5DZm5Qb2xpY3lHcmFudC5Vc2VyUG9saWN5R3JhbnRQcmluY2lwYWxQcm9wZXJ0eSJ9XX19")), "user") unless @user.nil?
end

Instance Attribute Details

#domain_unitAWSCDK::IResolvable, ... (readonly)

The domain unit of the policy grant principal.



1259
1260
1261
# File 'data_zone/cfn_policy_grant.rb', line 1259

def domain_unit
  @domain_unit
end

#projectAWSCDK::IResolvable, ... (readonly)

The project of the policy grant principal.



1269
1270
1271
# File 'data_zone/cfn_policy_grant.rb', line 1269

def project
  @project
end

Class Method Details

.jsii_propertiesObject



1276
1277
1278
1279
1280
1281
1282
1283
# File 'data_zone/cfn_policy_grant.rb', line 1276

def self.jsii_properties
  {
    :domain_unit => "domainUnit",
    :group => "group",
    :project => "project",
    :user => "user",
  }
end

Instance Method Details

#to_jsiiObject



1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
# File 'data_zone/cfn_policy_grant.rb', line 1285

def to_jsii
  result = {}
  result.merge!({
    "domainUnit" => @domain_unit,
    "group" => @group,
    "project" => @project,
    "user" => @user,
  })
  result.compact
end