public void testBuildGetAppointmentTypesRequest()
        {
            string   request = "[XWB]113021.108SD APPOINTMENT LIST BY NAME50000f0001Af0000f";
            MdoQuery result  = _dao.buildGetAppointmentTypesRequest("", "A", "");

            Assert.IsTrue(String.Equals(result.buildMessage(), request));
        }
Beispiel #2
0
 /// <summary>
 /// Base class for all MdoException classes - extends ApplicationException
 /// </summary>
 /// <param name="query">The orginating exception message</param>
 /// <param name="requestString">The request string build as part of a request for data</param>
 /// <param name="responseString">The response string received from a request made for data</param>
 public MdoException(MdoQuery query, string responseString, Exception inner)
     : base(inner.Message, inner)
 {
     if (query != null)
     {
         _requestString = query.buildMessage();
     }
     _responseString = responseString;
 }
Beispiel #3
0
        public override void setState(Dictionary <string, object> sessionTable)
        {
            MdoQuery request  = buildSetSymbolTableRequest(sessionTable);
            string   response = (string)query(request.buildMessage());

            if (!String.Equals(response, "1"))
            {
                throw new MdoException("Unable to deserialize symbol table! Vista code: {0}", response);
            }
        }
Beispiel #4
0
 /// <summary>
 /// Base class for all MdoException classes - extends ApplicationException
 /// </summary>
 /// <param name="query">The orginating query</param>
 /// <param name="responseString">The response string received from a request made for data</param>
 /// <param name="code">MDO exception code - sets code text constant as the exception text</param>
 /// <param name="inner">Inner Exception</param>
 public MdoException(MdoQuery query, string responseString, MdoExceptionCode code, Exception inner)
     : base(inner.Message, inner)
 {
     _errorCode = code;
     if (null != query)
     {
         _requestString = query.buildMessage();
     }
     _responseString = responseString;
 }
Beispiel #5
0
        public override object query(MdoQuery vq, AbstractPermission context = null)
        {
            // see http://trac.medora.va.gov/web/ticket/2716
            if (Rpcs == null)
            {
                Rpcs = new List <string>();
            }
            Rpcs.Add(vq.RpcName);

            string request = vq.buildMessage();

            return(query(request, context));
        }
        public override object query(MdoQuery mq, AbstractPermission permission = null)
        {
            string request = mq.buildMessage();

            string response = (string)base.query(mq, permission);

            if (displayRPCList)
            {
                Console.WriteLine(request);
            }

            if (saveAuthConnect || (Account.IsAuthorized && !isCreateContextRequest(request) && !isDisconnectRequest(request)))
            {
                requests.Add(request);
                responses.Add(response);

                if (saveResults)
                {
                    // lazily create tables if they don't exist
                    if (!_sqliteDao.hasTable(_mockSiteId))
                    {
                        _sqliteDao.createTableForSite(_mockSiteId);
                    }

                    // see if this query has already been saved
                    object dbObj = _sqliteDao.getObject(_mockSiteId, gov.va.medora.utils.StringUtils.getMD5Hash(request));
                    if (dbObj == null)
                    {
                        _sqliteDao.saveObject(_mockSiteId, request, response);
                    }
                    else if (updateResults)
                    {
                        _sqliteDao.updateObject(_mockSiteId, gov.va.medora.utils.StringUtils.getMD5Hash(request), response);
                    }

                    //if (updateResults)
                    //{
                    //    _sqliteDao.saveOrUpdateObject(_mockSiteId, request, response);
                    //}
                    //else
                    //{
                    //    _sqliteDao.saveObject(_mockSiteId, request, response);
                    //}
                    //xmlSource.addRequest(mq, response, UpdateResults);
                }
            }

            return(response);
        }
Beispiel #7
0
        public override object query(MdoQuery vq, AbstractPermission context = null)
        {
            // see http://trac.medora.va.gov/web/ticket/2716
            //if (Rpcs == null)
            //{
            //    Rpcs = new List<string>();
            //}
            //Rpcs.Add(vq.RpcName);

            //if (String.Equals(vq.RpcName, "DDR LISTER"))
            //{
            //    return query(vq, context, true);
            //}

            string request = vq.buildMessage();

            return(query(request, context));
        }
Beispiel #8
0
        /// <summary>
        /// Load the parameters which identify the request
        /// </summary>
        /// <param name="mq"></param>
        /// <param name="xpath"></param>
        /// <param name="request"></param>
        private void getRequestIdentifiers(MdoQuery mq, ref string xpath, ref string request)
        {
            // generate the rpc string sent to VistA
            request = mq.buildMessage();
            request = StringUtils.stripInvalidXmlCharacters(request);
            request = StringUtils.stripNonPrintableChars(request);

            // build the xPath of the query node in the mockconnection file keyed
            // from rpcname, num rpc params, and each rpc param value
            string additionalArgs = "";
            int    id             = 1;

            foreach (VistaQuery.Parameter param in mq.Parameters)
            {
                string value = getParamValue(param);
                additionalArgs += String.Format(" and @p{0}='{1}'", id++, value);
            }

            xpath = String.Format("//{0}[@{1}='{2}' and count(@*)={3} {4}]", QUERY_NODE, RPC_ATTR, mq.RpcName, mq.Parameters.Count + 1, additionalArgs);
        }
        public override object query(MdoQuery mq, AbstractPermission permission = null)
        {
            string request = mq.buildMessage();

            string response = (string)base.query(mq, permission);

            if (displayRPCList)
            {
                Console.WriteLine(request);
            }

            if (saveAuthConnect || (Account.IsAuthorized && !isCreateContextRequest(request) && !isDisconnectRequest(request)))
            {
                requests.Add(request);
                responses.Add(response);

                if (saveResults)
                {
                    xmlSource.addRequest(mq, response, UpdateResults);
                }
            }

            return(response);
        }
        public override object query(MdoQuery vq, AbstractPermission context = null)
        {
            // see http://trac.medora.va.gov/web/ticket/2716
            if (Rpcs == null)
            {
                Rpcs = new List<string>();
            }
            Rpcs.Add(vq.RpcName);

            string request = vq.buildMessage();
            return query(request, context);
        }
Beispiel #11
0
 /// <summary>
 /// Base class for all MdoException classes - extends ApplicationException
 /// </summary>
 /// <param name="query">The orginating exception message</param>
 /// <param name="requestString">The request string build as part of a request for data</param>
 /// <param name="responseString">The response string received from a request made for data</param>
 public MdoException(MdoQuery query, string responseString, Exception inner)
     : base(inner.Message, inner)
 {
     if(query != null)
         _requestString = query.buildMessage();
     _responseString = responseString;
 }
Beispiel #12
0
 /// <summary>
 /// Base class for all MdoException classes - extends ApplicationException
 /// </summary>
 /// <param name="query">The orginating query</param>
 /// <param name="responseString">The response string received from a request made for data</param>
 /// <param name="code">MDO exception code - sets code text constant as the exception text</param>
 /// <param name="inner">Inner Exception</param>
 public MdoException(MdoQuery query, string responseString, MdoExceptionCode code, Exception inner)
     : base(inner.Message, inner)
 {
     _errorCode = code;
     if(null != query)
         _requestString = query.buildMessage();
     _responseString = responseString;
 }
Beispiel #13
0
 public override object query(MdoQuery request, AbstractPermission permission = null)
 {
     return query(request.buildMessage(), permission);
 }
Beispiel #14
0
 public override object query(MdoQuery request, AbstractPermission permission = null)
 {
     return(query(request.buildMessage(), permission));
 }