Module AmazonMQ.Broker

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html

type encryption_options = {
  1. kms_key_id : string option;
  2. use_aws_owned_key : bool;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-encryptionoptions.html

and configuration_id = {
  1. revision : int;
  2. id : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-configurationid.html

and tags_entry = {
  1. value : string;
  2. key : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-tagsentry.html

and ldap_server_metadata = {
  1. hosts : string list;
  2. user_role_name : string option;
  3. user_search_matching : string;
  4. role_name : string option;
  5. user_base : string;
  6. user_search_subtree : bool option;
  7. role_search_matching : string;
  8. service_account_username : string;
  9. role_base : string;
  10. service_account_password : string;
  11. role_search_subtree : bool option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html

and user = {
  1. replication_user : bool option;
  2. username : string;
  3. groups : string list option;
  4. console_access : bool option;
  5. password : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-user.html

and maintenance_window = {
  1. day_of_week : string;
  2. time_of_day : string;
  3. time_zone : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-maintenancewindow.html

and log_list = {
  1. audit : bool option;
  2. general : bool option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-loglist.html

type properties = {
  1. security_groups : string list option;
  2. data_replication_primary_broker_arn : string option;
  3. storage_type : string option;
  4. engine_version : string;
  5. configuration : configuration_id option;
  6. authentication_strategy : string option;
  7. maintenance_window_start_time : maintenance_window option;
  8. host_instance_type : string;
  9. auto_minor_version_upgrade : bool;
  10. users : user list;
  11. logs : log_list option;
  12. subnet_ids : string list option;
  13. data_replication_mode : string option;
  14. broker_name : string;
  15. ldap_server_metadata : ldap_server_metadata option;
  16. deployment_mode : string;
  17. engine_type : string;
  18. publicly_accessible : bool;
  19. encryption_options : encryption_options option;
  20. tags : tags_entry list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html;

val make_properties : ?security_groups:string list -> ?data_replication_primary_broker_arn:string -> ?storage_type:string -> engine_version:string -> ?configuration:configuration_id -> ?authentication_strategy:string -> ?maintenance_window_start_time:maintenance_window -> host_instance_type:string -> auto_minor_version_upgrade:bool -> users:user list -> ?logs:log_list -> ?subnet_ids:string list -> ?data_replication_mode:string -> broker_name:string -> ?ldap_server_metadata:ldap_server_metadata -> deployment_mode:string -> engine_type:string -> publicly_accessible:bool -> ?encryption_options:encryption_options -> ?tags:tags_entry list -> unit -> properties
val make_encryption_options : ?kms_key_id:string -> use_aws_owned_key:bool -> unit -> encryption_options
val make_configuration_id : revision:int -> id:string -> unit -> configuration_id
val make_tags_entry : value:string -> key:string -> unit -> tags_entry
val make_ldap_server_metadata : hosts:string list -> ?user_role_name:string -> user_search_matching:string -> ?role_name:string -> user_base:string -> ?user_search_subtree:bool -> role_search_matching:string -> service_account_username:string -> role_base:string -> service_account_password:string -> ?role_search_subtree:bool -> unit -> ldap_server_metadata
val make_user : ?replication_user:bool -> username:string -> ?groups:string list -> ?console_access:bool -> password:string -> unit -> user
val make_maintenance_window : day_of_week:string -> time_of_day:string -> time_zone:string -> unit -> maintenance_window
val make_log_list : ?audit:bool -> ?general:bool -> unit -> log_list
val yojson_of_encryption_options : encryption_options -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_configuration_id : configuration_id -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_tags_entry : tags_entry -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_ldap_server_metadata : ldap_server_metadata -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_user : user -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_maintenance_window : maintenance_window -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_log_list : log_list -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties : properties -> [> `Assoc of (string * Yojson.Safe.t) list ]
type attributes = {
  1. ref_ : string;
  2. ip_addresses : string list;
  3. open_wire_endpoints : string list;
  4. configuration_revision : int;
  5. stomp_endpoints : string list;
  6. mqtt_endpoints : string list;
  7. amqp_endpoints : string list;
  8. arn : string;
  9. configuration_id : string;
  10. wss_endpoints : string list;
}
val create_attributes : string -> attributes
val cloudformation_type : string