/* * JBoss, Home of Professional Open Source. * * See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing. * * See the AUTHORS.txt file distributed with this work for a full listing of individual contributors. */ package org.teiid.designer.metadata.runtime; import java.util.List; /** * ColumnSetRecord * * @since 8.0 */ public interface ColumnSetRecord extends MetadataRecord { /** * Constants for perperties stored on a ColumnSetRecord * @since 4.3 */ public interface ColumnSetRecordProperties { String ELEMENTS_IN_INDEX = "elementsInIndex"; //$NON-NLS-1$ String ELEMENTS_IN_KEY = "elementsInKey"; //$NON-NLS-1$ String ELEMENTS_IN_ACCESS_PTTRN = "elementsInAccPttrn"; //$NON-NLS-1$ } /** * Get a list of identifiers for the columns in the record * @return a list of identifiers */ List getColumnIDs(); /** * Get a list of identifiers for the columns in the record * @return a list of identifiers */ ListEntryRecord[] getColumnIdEntries(); /** * Return true if the record represents a primary key * @return */ boolean isPrimaryKey(); /** * Return true if the record represents a index * @return */ boolean isIndex(); /** * Return true if the record represents a access pattern * @return */ boolean isAccessPattern(); /** * Return true if the record represents a unique key * @return */ boolean isUniqueKey(); /** * Return true if the record represents a result set * @return */ boolean isResultSet(); /** * Return short indicating the type of KEY it is. * @return short * * @see org.teiid.designer.metadata.runtime.MetadataConstants.KEY_TYPES */ short getType(); }