Re: Can't avoid "References to generic type List<E> should be parameterized"
warning here can I ?
S?bastien de Mapias wrote:
Hi,
I'm writing some kind of gateway between 2 packages, whose a
few classes have the same name (I need to bind these classes).
So I'm retrieving the attributes of my source class1 and set my
equivalent class2 in the other pkg with these attributes when
methods names -and attributes- match.
Excerpt from my method:
1 public my.persistent.Pst mapFromProtocol(my.protocol.Pst src)
2 {
3 my.persistent.Pst target = new my.persistent.Pst();
4 for (Iterator<my.protocol.Remark> it =
src.getRemark().iterator(); it.hasNext(); )
5 target.getRemark().add(it.next());
6
7 ... //many other attributes/objects to set too
8
9 return target;
10 }
In RAD the line 5 is underlined in yellow and it says "Type safety:
The method add(Object) belongs to the raw type List. References
to generic type List<E> should be parameterized".
Is there a way to avoid this warning in my case, as I can't
instantiate
a List<Remark> lr = new ArrayList() of course... (because I have no
method setRemark() in target)
Thanks.
Regards,
Seb
Change target.getRemark() and src.getRemark() both to return List<Remark>
While your at it:
target.getRemark().addAll(src.getRemark()) might help you out some.
What I don't get is that if Pst.getRemark().iterator() returns an
Iterator<my.protocal.Remark>, then there shouldn't be a problem.
--
Daniel Pitts' Tech Blog: <http://virtualinfinity.net/wordpress/>