text: /*
   * Copyright (c) Microsoft Corporation. All rights reserved.
   * Licensed under the MIT License. See License.txt in the project root for
   * license information.
   * 
   * Code generated by Microsoft (R) AutoRest Code Generator.
   * Changes may cause incorrect behavior and will be lost if the code is
   * regenerated.
   */
  
  'use strict';
  
  var models = require('./index');
  
  var util = require('util');
  
  /**
   * @class
   * Initializes a new instance of the RuleEmailAction class.
   * @constructor
   * Specifies the action to send email when the rule condition is evaluated.
   *
   * @member {boolean} [sendToServiceOwners] the flag to send e-mails to the
   * service owners. Whether the administrators (service and co-adiminstrators)
   * of the service should be notified when the alert is activated.
   * 
   * @member {array} [customEmails] the list of administrator's custom email
   * addresses notifiy of the activation of the alert.
   * 
   */
  function RuleEmailAction() {
    RuleEmailAction['super_'].call(this);
  }
  
  util.inherits(RuleEmailAction, models['RuleAction']);
  
  /**
   * Defines the metadata of RuleEmailAction
   *
   * @returns {object} metadata of RuleEmailAction
   *
   */
  RuleEmailAction.prototype.mapper = function () {
    return {
      required: false,
      serializedName: 'Microsoft.Azure.Management.Insights.Models.RuleEmailAction',
      type: {
        name: 'Composite',
        className: 'RuleEmailAction',
        modelProperties: {
          odatatype: {
            required: true,
            serializedName: 'odata\\.type',
            type: {
              name: 'String'
            }
          },
          sendToServiceOwners: {
            required: false,
            serializedName: 'sendToServiceOwners',
            type: {
              name: 'Boolean'
            }
          },
          customEmails: {
            required: false,
            serializedName: 'customEmails',
            type: {
              name: 'Sequence',
              element: {
                  required: false,
                  serializedName: 'StringElementType',
                  type: {
                    name: 'String'
                  }
              }
            }
          }
        }
      }
    };
  };
  
  module.exports = RuleEmailAction;
  