/// <summary> /// Lookups multiple documents in Clusterpoint Server storage. returned type depends on passed returnType parameter. /// If returnType is DOC_TYPE_SIMPLEXML, returns Dictionary<string, CPS_SimpleXML>. /// If returnType is DOC_TYPE_ARRAY, returns null - not supported yet. /// If returnType is DOC_TYPE_STDCLASS, returns Dictionary<string, XmlElement>. /// </summary> /// <param name="ids">List of document IDs.</param> /// <param name="list">Dictionary with keys as xpaths and values as listing options (yes | no | snippet | highlight).</param> /// <param name="returnType">Defines used return type.</param> /// <returns>Documents as Dictionary<string, CPS_SimpleXML> or Dictionary<string, XmlElement>.</returns> public Object lookupMultiple(List <string> ids, Dictionary <string, string> list = null, CPS_Response.DOC_TYPE returnType = CPS_Response.DOC_TYPE.DOC_TYPE_STDCLASS) { CPS_LookupRequest request = new CPS_LookupRequest(ids, list); this.p_lastResponse = this.p_connection.sendRequest(request); return(((CPS_LookupResponse)this.p_lastResponse).getDocuments(returnType)); }
/// <summary> /// Lookups single document in Clusterpoint Server storage. Returned type depends on passed returnType parameter. /// If returnType is DOC_TYPE_SIMPLEXML, returns CPS_SimpleXML. /// If returnType is DOC_TYPE_ARRAY, returns null - not supported yet. /// If returnType is DOC_TYPE_STDCLASS, returns XmlElement. /// </summary> /// <param name="id">Document ID.</param> /// <param name="list">Dictionary with keys as xpaths and values as listing options (yes | no | snippet | highlight).</param> /// <param name="returnType">Defines used return type.</param> /// <returns>Document as CPS_SimpleXml or XmlElement.</returns> public Object lookupSingle(string id, Dictionary <string, string> list = null, CPS_Response.DOC_TYPE returnType = CPS_Response.DOC_TYPE.DOC_TYPE_STDCLASS) { CPS_LookupRequest request = new CPS_LookupRequest(id, list); this.p_lastResponse = this.p_connection.sendRequest(request); CPS_LookupResponse response = (CPS_LookupResponse)this.p_lastResponse; if (response.getDocuments() == null) { return(null); } if (returnType == CPS_Response.DOC_TYPE.DOC_TYPE_STDCLASS) { Dictionary <string, XmlElement> ret1 = (Dictionary <string, XmlElement>)(response.getDocuments(returnType)); foreach (KeyValuePair <string, XmlElement> pair in ret1) { return(pair.Value); } } if (returnType == CPS_Response.DOC_TYPE.DOC_TYPE_ARRAY) { return(null); } if (returnType == CPS_Response.DOC_TYPE.DOC_TYPE_SIMPLEXML) { Dictionary <string, CPS_SimpleXML> ret3 = (Dictionary <string, CPS_SimpleXML>)(response.getDocuments(returnType)); foreach (KeyValuePair <string, CPS_SimpleXML> pair in ret3) { return(pair.Value); } } return(null); }