Re: WO5.4: Generics for objectsWithFetchSpecification ???
Re: WO5.4: Generics for objectsWithFetchSpecification ???
- Subject: Re: WO5.4: Generics for objectsWithFetchSpecification ???
- From: Lachlan Deck <email@hidden>
- Date: Mon, 14 Jan 2008 10:19:05 +1100
Slight correction...
On 14/01/2008, at 8:48 AM, Lachlan Deck wrote:
Actually, having thought about it a bit more, I think it's not such
a nice improvement. i.e., it's not the user that determines what
type of object is returned for a raw-row fetch; that's a function
of the framework.
So the only way I can see this moving forward:
* deprecate the flag in EOFetchSpecification
* adjust EOEditingContext as follows...
public NSArray<T> objectsWithFetchSpecification
(EOFetchSpecification<T> fetchSpec) {...}
public NSArray<?> rawObjectsWithFetchSpecification
(EOFetchSpecification fetchSpec) {....}
(Seeing as raw fetches can return an Integer, Long, String,
NSDictionary depending on the query/calculation)
What do you think?
with regards,
--
Lachlan Deck
On 09/01/2008, at 6:13 AM, Mr. Pierre Frisch wrote:
This would be a pretty radical change that would break a lot of
code. At the moment the raw rows is a boolean in the
EOFetchSpecification, I agree that this would be a nice
improvement but are we ready for it?
Pierre
--
Pierre Frisch
email@hidden
On Jan 7, 2008, at 20:03, Mike Schrag wrote:
.... pretend .... you ... never mentioned that?
I suppose your fetch spec would then be
EOFetchSpecification<NSDictionary> and maybe it would just work out?
ms
On Jan 7, 2008, at 10:04 PM, Mr. Pierre Frisch wrote:
And what do you do with raw rows?
Pierre
--
Pierre Frisch
email@hidden
On Jan 7, 2008, at 7:36, Mike Schrag wrote:
NSArray<MyEO> = ec.objectsWithFetchSpecification(spec,
MyEO.class)
I think generic EOFS would be better ... Passing in Class
objects to fulfill generics always feels a bit like hackery.
It's really cheating -- you're basically casting without using
cast syntax, because you can't enforce that the class you put
in is actually related to the objects of the fetch spec in any
way, so it's as unsafe as an arbitrary cast.
public <T> NSArray<T> objectsWithFetchSpecification
(EOFetchSpecification<T> fetchSpec) { ... }
then
EOFetchSpecification<Person> fetchSpec = ...;
NSArray<Person> people = ec.objectsWithFetchSpecification
(fetchSpec);
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40apple.com
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40gmail.com
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden