Login | Register
My pages Projects Community openCollabNet

Discussions > users > Re: [argouml-users] Multiplicity Questions

argouml
Discussion topic

Back to topic list

Re: [argouml-users] Multiplicity Questions

Author phidias
Full name Mark Fortner
Date 2012-04-04 07:32:59 PDT
Message I've fixed the multiplicity issues and altered the GeneratorJava class to
return Lists instead of Vectors. However, I can't seem to get the
generateVisibility method to give me the appropriate visibility. Here's
what's happening:

   - When I debug into the method I find that a call
   to Model.getFacade().isPublic(obj) is always returning true. It is being
   passed an AssociationEndImpl object, and when you get its visibility it
   returns Public. When I try to inspect the AssociationEnd all I get are a
   ton of MOF IDs, and maps and lots of useless crap but no attribute called
   visibility that I can inspect.

   - When I make a call to getName on the Association, it returns null for
   both association ends, despite the fact that one of the association ends is
   named.

My thought is that the Property panel is setting some other attribute of
the Association End to private. But I can't really confirm this. Does
anyone have any suggestions for how to proceed further?

Mark


On Thu, Mar 29, 2012 at 8:11 AM, Mark Fortner <phidias51 at gmail dot com> wrote:

> I've created an issue for this:
> http://argouml.tigri​s.org/issues/show_bu​g.cgi?id=6421
>
> If I get a chance this weekend, I'll take a look at the existing code for
> this.
>
> Cheers,
>
> Mark
>
>
>
> On Wed, Mar 28, 2012 at 9:33 AM, Mark Fortner <phidias51 at gmail dot com> wrote:
>
>> Thanks, Tom!
>>
>> I knew there had to be some UML-specific thing that I needed to do to get
>> the employeeList in the right place.
>>
>> As for generating the appropriate type, (ArrayLists vs Vectors), my
>> thought was that I'd simply generate:
>>
>> List<Employee> employeeList;
>>
>>
>> And let the user create the right-side of declaration if they want after
>> the code has been generated.
>>
>> Is there currently a preference that allows the user to specify what
>> version of Java they want to use? Perhaps using the Java profile? Since
>> Oracle doesn't support 1.4 anymore, is there a reason that we would need to
>> support the non-generic list?
>>
>> Mark
>>
>>
>>
>> On Wed, Mar 28, 2012 at 8:32 AM, Tom Morris <tfmorris at gmail dot com> wrote:
>>
>>> On Wed, Mar 28, 2012 at 11:06 AM, Mark Fortner <phidias51 at gmail dot com>
>>> wrote:
>>> > Hi Linus,
>>> > I created the association again, clicked on the link in the Properties
>>> panel
>>> > to go to the Department association end, and then clicked Private.
>>> When I
>>> > looked at the source tab, it still showed up as public. Oddly enough,
>>> on
>>> > the diagram we see "-employeeList" indicating that the association end
>>> is
>>> > private.
>>>
>>> I've lost track of the ends now, but my impression from the original
>>> message was that you were changing the visibility on the wrong
>>> association end. Remember that it's the *far* end that you need to
>>> change for things like visibility and navigability.
>>>
>>> > What's also odd is the fact that Employee also ends up with a public
>>> Vector
>>> > employeeList declaration.
>>>
>>> Is the association navigable in both directions? (the default) If so,
>>> you'll get data structures on both ends to allow you to get to the
>>> other end. Set isNavigable to false on the end opposite where you
>>> want the data structure to disappear from.
>>>
>>> > I suspect changing Vectors into generified Lists, and fixing the
>>> > Multiplicity=1 issue are probably trivial changes and I'll look into
>>> that
>>> > within the next few days.
>>>
>>> Support for UML Templates and Java generics is only partially
>>> implemented. You could probably special case the code generation for
>>> this specific use case without generics support, but you might need to
>>> take backward compatibility into account (e.g. provide a preference
>>> setting for what type to generate).
>>>
>>> Note also that ArrayList and Vector have slightly different semantics,
>>> particularly vis a vis synchronization, so the two types aren't
>>> completely interchangeable.
>>>
>>> Tom
>>>
>>> --------------------​--------------------​--------------
>>>
>>> http://argouml.tigri​s.org/ds/viewMessage​.do?dsForumId=449​&dsMessageId=294164​0
>>>
>>> To unsubscribe from this discussion, e-mail: [
>>> users-unsubscribe@ar​gouml.tigris.org].
>>>
>>
>>
>
Attachments

« Previous message in topic | 8 of 9 | Next message in topic »

Messages

Show all messages in topic

[argouml-users] Multiplicity Questions phidias Mark Fortner 2012-03-27 14:04:24 PDT
     Re: [argouml-users] Multiplicity Questions linus Linus Tolke 2012-03-27 21:54:05 PDT
     Re: [argouml-users] Multiplicity Questions bobtarling Bob Tarling 2012-03-27 23:37:18 PDT
         Re: [argouml-users] Multiplicity Questions phidias Mark Fortner 2012-03-28 08:07:00 PDT
             Re: [argouml-users] Multiplicity Questions tfmorris Tom Morris 2012-03-28 08:32:54 PDT
                 Re: [argouml-users] Multiplicity Questions phidias Mark Fortner 2012-03-28 09:33:12 PDT
                     Re: [argouml-users] Multiplicity Questions phidias Mark Fortner 2012-03-29 08:11:23 PDT
                         Re: [argouml-users] Multiplicity Questions phidias Mark Fortner 2012-04-04 07:32:59 PDT
                             [argouml-dev] Re: [argouml-users] Multiplicity Questions bobtarling Bob Tarling 2012-04-04 09:54:33 PDT
Messages per page: