Example #1
0
        public StreamResponseAction ExportSDMXQuery()
        {
            SessionQuery query = SessionQueryManager.GetSessionQuery(Session);

            //ControllerSupport CS = new ControllerSupport();
            //GetCodemapObject PostDataArrived = CS.GetPostData<GetCodemapObject>(this.Request);
            //PostDataArrived.Configuration.Locale = System.Threading.Thread.CurrentThread.CurrentCulture.TwoLetterISOLanguageName;

            string request = "";
            var    xdoc    = new XmlDocument();

            EndpointSettings DataObjConfiguration = new EndpointSettings();

            DataObjConfiguration = query._endpointSettings;


            //IGetSDMX GetSDMXObject = WebServiceSelector.GetSdmxImplementation(DataObjConfiguration);
            IGetSDMX       GetSDMXObject = (query._IGetSDMX == null) ? WebServiceSelector.GetSdmxImplementation(DataObjConfiguration) : query._IGetSDMX;
            BaseDataObject BDO           = new BaseDataObject(DataObjConfiguration, "appo.xml");

            ISdmxObjects         structure = query.Structure;
            IDataflowObject      df        = structure.Dataflows.First();
            IDataStructureObject kf        = structure.DataStructures.First();
            IDataQuery           sdmxQuery = BDO.CreateQueryBean(df, kf, query.GetCriteria());

            GetSDMXObject.GetSdmxQuery(sdmxQuery, out request);

            string filename = string.Format(CultureInfo.InvariantCulture, "{0}.{1}", query.Dataflow.Id, "xml");

            this.HttpContext.Response.Clear();
            this.HttpContext.Response.ContentType     = "text/xml";
            this.HttpContext.Response.ContentEncoding = Encoding.UTF8;
            string contentDisposition = string.Format(
                CultureInfo.InvariantCulture,
                Constants.AttachmentFilenameFormat,
                filename);

            this.HttpContext.Response.AddHeader(Constants.ContentDispositionHttpHeader, contentDisposition);



            this.HttpContext.Response.AddHeader("content-disposition", contentDisposition);
            this.HttpContext.Response.Write(request);
            this.HttpContext.Response.End();
            throw new NotImplementedException();
        }
Example #2
0
        public StreamResponseAction ExportSDMXDataSet(string id, string sdmxVersion)
        {
            try
            {
                _iD = id;
                InitObject();
                SessionQuery query = SessionQueryManager.GetSessionQuery(Session);
                GetDataSet(_datasetRenderer, _dataStream, _textWriter, sdmxVersion, query);

                //var x = _dataStream.store;

                //Copy(query.GetSdmxMLDataSet(true), context.Response.Output);

                //SaveSDMXFile(_dataStream.structure, sdmxEnumType, GetFileName(_iD, "xml"));

                return(null);

                /*
                 * SessionQuery query = SessionQueryManager.GetSessionQuery(context.Session);
                 * if (query.GetSdmxMLDataSet(false) == null)
                 * {
                 *  SessionExpired(context);
                 *  return;
                 * }
                 *
                 * context.Response.ContentType = ContentType;
                 * context.Response.ContentEncoding = Encoding.UTF8;
                 *
                 * string contentDisposition = string.Format(
                 *  CultureInfo.InvariantCulture,
                 *  Constants.AttachmentFilenameFormat,
                 *  GetFileName(query.Dataflow, "dataset.xml"));
                 * context.Response.AddHeader(Constants.ContentDispositionHttpHeader, contentDisposition);
                 *
                 * ////            StreamReader sdmx = new StreamReader(query.GetSDMX_MLDataSet(true), Encoding.UTF8);
                 * Copy(query.GetSdmxMLDataSet(true), context.Response.Output);
                 */
            }
            catch (Exception ex)
            {
                return(new StreamResponseAction(ex.Message));
            }
        }
Example #3
0
        public ActionResult dataflowChange()
        {
            dynamic PostDataArrived = CS.GetPostData(this.Request);

            try
            {
                SessionQuery query = sessionObject.GetSessionQuery();

                if (NSIClientSettings.Instance.EndPointCenterEnable)
                {
                    EndPointStructure ep = new EndPointStructure()
                    {
                        ID           = "WS of " + (string)PostDataArrived.agency + "+" + (string)PostDataArrived.id + "+" + (string)PostDataArrived.version,
                        DisplayName  = "WS of " + (string)PostDataArrived.agency + "+" + (string)PostDataArrived.id + "+" + (string)PostDataArrived.version,
                        EndPoint     = (string.IsNullOrEmpty((string)PostDataArrived.urlV21)) ? ISTATSettings.ListEndPoint.First().EndPoint : (string)PostDataArrived.urlV21,
                        EndPointV20  = (string.IsNullOrEmpty((string)PostDataArrived.urlV20)) ? ISTATSettings.ListEndPoint.First().EndPointV20 : (string)PostDataArrived.urlV20,
                        EndPointType = "V21",
                    };
                    SetEndPoint(query, sessionObject.GetNSIClient(), ep, true);
                }


                ActionResult res = CS.ReturnForJQuery(
                    JR.DataflowChange(
                        query,
                        sessionObject.GetNSIClient(),
                        (string)PostDataArrived.agency,
                        (string)PostDataArrived.id,
                        (string)PostDataArrived.version,
                        Server.MapPath("~/query/")));

                SessionQueryManager.SaveSessionQuery(HttpContext.ApplicationInstance.Context.Session, query);
                return(res);
            }
            catch (Exception)
            {
                return(CS.ReturnForJQuery(ControllerSupport.ErrorOccured));
            }
        }
Example #4
0
        public ActionResult SetLocale()
        {
            dynamic PostDataArrived = CS.GetPostData(this.Request);

            try
            {
                //LocaleResolver.RemoveCookie(HttpContext.ApplicationInstance.Context);

                CultureInfo c = Messages.SetLocale((string)PostDataArrived.locale);

                Thread.CurrentThread.CurrentUICulture = c;
                Thread.CurrentThread.CurrentCulture   = c;

                LocaleResolver.SendCookie(c, HttpContext.ApplicationInstance.Context);
                SessionQuery query = SessionQueryManager.GetSessionQuery(Session);
                query.CurrentCulture = c;

                return(CS.ReturnForJQuery(new JavaScriptSerializer().Serialize(string.Empty)));
            }
            catch (Exception)
            {
                return(CS.ReturnForJQuery(ControllerSupport.ErrorOccured));
            }
        }
Example #5
0
        public ActionResult getDataflows()
        {
            if (!SessionQueryManager.SessionQueryExistsAndIsValid(HttpContext.ApplicationInstance.Context))
            {
                SessionQuery query = new SessionQuery();
                SessionQueryManager.SaveSessionQuery(HttpContext.ApplicationInstance.Context.Session, query);
            }

            EndPointStructure ep = ISTATSettings.CurrentEndPoint;

            if (NSIClientSettings.Instance.EndPointCenterEnable)
            {
                SetEndPoint(sessionObject.GetSessionQuery(), sessionObject.GetNSIClient(), ISTATSettings.CentralEndPoint);
            }

            var res = CS.ReturnForJQuery(JR.GetTree(sessionObject.GetSessionQuery(), sessionObject.GetNSIClient()));

            if (NSIClientSettings.Instance.EndPointCenterEnable)
            {
                SetEndPoint(sessionObject.GetSessionQuery(), sessionObject.GetNSIClient(), ep);
            }

            return(res);
        }