Skip to content

Commit

Permalink
Merge pull request #179 from elyzion/align_managed_policy_arns_parame…
Browse files Browse the repository at this point in the history
…ter_types

Align managed policy arns parameter types
  • Loading branch information
bkrodgers committed Jul 19, 2017
2 parents 7a2a22b + 3405eea commit d4faa0e
Showing 1 changed file with 11 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -70,20 +70,21 @@ object AccessKeyStatus extends DefaultJsonProtocol{

case class `AWS::IAM::ManagedPolicy`(
name: String,
PolicyDocument: PolicyDocument,
Description: Option[String] = None,
Path: Option[Token[String]] = None,
Groups: Option[Seq[ResourceRef[`AWS::IAM::Group`]]] = None,
Roles: Option[Seq[ResourceRef[`AWS::IAM::Role`]]] = None,
Users: Option[Seq[ResourceRef[`AWS::IAM::User`]]] = None,
PolicyDocument: PolicyDocument,
ManagedPolicyName: Option[Token[String]] = None,
Description: Option[String] = None,
Path: Option[Token[String]] = None,
Groups: Option[Seq[ResourceRef[`AWS::IAM::Group`]]] = None,
Roles: Option[Seq[ResourceRef[`AWS::IAM::Role`]]] = None,
Users: Option[Seq[ResourceRef[`AWS::IAM::User`]]] = None,
override val Condition: Option[ConditionRef] = None
) extends Resource[`AWS::IAM::ManagedPolicy`] {

def when(newCondition: Option[ConditionRef] = Condition) = copy(Condition = newCondition)
}

object `AWS::IAM::ManagedPolicy` extends DefaultJsonProtocol {
implicit val format: JsonFormat[`AWS::IAM::ManagedPolicy`] = jsonFormat8(`AWS::IAM::ManagedPolicy`.apply)
implicit val format: JsonFormat[`AWS::IAM::ManagedPolicy`] = jsonFormat9(`AWS::IAM::ManagedPolicy`.apply)
}

sealed trait ManagedPolicy
Expand Down Expand Up @@ -168,15 +169,16 @@ object PolicyStatement extends DefaultJsonProtocol {

case class `AWS::IAM::Group`(
name: String,
ManagedPolicyArns: Option[Seq[ResourceRef[`AWS::IAM::ManagedPolicy`]]] = None,
GroupName: Option[Token[String]] = None,
ManagedPolicyArns: Option[Seq[ManagedPolicyARN]] = None,
Path: Option[Token[String]] = None,
Policies: Option[Seq[Policy]] = None,
override val Condition: Option[ConditionRef] = None
) extends Resource[`AWS::IAM::Group`]{
def when(newCondition: Option[ConditionRef] = Condition) = copy(Condition = newCondition)
}
object `AWS::IAM::Group` extends DefaultJsonProtocol {
implicit val format: JsonFormat[`AWS::IAM::Group`] = jsonFormat5(`AWS::IAM::Group`.apply)
implicit val format: JsonFormat[`AWS::IAM::Group`] = jsonFormat6(`AWS::IAM::Group`.apply)
}

@implicitNotFound("you can only specify one of Groups, Roles, or Users")
Expand Down

0 comments on commit d4faa0e

Please sign in to comment.