Changeset 113848 in spip-zone


Ignore:
Timestamp:
Feb 11, 2019, 2:53:02 PM (7 days ago)
Author:
root
Message:

Utilisation du plugin Cache Factory pour les caches de N-Core.
A tester maintenant avec toutes les utilisations possibles.

Location:
_plugins_/n-core/trunk
Files:
1 deleted
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/n-core/trunk/cache/ncore.php

    r113794 r113848  
    2323        // Initialisation du tableau de configuration avec les valeurs par défaut du plugin Cache.
    2424        $configuration = array(
    25                 'racine'        => _DIR_CACHE,
    26                 'nom'           => array('objet', 'type'),
    27                 'extension'     => '.php',
    28                 'securisation'  => true,
    29                 'serialisation' => true,
    30                 'separateur'    => '-'
     25                'racine'          => _DIR_CACHE,
     26                'sous_dossier'    => true,
     27                'nom_obligatoire' => array('objet', 'fonction'),
     28                'nom_facultatif'  => array(),
     29                'extension'       => '.php',
     30                'securisation'    => true,
     31                'serialisation'   => true,
     32                'separateur'      => '-'
    3133        );
    3234
  • _plugins_/n-core/trunk/ncore/ncore.php

    r113633 r113848  
    6868                // Initialisation de la sortie.
    6969                $retour = true;
    70 
    71                 include_spip('inc/ncore_cache');
     70               
     71                // Initialisation des identifiants des caches
     72                $cache_descriptions = array(
     73                        'sous_dossier' => $plugin,
     74                        'objet'        => 'type_noisette',
     75                        'fonction'     => 'descriptions'
     76                );
     77                $cache_signatures = $cache_descriptions;
     78                $cache_signatures['fonction'] = 'signatures';
     79
     80                include_spip('inc/cache');
    7281                if ($recharger) {
    7382                        // Si le rechargement est forcé, tous les types de noisette sont nouveaux, on peut donc écraser les caches
    7483                        // existants sans s'en préoccuper.
    7584                        $descriptions = array_column($types_noisette['a_ajouter'], null, 'type_noisette');
    76                         cache_ecrire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_DESCRIPTION, $descriptions);
     85                        cache_ecrire('ncore', $cache_descriptions, $descriptions);
    7786
    7887                        $signatures = array_column($types_noisette['a_ajouter'], 'signature', 'type_noisette');
    79                         cache_ecrire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_SIGNATURE, $signatures);
     88                        cache_ecrire('ncore', $cache_signatures, $signatures);
    8089                } else {
    8190                        // On lit les cache existants et on applique les modifications.
    82                         $descriptions = cache_lire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_DESCRIPTION);
    83                         $signatures = cache_lire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_SIGNATURE);
     91                        $descriptions = cache_lire('ncore', $cache_descriptions);
     92                        $signatures = cache_lire('ncore', $cache_signatures, $signatures);
    8493
    8594                        // On supprime les noisettes obsolètes
     
    105114
    106115                        // On recrée les caches.
    107                         cache_ecrire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_DESCRIPTION, $descriptions);
    108                         cache_ecrire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_SIGNATURE, $signatures);
     116                        cache_ecrire('ncore', $cache_descriptions, $descriptions);
     117                        cache_ecrire('ncore', $cache_signatures, $signatures);
    109118                }
    110119        }
     
    229238                // Initialisation de la description à renvoyer.
    230239                $description = array();
    231 
    232                 include_spip('inc/ncore_cache');
    233                 $descriptions = cache_lire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_DESCRIPTION);
     240                               
     241                // Initialisation des identifiants des caches
     242                $cache_descriptions = array(
     243                        'sous_dossier' => $plugin,
     244                        'objet'        => 'type_noisette',
     245                        'fonction'     => 'descriptions'
     246                );
     247
     248                include_spip('inc/cache');
     249                $descriptions = cache_lire('ncore', $cache_descriptions);
    234250                if (isset($descriptions[$type_noisette])) {
    235251                        $description = $descriptions[$type_noisette];
     
    272288        } else {
    273289                // Le plugin ne propose pas de fonction propre ou le stockage N-Core est explicitement demandé.
    274                 // -- On lit le cache des sesxcriptions ou des signatures suivant la demande.
     290                // -- On lit le cache des descriptions ou des signatures suivant la demande.
    275291                // -- Initialisation du tableau de sortie
    276292                $types_noisettes = array();
    277293
    278                 include_spip('inc/ncore_cache');
     294                // Initialisation de l'identifiant du cache des descriptions
     295                $cache = array(
     296                        'sous_dossier' => $plugin,
     297                        'objet'        => 'type_noisette',
     298                        'fonction'     => 'descriptions'
     299                );
     300
     301                include_spip('inc/cache');
    279302                if ($information == 'signature') {
    280303                        // Les signatures md5 sont sockées dans un fichier cache séparé de celui des descriptions de noisettes.
    281                         $types_noisettes = cache_lire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_SIGNATURE);
    282                 } elseif ($descriptions = cache_lire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_DESCRIPTION)) {
     304                        $cache['fonction'] = 'signatures';
     305                        $types_noisettes = cache_lire('ncore', $cache);
     306
     307                } elseif ($descriptions = cache_lire('ncore', $cache)) {
    283308                        if ($information) {
    284309                                // Si $information n'est pas une colonne valide array_column retournera un tableau vide.
  • _plugins_/n-core/trunk/ncore_fonctions.php

    r113529 r113848  
    4646
    4747        if (!isset($est_ajax[$plugin][$type_noisette])) {
    48                 include_spip('inc/ncore_cache');
     48                // Initialisation de l'identifiant du cache des indicateurs Ajax
     49                include_spip('inc/cache');
     50                $cache = array(
     51                        'sous_dossier' => $plugin,
     52                        'objet'        => 'type_noisette',
     53                        'fonction'     => 'ajax'
     54                );
     55
    4956                // On vérifie si on doit recalculer le cache ou pas.
    5057                if ((_request('var_mode') == 'recalcul')
    5158                or (defined('_NO_CACHE') and (_NO_CACHE != 0))
    52                 or (!$est_ajax[$plugin] = cache_lire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_AJAX))) {
     59                or (!$est_ajax[$plugin] = cache_lire('ncore', $cache))) {
    5360                        // On charge l'API de N-Core.
    54                         include_spip("ncore/ncore");
     61                        include_spip('ncore/ncore');
    5562
    5663                        // On détermine la valeur par défaut de l'ajax des noisettes pour le plugin appelant.
     
    7582
    7683                        // In fine, on met à jour le cache
    77                         cache_ecrire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_AJAX, $est_ajax[$plugin]);
     84                        cache_ecrire('ncore', $cache, $est_ajax[$plugin]);
    7885                }
    7986        }
     
    114121
    115122        if (!isset($est_dynamique[$plugin][$type_noisette])) {
    116                 include_spip('inc/ncore_cache');
     123                // Initialisation de l'identifiant du cache des indicateurs d'inclusion dynamique
     124                include_spip('inc/cache');
     125                $cache = array(
     126                        'sous_dossier' => $plugin,
     127                        'objet'        => 'type_noisette',
     128                        'fonction'     => 'inclusions'
     129                );
     130
    117131                // On doit recalculer le cache ou pas.
    118132                if ((_request('var_mode') == 'recalcul')
    119133                or (defined('_NO_CACHE') and (_NO_CACHE != 0))
    120                 or (!$est_dynamique[$plugin] = cache_lire($type_noisette, _NCORE_NOMCACHE_TYPE_NOISETTE_INCLUSION))) {
     134                or (!$est_dynamique[$plugin] = cache_lire('ncore', $cache))) {
    121135                        // On charge l'API de N-Core.
    122136                        // Ce sont ces fonctions qui aiguillent ou pas vers une fonction spécifique du service.
    123                         include_spip("ncore/ncore");
     137                        include_spip('ncore/ncore');
    124138
    125139                        // On détermine la valeur par défaut de l'ajax des noisettes pour le plugin appelant.
     
    143157
    144158                        // In fine, on met à jour le cache
    145                         cache_ecrire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_INCLUSION, $est_dynamique[$plugin]);
     159                        cache_ecrire('ncore', $cache, $est_dynamique[$plugin]);
    146160                }
    147161        }
     
    245259        // -- les contextes sont stockés dans un cache dédié.
    246260        if (!isset($contextes_type_noisette[$plugin][$type_noisette])) {
     261                // Initialisation de l'identifiant du cache des indicateurs d'inclusion dynamique
     262                include_spip('inc/cache');
     263                $cache = array(
     264                        'sous_dossier' => $plugin,
     265                        'objet'        => 'type_noisette',
     266                        'fonction'     => 'contextes'
     267                );
     268
    247269                // On vérifie si on doit recalculer le cache le cache ou pas.
    248                 include_spip('inc/ncore_cache');
    249270                if ((_request('var_mode') == 'recalcul')
    250271                or (defined('_NO_CACHE') and (_NO_CACHE != 0))
    251                 or (!$contextes_type_noisette[$plugin] = cache_lire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_CONTEXTE))) {
     272                or (!$contextes_type_noisette[$plugin] = cache_lire('ncore', $cache))) {
    252273                        // On répertorie la configuration du contexte de toutes les noisettes disponibles et on
    253274                        // le renvoie le résultat tel quel.
     
    262283
    263284                        // In fine, on met à jour le cache
    264                         cache_ecrire($plugin, _NCORE_NOMCACHE_TYPE_NOISETTE_CONTEXTE, $contextes_type_noisette[$plugin]);
     285                        cache_ecrire('ncore', $cache, $contextes_type_noisette[$plugin]);
    265286                }
    266287        }
  • _plugins_/n-core/trunk/paquet.xml

    r113630 r113848  
    22        prefix="ncore"
    33        categorie="outil"
    4         version="0.8.4"
     4        version="0.9.0"
    55        etat="test"
    66        compatibilite="[3.2.0;3.2.*]"
     
    1515
    1616        <necessite nom="yaml" compatibilite="[2.0.7;[" />
     17        <necessite nom="cache" compatibilite="[0.1.0;[" />
    1718</paquet>
Note: See TracChangeset for help on using the changeset viewer.