예제 #1
0
 @Override
 protected Void doInBackground(Boolean... params) {
   Boolean chargerImage = params[0];
   for (JsonFile json : JsonFile.values()) {
     try {
       if (!Synchronizer.downloadJsonFile(getBaseContext(), json.getUrl(), json.getType())) {
         // Si une erreur de chargement on sort
         break;
       }
       publishProgress(progressStatus++);
     } catch (RuntimeException e) {
       Log.w("DialogSynchronizeFragment", "Impossible de synchroniser", e);
     }
   }
   // Une fois finie on supprime le cache
   MembreFacade.getInstance().viderCache();
   ConferenceFacade.getInstance().viderCache();
   if (chargerImage) {
     // On pren les membres s'ils viennent d'etre recharge
     List<Membre> membres =
         MembreFacade.getInstance().getMembres(getBaseContext(), TypeFile.members.name(), null);
     for (Membre membre : membres) {
       if (membre.getUrlimage() != null) {
         Synchronizer.downloadImage(
             getBaseContext(), membre.getUrlimage(), "membre" + membre.getId());
         publishProgress(progressStatus++);
       }
     }
     // On charge les logos des sponsors
     membres =
         MembreFacade.getInstance().getMembres(getBaseContext(), TypeFile.sponsor.name(), null);
     for (Membre membre : membres) {
       if (membre.getLogo() != null) {
         Synchronizer.downloadImage(getBaseContext(), membre.getLogo(), "logo" + membre.getId());
         publishProgress(progressStatus++);
       }
     }
   }
   return null;
 }
예제 #2
0
 /** @param chargerImage */
 private void appelerSynchronizer(boolean chargerImage) {
   if (progressDialog == null) {
     progressDialog = new ProgressDialog(this);
   }
   progressDialog.setCancelable(true);
   int nbMax = JsonFile.values().length;
   if (chargerImage) {
     nbMax +=
         MembreFacade.getInstance()
             .getMembres(getBaseContext(), TypeFile.members.name(), null)
             .size();
     if (nbMax < 100) nbMax = 800;
   }
   progressDialog.setMax(nbMax);
   progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
   progressDialog.setMessage(getResources().getString(R.string.sync_message));
   progressDialog.show();
   SynchronizeMixitAsync synchronizeMixitAsync = new SynchronizeMixitAsync();
   synchronizeMixitAsync.execute(Boolean.valueOf(chargerImage));
 }