org.codehaus.groovy.grails.orm.hibernate
Class GrailsHibernateDomainClass

java.lang.Object
  extended by org.codehaus.groovy.grails.commons.AbstractGrailsClass
      extended by org.codehaus.groovy.grails.orm.hibernate.GrailsHibernateDomainClass
All Implemented Interfaces:
org.codehaus.groovy.grails.commons.ExternalGrailsDomainClass, org.codehaus.groovy.grails.commons.GrailsClass, org.codehaus.groovy.grails.commons.GrailsDomainClass, org.codehaus.groovy.grails.plugins.support.aware.GrailsApplicationAware, org.springframework.beans.factory.Aware

public class GrailsHibernateDomainClass
extends org.codehaus.groovy.grails.commons.AbstractGrailsClass
implements org.codehaus.groovy.grails.commons.ExternalGrailsDomainClass

An implementation of the GrailsDomainClass interface that allows Classes mapped in Hibernate to integrate with Grails' validation, dynamic methods etc. seamlessly.

Since:
0.1

Field Summary
 
Fields inherited from class org.codehaus.groovy.grails.commons.AbstractGrailsClass
grailsApplication
 
Fields inherited from interface org.codehaus.groovy.grails.commons.GrailsDomainClass
GORM, ORM_MAPPING
 
Constructor Summary
GrailsHibernateDomainClass(java.lang.Class<?> clazz, org.hibernate.SessionFactory sessionFactory, java.lang.String sessionFactoryName, org.codehaus.groovy.grails.commons.GrailsApplication application, org.hibernate.metadata.ClassMetadata metaData)
          Contructor to be used by all child classes to create a new instance and get the name right.
 
Method Summary
 java.util.Map getAssociationMap()
           
 java.util.Map getConstrainedProperties()
           
 java.lang.String getFieldName(java.lang.String propertyName)
           
 org.codehaus.groovy.grails.commons.GrailsDomainClassProperty getIdentifier()
           
 java.util.Map getMappedBy()
           
 java.lang.String getMappingStrategy()
           
 org.codehaus.groovy.grails.commons.GrailsDomainClassProperty[] getPersistantProperties()
          Deprecated.  
 org.codehaus.groovy.grails.commons.GrailsDomainClassProperty[] getPersistentProperties()
           
 org.codehaus.groovy.grails.commons.GrailsDomainClassProperty getPersistentProperty(java.lang.String name)
           
 org.codehaus.groovy.grails.commons.GrailsDomainClassProperty[] getProperties()
           
 org.codehaus.groovy.grails.commons.GrailsDomainClassProperty getPropertyByName(java.lang.String name)
           
 java.lang.Class<?> getRelatedClassType(java.lang.String propertyName)
           
 org.hibernate.SessionFactory getSessionFactory()
           
 java.lang.String getSessionFactoryName()
           
 java.util.Set getSubClasses()
           
 org.springframework.validation.Validator getValidator()
           
 org.codehaus.groovy.grails.commons.GrailsDomainClassProperty getVersion()
           
 boolean hasPersistentProperty(java.lang.String propertyName)
           
 boolean hasSubClasses()
           
 boolean isBidirectional(java.lang.String propertyName)
           
 boolean isManyToOne(java.lang.String propertyName)
           
 boolean isOneToMany(java.lang.String propertyName)
           
 boolean isOwningClass(java.lang.Class domainClass)
           
 boolean isRoot()
           
 void refreshConstraints()
           
 void setMappingStrategy(java.lang.String strategy)
           
 void setValidator(org.springframework.validation.Validator validator)
           
 
Methods inherited from class org.codehaus.groovy.grails.commons.AbstractGrailsClass
getClazz, getFullName, getGrailsApplication, getLogicalPropertyName, getMetaClass, getName, getNaturalName, getPackageName, getPropertyDescriptors, getPropertyName, getPropertyOrStaticPropertyOrFieldValue, getPropertyType, getPropertyValue, getPropertyValue, getPropertyValueObject, getReference, getReferenceInstance, getShortName, getStaticPropertyValue, hasMetaMethod, hasMetaMethod, hasMetaProperty, hasProperty, isAbstract, isActionMethod, isReadableProperty, newInstance, setGrailsApplication, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.codehaus.groovy.grails.commons.GrailsDomainClass
getPropertyName
 
