Hi David A., Chuck or anybody knowledgable about ERXCopyable,

Since I started using Wonder I noticed that when an EO is created and inserted 
into the editing context the to-many relationships have an empty array.  I 
really like this because it eliminated a lot of null checking logic before 
accessing to many relationships, I.e. I can do myToMany().count() without fear 
that I will get a null pointer exception.

I started using ERXCopyable and like it very much.  In one of my EO’s I have a 
special to-many relationship where the objects in it have to be copied over in 
a specific order.   Therefore, I specified the Nullify copy type for that 
to-many.  That sets the to-many to null.  I then wrote the custom logic to copy 
the objects in the to-many in the correct order.  However, I encountered a null 
pointer exception because the to-many is null and the code written it assumes 
that the to-many starts out with an empty array.

It’s no big deal as I can work around it.  However, it made me think that maybe 
the Nullify copy type should leave to-many relationships alone instead of 
setting them to null.  Something like this:

                …
        case NULLIFY:
                // Null out the to-one and leave to-many as is so that it 
remains as an empty array
                if (relationship.isToMany() == false) {
                        destination.takeStoredValueForKey(null, 
relationshipName);
                }
                break;
                …

Let me know what you think.

Thanks,
Ricardo Parada


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to