@startuml !pragma layout elk '!pragma layout Smetana ' Show + # or whatever before an attribute, instead of an icon 'skinparam classAttributeIconSize 0 ' first package "Package 7" <<FooBar Component>> { class HarpoFred class FredFileProcessor class FredResponseHandler } ' second package "Package 5" <<FooBar Component>> { class HarpoDiscover class DaffyResponseHandler } ' third package "Package 10" <<FooBar Component>> { class HarpoEthernetPacketBuilder class HarpoEthernetProxy class HarpoEthernetReponseHandler interface IHarpoPacketDescriptor interface IHarpoResponseHandler class FredRequestPacket interface IFredRequestPacket interface IDaffyRequestPacket interface IEepromUploadPacket interface IEventHandler interface IPlutoUploadPacket } ' fourth package "Package 9" <<FooBar Component>> { class GoofyResponseHandler class HarpoGoofyProxy } ' fifth package "Package 6" <<FooBar Component>> { class HarpoPlutoProgrammer class PlutoResponseHandler } ' sixth package "Package 8" <<FooBar Component>> { class HarpoSNMPIOProxy } ' seventh package "Package 4" <<FooBar Component>> { class HarpoModuleProgrammer class UploadResponseHandler class UploadManager class BinaryFilePreprocessor } ' eighth package "Package 3" <<FooBar Component>> { interface ISNMPHandler class SNMPIOHandler interface ISNMPServiceContainer interface ISNMPAgent class SNMPAgent class SNMPServiceContainer class SNMPGoofyHandler } ' ninth package "Package 1" <<FooBar Component>> { class FileUploadManager class IFredDescriptor class TFTPServiceContainer class TFTPServer class TFTPFredRequestHandler class TFTPShampooHandler interface ITFTPHandler class TFTPDaffyHandler interface ITFTPServiceContainer class TFTPPlutoHandler interface ITFTPServer } ' tenth package "Package 2" <<FooBar Component>> { class ServiceContainerBase interface IServiceContainer } "Package 7" --> "Package 10" : Relies on "Package 5" --> "Package 10" : Relies on ' "Package 10" -- No arrows coming out of this. "Package 9" --> "Package 10" : Relies on "Package 6" --> "Package 10" : Relies on "Package 8" --> "Package 10" : Relies on "Package 4" --> "Package 10" : Relies on '"Package 3" -up-> "Package 2" ''' "Package 3" --> "Package 2" "Package 3" --> "Package 8" : Relies on "Package 3" --> "Package 9" : Relies on '"Package 1" -right-> "Package 4" '"Package 1" -right-> "Package 5" '"Package 1" -right-> "Package 6" '"Package 1" -right-> "Package 7" '"Package 1" -down-> "Package 2" ''' "Package 1" --> "Package 4" "Package 1" --> "Package 5" "Package 1" --> "Package 6" "Package 1" --> "Package 7" "Package 1" --> "Package 2" ' "Package 2" -- No arrows coming out of this. ' Try to influence layout 'left to right direction '!pragma layout smetana '"Package 4" -[hidden]down-> "Package 5" @enduml
Decode URL
Submit
amiga
aws-orange
black-knight
bluegray
blueprint
cerulean-outline
cerulean
crt-amber
crt-green
cyborg-outline
cyborg
hacker
lightgray
mars
materia-outline
materia
metal
mimeograph
minty
plain
reddress-darkblue
reddress-darkgreen
reddress-darkorange
reddress-darkred
reddress-lightblue
reddress-lightgreen
reddress-lightorange
reddress-lightred
sandstone
silver
sketchy-outline
sketchy
spacelab
spacelab-white
superhero-outline
superhero
toy
united
vibrant
🎉 Discover the future PlantUML Web Editor! 🚀
PNG
SVG
ASCII Art