Methods inherited from interface org.codehaus.groovy.grails.commons.GrailsClass
getClazz, getFullName, getGrailsApplication, getLogicalPropertyName, getMetaClass, getName, getNaturalName, getPackageName, getPropertyValue, getPropertyValue, getReference, getReferenceInstance, getShortName, hasProperty, isAbstract, newInstance
 
Methods inherited from interface org.codehaus.groovy.grails.plugins.support.aware.GrailsApplicationAware
setGrailsApplication
 

Constructor Detail

GrailsHibernateDomainClass

public GrailsHibernateDomainClass(java.lang.Class<?> clazz,
                                  org.hibernate.SessionFactory sessionFactory,
                                  java.lang.String sessionFactoryName,
                                  org.codehaus.groovy.grails.commons.GrailsApplication application,
                                  org.hibernate.metadata.ClassMetadata metaData)
Contructor to be used by all child classes to create a new instance and get the name right.

Parameters:
clazz - the Grails class
sessionFactory - The Hibernate SessionFactory instance
sessionFactoryName -
application -
metaData - The ClassMetaData for this class retrieved from the SF
Method Detail

getSessionFactory

public org.hibernate.SessionFactory getSessionFactory()

getSessionFactoryName

public java.lang.String getSessionFactoryName()

isOwningClass

public boolean isOwningClass(java.lang.Class domainClass)
Specified by:
isOwningClass in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getProperties

public org.codehaus.groovy.grails.commons.GrailsDomainClassProperty[] getProperties()
Specified by:
getProperties in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getPersistantProperties

@Deprecated
public org.codehaus.groovy.grails.commons.GrailsDomainClassProperty[] getPersistantProperties()
Deprecated. 

Specified by:
getPersistantProperties in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getPersistentProperties

public org.codehaus.groovy.grails.commons.GrailsDomainClassProperty[] getPersistentProperties()
Specified by:
getPersistentProperties in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getIdentifier

public org.codehaus.groovy.grails.commons.GrailsDomainClassProperty getIdentifier()
Specified by:
getIdentifier in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getVersion

public org.codehaus.groovy.grails.commons.GrailsDomainClassProperty getVersion()
Specified by:
getVersion in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getPersistentProperty

public org.codehaus.groovy.grails.commons.GrailsDomainClassProperty getPersistentProperty(java.lang.String name)
Specified by:
getPersistentProperty in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getPropertyByName

public org.codehaus.groovy.grails.commons.GrailsDomainClassProperty getPropertyByName(java.lang.String name)
Specified by:
getPropertyByName in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getFieldName

public java.lang.String getFieldName(java.lang.String propertyName)
Specified by:
getFieldName in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

hasSubClasses

public boolean hasSubClasses()
Specified by:
hasSubClasses in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getMappedBy

public java.util.Map getMappedBy()
Specified by:
getMappedBy in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

hasPersistentProperty

public boolean hasPersistentProperty(java.lang.String propertyName)
Specified by:
hasPersistentProperty in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

setMappingStrategy

public void setMappingStrategy(java.lang.String strategy)
Specified by:
setMappingStrategy in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

isOneToMany

public boolean isOneToMany(java.lang.String propertyName)
Specified by:
isOneToMany in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

isManyToOne

public boolean isManyToOne(java.lang.String propertyName)
Specified by:
isManyToOne in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

isBidirectional

public boolean isBidirectional(java.lang.String propertyName)
Specified by:
isBidirectional in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getRelatedClassType

public java.lang.Class<?> getRelatedClassType(java.lang.String propertyName)
Specified by:
getRelatedClassType in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getConstrainedProperties

public java.util.Map getConstrainedProperties()
Specified by:
getConstrainedProperties in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getValidator

public org.springframework.validation.Validator getValidator()
Specified by:
getValidator in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

setValidator

public void setValidator(org.springframework.validation.Validator validator)
Specified by:
setValidator in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getMappingStrategy

public java.lang.String getMappingStrategy()
Specified by:
getMappingStrategy in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getSubClasses

public java.util.Set getSubClasses()
Specified by:
getSubClasses in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

refreshConstraints

public void refreshConstraints()
Specified by:
refreshConstraints in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

isRoot

public boolean isRoot()
Specified by:
isRoot in interface org.codehaus.groovy.grails.commons.GrailsDomainClass

getAssociationMap

public java.util.Map getAssociationMap()
Specified by:
getAssociationMap in interface org.codehaus.groovy.grails.commons.GrailsDomainClass