How to draw the lollipop socket symbol in a class diagram - (consumes)?

+1 vote
asked Jul 29, 2014 by alberto (220 points)

I've found how to draw lollipops in class diagrams: I've also found that the lollipop support for component diagrams is pretty good: . But I have tried to define a "consumes" relationship in the classdiagram, and I only get syntax errors.

This is what I want to do:

lollipop socket

I have tried many parenthesis-dashes combinations to no avail. Is this possible? (I'm using plantuml v.7999)

1 Answer

+1 vote
answered Jul 29, 2014 by plantuml (143,890 points)
Best answer

No this is not possible yet.

But somehow we are working on improving lollipops support in PlantUML, so thanks for your request, we will integrate this in some future (but not before september 2014, sorry about that).

If you have suggestions about the syntax you would expect, feel free to post it here.

commented Jul 30, 2014 by anonymous
Thanks for your answer. About the syntax, I'm sure I'll be confortable with whatever  you come up with. In my opinion though, it would make sense if you keep the notation in line with the already proposed for components. Something like:

class foo1
class foo2
foo1 -0)- foo2
foo1 -(
)- foo2
commented Sep 21, 2015 by anonymous

Just wanted to know if the lollipop and socket notation has been integrated in the latest release. If yes, how do we go about using it?

commented Sep 21, 2015 by plantuml (143,890 points)
Right now, you can have :

class foo1
class foo2
foo1 -0)- foo2
commented Oct 3, 2015 by anonymous
Thanks for your reply. I appreciate your efforts :)
I am not able to add additional Consume relations.. I need something like
that is present in this link
Help me if this functionality is available, with code snippet..
I tried many combinations and ended up in vain..
commented Mar 17, 2017 by anonymous
Hi.. I also need the same functionality. Is it available yet?
commented Mar 17, 2017 by plantuml (143,890 points)
You can do something like:
component Something {
  component Provider
  interface " " as Interface
  Provider -() Interface

component SomethingElse {
  component User
  Interface )-- User
commented Mar 19, 2017 by anonymous

Somehow this doesnt work for my uml.. Check this out:

Could you please suggest why it is giving that weird error - its not recognising this notation :- ")--"
commented Mar 20, 2017 by plantuml (143,890 points)
This has been implemented in last beta:
Tel us if it's not working for you.
commented Mar 22, 2017 by plantuml (143,890 points)
With last beta
We have added the "circle" keyword.

So you can have now:
left to right direction
class P
class C1
class C2
interface A1
circle A2
C1 ..> A1
C2 --( A2
A1 <|.. B1
A1 <|.. B2
B1 --|> P
B2 --|> P
A2 -- B2