Skip to content

Commit

Permalink
Improvement to earlier fix for GRAILS-6289
Browse files Browse the repository at this point in the history
  • Loading branch information
graemerocher committed Jun 7, 2010
1 parent 8f5a921 commit 3a85061
Showing 1 changed file with 6 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -274,24 +274,27 @@ Using Grails' default naming strategy: '${GrailsDomainBinder.namingStrategy.getC
def mc = proxyClass.metaClass
if (!mc.pickMethod('grailsEnhanced', GrailsHibernateUtil.EMPTY_CLASS_ARRAY)) {
// hasProperty
def originalHasProperty = mc.getMetaMethod("hasProperty", String)
mc.hasProperty = { String name ->
if (delegate instanceof HibernateProxy) {
return GrailsHibernateUtil.unwrapProxy(delegate).hasProperty(name)
}
return false
return originalHasProperty.invoke(delegate, name)
}
// respondsTo
def originalRespondsTo = mc.getMetaMethod("respondsTo", String)
mc.respondsTo = { String name ->
if (delegate instanceof HibernateProxy) {
return GrailsHibernateUtil.unwrapProxy(delegate).respondsTo(name)
}
return false
return originalRespondsTo.invoke(delegate, name)
}
def originalRespondsToTwoArgs = mc.getMetaMethod("respondsTo", String, Object[])
mc.respondsTo = { String name, Object[] args ->
if (delegate instanceof HibernateProxy) {
return GrailsHibernateUtil.unwrapProxy(delegate).respondsTo(name, args)
}
return false
return originalRespondsToTwoArgs.invoke(delegate, name, args)
}
// getter
mc.propertyMissing = { String name ->
Expand Down

0 comments on commit 3a85061

Please sign in to comment.