コード例 #1
0
        public void GetEdiciones()
        {
            IsBusy = true;
            Title  = string.Empty;
            Conectividad conInternet = new Conectividad();

            Message = "";
            ManageCache new_C = new ManageCache();
            ManageCache old_C = new ManageCache();

            try
            {
                if (!conInternet.IsConnected())
                {
                    Message = "Es necesario una conexión de internet para hacer uso de esta aplicación";
                }
                else
                {
                    /************************Comparar version caché Vs. Versión en Drupal****************************************/
                    Servicio conServicio = new Servicio();
                    string   parametros  = "{\"tipoConsulta\": \"Ediciones\",\"Clave\":\"0\"}";
                    string   respCache   = conServicio.ConnService(conServicio.urlDrupalCache, parametros);
                    new_C = JsonConvert.DeserializeObject <ManageCache>(respCache);
                    old_C = old_C.GetKeyCache("Ediciones", "0");
                    //old_C.DeleteCacheVersion();
                    if (old_C == null)
                    {
                        UpdateEdiciones();
                        new_C.AddKeyCache("Ediciones", Revista.JsonListEdiciones);
                        //Message = "sin cache: version new:" + new_C.Version + " - version old:-- key new:" + new_C.Clave + " version old:--";
                    }

                    else if (new_C.Version != old_C.Version || new_C.Clave != old_C.Clave)
                    {
                        UpdateEdiciones();
                        //Message = "sin cache: version new:"+new_C.Version + " - version old:" + old_C.Version + " key new:" + new_C.Clave + " version old:" + old_C.Clave;
                        new_C.AddKeyCache("Ediciones", Revista.JsonListEdiciones);
                    }

                    else
                    {
                        //Message = "con cache: version new:" + new_C.Version + " - version old:" + old_C.Version + " clave new:" + new_C.Clave + " clave old:" + old_C.Clave;

                        List <Edicion> listaEdiciones = JsonConvert.DeserializeObject <List <Edicion> >(old_C.JsonString);
                        foreach (Edicion edi in listaEdiciones)
                        {
                            edi.ImagenSourc = ImageSource.FromStream(() => new MemoryStream(Convert.FromBase64String(edi.ImagenBlob)));
                        }
                        Revista.ListEdiciones = listaEdiciones;
                    }
                    IsBusy = false;
                }
            }
            catch (Exception e)
            {
                IsBusy = false;
                App.Current.MainPage.DisplayAlert("Error", e.Message, "Ok");
            }
        }
コード例 #2
0
 public Handler(IRepository <Business.ProductSort, long> productSortRepository,
                IRepository <ProductClass, long> productClassRepository,
                ManageCache manageCache)
 {
     this._productSortRepository  = productSortRepository;
     this._productClassRepository = productClassRepository;
     this._manageCache            = manageCache;
 }
コード例 #3
0
        public void GetAcercaDe()
        {
            IsBusy = true;
            Title  = string.Empty;
            Conectividad conInternet = new Conectividad();
            ManageCache  new_C       = new ManageCache();
            ManageCache  old_C       = new ManageCache();

            Message = "";
            try
            {
                if (!conInternet.IsConnected())
                {
                    Message = "Es necesario una conexión de internet para hacer uso de esta aplicación";
                }
                else
                {
                    /************************Comparar version caché Vs. Versión en Drupal****************************************/
                    Servicio conServicio = new Servicio();
                    string   parametros  = "{\"tipoConsulta\": \"AcercaDe\",\"Clave\":\"0\"}";
                    string   respCache   = conServicio.ConnService(conServicio.urlDrupalCache, parametros);
                    new_C = JsonConvert.DeserializeObject <ManageCache>(respCache);
                    old_C = old_C.GetKeyCache("AcercaDe", "0");
                    //old_C.DeleteCacheVersion();
                    if (old_C == null)
                    {
                        UpdateAcercaDe();
                        new_C.AddKeyCache("AcercaDe", Acerca.JsonAcercaDe);
                        //Message = "sin cache: version new:" + new_C.Version + " - version old:-- key new:" + new_C.Clave + " version old:--";
                    }

                    else if (new_C.Version != old_C.Version || new_C.Clave != old_C.Clave)
                    {
                        UpdateAcercaDe();
                        //Message = "sin cache: version new:"+new_C.Version + " - version old:" + old_C.Version + " key new:" + new_C.Clave + " version old:" + old_C.Clave;
                        new_C.AddKeyCache("AcercaDe", Acerca.JsonAcercaDe);
                    }

                    else
                    {
                        //Message = "con cache: version new:" + new_C.Version + " - version old:" + old_C.Version + " clave new:" + new_C.Clave + " clave old:" + old_C.Clave;
                        Acerca = JsonConvert.DeserializeObject <Acerca>(old_C.JsonString);
                    }
                    IsBusy = false;
                }
            }
            catch (Exception e)
            {
                IsBusy = false;
                App.Current.MainPage.DisplayAlert("Error", e.Message, "Ok");
            }
        }
