M1

Exercice 1

  1. Raspberry fait office d’ordinateur, Arduino est un automate monotache qui execute un programme en boucle. Phidget est à un niveau supérieur que Arduino

  2. Les services ne sont pas forcément toujours disponibles

  3. Bluetooth, NFC, Wifi,ZWave etc…

  4. ??

  5. Pour que le package importé soit encore disponible pour un autre bundle

Exercice 2

  1. Les bundles G, B et E servent à fournir aux bundles F, A, D et C les packages dont ils ont besoin

    • Bundle A : Importe B et E / Exporte rien
    • Bundle B : Importe rien / Exporte vers F et A
    • Bundle C : Importe E / Exporte rien
    • Bundle D : Importe E et G / Exporte rien
    • Bundle E : Importe rien / Exporte vers A, C et D
    • Bundle F : Importe G et B / Exporte rien
    • Bundle G : Importe rien / Exporte vers F et D
  2. Parce que si l’un des 2 bundles ne répond pas, il recevra quand même le service de l’autre

  3. Ils ont des services requis non résolus, donc si ils ont besoin d’un de ces services non importé, ils vont planter

  4. Si les services dont ils ont besoin sont disponibles, ils ne seront pas reconnus par les bundles car absence de Scr ou listener

  5. 1 - Activator : utilisation des listeners
    2 - Declarative service : remplacer listener en faisant une configuration dans un fichier xml pour gérer une dépendance entre les bundles

  6. Il faudrait ajouter un export au bundle F. 2 solutions :

    • Créer un nouveau bundle qui exporte pack 3
    • Supposer que G, B ou E exporte le pack 3, du coup F doit faire un export service
  7. ??