/// <summary>
        /// Tag the document with jobmine server
        /// (It is the exact replica of the BgtWorkerNodeAgent)
        /// </summary>
        /// <param name="inputDoc"></param>
        /// <param name="encoding"></param>
        /// <param name="outputDoc"></param>
        public static void TagDocumentWithJobMine(string inputDoc, string encoding, out string outputDoc)
        {
            outputDoc = string.Empty;

            Utils utils = new Utils();

            try
            {
                #region INITIALISING
                var mInputText = "<?xml version='1.0' encoding='" + encoding + "'?>";
                mInputText += "<bgtcmd><tag type='posting'><![CDATA[" + inputDoc.Replace("<row>", "<Row>").Replace("</row>", "</Row>") + "]]></tag></bgtcmd>";
                LensMessage inMessage;
                LensMessage outMessage;
                #endregion

                try
                {
                    #region TRY_TAGGING_DOCUMENT
                    inMessage  = LensMessage.Create(mInputText, LensMessage.XML_TYPE);
                    outMessage = mDESession.SendMessage(inMessage);
                    outputDoc  = outMessage.GetMessageData();
                    #endregion

                    isPingSuccessful = true;
                }
                catch (LensException lex)
                {
                    #region EXCEPTION_IS_VOID_OR_NULL
                    if (lex == null || lex.Message == null)
                    {
                        throw new Exception("LensException is VOID or NULL");
                    }
                    #endregion

                    isPingSuccessful = false;
                    utils.logger.Error("lensexception. err_msg - " + lex.Message);
                }
                catch (ServerBusyException sbe)
                {
                    #region EXCEPTION_IS_VOID_OR_NULL
                    if (sbe == null || sbe.Message == null)
                    {
                        throw new Exception("ServerBusyException is VOID or NULL");
                    }
                    #endregion

                    isPingSuccessful = false;
                    utils.logger.Error("serverbusyexception. err_msg - " + sbe.Message);
                }
                finally
                {
                    #region RELEASING_RESOURCES
                    inMessage  = null;
                    outMessage = null;
                    mInputText = null;
                    #endregion
                }

                outputDoc = outputDoc.Replace("<bgtres>", "").Replace("</bgtres>", "");
            }
            catch (Exception ex)
            {
                utils.logger.Error("err_tag_command. err_msg - " + ex.Message);
                isPingSuccessful = false;
            }
            finally
            {
                #region RELEASING_RESOURCES
                inputDoc = null;
                #endregion
            }
        }