I think the best thing to do with these is to back out the changes below
and start again, I think I've got a better solution to the problem I was
trying to solve there.
The original intent behind the changes to RemoteEvent, were to change
it's internal handback object to a MarshalledInstance from
MarshalledObject, so the Java CDC Personal Basis Profile could
participate in a djinn, with some very basic simple services and as a
client.
Since proxy's that aren't compatible with CDC simply either won't
unmarshall or can't be matched, this makes it relatively simple.
The problem with the RemoteEvent was that it is tied to it's serialized
form, so what I needed was a MarshalledInstance, with MarshalledObject
serialized form. What happened of course is I tried to convert the form
in the writeObject and readObject methods, however this is the wrong
approach, since there is an Object source field in RemoteEvent that
could too be a MarshalledObject.
Cut a long story short, what I need is a container class for
MarshalledInstance that has MarshalledObject's serialized form, which I
can use to replace MarshalledObject fields inside objects while
preserving the existing object methods. That would also mean that any
objects that utilise it don't need to change their serialization methods.
Stay tuned.
Cheers,
Peter.
Jonathan Costers wrote:
FWIW - I backed out (back to the original Sun contribution) all changes to
the following files:
src/net/jini/core/event/RemoteEvent.java
src/net/jini/discovery/RemoteDiscoveryEvent.java
src/net/jini/lease/RenewalFailureEvent.java
src/net/jini/core/lookup/ServiceEvent.java
and now I have the servicediscovery QA test category running fine (so far,
but some of the tests that were failing earlier are passing).
2010/8/31 Jonathan Costers <[email protected]>
Great! Would you be able to create a JIRA issue for it?
I would do it myself but I believe you have a better idea on how to
describe what exactly is going on.
2010/8/31 Peter Firmstone <[email protected]>
Ok,
I found the culprit, it's RemoteEvent.
Will look into it further tomorrow, off to sleep now.
Peter.
Patricia Shanahan wrote:
On 8/25/2010 1:34 AM, Peter Firmstone wrote:
...
I've gotten to the bottom of what's causing the failures, one's a null
reference, the other a serialization problem, the first problem's easy,
the second will take a bit more thought.
com/sun/jini/test/spec/discoveryservice/event/Discovered.td also fails
with 935130 but passes with 934258.
I may delay work on problems in tests that were not being run until I can
retest against the fixes you are working on. I have a feeling a lot more
tests will pass.
Patricia