public IList <Command> Resolve(TriggerDTO source, Trigger destination, IList <Command> destMember, ResolutionContext context) { var commands = new List <Command>(); var types = AssemblyHelper.GetAllTypes <Command>(); foreach (var commandDTO in source.Commands) { var commandType = types.FirstOrDefault(c => c.Name.IndexOf(commandDTO.Type) > -1); var command = context.Mapper.Map(commandDTO, commandDTO.GetType(), commandType) as Command; commands.Add(command); } return(commands); }
public List <TriggerDTO> BuscarTriggers(Usuarios user, int hostID) { //var json = "{\"jsonrpc\":\"2.0\",\"method\":\"trigger.get\",\"params\":{\"output\":[\"triggerid\",\"deion\"],\"groupids\":\"" + groupID + "\"},\"auth\":\"" + user.Auth + "\",\"id\":1}"; try { //var user = _userRepository.BuscarPorID(userId.id); if (user.Auth == null || user.Auth == "") { throw new Exception("Erro no Login Zabbix! Relogar"); } HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, user.Url); request.Content = new StringContent("{\"jsonrpc\":\"2.0\",\"method\":\"trigger.get\",\"params\":{\"output\":\"extend\",\"hostids\":\"" + hostID + "\"},\"auth\":\"" + user.Auth + "\",\"id\":1}", Encoding.UTF8, "application/json"); HttpResponseMessage response = _instance.GetHttpClientInstance().SendAsync(request).Result; JArray triggers = (JArray)JObject.Parse(response.Content.ReadAsStringAsync().Result)["result"]; List <TriggerDTO> lista = new List <TriggerDTO>(); foreach (var item in triggers) { TriggerDTO novaTrigger = new TriggerDTO(); novaTrigger.Id = (int)item["triggerid"]; novaTrigger.Mensagem = item["description"].ToString(); lista.Add(novaTrigger); } return(lista); } catch (Exception ex) { throw new Exception(ex.Message); } }