예제 #1
0
        /// <summary>
        /// Comparator for Breakpoint.
        /// </summary>
        /// <param name="other">Another breakpoint.</param>
        /// <returns>Return negative integer if this is less than other breakpoint, zero if equals, positive integer if more.</returns>
        public int CompareTo(IBreakPoint other)
        {
            int x = Time.CompareTo(other.Time);
            int y = Priority.CompareTo(other.Priority);
            int z;

            if (other is BreakPoint)
            {
                z = NumberOfMessage.CompareTo(((BreakPoint)other).NumberOfMessage);
            }
            else
            {
                z = Key.CompareTo(other.Key);
            }
            if (x != 0)
            {
                return(x);
            }
            else if (y != 0)
            {
                return(y);
            }
            else
            {
                return(z);
            }
        }
예제 #2
0
        private string Importation(NumberOfMessage numberOfMessage)
        {
            string kindMessage = Option.IMPORTACAO;
            string message     = MessagesOfReturn.Message(numberOfMessage, kindMessage);
            IDictionary <string, List <string> > objectsToRequest = new DatasToRequest4(kindMessage).GetDatasToRequest();
            ContentText contentForSave = new ContentText(numberOfMessage, kindMessage);

            return(new ProcessMessage <ResponseMessage4>(objectsToRequest, contentForSave).Process());
        }
예제 #3
0
        /// <summary>
        /// Constrói o arquivo de log, se já existir apenas alimenta
        /// </summary>
        /// <param name="messageLog">string com a mensagem que será gravada no log</param>
        /// <param name="numberOfMessage">QUal mensagem se refere</param>
        public static void BuildLogUser(string messageLog, NumberOfMessage numberOfMessage, TimeSpan totalTime)
        {
            string textForLog = "";

            textForLog += MessagesOfReturn.LineDashed;
            textForLog += MessagesOfReturn.TitleLogUser(numberOfMessage);
            textForLog += MessagesOfReturn.ActualDateInfo;
            textForLog += MessagesOfReturn.TotalTime(totalTime);
            textForLog += messageLog;
            textForLog += MessagesOfReturn.LineDashed;

            SaveLog(_configuration.RootLog, Option.NameFileLogUser, textForLog);
        }
예제 #4
0
        public string Execute()
        {
            string          messageReturn   = "";
            NumberOfMessage numberOfMessage = NumberOfMessage.Four;

            messageReturn = Exportation(numberOfMessage);

            messageReturn += MessagesOfReturn.NewLine;

            messageReturn += Importation(numberOfMessage);

            return(messageReturn);
        }
예제 #5
0
 /// <summary>
 /// Configura o Status com as informações enviadas através dos parâmetros
 /// message, typeMessage e sbeln. Se o Status enviado for null, então cria um Status
 /// com as informações internas
 /// </summary>
 /// <param name="status">Objeto Status que será configurado</param>
 /// <param name="numberOfMessage">Número que a Mensagem se refere</param>
 /// <param name="kindOfMessage">Qual o tipo de Mensagem que se refere</param>
 /// <param name="sbeln">Número do embarque</param>
 public static void ConfigureStatus(Status status, NumberOfMessage numberOfMessage, string kindOfMessage, string sbeln = null)
 {
     if (status == null)
     {
         status      = new Status();
         status.CODE = MessagesOfReturn.InternalCode;
         status.DESC = MessagesOfReturn.Description;
     }
     status.SBELN       = sbeln;
     status.Mensagem    = (byte)numberOfMessage;
     status.DataRetorno = ConfigureDate.ActualDate;
     status.Tipo        = kindOfMessage;
 }
예제 #6
0
        public string SaveDataBase(string identifier, string message, string kindOfMessage)
        {
            NumberOfMessage numberOfMessage = NumberOfMessage.Four;

            ConfigStatus.ConfigureStatus(RESPONSE.STATUS, numberOfMessage, kindOfMessage, identifier);

            if (RESPONSE.STATUS.ERRORS != null && RESPONSE.STATUS.ERRORS.Count > 0)
            {
                return(SaveResponseAlerta(RESPONSE.STATUS, message, numberOfMessage));
            }
            else
            {
                return(SaveResponseSuccess(RESPONSE.STATUS, message, identifier));
            }
        }
예제 #7
0
        /// <summary>
        /// Cria um objeto que manterá todas as informações de infraestrura para salvar os arquivos em disco
        /// </summary>
        /// <param name="rootFolder">String com o caminho do diretório que manterá todos arquivos de log</param>
        /// <param name="embarque">String com o valor do SBELN</param>
        /// <param name="numberOfMessage">Enum com o número da mensagem</param>
        /// <param name="kindOfMessage">String com o tipo da mensagem. Utilize as constantes Exportacao/Importação disponibilizados na classe estática Option</param>
        /// <param name="typeContent">Enum com o tipo de processo, requisição ou resposta</param>
        public PathSaveFile(string rootFolder, string embarque, NumberOfMessage numberOfMessage, string kindOfMessage, TypeContentText typeContent)
        {
            _rootFolder      = rootFolder;
            _embarque        = embarque;
            _numberOfMessage = (byte)numberOfMessage;
            _kindOfMessage   = ConfigureString.RemoveAccents(kindOfMessage);

            if (typeContent == TypeContentText.RESPONSE)
            {
                _lastFolder = "Response";
            }
            else
            {
                _lastFolder = "Request";
            }
        }
