@Override public Object getPrimaryKey(Object metadataID) { return actualMetadata.getPrimaryKey(metadataID); }
@Override public Object getPrimaryKey(Object metadataID) { return actualMetadata.getPrimaryKey(metadataID); }
@Override public Object getPrimaryKey(Object metadataID) { return actualMetadata.getPrimaryKey(metadataID); }
@Override public Object getPrimaryKey(Object metadataID) { metadataID = getActualMetadataId(metadataID); if (metadataID instanceof TempMetadataID) { return ((TempMetadataID)metadataID).getPrimaryKey(); } return this.actualMetadata.getPrimaryKey(metadataID); }
@Override public Object getPrimaryKey(Object metadataID) { metadataID = getActualMetadataId(metadataID); if (metadataID instanceof TempMetadataID) { return ((TempMetadataID)metadataID).getPrimaryKey(); } return this.actualMetadata.getPrimaryKey(metadataID); }
@Override public Object getPrimaryKey(Object metadataID) { metadataID = getActualMetadataId(metadataID); if (metadataID instanceof TempMetadataID) { return ((TempMetadataID)metadataID).getPrimaryKey(); } return this.actualMetadata.getPrimaryKey(metadataID); }
public static List<ElementSymbol> getAutoIncrementKey(Object metadataId, List<ElementSymbol> columns, QueryMetadataInterface metadata) throws QueryMetadataException, TeiidComponentException { Object pk = metadata.getPrimaryKey(metadataId); if (pk == null) { return null; } List<?> cols = metadata.getElementIDsInKey(pk); List<ElementSymbol> key = null; for (ElementSymbol es : columns) { if (cols.contains(es.getMetadataID())) { if (!metadata.elementSupports(es.getMetadataID(), SupportConstants.Element.AUTO_INCREMENT) && !metadata.elementSupports(es.getMetadataID(), SupportConstants.Element.NULL)) { return null; } if (key == null) { key = new ArrayList<ElementSymbol>(); } key.add(es); } } return key; }
public static List<ElementSymbol> getAutoIncrementKey(Object metadataId, List<ElementSymbol> columns, QueryMetadataInterface metadata) throws QueryMetadataException, TeiidComponentException { Object pk = metadata.getPrimaryKey(metadataId); if (pk == null) { return null; } List<?> cols = metadata.getElementIDsInKey(pk); List<ElementSymbol> key = null; for (ElementSymbol es : columns) { if (cols.contains(es.getMetadataID())) { if (!metadata.elementSupports(es.getMetadataID(), SupportConstants.Element.AUTO_INCREMENT) && !metadata.elementSupports(es.getMetadataID(), SupportConstants.Element.NULL)) { return null; } if (key == null) { key = new ArrayList<ElementSymbol>(); } key.add(es); } } return key; }
private List<Criteria> createPkCriteria(GroupSymbol group, String correlationName, Query query, GroupSymbol varGroup) throws TeiidComponentException, QueryMetadataException { Object pk = metadata.getPrimaryKey(group.getMetadataID()); if (pk == null) { pk = metadata.getUniqueKeysInGroup(group.getMetadataID()).iterator().next(); } int i = query.getSelect().getSymbols().size(); List<Object> ids = metadata.getElementIDsInKey(pk); List<Criteria> pkCriteria = new ArrayList<Criteria>(ids.size()); for (Object object : ids) { ElementSymbol es = new ElementSymbol(correlationName + Symbol.SEPARATOR + metadata.getName(object)); query.getSelect().addSymbol(new AliasSymbol("s_" +i, es)); //$NON-NLS-1$ es = new ElementSymbol(group.getName() + Symbol.SEPARATOR + metadata.getName(object)); pkCriteria.add(new CompareCriteria(es, CompareCriteria.EQ, new ElementSymbol("s_" + i, varGroup.clone()))); //$NON-NLS-1$ i++; } return pkCriteria; }
private List<Criteria> createPkCriteria(GroupSymbol viewGroup, GroupSymbol group, String correlationName, Query query, GroupSymbol varGroup) throws TeiidComponentException, QueryMetadataException, QueryValidatorException { Object pk = metadata.getPrimaryKey(group.getMetadataID()); if (pk == null) { Collection uniqueKeysInGroup = metadata.getUniqueKeysInGroup(group.getMetadataID()); if (uniqueKeysInGroup.isEmpty()) { throw new QueryValidatorException(QueryPlugin.Event.TEIID31267, QueryPlugin.Util.gs(QueryPlugin.Event.TEIID31267, viewGroup, group)); } pk = uniqueKeysInGroup.iterator().next(); } int i = query.getSelect().getSymbols().size(); List<Object> ids = metadata.getElementIDsInKey(pk); List<Criteria> pkCriteria = new ArrayList<Criteria>(ids.size()); for (Object object : ids) { ElementSymbol es = new ElementSymbol(correlationName + Symbol.SEPARATOR + metadata.getName(object)); query.getSelect().addSymbol(new AliasSymbol("s_" +i, es)); //$NON-NLS-1$ es = new ElementSymbol(group.getName() + Symbol.SEPARATOR + metadata.getName(object)); pkCriteria.add(new CompareCriteria(es, CompareCriteria.EQ, new ElementSymbol("s_" + i, varGroup.clone()))); //$NON-NLS-1$ i++; } return pkCriteria; }
private List<Criteria> createPkCriteria(GroupSymbol viewGroup, GroupSymbol group, String correlationName, Query query, GroupSymbol varGroup) throws TeiidComponentException, QueryMetadataException, QueryValidatorException { Object pk = metadata.getPrimaryKey(group.getMetadataID()); if (pk == null) { Collection uniqueKeysInGroup = metadata.getUniqueKeysInGroup(group.getMetadataID()); if (uniqueKeysInGroup.isEmpty()) { throw new QueryValidatorException(QueryPlugin.Event.TEIID31267, QueryPlugin.Util.gs(QueryPlugin.Event.TEIID31267, viewGroup, group)); } pk = uniqueKeysInGroup.iterator().next(); } int i = query.getSelect().getSymbols().size(); List<Object> ids = metadata.getElementIDsInKey(pk); List<Criteria> pkCriteria = new ArrayList<Criteria>(ids.size()); for (Object object : ids) { ElementSymbol es = new ElementSymbol(correlationName + Symbol.SEPARATOR + metadata.getName(object)); query.getSelect().addSymbol(new AliasSymbol("s_" +i, es)); //$NON-NLS-1$ es = new ElementSymbol(group.getName() + Symbol.SEPARATOR + metadata.getName(object)); pkCriteria.add(new CompareCriteria(es, CompareCriteria.EQ, new ElementSymbol("s_" + i, varGroup.clone()))); //$NON-NLS-1$ i++; } return pkCriteria; }
public static Create getCreateCommand(GroupSymbol group, boolean matview, QueryMetadataInterface metadata) throws QueryMetadataException, TeiidComponentException { Create create = new Create(); create.setTable(group); List<ElementSymbol> allColumns = ResolverUtil.resolveElementsInGroup(group, metadata); create.setElementSymbolsAsColumns(allColumns); if (!matview) { for (int i = 0; i < allColumns.size(); i++) { ElementSymbol es = allColumns.get(i); if (!metadata.elementSupports(es.getMetadataID(), SupportConstants.Element.NULL)) { create.getColumns().get(i).setNullType(NullType.No_Nulls); if (es.getType() == DataTypeManager.DefaultDataClasses.INTEGER && metadata.elementSupports(es.getMetadataID(), SupportConstants.Element.AUTO_INCREMENT)) { create.getColumns().get(i).setAutoIncremented(true); //serial } } } } Object pk = metadata.getPrimaryKey(group.getMetadataID()); if (pk != null) { List<ElementSymbol> pkColumns = resolveIndex(metadata, allColumns, pk); create.getPrimaryKey().addAll(pkColumns); } return create; }
public static Create getCreateCommand(GroupSymbol group, boolean matview, QueryMetadataInterface metadata) throws QueryMetadataException, TeiidComponentException { Create create = new Create(); create.setTable(group); List<ElementSymbol> allColumns = ResolverUtil.resolveElementsInGroup(group, metadata); create.setElementSymbolsAsColumns(allColumns); if (!matview) { for (int i = 0; i < allColumns.size(); i++) { ElementSymbol es = allColumns.get(i); if (!metadata.elementSupports(es.getMetadataID(), SupportConstants.Element.NULL)) { create.getColumns().get(i).setNullType(NullType.No_Nulls); if (es.getType() == DataTypeManager.DefaultDataClasses.INTEGER && metadata.elementSupports(es.getMetadataID(), SupportConstants.Element.AUTO_INCREMENT)) { create.getColumns().get(i).setAutoIncremented(true); //serial } } } } Object pk = metadata.getPrimaryKey(group.getMetadataID()); if (pk != null) { List<ElementSymbol> pkColumns = resolveIndex(metadata, allColumns, pk); create.getPrimaryKey().addAll(pkColumns); } return create; }
public static Create getCreateCommand(GroupSymbol group, boolean matview, QueryMetadataInterface metadata) throws QueryMetadataException, TeiidComponentException { Create create = new Create(); create.setTable(group); List<ElementSymbol> allColumns = ResolverUtil.resolveElementsInGroup(group, metadata); create.setElementSymbolsAsColumns(allColumns); if (!matview) { for (int i = 0; i < allColumns.size(); i++) { ElementSymbol es = allColumns.get(i); if (!metadata.elementSupports(es.getMetadataID(), SupportConstants.Element.NULL)) { create.getColumns().get(i).setNullType(NullType.No_Nulls); if (es.getType() == DataTypeManager.DefaultDataClasses.INTEGER && metadata.elementSupports(es.getMetadataID(), SupportConstants.Element.AUTO_INCREMENT)) { create.getColumns().get(i).setAutoIncremented(true); //serial } } } } Object pk = metadata.getPrimaryKey(group.getMetadataID()); if (pk != null) { List<ElementSymbol> pkColumns = resolveIndex(metadata, allColumns, pk); create.getPrimaryKey().addAll(pkColumns); } return create; }
List<ElementSymbol> variables = ResolverUtil.resolveElementsInGroup(insert.getGroup(), metadata); variables.removeAll(insert.getVariables()); Object pk = metadata.getPrimaryKey(insert.getGroup().getMetadataID()); if (pk != null) { List<?> cols = metadata.getElementIDsInKey(pk);
List<ElementSymbol> variables = ResolverUtil.resolveElementsInGroup(insert.getGroup(), metadata); variables.removeAll(insert.getVariables()); Object pk = metadata.getPrimaryKey(insert.getGroup().getMetadataID()); if (pk != null) { List<?> cols = metadata.getElementIDsInKey(pk);
} else { Object key = NewCalculateCostUtil.getKeyUsed(insert.getVariables(), Collections.singleton(insert.getGroup()), metadata, true); if (key == null || key != metadata.getPrimaryKey(insert.getGroup().getMetadataID())) {
TempMetadataID matTableId = context.getGlobalTableStore().getGlobalTempTableMetadataId(groupID); final GlobalTableStore globalStore = getGlobalStore(context, matTableId); Object pk = metadata.getPrimaryKey(groupID); String matViewName = metadata.getFullName(groupID); if (pk == null) { TempMetadataID matTableId = context.getGlobalTableStore().getGlobalTempTableMetadataId(groupID); final GlobalTableStore globalStore = getGlobalStore(context, matTableId); Object pk = metadata.getPrimaryKey(groupID); final String matViewName = metadata.getFullName(groupID); if (pk == null) {
TempMetadataID matTableId = context.getGlobalTableStore().getGlobalTempTableMetadataId(groupID); final GlobalTableStore globalStore = getGlobalStore(context, matTableId); Object pk = metadata.getPrimaryKey(groupID); String matViewName = metadata.getFullName(groupID); if (pk == null) { TempMetadataID matTableId = context.getGlobalTableStore().getGlobalTempTableMetadataId(groupID); final GlobalTableStore globalStore = getGlobalStore(context, matTableId); Object pk = metadata.getPrimaryKey(groupID); final String matViewName = metadata.getFullName(groupID); if (pk == null) {
TempMetadataID matTableId = context.getGlobalTableStore().getGlobalTempTableMetadataId(groupID); final GlobalTableStore globalStore = getGlobalStore(context, matTableId); Object pk = metadata.getPrimaryKey(groupID); String matViewName = metadata.getFullName(groupID); if (pk == null) { TempMetadataID matTableId = context.getGlobalTableStore().getGlobalTempTableMetadataId(groupID); final GlobalTableStore globalStore = getGlobalStore(context, matTableId); Object pk = metadata.getPrimaryKey(groupID); final String matViewName = metadata.getFullName(groupID); if (pk == null) {