Interface Platform

    • Method Detail

      • convertObject

        Object convertObject​(Object sourceObject,
                             Class javaClass)
                      throws ConversionException
        Convert the object to the appropriate type by invoking the appropriate ConversionManager method
        Specified by:
        convertObject in interface CorePlatform<ConversionManager>
        Parameters:
        sourceObject - the object that must be converted
        javaClass - the class that the object must be converted to
        Returns:
        the newly converted object
        Throws:
        ConversionException - all exceptions will be thrown as this type.
      • copyInto

        void copyInto​(Platform platform)
        Copy the state into the new platform.
      • setConversionManager

        void setConversionManager​(ConversionManager conversionManager)
        The platform hold its own instance of conversion manager to allow customization.
      • getTableQualifier

        String getTableQualifier()
        Return the qualifier for the table. Required by some databases such as Oracle and DB2
      • getTimestampQuery

        ValueReadQuery getTimestampQuery()
        This method can be overridden by subclasses to return a query that will return the timestamp from the server. return null if the time should be the local time.
      • isH2

        boolean isH2()
      • isAccess

        boolean isAccess()
      • isAttunity

        boolean isAttunity()
      • isCloudscape

        boolean isCloudscape()
      • isDerby

        boolean isDerby()
      • isDB2

        boolean isDB2()
      • isDB2Z

        boolean isDB2Z()
      • isDBase

        boolean isDBase()
      • isHANA

        boolean isHANA()
      • isHSQL

        boolean isHSQL()
      • isInformix

        boolean isInformix()
      • isMaxDB

        boolean isMaxDB()
      • isMySQL

        boolean isMySQL()
      • isODBC

        boolean isODBC()
      • isOracle

        boolean isOracle()
      • isOracle9

        boolean isOracle9()
      • isOracle12

        boolean isOracle12()
      • isPointBase

        boolean isPointBase()
      • isSQLAnywhere

        boolean isSQLAnywhere()
      • isSQLServer

        boolean isSQLServer()
      • isSybase

        boolean isSybase()
      • isSymfoware

        boolean isSymfoware()
      • isTimesTen

        boolean isTimesTen()
      • isTimesTen7

        boolean isTimesTen7()
      • isPostgreSQL

        boolean isPostgreSQL()
      • initialize

        void initialize()
        Allow the platform to initialize itself after login/init.
      • setTableQualifier

        void setTableQualifier​(String qualifier)
        Set the qualifier for the table. Required by some databases such as Oracle and DB2
      • setTimestampQuery

        void setTimestampQuery​(ValueReadQuery tsQuery)
        Can override the default query for returning a timestamp from the server. See: getTimestampFromServer
      • appendParameter

        void appendParameter​(Call call,
                             Writer writer,
                             Object parameter)
        Add the parameter. Convert the parameter to a string and write it.
      • getCustomModifyValueForCall

        Object getCustomModifyValueForCall​(Call call,
                                           Object value,
                                           DatabaseField field,
                                           boolean shouldBind)
        Allow for the platform to handle the representation of parameters specially.
      • getEndDelimiter

        String getEndDelimiter()
        Delimiter to use for fields and tables using spaces or other special values. Some databases use different delimiters for the beginning and end of the value. This delimiter indicates the end of the value.
      • getStartDelimiter

        String getStartDelimiter()
        Delimiter to use for fields and tables using spaces or other special values. Some databases use different delimiters for the beginning and end of the value. This delimiter indicates the start of the value.
      • shouldUseCustomModifyForCall

        boolean shouldUseCustomModifyForCall​(DatabaseField field)
        Allow for the platform to handle the representation of parameters specially.
      • getDefaultSequence

        Sequence getDefaultSequence()
        Get default sequence. Sequence name shouldn't be altered - don't do: getDefaultSequence().setName(newName).
      • setDefaultSequence

        void setDefaultSequence​(Sequence sequence)
        Set default sequence. The sequence should have a unique name that shouldn't be altered after the sequence has been set: don't do: getDefaultSequence().setName(newName)). Default constructors for Sequence subclasses set name to "SEQ".
      • addSequence

        void addSequence​(Sequence sequence)
        Add sequence. The sequence should have a unique name that shouldn't be altered after the sequence has been added - don't do: getSequence(name).setName(newName)) Don't use if the session is connected.
      • addSequence

        void addSequence​(Sequence sequence,
                         boolean isConnected)
        Add sequence. The sequence should have a unique name that shouldn't be altered after the sequence has been added - don't do: getSequence(name).setName(newName)) Use this method with isConnected parameter set to true to add a sequence to connected session. If sequencing is connected then the sequence is added only if there is no sequence with the same name already in use.
      • getSequence

        Sequence getSequence​(String seqName)
        Get sequence corresponding to the name. The name shouldn't be altered - don't do: getSequence(name).setName(newName)
      • removeSequence

        Sequence removeSequence​(String seqName)
        Remove sequence corresponding to the name (the sequence was added through addSequence method) Don't use if the session is connected.
      • removeAllSequences

        void removeAllSequences()
        Remove all sequences that were added through addSequence method.
      • getSequences

        Map getSequences()
        INTERNAL: Returns a map of sequence names to Sequences (may be null).
      • getSequencesToWrite

        Map getSequencesToWrite()
        INTERNAL: Used only for writing into XML or Java.
      • getDefaultSequenceToWrite

        Sequence getDefaultSequenceToWrite()
        INTERNAL: Used only for writing into XML or Java.
      • setSequences

        void setSequences​(Map sequences)
        INTERNAL: Used only for reading from XML.
      • usesPlatformDefaultSequence

        boolean usesPlatformDefaultSequence()
        INTERNAL: Indicates whether defaultSequence is the same as platform default sequence.
      • initIdentitySequences

        void initIdentitySequences​(Session session,
                                   String defaultIdentityGenerator)
        INTERNAL: Initialize platform specific identity sequences. This method is called from EntityManagerSetupImpl after login and optional schema generation. Method is also called from TableCreator class during tables creation and update..
        Parameters:
        session - Active database session (in connected state).
        defaultIdentityGenerator - Default identity generator sequence name.
        Since:
        2.7
      • removeIdentitySequences

        void removeIdentitySequences​(Session session,
                                     String defaultIdentityGenerator,
                                     Set<String> tableNames)
        INTERNAL: Remove platform specific identity sequences for specified tables. Default identity sequences are restored. Method is also called from TableCreator class during tables removal.
        Parameters:
        session - Active database session (in connected state).
        defaultIdentityGenerator - Default identity generator sequence name.
        tableNames - Set of table names to check for identity sequence removal.
        Since:
        2.7