buildMessage() public abstract method

public abstract buildMessage ( ) : string
return string
Exemplo n.º 1
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);
        }
Exemplo n.º 2
0
        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;
        }