Je travaille avec Cisco Prime Infrastructure et je dois créer un modèle CLI pour le déploiement en masse de certains commutateurs. Prime utilise Apache Velocity pour son contenu CLI au script. J'ai rencontré un problème où j'exécute du code qui boucle à travers le VLAN sur un commutateur et effectue une action par VLAN. Le code fonctionne correctement si le commutateur a plusieurs VLAN, mais échoue s'il n'en a qu'un. Exemple:Apache Velocity: Vérification du nombre de tableaux
Switch1 se compose de VLAN 1, de sorte que la matrice se présente comme suit [VLAN1]
Switch2 se compose de VLAN 1, VLAN 2, VLAN 3, tableau ressemble [VLAN1, VLAN2, VLAN3]
le code:
#foreach($vlan in $VlanName)
interface $vlan
no ip helper-address
#end
$ VlanName est défini dans la base de données Prime et retourne le tableau de vLANs sur chaque commutateur. Ce qui précède fonctionnera sur Switch2 mais échouera sur Switch1. Y at-il un moyen dans Apache Velocity de faire une vérification pour voir si le tableau contient plus d'une seule valeur? Je voudrais faire une instruction IF qui change le code à quelque chose comme ceci:
#if ($VlanName.count = 1)
interface $VlanName
no ip helper-address
#else
#foreach($vlan in $VlanName)
interface $vlan
no ip helper-address
#end
Est-ce possible dans la vitesse?