java.lang.Object
org.eclipse.persistence.internal.helper.ComplexDatabaseType
org.eclipse.persistence.platform.database.oracle.plsql.PLSQLrecord
All Implemented Interfaces:
Cloneable, org.eclipse.persistence.internal.helper.DatabaseType, org.eclipse.persistence.internal.helper.SimpleDatabaseType, OraclePLSQLType

public class PLSQLrecord extends org.eclipse.persistence.internal.helper.ComplexDatabaseType implements OraclePLSQLType, Cloneable
PUBLIC: describe an Oracle PL/SQL Record type
Author:
Mike Norman - michael.norman@oracle.com
  • Field Details

  • Constructor Details

    • PLSQLrecord

      public PLSQLrecord()
  • Method Details

    • clone

      public PLSQLrecord clone()
      Overrides:
      clone in class org.eclipse.persistence.internal.helper.ComplexDatabaseType
    • isRecord

      public boolean isRecord()
      Overrides:
      isRecord in class org.eclipse.persistence.internal.helper.ComplexDatabaseType
    • getFields

      public List<PLSQLargument> getFields()
      Return the record's fields defined as PLSQLargument.
    • getSqlCode

      public int getSqlCode()
      Specified by:
      getSqlCode in interface org.eclipse.persistence.internal.helper.DatabaseType
    • addField

      public void addField(PLSQLargument field)
    • addField

      public void addField(String fieldName, org.eclipse.persistence.internal.helper.DatabaseType databaseType)
    • addField

      public void addField(String fieldName, org.eclipse.persistence.internal.helper.DatabaseType databaseType, int precision, int scale)
    • addField

      public void addField(String fieldName, org.eclipse.persistence.internal.helper.DatabaseType databaseType, int length)
    • computeInIndex

      public int computeInIndex(PLSQLargument inArg, int newIndex, ListIterator<PLSQLargument> iterator)
      Specified by:
      computeInIndex in interface org.eclipse.persistence.internal.helper.DatabaseType
      Overrides:
      computeInIndex in class org.eclipse.persistence.internal.helper.ComplexDatabaseType
    • computeOutIndex

      public int computeOutIndex(PLSQLargument outArg, int newIndex, ListIterator<PLSQLargument> iterator)
      Specified by:
      computeOutIndex in interface org.eclipse.persistence.internal.helper.DatabaseType
      Overrides:
      computeOutIndex in class org.eclipse.persistence.internal.helper.ComplexDatabaseType
    • buildInDeclare

      public void buildInDeclare(StringBuilder sb, PLSQLargument inArg)
      Specified by:
      buildInDeclare in interface org.eclipse.persistence.internal.helper.DatabaseType
      Overrides:
      buildInDeclare in class org.eclipse.persistence.internal.helper.ComplexDatabaseType
    • buildOutDeclare

      public void buildOutDeclare(StringBuilder sb, PLSQLargument outArg)
      Specified by:
      buildOutDeclare in interface org.eclipse.persistence.internal.helper.DatabaseType
      Overrides:
      buildOutDeclare in class org.eclipse.persistence.internal.helper.ComplexDatabaseType
    • buildBeginBlock

      public void buildBeginBlock(StringBuilder sb, PLSQLargument arg, PLSQLStoredProcedureCall call)
      Specified by:
      buildBeginBlock in interface org.eclipse.persistence.internal.helper.DatabaseType
      Overrides:
      buildBeginBlock in class org.eclipse.persistence.internal.helper.ComplexDatabaseType
    • buildOutAssignment

      public void buildOutAssignment(StringBuilder sb, PLSQLargument outArg, PLSQLStoredProcedureCall call)
      Specified by:
      buildOutAssignment in interface org.eclipse.persistence.internal.helper.DatabaseType
      Overrides:
      buildOutAssignment in class org.eclipse.persistence.internal.helper.ComplexDatabaseType
    • translate

      public void translate(PLSQLargument arg, org.eclipse.persistence.internal.sessions.AbstractRecord translationRow, org.eclipse.persistence.internal.sessions.AbstractRecord copyOfTranslationRow, List<org.eclipse.persistence.internal.helper.DatabaseField> copyOfTranslationFields, List<org.eclipse.persistence.internal.helper.DatabaseField> translationRowFields, List translationRowValues, StoredProcedureCall call)
      Specified by:
      translate in interface org.eclipse.persistence.internal.helper.DatabaseType
      Overrides:
      translate in class org.eclipse.persistence.internal.helper.ComplexDatabaseType
    • buildOutputRow

      public void buildOutputRow(PLSQLargument outArg, org.eclipse.persistence.internal.sessions.AbstractRecord outputRow, DatabaseRecord newOutputRow, List<org.eclipse.persistence.internal.helper.DatabaseField> outputRowFields, List outputRowValues)
      Specified by:
      buildOutputRow in interface org.eclipse.persistence.internal.helper.DatabaseType
      Overrides:
      buildOutputRow in class org.eclipse.persistence.internal.helper.ComplexDatabaseType
    • logParameter

      public void logParameter(StringBuilder sb, org.eclipse.persistence.internal.databaseaccess.DatasourceCall.ParameterType direction, PLSQLargument arg, org.eclipse.persistence.internal.sessions.AbstractRecord translationRow, DatabasePlatform platform)
      Specified by:
      logParameter in interface org.eclipse.persistence.internal.helper.DatabaseType
      Overrides:
      logParameter in class org.eclipse.persistence.internal.helper.ComplexDatabaseType