• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag
 

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Better key path creation
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Better key path creation


  • Subject: Re: Better key path creation
  • From: David Avendasora <email@hidden>
  • Date: Mon, 20 Dec 2010 06:21:17 -0500

Hi John,

These look brilliant!

It would be great if you added this to the Wiki page for EOGenerator templates & additions: http://wiki.objectstyle.org/confluence/display/WOL/EOGenerator+Templates+and+Additions

I think this is cool enough that you should put together a patch for Wonder!

Dave

On Dec 17, 2010, at 3:54 PM, John Huss wrote:

If anyone is interested, I recently came up with an EO template enhancement that allows for much better keypath creation using ERXKeys.  It works by creating an inner class in each eo class that exposes methods for appending each of it's keys to a key path that is being built. Then you can construct key paths like this: 

     MovieRole.path.talent().photo().photo().key()    // returns talent.photo.photo 
instead of
     MovieRole.TALENT.dot(Talent.PHOTO).dot(TalentPhoto.PHOTO).key()


OR

     TalentPhoto.path.talent().roles().roleName().eq("Actor")      // returns qualifier for talent.roles.roleName 
instead of
     TalentPhoto.TALENT.dot(Talent.ROLES).dot(Role.ROLE_NAME).eq("Actor")


This is an improvement for a few reasons:
1) More readable
2) Guarantees the validity of the whole key path, whereas before only the individual parts were checked
3) Code completion the whole way through eliminates thinking
4) More closely matches the syntax used to access the actual values

To add this functionality, paste the attached snippet into your own copy of the _WonderEntity.java template (mine is right after the class declaration).

Note: this requires a fairly recent version Wonder to work correctly. 

John
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
  • Follow-Ups:
    • Re: Better key path creation
      • From: Timo Hoepfner <email@hidden>
References: 
 >Better key path creation (From: John Huss <email@hidden>)

  • Prev by Date: "Can't find link start Tag" Error after upgrade to Eclipse 3.6.1
  • Next by Date: Re: "Can't find link start Tag" Error after upgrade to Eclipse 3.6.1
  • Previous by thread: Re: Better key path creation
  • Next by thread: Re: Better key path creation
  • Index(es):
    • Date
    • Thread