public static int?SalvaNodeDrupalRest(Dictionary <string, string> postParameters, bool salvarLog = true, BMConfiguracaoSistema bmConfiguracaoSistema = null, BMLogSincronia bmLogSincronia = null, Usuario usuarioLogado = null) { var basePath = ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.UrlRestPortal, bmConfiguracaoSistema).Registro; var pathRestPortal = ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.PathRestPortal, bmConfiguracaoSistema).Registro; var logSincronia = new LogSincronia { Usuario = usuarioLogado ?? new BMUsuario().ObterUsuarioLogado(), Sincronizado = false, Url = basePath + pathRestPortal, Action = "import", Method = "POST", Acao = enumAcao.Atualizar }; logSincronia.ListaPostParameters = postParameters.Select( p => new LogSincroniaPostParameters { LogSincronia = logSincronia, Descricao = p.Value, Registro = p.Key }).ToList(); logSincronia.Hash = logSincronia.HashObj(); try { return(NodeDrupalRest(logSincronia, bmConfiguracaoSistema)); } catch { if (!salvarLog) { throw; } //dll UTIL não tem acesso a camada "BP" Para Evitar "referencing loop detected" bmLogSincronia = bmLogSincronia ?? new BMLogSincronia(); var tmpLogSincronia = bmLogSincronia.ObterPorFiltro(logSincronia); if (tmpLogSincronia != null && tmpLogSincronia.Sincronizado) { return(null); } bmLogSincronia.Salvar(logSincronia); return(null); } }
public static void RemoverNodeDrupalRest(int id, bool salvarLog = true) { var basePath = ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.UrlRestPortal).Registro; var pathRestPortal = ConfiguracaoSistemaUtil.ObterInformacoes(enumConfiguracaoSistema.PathRestPortal).Registro; var logSincronia = new LogSincronia { Usuario = (new BMUsuario()).ObterUsuarioLogado(), Sincronizado = false, Url = basePath + pathRestPortal, Action = "delete", Method = "POST", Acao = enumAcao.Remover }; var postParameters = new Dictionary <string, string> { { "node_id", id.ToString() } }; logSincronia.ListaPostParameters = postParameters.Select( p => new LogSincroniaPostParameters { LogSincronia = logSincronia, Descricao = p.Value, Registro = p.Key }).ToList(); logSincronia.Hash = logSincronia.HashObj(); try { NodeDrupalRest(logSincronia); } catch (Exception) { if (!salvarLog) { throw; } //dll UTIL não tem acesso a camada "BP" Para Evitar "referencing loop detected" var bmLogSincronia = new BMLogSincronia(); var tmpLogSincronia = bmLogSincronia.ObterPorFiltro(logSincronia); if (tmpLogSincronia != null && tmpLogSincronia.Sincronizado) { return; } bmLogSincronia.Salvar(logSincronia); } }
public void Sincronizar(LogSincronia log) { if (log == null) { return; } try { var result = DrupalUtil.NodeDrupalRest(log).HasValue; if (!result) { return; } log.Sincronizado = true; _bmLogSincronia.Salvar(log); } catch { } }