コード例 #4
0
        private void UpdateEdicion(string tipo, string IdEdicion)
        {
            /************************Traer datos actualizados del servicio**********************************************/
            ManageCache new_C       = new ManageCache();
            Servicio    conServicio = new Servicio();
            string      parametros  = "{\"tipoConsulta\": \"" + tipo + "\",\"IdEdicion\": \"" + IdEdicion + "\"}";
            string      resp        = conServicio.ConnService(conServicio.urlDrupal, parametros);

            Edicion             = JsonConvert.DeserializeObject <Edicion>(resp);
            Edicion.ImagenSourc = ImageSource.FromStream(() => new MemoryStream(Convert.FromBase64String(Edicion.ImagenBlob)));
            Edicion.JsonEdicion = resp;
            parametros          = "{\"tipoConsulta\": \"ArticulosEdicion\",\"IdEdicion\": \"" + Edicion.IdEdicion + "\"}";
            string resp2 = conServicio.ConnService(conServicio.urlDrupal, parametros);

            Edicion.JsonListArticulos = resp2;
            List <Articulo> listaArticulos = JsonConvert.DeserializeObject <List <Articulo> >(resp2);

            foreach (Articulo art in listaArticulos)
            {
                art.ImagenSourc = ImageSource.FromStream(() => new MemoryStream(Convert.FromBase64String(art.ImagenBlob)));
            }
            Edicion.ListArticulos = listaArticulos;
        }
コード例 #5
0
        public void GetRegional(string idRegional)
        {
            IsBusy = true;
            Title  = string.Empty;
            Conectividad conInternet = new Conectividad();
            ManageCache  new_C       = new ManageCache();
            ManageCache  old_C       = new ManageCache();

            Message = "";
            try
            {
                if (!conInternet.IsConnected())
                {
                    Message = "Es necesario una conexión de internet para hacer uso de esta aplicación";
                }
                else
                {
                    /************************Comparar version caché Vs. Versión en Drupal****************************************/
                    Servicio conServicio = new Servicio();
                    string   parametros  = "{\"tipoConsulta\": \"Regional\",\"Clave\": \"" + idRegional + "\"}";
                    string   respCache   = conServicio.ConnService(conServicio.urlDrupalCache, parametros);
                    new_C = JsonConvert.DeserializeObject <ManageCache>(respCache);
                    old_C = old_C.GetKeyCache("Regional", idRegional);

                    if (old_C == null)
                    {
                        UpdateRegional(idRegional);
                        new_C.AddKeyCache("Regional", Regional.JsonRegional);
                        new_C.AddKeyCache("ArticulosRegional", Regional.JsonListArticulos);
                        //Message = "sin cache: version new:" + new_C.Version + " - version old:-- key new:" + new_C.Clave + " version old:--";
                    }

                    else if (new_C.Version != old_C.Version || new_C.Clave != old_C.Clave)
                    {
                        UpdateRegional(idRegional);
                        //	Message = "sin cache: version new:"+new_C.Version + " - version old:" + old_C.Version + " key new:" + new_C.Clave + " version old:" + old_C.Clave;
                        new_C.AddKeyCache("Regional", Regional.JsonRegional);
                        new_C.AddKeyCache("ArticulosRegional", Regional.JsonListArticulos);
                    }

                    else
                    {
                        //Message = "con cache: version new:" + new_C.Version + " - version old:" + old_C.Version + " key new:" + new_C.Clave + " version old:" + old_C.Clave;
                        Regional             = JsonConvert.DeserializeObject <Regional>(old_C.JsonString);
                        Regional.ImagenSourc = ImageSource.FromStream(() => new MemoryStream(Convert.FromBase64String(Regional.ImagenBlob)));
                        old_C = old_C.GetKeyCache("ArticulosRegional", idRegional);
                        List <Articulo> listaArticulos = JsonConvert.DeserializeObject <List <Articulo> >(old_C.JsonString);
                        foreach (Articulo art in listaArticulos)
                        {
                            art.ImagenSourc = ImageSource.FromStream(() => new MemoryStream(Convert.FromBase64String(art.ImagenBlob)));
                        }
                        Regional.ListArticulos = listaArticulos;
                    }

                    IsBusy = false;
                }
            }
            catch (Exception e)
            {
                IsBusy = false;
                App.Current.MainPage.DisplayAlert("Error", e.Message, "Ok");
            }
        }
