|
Les agents `🆃 Building` permettent de modéliser les bâtiments associés aux destinataires finaux, mais également, via un mécanisme d'héritage comme en programmation orientée objet, les entrepôts et les fournisseurs. Les bâtiments disposent de nombreuses propriétés et fonctions leur permettant d'entreposer de la marchandise et d'accueillir celle-ci lorsqu'elle arrive à destination.
|
|
Les agents `🆃 Building` permettent de modéliser les bâtiments associés aux destinataires finaux, mais également, via un mécanisme d'héritage comme en programmation orientée objet, les entrepôts et les fournisseurs. Les bâtiments disposent de nombreuses propriétés et fonctions leur permettant d'entreposer de la marchandise et d'accueillir celle-ci lorsqu'elle arrive à destination.
|
|
|
|
|
|
|
|
# Les agents de type `Building`
|
|
|
|
|
|
|
|
`Building` est en fait un super-type dont hérite d'autres type d'agent. On retrouve sur le diagramme ci-dessous ces différents agents.
|
|
|
|
|
|
|
|
```plantuml
|
|
|
|
Building <|-- RestockingBuilg
|
|
|
|
Building <|-- Terminal
|
|
|
|
RestockingBuilg <|-- Warehouse
|
|
|
|
RestockingBuilg <|-- Provider
|
|
|
|
```
|
|
|
|
|
|
# Réception d'une livraison
|
|
# Réception d'une livraison
|
|
|
|
|
|
Lorsqu'un agent `🆃 Vehicle` arrive à destination il appel la fonction `🅵 receiveCommodity` de l'agent `🆃 Building` en passant en paramètre la liste des marchandises transportées. Dans le cas où le bâtiment est la destination finale de la marchandise (il peut s'agir d'un entrepôt ou du bâtiment associé au destinataire final), alors ces marchandises sont incluses dans la liste `🆅 entering_stocks` sous la forme d'objets de type `🆃 AwaitingStock`. Sinon, lorsque le bâtiment correspond à un entrepôt, la marchandise va encore transiter vers un autre bâtiment grâce à un autre véhicule. Dans ce cas la marchandise est ajouté à la liste `🆅 comingCommodities`.
|
|
Lorsqu'un agent `🆃 Vehicle` arrive à destination il appel la fonction `🅵 receiveCommodity` de l'agent `🆃 Building` en passant en paramètre la liste des marchandises transportées. Dans le cas où le bâtiment est la destination finale de la marchandise (il peut s'agir d'un entrepôt ou du bâtiment associé au destinataire final), alors ces marchandises sont incluses dans la liste `🆅 entering_stocks` sous la forme d'objets de type `🆃 AwaitingStock`. Sinon, lorsque le bâtiment correspond à un entrepôt, la marchandise va encore transiter vers un autre bâtiment grâce à un autre véhicule. Dans ce cas la marchandise est ajouté à la liste `🆅 comingCommodities`.
|
... | | ... | |