Class EjbConversionHelper

    • Constructor Detail

      • EjbConversionHelper

        public EjbConversionHelper​(NameMapper nameMapper)
    • Method Detail

      • getMappedClassName

        public String getMappedClassName​(String ejbName)
        Description copied from interface: ConversionHelper
        Computes the name of the TP implementation class for a bean.
        Specified by:
        getMappedClassName in interface ConversionHelper
        Parameters:
        ejbName - The value of the ejb-name element for a bean.
        Returns:
        The full name of the TP class that implements the fields and relationships of an EJB.
      • hasField

        public boolean hasField​(String ejbName,
                                String fieldName)
        If generateFields is true, then this method will check if the field is one of the cmp + cmr + pseudo cmr fields, otherwise the method will check if the field is one of the cmp + cmr fields.
        Specified by:
        hasField in interface ConversionHelper
        Parameters:
        ejbName - The ejb-name element for the bean
        fieldName - The name of a container managed field in the named bean
        Returns:
        true if the bean contains the field, otherwise return false
      • getFields

        public Object[] getFields​(String ejbName)
        If generateFields is true, then this method will return an array of cmp + cmr + pseudo cmr fields, otherwise the method will return an array of cmp + cmr fields.
        Specified by:
        getFields in interface ConversionHelper
        Parameters:
        ejbName - The ejb-name element for the bean
        Returns:
        an array of fields in the ejb bean
      • isKey

        public boolean isKey​(String ejbName,
                             String fieldName,
                             boolean candidate)
        The boolean argument candidate is ignored in this case.
        Specified by:
        isKey in interface ConversionHelper
        Parameters:
        ejbName - The value of the ejb-name element for a bean.
        fieldName - The name of a container managed field in the named bean.
        candidate - The value "proposed" by the content of the sun-cmp-mapping file.
        Returns:
        The real value of the keyness of a field. This may be different than the candidate value, if the correct values of a fields keyness can be computed from available data.
      • getRelationshipFieldType

        public String getRelationshipFieldType​(String ejbName,
                                               String fieldName)
        This API will only be called from MappingFile when multiplicity is Many on the other role.
        Specified by:
        getRelationshipFieldType in interface ConversionHelper
        Parameters:
        ejbName - The value of the ejb-name element for a bean.
        fieldName - The name of a container managed field in the named bean.
        Returns:
        The String values "One" or "Many".
      • getMultiplicity

        public String getMultiplicity​(String ejbName,
                                      String fieldName)
        getMultiplicity of the other role on the relationship Please note that multiplicity is JDO style
        Specified by:
        getMultiplicity in interface ConversionHelper
        Parameters:
        ejbName - The ejb-name element for the bean
        fieldName - The name of a container managed field in the named bean.
        Returns:
        The String values "One" or "Many".
      • getRelationshipFieldContent

        public String getRelationshipFieldContent​(String ejbName,
                                                  String fieldName)
        Description copied from interface: ConversionHelper
        Return the name of the opposite roles ejb-name
        Specified by:
        getRelationshipFieldContent in interface ConversionHelper
        Parameters:
        ejbName - The value of the ejb-name element for a bean.
        fieldName - The name of a container managed field in the named bean.
        Returns:
        The ejb-name of the bean that is referenced by a relationship field. This is the ejb-name of the "other" roles relationship-role-source.
      • getInverseFieldName

        public String getInverseFieldName​(String ejbName,
                                          String fieldName)
        This method return the fieldName of relation role on the other end.
        Specified by:
        getInverseFieldName in interface ConversionHelper
        Parameters:
        ejbName - The value of the ejb-name element for a bean.
        fieldName - The name of a container managed field in the named bean.
        Returns:
        The String values "One" or "Many".
      • applyDefaultUnknownPKClassStrategy

        public boolean applyDefaultUnknownPKClassStrategy​(String ejbName)
        Returns flag whether the mapping conversion should apply the default strategy for dealing with unknown primary key classes. This method will only be called when generateFields returns true.
        Specified by:
        applyDefaultUnknownPKClassStrategy in interface ConversionHelper
        Parameters:
        ejbName - The value of the ejb-name element for a bean.
        Returns:
        true to apply the default unknown PK Class Strategy, false otherwise
      • getGeneratedPKFieldName

        public String getGeneratedPKFieldName()
        Returns the name used for generated primary key fields.
        Specified by:
        getGeneratedPKFieldName in interface ConversionHelper
        Returns:
        a string for key field name
      • relatedObjectsAreDeleted

        public boolean relatedObjectsAreDeleted​(String beanName,
                                                String fieldName)
        Specified by:
        relatedObjectsAreDeleted in interface ConversionHelper
        Parameters:
        beanName - The ejb-name element for the bean
        fieldName - The name of a container managed field in the named bean.
        Returns:
        boolean flag indicating whether the objects in this collection field are to be deleted when this field' owning object is deleted.
      • generateFields

        public boolean generateFields()
        Returns the flag whether the mapping conversion should generate relationship fields and primary key fields to support run-time. The version field is always created even generateFields is false because it holds version column information.
        Specified by:
        generateFields in interface ConversionHelper
        Returns:
        true to generate fields in the dot-mapping file (if they are not present).
      • setGenerateFields

        public void setGenerateFields​(boolean generateFields)
        Sets the flag whether the mapping conversion should generate relationship fields, primary key fields, and version fields to support run-time.
        Specified by:
        setGenerateFields in interface ConversionHelper
        Parameters:
        generateFields - a flag which indicates whether fields should be generated
      • ensureValidation

        public boolean ensureValidation()
        Returns the flag whether the mapping conversion should validate all fields against schema columns.
        Specified by:
        ensureValidation in interface ConversionHelper
        Returns:
        true to validate all the fields in the dot-mapping file.
      • setEnsureValidation

        public void setEnsureValidation​(boolean isValidating)
        Sets the flag whether the mapping conversion should validate all fields against schema columns.
        Specified by:
        setEnsureValidation in interface ConversionHelper
        Parameters:
        isValidating - a boolean of indicating validating fields or not
      • isGeneratedField

        public boolean isGeneratedField​(String ejbName,
                                        String fieldName)
        Returns true if the field is generated. There are three types of generated fields: generated relationships, unknown primary key fields, and version consistency fields.
        Specified by:
        isGeneratedField in interface ConversionHelper
        Parameters:
        ejbName - The ejb-name element for the bean
        fieldName - The name of a container managed field in the named bean
        Returns:
        true if the field is generated; false otherwise.
      • isGeneratedRelationship

        public boolean isGeneratedRelationship​(String ejbName,
                                               String fieldName)
        Description copied from interface: ConversionHelper
        Flag whether the conversion helper generated the relationship field
        Specified by:
        isGeneratedRelationship in interface ConversionHelper
        Parameters:
        ejbName - The ejb-name element for the bean
        fieldName - The name of a container managed field in the named bean.
        Returns:
        true if the field was created by the conversion helper.
      • getGeneratedRelationships

        public List getGeneratedRelationships​(String ejbName)
        Returns a list of generated relationship field names.
        Specified by:
        getGeneratedRelationships in interface ConversionHelper
        Parameters:
        ejbName - The ejb-name element for the bean
        Returns:
        a list of generated relationship field names