コード例 #6
0
 public ProductClassAppService(IRepository <ProductClass, long> repository,
                               ManageCache manageCache) : base(repository)
 {
     this._manageCache = manageCache;
 }
コード例 #7
0
ファイル: SplitService.cs プロジェクト: rcl4444/SplitPackage
 public SplitService(ManageCache cacheManager)
 {
     this._cacheManager = cacheManager;
 }
コード例 #8
0
        public void GetEdicion(string tipo, string IdEdicion = "0")
        {
            IsBusy = true;
            Title  = string.Empty;
            Conectividad conInternet = new Conectividad();
            ManageCache  new_C       = new ManageCache();
            ManageCache  old_C       = new ManageCache();

            Message = "";
            try
            {
                if (!conInternet.IsConnected())
                {
                    Message = "Es necesario una conexión de internet para hacer uso de esta aplicación";
                }
                else
                {
                    /************************Comparar version caché Vs. Versión en Drupal****************************************/
                    Servicio conServicio = new Servicio();
                    string   parametros  = "{\"tipoConsulta\": \"" + tipo + "\",\"Clave\": \"" + IdEdicion + "\"}";
                    string   respCache   = conServicio.ConnService(conServicio.urlDrupalCache, parametros);
                    new_C = JsonConvert.DeserializeObject <ManageCache>(respCache);
                    old_C = old_C.GetKeyCache(tipo, IdEdicion);
                    /***Si no existe el objeto en cache**/
                    if (old_C == null)
                    {
                        UpdateEdicion(tipo, IdEdicion);
                        new_C.AddKeyCache(tipo, Edicion.JsonEdicion);
                        new_C.AddKeyCache("ArticulosEdicion", Edicion.JsonListArticulos);
                        //Message = "sin cache: version new:" + new_C.Version + " - version old:-- key new:" + new_C.Clave + " version old:--";
                    }
                    /***Si existe caché pero la version o el id del objeto es diferente**/
                    else if (new_C.Version != old_C.Version || new_C.Clave != old_C.Clave)
                    {
                        UpdateEdicion(tipo, IdEdicion);
                        //Message = "sin cache: version new:"+new_C.Version + " - version old:" + old_C.Version + " key new:" + new_C.Clave + " version old:" + old_C.Clave;
                        new_C.AddKeyCache(tipo, Edicion.JsonEdicion);
                        new_C.AddKeyCache("ArticulosEdicion", Edicion.JsonListArticulos);
                    }
                    /***Si hay caché y no ha cambiado la version ni el id del objeto, traer datos de cache**/
                    else
                    {
                        //Message = "con cache: version new:" + new_C.Version + " - version old:" + old_C.Version + " key new:" + new_C.Clave + " version old:" + old_C.Clave;
                        Edicion             = JsonConvert.DeserializeObject <Edicion>(old_C.JsonString);
                        Edicion.ImagenSourc = ImageSource.FromStream(() => new MemoryStream(Convert.FromBase64String(Edicion.ImagenBlob)));
                        old_C = old_C.GetKeyCache("ArticulosEdicion", IdEdicion);
                        List <Articulo> listaArticulos = JsonConvert.DeserializeObject <List <Articulo> >(old_C.JsonString);
                        foreach (Articulo art in listaArticulos)
                        {
                            art.ImagenSourc = ImageSource.FromStream(() => new MemoryStream(Convert.FromBase64String(art.ImagenBlob)));
                        }
                        Edicion.ListArticulos = listaArticulos;
                    }

                    IsBusy = false;
                }
            }
            catch (Exception e)
            {
                IsBusy = false;
                App.Current.MainPage.DisplayAlert("Error", e.Message, "Ok");
            }
        }