/**********************************************************************************/

        private void processRegisterReport(oadrRegisterReportType registerReport)
        {
            RegisteredReport registeredReport;

            lock (m_ven)
            {
                registeredReport = m_ven.registeredReport(registerReport.requestID, "200", "OK");
            }

            m_callbacks.processRegisteredReport(registeredReport);
        }
示例#2
0
        public void createRegisterReport()
        {
            oadrPayload payload = new oadrPayload();

            oadrSignedObject signedObject = new oadrSignedObject();

            payload.oadrSignedObject = signedObject;

            oadrRegisterReportType registerReport = new oadrRegisterReportType();

            signedObject.Item = registerReport;

            registerReport.reportRequestID = "ReportRequestID_123";
            registerReport.requestID       = "RequestID_123";
            registerReport.schemaVersion   = "2.0b";
            registerReport.venID           = "TH_VEN";

            registerReport.oadrReport = new oadrReportType[1];

            registerReport.oadrReport[0] = new oadrReportType();

            registerReport.oadrReport[0].reportName = "ReportName_123";

            registerReport.oadrReport[0].intervals    = new IntervalType[1];
            registerReport.oadrReport[0].intervals[0] = new IntervalType();

            // refID ???
            IntervalTypeUidUid uid = new IntervalTypeUidUid();

            uid.text = "UID";
            registerReport.oadrReport[0].intervals[0].Item = uid;

            oadrReportPayloadType reportPayload = new oadrReportPayloadType();

            reportPayload.rID               = "rID";
            reportPayload.accuracy          = 1.0F;
            reportPayload.accuracySpecified = true;

            registerReport.oadrReport[0].intervals[0].streamPayloadBase = new StreamPayloadBaseType[1];

            registerReport.oadrReport[0].intervals[0].streamPayloadBase[0] = reportPayload;

            Assert.IsTrue(registerReport.oadrReport[0].intervals[0].streamPayloadBase[0].GetType() == typeof(oadrReportPayloadType));

            XmlSerializer serializer = new XmlSerializer(typeof(oadrPayload));

            serializer.Serialize(Console.Out, payload);
        }
示例#3
0
        /**********************************************************/

        public void handleRegisterReports(oadrRegisterReportType registerReport)
        {
            MethodInvoker mi = new MethodInvoker(delegate
            {
                try
                {
                    m_registeredReports.Clear();

                    lstRegisteredRequests.Items.Clear();
                    int index = 0;

                    foreach (oadrReportType oadrReport in registerReport.oadrReport)
                    {
                        m_registeredReports.Add(oadrReport.reportSpecifierID, oadrReport);


                        ListViewItem lvi = new ListViewItem(oadrReport.reportSpecifierID);

                        for (int x = 0; x < lstRegisteredRequests.Columns.Count - 1; x++)
                        {
                            lvi.SubItems.Add("");
                        }

                        lvi.SubItems[IND_REPORT_NAME].Text = oadrReport.reportName;

                        lstRegisteredRequests.Items.Insert(index, lvi);

                        index++;
                    }
                }
                catch (Exception ex)
                {
                    Logger.logException(ex);
                }
            });

            // BeginInvoke only needs to be called if we're tyring to update the UI from
            // a thread that did not create it
            if (this.InvokeRequired)
            {
                this.BeginInvoke(mi);
            }
            else
            {
                mi.Invoke();
            }
        }
        public void N1_0020_TH_VTN_1()
        {
            VEN2b ven = new VEN2b(new HttpWebRequestWrapper(false, System.Net.SecurityProtocolType.Tls12), TestProperties.vtnURL, TestProperties.venName, TestProperties.venID, TestProperties.venPassword);

            // register
            CreatePartyRegistration createPartyRegistration = ven.createPartyRegistration(RandomHex.instance().generateRandomHex(10), oadrProfileType.Item20b, oadrTransportType.simpleHttp, "", false, false, true);

            Assert.IsTrue(createPartyRegistration.response != null);

            Console.Out.WriteLine(createPartyRegistration.responseBody);

            // POLL
            OadrPoll oadrPoll = ven.poll();

            Assert.IsNotNull(oadrPoll.response);

            Console.Out.WriteLine(oadrPoll.responseBody);

            // First request is registerReport
            Assert.IsTrue(oadrPoll.responseTypeIs(typeof(oadrRegisterReportType)));

            oadrRegisterReportType registerReportType = oadrPoll.getRegisterReportResponse();

            RegisteredReport registeredReport = ven.registeredReport(registerReportType.requestID, "200", "OK");

            Assert.IsNotNull(registeredReport.response);
            Assert.AreEqual(registeredReport.response.eiResponse.responseCode, "200");

            // register our own report
            ReportDescription reportDescription = ReportHelper.generateReportDescription();

            RegisterReport registerReport = ven.registerReport(RandomHex.instance().generateRandomHex(10), reportDescription);

            Assert.IsNotNull(registerReport.response);

            Assert.AreEqual("200", registerReport.response.eiResponse.responseCode);

            Assert.AreEqual(registerReport.request.requestID, registerReport.response.eiResponse.requestID);
        }
示例#5
0
        /**********************************************************/

        public string createRegisterReport(string requestID, string venID, Dictionary <string, ReportWrapper> reports, string reportRequestID = null)
        {
            request = new oadrRegisterReportType();

            request.schemaVersion = "2.0b";

            request.requestID = requestID;
            request.venID     = venID;

            request.oadrReport = new oadrReportType[reports.Count];

            int index = 0;

            foreach (ReportWrapper reportWrapper in reports.Values)
            {
                oadrReportType report = reportWrapper.generateReportDescription(reportRequestID);
                request.oadrReport[index] = report;

                index++;
            }

            return(serializeObject(request));
        }
示例#6
0
        /**********************************************************/

        public string createRegisterReport(string requestID, string venID, ReportDescription reportDescription)
        {
            request = new oadrRegisterReportType();

            request.schemaVersion = "2.0b";

            request.requestID = requestID;
            request.venID     = venID;

            request.oadrReport = new oadrReportType[reportDescription.NumReports];

            int index = 0;

            foreach (string reportSpecifierID in reportDescription.ReportSpecifierIDs)
            {
                oadrReportType report = reportDescription.generateReportDescription(reportSpecifierID);
                request.oadrReport[index] = report;

                index++;
            }

            return(serializeObject(request));
        }
示例#7
0
        /**********************************************************/

        public void processUpdateReportList(oadrRegisterReportType registerReport)
        {
            ucRegisteredReports1.handleRegisterReports(registerReport);
        }