Class RecordFactory


  • public class RecordFactory
    extends Object
    RuntimeAdapter
    • Field Detail

      • URI_REFERENCE_DELIMITER

        public static final String URI_REFERENCE_DELIMITER
        Delimiter used to separate the URI string from the URI fragment
        See Also:
        Constant Field Values
      • INDEX_RECORD_BLOCK_SIZE

        public static final int INDEX_RECORD_BLOCK_SIZE
        See Also:
        Constant Field Values
      • NONVERSIONED_RECORD_INDEX_VERSION

        public static final int NONVERSIONED_RECORD_INDEX_VERSION
        The version number associated with any index records prior to the point when version information was encoded in newly created records
        See Also:
        Constant Field Values
      • DELIMITER_INDEX_VERSION

        public static final int DELIMITER_INDEX_VERSION
        The version number that is associated with the change made to change the list delimiter. Added 07/22/2004.
        Since:
        4.1.1
        See Also:
        Constant Field Values
      • TABLE_MATERIALIZATION_INDEX_VERSION

        public static final int TABLE_MATERIALIZATION_INDEX_VERSION
        The version number that is associated with the change made to add materialization property on tables. Added 08/18/2004.
        Since:
        4.2
        See Also:
        Constant Field Values
      • COLUMN_NATIVE_TYPE_INDEX_VERSION

        public static final int COLUMN_NATIVE_TYPE_INDEX_VERSION
        The version number that is associated with the change made to add native type property on columns. Added 08/24/2004.
        Since:
        4.2
        See Also:
        Constant Field Values
      • COLUMN_INPUT_PARAMETER_FLAG_INDEX_VERSION

        public static final int COLUMN_INPUT_PARAMETER_FLAG_INDEX_VERSION
        The version number that is associated with the change made to add an input parameter flag on columns. The flag is used to indicate if an element for a virtual table represents an input parameter. This change was made to support the Procedural-Relational Mapping project. Added 09/29/2004.
        Since:
        4.2
        See Also:
        Constant Field Values
      • ANNOTATION_TAGS_INDEX_VERSION

        public static final int ANNOTATION_TAGS_INDEX_VERSION
        The version number that is associated with the change made to remove property value pairs from the annotation records any properties on annotations would now be indexed as part of the properties index. Added 12/14/2004.
        Since:
        4.2
        See Also:
        Constant Field Values
      • TRANSFORMATION_UUID_INDEX_VERSION

        public static final int TRANSFORMATION_UUID_INDEX_VERSION
        The version number that is associated with the change made to add uuid for the transformation mapping root on the transformation records, uuids would now be indexed as part of the transformation index. Added 1/13/2005.
        Since:
        4.2
        See Also:
        Constant Field Values
      • COLUMN_NULL_DISTINCT_INDEX_VERSION

        public static final int COLUMN_NULL_DISTINCT_INDEX_VERSION
        The version number that is associated with the change made to add count of null and distinct values for columns on the column records 7/8/2005.
        Since:
        4.2
        See Also:
        Constant Field Values
      • PRIMITIVE_TYPE_ID_INDEX_VERSION

        public static final int PRIMITIVE_TYPE_ID_INDEX_VERSION
        The version number that is associated with the change made to add primitive type ID on datatype records 02/28/2006.
        Since:
        5.0
        See Also:
        Constant Field Values
      • PROCEDURE_UPDATE_COUNT_VERSION

        public static final int PROCEDURE_UPDATE_COUNT_VERSION
        The version number that is associated with the change made to add an update count to physical stored and XQuery procedures 04/29/2008.
        Since:
        5.0
        See Also:
        Constant Field Values
      • NONZERO_UNKNOWN_CARDINALITY

        public static final int NONZERO_UNKNOWN_CARDINALITY
        See Also:
        Constant Field Values
      • CURRENT_INDEX_VERSION

        public static final int CURRENT_INDEX_VERSION
        The version number that is encoded with all newly created index records
        See Also:
        Constant Field Values
      • parentId

        protected String parentId
    • Constructor Detail

      • RecordFactory

        public RecordFactory()
    • Method Detail

      • joinEntryResults

        public static IEntryResult joinEntryResults​(IEntryResult result,
                                                    IEntryResult[] continuationResults,
                                                    int blockSize)
        Append the specified IEntryResult[] to the IEntryResult to create a single result representing an index entry that was split across multiple index records.
        Parameters:
        result -
        continuationResults -
        blockSize -
      • getContinuationSegmentNumber

        public static int getContinuationSegmentNumber​(String objectID,
                                                       IEntryResult continuationResult)
      • extractUUIDString

        public static String extractUUIDString​(IEntryResult result)
        Extract the UUID string from the IEntryResult
        Parameters:
        result -
      • createModelRecord

        public Schema createModelRecord​(char[] record)
        Create a ModelRecord instance from the specified index record
      • createTransformationRecord

        public TransformationRecordImpl createTransformationRecord​(char[] record)
        Create a TransformationRecord instance from the specified index record
      • getKeyTypeForRecordType

        protected static short getKeyTypeForRecordType​(char recordType)
      • createTableRecord

        public Table createTableRecord​(char[] record)
        Create a TableRecord instance from the specified index record
      • createColumnRecord

        public Column createColumnRecord​(char[] record)
        Create a ColumnRecord instance from the specified index record
      • createColumnSetRecord

        public ColumnSet createColumnSetRecord​(char[] record,
                                               ColumnSet columnSet)
        Create a ColumnSetRecord instance from the specified index record
      • createForeignKeyRecord

        public ForeignKey createForeignKeyRecord​(char[] record)
        Create a ForeignKeyRecord instance from the specified index record
      • createDatatypeRecord

        public Datatype createDatatypeRecord​(char[] record)
        Create a DatatypeRecord instance from the specified index record
      • createProcedureRecord

        public Procedure createProcedureRecord​(char[] record)
        Create a ProcedureRecord instance from the specified index record
      • createProcedureParameterRecord

        public ProcedureParameter createProcedureParameterRecord​(char[] record)
        Create a ProcedureParameterRecord instance from the specified index record header|defaultValue|dataType|length|radix|scale|nullType|precision|paramType|footer|
      • getObjectValue

        public String getObjectValue​(String str)
      • getBooleanValue

        public boolean getBooleanValue​(char b)
      • getStrings

        public static List<String> getStrings​(String record,
                                              char listDelimiter)
      • getStrings

        public static List<String> getStrings​(char[] record,
                                              char listDelimiter)
      • getListDelimiter

        public char getListDelimiter​(int indexVersionNumber)
      • includeMaterializationFlag

        public boolean includeMaterializationFlag​(int indexVersionNumber)
      • includeMaterializedTables

        public boolean includeMaterializedTables​(int indexVersionNumber)
      • includeColumnNativeType

        public boolean includeColumnNativeType​(int indexVersionNumber)
      • includeColumnNullDistinctValues

        public boolean includeColumnNullDistinctValues​(int indexVersionNumber)
      • includePrimitiveTypeIdValue

        public boolean includePrimitiveTypeIdValue​(int indexVersionNumber)
      • includeInputParameterFlag

        public boolean includeInputParameterFlag​(int indexVersionNumber)
      • includeAnnotationProperties

        public boolean includeAnnotationProperties​(int indexVersionNumber)
      • includeTransformationUUID

        public boolean includeTransformationUUID​(int indexVersionNumber)
      • getOptionalToken

        public String getOptionalToken​(List<String> tokens,
                                       int tokenIndex)