Package zephir :: Package backend :: Module entid :: Class IdPoolManager
[frames] | no frames]

Class IdPoolManager

source code

classe de gestion d'un ensemble de pool d'identifiants pour les ENT se reporter au Schéma Directeur des Espaces Numériques de Travail http://www.educnet.education.fr/services/ent/sdet

Instance Methods
 
__init__(self, serveur_pool) source code
 
load_pools(self)
initialise les pools d'identifiant depuis les données stockées en base
source code
 
get_pool(self, code_ent=None)
renvoie les informations d'un pool (plages réservées et nombre d'identifiants disponibles) code_ent: code ENT du pool à renvoyer (tous si rien)
source code
 
get_code_ent(self, code_ent=None)
renvoie la liste des codes ent connus
source code
 
get_id_range(self, id_serveur, cle_pub, nb_id=100)
réserve une plage dans le pool d'adresses d'un ent
source code
 
cancel(self, pool, id_serveur, ranges)
annule une réservation après un délai d'attente
source code
 
validate_id_range(self, code_ent, id_serveur, md5_id, ranges)
Valide une réservation envoyée à un serveur
source code
 
store_range(self, code_ent, id_serveur, pool, ranges)
enregistre une plage réservée dans la base de données
source code
 
reserve_range(self, minid, maxid)
Réservation manuelle d'une plage d'identifiant
source code
 
send_interval(self, serv, ranges)
envoi d'un fichier indiquant l'intervalle réservé
source code
Method Details

get_id_range(self, id_serveur, cle_pub, nb_id=100)

source code 
réserve une plage dans le pool d'adresses d'un ent
  • le code ent est récupéré dans la configuration du serveur
  • si le pool n'a jamais été utilisé, on l'initialise
  • le pool se met en attente de validation et bloque les autres demandes en attendant (si la validation n'est pas faite après un certain temps, on annule la réservation)
  • les données sont envoyées par uucp dans un fichier dont on garde le md5 (une action de validation est aussi programmée)

validate_id_range(self, code_ent, id_serveur, md5_id, ranges)

source code 
Valide une réservation envoyée à un serveur
  • vérifie que l'id du serveur et le md5 renvoyé correspond à la réservation en cours
  • met à jour le pool d'identifiant de ce code ent