Ejemplo n.º 1
0
        public bool Test(string server, string auth, string username, string password, string param)
        {
            QvxLog.Log(QvxLogFacility.Application, QvxLogSeverity.Debug, "Test()");
            QvxLog.Log(QvxLogFacility.Application, QvxLogSeverity.Debug, String.Format("{0} {1} {2} {3} {4}", server, auth, username, password, param));

            Dictionary <string, string> parameters = null;
            MyWebRequest q = prepareRequest(server, auth, username, password, param, out parameters);

            q.GetResponse();

            return(q.StatusCode == HttpStatusCode.OK);
        }
Ejemplo n.º 2
0
        public List <QvxTable> Init(string server, string auth, string username, string password, string param, List <QvxTable> MTables, Func <string, IEnumerable <QvxTable>, QvxTable> FindTable)
        {
            QvxLog.Log(QvxLogFacility.Application, QvxLogSeverity.Debug, "Init()");

            Dictionary <string, string> parameters = null;
            MyWebRequest q = prepareRequest(server, auth, username, password, param, out parameters);

            string s = q.GetResponse();

            List <QvxTable> lt = new List <QvxTable>();

            if (q.StatusCode == HttpStatusCode.OK)
            {
                XmlDocument doc = JsonConvert.DeserializeXmlNode("{\"root\":" + s + "}", "root");
                string      xml = doc.InnerXml;

                XmlToCsvUsingDataSetFromString converter = new XmlToCsvUsingDataSetFromString(xml, (parameters.ContainsKey("qualifySep")) ? parameters["qualifySep"] : null);
                XmlToCsvContext context = new XmlToCsvContext(converter);

                foreach (DataTable dt in converter.XmlDataSet.Tables)
                {
                    QvxLog.Log(QvxLogFacility.Application, QvxLogSeverity.Notice, "Found table " + dt.TableName + ": " + dt.Rows.Count.ToString());

                    List <QvxField> l = new List <QvxField>();
                    foreach (DataColumn dc in dt.Columns)
                    {
                        l.Add(new QvxField(dc.ColumnName, QvxFieldType.QVX_TEXT, QvxNullRepresentation.QVX_NULL_FLAG_SUPPRESS_DATA, FieldAttrType.ASCII));
                    }

                    lt.Add(new QvxTable
                    {
                        TableName = dt.TableName,
                        GetRows   = delegate() { return(GetJSONRows(dt, MTables, FindTable)); },
                        Fields    = l.ToArray()
                    });
                }
            }

            return(lt);
        }
Ejemplo n.º 3
0
        private MyWebRequest prepareRequest(string server, string auth, string username, string password, string param, out Dictionary <string, string> parameters)
        {
            QvxLog.Log(QvxLogFacility.Application, QvxLogSeverity.Debug, "prepareRequest()");

            MyWebRequest q = null;

            Dictionary <string, string> myParameters = new Dictionary <string, string>();

            if (param != "None")
            {
                param
                .Replace("\\§", "////////// REPLACE MARQUER PARAGRAPH \\\\\\\\\\")
                .Replace("\\|", "////////// REPLACE MARQUER PIPE \\\\\\\\\\")
                .Split('|').ToList().ForEach(delegate(string str)
                {
                    myParameters.Add(
                        str.Split('§')[0].Replace("////////// REPLACE MARQUER PARAGRAPH \\\\\\\\\\", "\\§").Replace("////////// REPLACE MARQUER PIPE \\\\\\\\\\", "\\|").Trim(),
                        str.Split('§')[1].Replace("////////// REPLACE MARQUER PARAGRAPH \\\\\\\\\\", "\\§").Replace("////////// REPLACE MARQUER PIPE \\\\\\\\\\", "\\|").Trim()
                        );
                });
            }

            parameters = myParameters;

            string proto = (parameters.ContainsKey("webProto") ? parameters["webProto"] + "://" : "http://");
            string page  = (parameters.ContainsKey("webPage") ? parameters["webPage"] : "");

            if (parameters.ContainsKey("webPostParams"))
            {
                q = new MyWebRequest(proto + server + page, "POST", parameters["webPostParams"], auth, username, password);
            }
            else
            {
                q = new MyWebRequest(proto + server + page + ((parameters.ContainsKey("webGetParams")) ? "?" + parameters["webGetParams"] : ""), "GET", auth, username, password);
            }

            return(q);
        }
Ejemplo n.º 4
0
        private MyWebRequest prepareRequest(string server, string auth, string username, string password, string param, out Dictionary<string, string> parameters)
        {
            QvxLog.Log(QvxLogFacility.Application, QvxLogSeverity.Debug, "prepareRequest()");

            MyWebRequest q = null;

            Dictionary<string, string> myParameters = new Dictionary<string, string>();
            if (param != "None")
            {
                param
                    .Replace("\\§", "////////// REPLACE MARQUER PARAGRAPH \\\\\\\\\\")
                    .Replace("\\|", "////////// REPLACE MARQUER PIPE \\\\\\\\\\")
                    .Split('|').ToList().ForEach(delegate(string str)
                {
                    myParameters.Add(
                        str.Split('§')[0].Replace("////////// REPLACE MARQUER PARAGRAPH \\\\\\\\\\", "\\§").Replace("////////// REPLACE MARQUER PIPE \\\\\\\\\\", "\\|").Trim(),
                        str.Split('§')[1].Replace("////////// REPLACE MARQUER PARAGRAPH \\\\\\\\\\", "\\§").Replace("////////// REPLACE MARQUER PIPE \\\\\\\\\\", "\\|").Trim()
                    );
                });
            }

            parameters = myParameters;

            string proto = (parameters.ContainsKey("webProto") ? parameters["webProto"] + "://" : "http://");
            string page = (parameters.ContainsKey("webPage") ? parameters["webPage"] : "");

            if (parameters.ContainsKey("webPostParams"))
                q = new MyWebRequest(proto + server + page, "POST", parameters["webPostParams"], auth, username, password);
            else
                q = new MyWebRequest(proto + server + page + ((parameters.ContainsKey("webGetParams")) ? "?" + parameters["webGetParams"] : ""), "GET", auth, username, password);

            return q;
        }