/// <summary> /// Generates a predefined in SIB Query Message with parameters /// </summary> /// <param name="sessionKey">Session Key</param> /// <param name="idQuery">Predefined Query Id</param> /// <param name="parameters">Query Parameters Dictionary (param key, value)</param> /// <returns>Query Message</returns> public SSAPMessage <SSAPBodyMessage> GenerateQueryMessageWithParams(string sessionKey, string idQuery, Dictionary <string, string> parameters) { if (!IsQuery(idQuery, SSAPQueryTypeEnum.SIB_DEFINED)) { throw new SQLSentenceNotAllowedForThisOperationException("ERROR - statement no expected"); } if (idQuery.Length > 0 && parameters != null) { var body = new SSAPBodyQueryWithParamMessage() { Query = idQuery, QueryType = SSAPQueryTypeEnum.SIB_DEFINED, QueryParams = parameters }; return(new SSAPMessage <SSAPBodyMessage>() { SessionKey = sessionKey, Body = body, Direction = SSAPMessageDirectionEnum.REQUEST, MessageType = SSAPMessageTypesEnum.QUERY, }); } else { return(GenerateQueryMessage(sessionKey, idQuery)); } }
protected override SSAPBodyMessage Create(Type objectType, JObject jsonObject) { string type = jsonObject["@type"].Value <String>(); switch (type) { case "SSAPBodyReturnMessage": return(SSAPBodyReturnMessage.FromJson(jsonObject.ToString())); case "SSAPBodyConfigMessage": return(SSAPBodyConfigMessage.FromJson(jsonObject.ToString())); case "SSAPBodyJoinMessage": return(SSAPBodyJoinMessage.FromJson(jsonObject.ToString())); case "SSAPBodyJoinTokenMessage": return(SSAPBodyJoinMessage.FromJson(jsonObject.ToString())); case "SSAPBodyJoinUserAndPasswordMessage": return(SSAPBodyJoinUserAndPasswordMessage.FromJson(jsonObject.ToString())); case "SSAPBodyLeaveMessage": return(SSAPBodyLeaveMessage.FromJson(jsonObject.ToString())); case "SSAPBodyMessage": return(SSAPBodyMessage.FromJson(jsonObject.ToString())); case "SSAPBodyOperationMessage": return(SSAPBodyOperationMessage.FromJson(jsonObject.ToString())); case "SSAPBodyQueryMessage": return(SSAPBodyQueryMessage.FromJson(jsonObject.ToString())); case "SSAPBodyQueryWithParamMessage": return(SSAPBodyQueryWithParamMessage.FromJson(jsonObject.ToString())); case "SSAPBodySubscribeMessage": return(SSAPBodySubscribeMessage.FromJson(jsonObject.ToString())); case "SSAPBodyUnsubscribeMessage": return(SSAPBodyUnsubscribeMessage.FromJson(jsonObject.ToString())); case "SSAPBodyLogMessage": return(SSAPBodyLogMessage.FromJson(jsonObject.ToString())); default: return(null); } }