Ejemplo n.º 1
0
        public CustomMonitorConfig(MonitorDescriptor descriptor)
        {
            if (descriptor == null)
            {
                throw new ArgumentNullException("descriptor");
            }

            Descriptor = descriptor;
            Name       = Descriptor.Name;
        }
        /// <summary>
        /// Use to add a new Custom monitor.
        /// </summary>
        /// <param name="apiKey"></param>
        /// <param name="authToken"></param>
        /// <param name="descriptor">Configuration of monitor for add</param>
        /// <returns></returns>
        public AddMonitorResponse AddMonitor(String authToken, MonitorDescriptor descriptor)
        {
            if (descriptor == null)
            {
                throw new ArgumentNullException("descriptor");
            }

            APIClient apiClient = GetApiClient(ActionNames.AddMonitor, authToken);

            String resultParams = Utils.JoinMonitorResultParams(descriptor.ResultParams);

            apiClient.AddParam(ParamNames.ResultParams, resultParams);
            apiClient.AddParam(ParamNames.Name, descriptor.Name);
            apiClient.AddParam(ParamNames.Tag, descriptor.Tag);
            AddMonitorResponse addMonitorResponse = apiClient.InvokePost <AddMonitorResponse>();

            return(addMonitorResponse);
        }