Class AbstractEntityTuplizer

    • Field Detail

      • getters

        protected final Getter[] getters
      • setters

        protected final Setter[] setters
      • propertySpan

        protected final int propertySpan
      • hasCustomAccessors

        protected final boolean hasCustomAccessors
    • Constructor Detail

      • AbstractEntityTuplizer

        public AbstractEntityTuplizer​(EntityMetamodel entityMetamodel,
                                      PersistentClass mappingInfo)
        Constructs a new AbstractEntityTuplizer instance.
        Parameters:
        entityMetamodel - The "interpreted" information relating to the mapped entity.
        mappingInfo - The parsed "raw" mapping data relating to the given entity.
    • Method Detail

      • buildPropertyGetter

        protected abstract Getter buildPropertyGetter​(Property mappedProperty,
                                                      PersistentClass mappedEntity)
        Build an appropriate Getter for the given property.
        Parameters:
        mappedProperty - The property to be accessed via the built Getter.
        mappedEntity - The entity information regarding the mapped entity owning this property.
        Returns:
        An appropriate Getter instance.
      • buildPropertySetter

        protected abstract Setter buildPropertySetter​(Property mappedProperty,
                                                      PersistentClass mappedEntity)
        Build an appropriate Setter for the given property.
        Parameters:
        mappedProperty - The property to be accessed via the built Setter.
        mappedEntity - The entity information regarding the mapped entity owning this property.
        Returns:
        An appropriate Setter instance.
      • buildProxyFactory

        protected abstract ProxyFactory buildProxyFactory​(PersistentClass mappingInfo,
                                                          Getter idGetter,
                                                          Setter idSetter)
        Build an appropriate ProxyFactory for the given mapped entity.
        Parameters:
        mappingInfo - The mapping information regarding the mapped entity.
        idGetter - The constructed Getter relating to the entity's id property.
        idSetter - The constructed Setter relating to the entity's id property.
        Returns:
        An appropriate ProxyFactory instance.
      • getEntityName

        protected String getEntityName()
        Retrieves the defined entity-name for the tuplized entity.
        Returns:
        The entity-name.
      • getSubclassEntityNames

        protected Set<String> getSubclassEntityNames()
        Retrieves the defined entity-names for any subclasses defined for this entity.
        Returns:
        Any subclass entity-names.
      • getIdentifier

        public Object getIdentifier​(Object entity,
                                    SharedSessionContractImplementor session)
        Description copied from interface: EntityTuplizer
        Extract the identifier value from the given entity.
        Specified by:
        getIdentifier in interface EntityTuplizer
        Parameters:
        entity - The entity from which to extract the identifier value.
        session - The session from which is requests originates
        Returns:
        The identifier value.
      • shouldGetAllProperties

        protected boolean shouldGetAllProperties​(Object entity)
      • getPropertyValuesToInsert

        public Object[] getPropertyValuesToInsert​(Object entity,
                                                  Map mergeMap,
                                                  SharedSessionContractImplementor session)
        Description copied from interface: EntityTuplizer
        Extract the values of the insertable properties of the entity (including backrefs)
        Specified by:
        getPropertyValuesToInsert in interface EntityTuplizer
        Parameters:
        entity - The entity from which to extract.
        mergeMap - a map of instances being merged to merged instances
        session - The session in which the result set is being made.
        Returns:
        The insertable property values.
      • getPropertyValue

        public Object getPropertyValue​(Object entity,
                                       int i)
                                throws HibernateException
        Description copied from interface: Tuplizer
        Extract the value of a particular property from the given entity.
        Specified by:
        getPropertyValue in interface Tuplizer
        Parameters:
        entity - The entity from which to extract the property value.
        i - The index of the property for which to extract the value.
        Returns:
        The current value of the given property on the given entity.
        Throws:
        HibernateException
      • getComponentValue

        protected Object getComponentValue​(ComponentType type,
                                           Object component,
                                           String propertyPath)
        Extract a component property value.
        Parameters:
        type - The component property types.
        component - The component instance itself.
        propertyPath - The property path for the property to be extracted.
        Returns:
        The property value extracted.
      • getEntityMetamodel

        protected final EntityMetamodel getEntityMetamodel()
      • getGetter

        public Getter getGetter​(int i)
        Description copied from interface: Tuplizer
        Retrieve the getter for the specified property.
        Specified by:
        getGetter in interface Tuplizer
        Parameters:
        i - The property index.
        Returns:
        The property getter.