예제 #8
0
        public string SaveDataBase(string identifier, string message, string kindOfMessage)
        {
            string          msgReturn       = "";
            NumberOfMessage numberOfMessage = NumberOfMessage.Two;

            ConfigStatus.ConfigureStatus(RESPONSE.STATUS, numberOfMessage, kindOfMessage, identifier);

            if (RESPONSE.MAIN != null && !string.IsNullOrEmpty(RESPONSE.MAIN.SBELN))
            {
                msgReturn = SaveResponseSuccess(message, kindOfMessage);
            }
            else
            {
                msgReturn = SaveResponseAlerta(RESPONSE.STATUS, message, numberOfMessage);
            }

            return(msgReturn);
        }
예제 #9
0
        public string SaveDataBase(string idBroker, string message, string kindOfMessage)
        {
            NumberOfMessage numberOfMessage = NumberOfMessage.One;

            ConfigStatus.ConfigureStatus(RESPONSE.STATUS, numberOfMessage, kindOfMessage);
            AlimentaIdDadosBroker(int.Parse(idBroker));

            if (RESPONSE.ListaEmbarque != null && RESPONSE.ListaEmbarque.Embarques.Count > 0)
            {
                return(SaveResponseSuccess(message, kindOfMessage));
            }
            else if (RESPONSE.STATUS != null)
            {
                return(SaveResponseAlerta(message, numberOfMessage));
            }
            else // Se não recebeu nenhum Embarque do WebService
            {
                return(MessagesOfReturn.AlertResponseWebServiceError(message, idBroker, numberOfMessage));
            }
        }
예제 #10
0
 public static string ExceptionMessageLogSupport(string message, string sbeln, NumberOfMessage numberOfMessage)
 {
     if (numberOfMessage == NumberOfMessage.One || string.IsNullOrEmpty(sbeln))
     {
         return($"O processo da {message} falhou.{Environment.NewLine}Mensagem:{Environment.NewLine}");
     }
     else
     {
         return($"O processo da {message} para o embarque {sbeln} falhou.{Environment.NewLine}Mensagem:{Environment.NewLine}");
     }
 }
예제 #11
0
 public static string Message(NumberOfMessage message, string tipo)
 {
     return($"Mensagem: {(byte)message} - Tipo: {tipo}");
 }
예제 #12
0
 public static string TitleLogUser(NumberOfMessage message)
 {
     return($"Mensagem: {(byte)message}{Environment.NewLine}");
 }
예제 #13
0
 public static string AlertResponseWebServiceError(string message, string identifier, NumberOfMessage numberOfMessage)
 {
     if (numberOfMessage == NumberOfMessage.One)
     {
         return($"O processo da {message} requisitado pelo IdBroker {identifier} foi enviada com sucesso, porém retornou erro, consulte as tabelas StatusRetorno e DetalheError para maiores informações. {Environment.NewLine}");
     }
     else
     {
         return($"O Embarque \"{identifier}\" para o processo \"{message}\" foi enviada com sucesso, porém retornou erro, consulte as tabelas StatusRetorno e DetalheError para maiores informações. {Environment.NewLine}");
     }
 }
예제 #14
0
 private string SaveResponseAlerta(string identifier, string message, NumberOfMessage numberOfMessage)
 {
     ConfigStatus.SaveStatus(RESPONSE.STATUS);
     return(MessagesOfReturn.AlertResponseWebServiceError(message, identifier, numberOfMessage));
 }
예제 #15
0
 private string SaveResponseAlerta(string message, NumberOfMessage numberOfMessage)
 {
     ConfigStatus.SaveStatus(RESPONSE.STATUS);
     return(MessagesOfReturn.AlertResponseWebServiceError(message, RESPONSE.STATUS.idBroker.ToString(), numberOfMessage));
 }
예제 #16
0
 private string SaveResponseAlerta(Status status, string message, NumberOfMessage numberOfMessage)
 {
     ConfigStatus.SaveStatus(status);
     return(MessagesOfReturn.AlertResponseWebServiceError(message, RESPONSE.STATUS.SBELN, numberOfMessage));
 }
예제 #17
0
 public ContentText(NumberOfMessage numberOfMessage, string kind)
 {
     _numberOfMessage  = numberOfMessage;
     _kindOfMessage    = kind;
     _configureService = new ConfigureService();
 }