@Override public String getName(Object metadataID) throws TeiidComponentException, QueryMetadataException { return actualMetadata.getName(metadataID); }
@Override public String getName(Object metadataID) throws TeiidComponentException, QueryMetadataException { return actualMetadata.getName(metadataID); }
@Override public String getName(Object metadataID) throws TeiidComponentException, QueryMetadataException { return actualMetadata.getName(metadataID); }
@Override public String getName(Object metadataID) throws TeiidComponentException, QueryMetadataException { if(metadataID instanceof TempMetadataID) { TempMetadataID tid = (TempMetadataID)metadataID; return tid.getName(); } return this.actualMetadata.getName(metadataID); }
@Override public String getName(Object metadataID) throws TeiidComponentException, QueryMetadataException { if(metadataID instanceof TempMetadataID) { TempMetadataID tid = (TempMetadataID)metadataID; return tid.getName(); } return this.actualMetadata.getName(metadataID); }
@Override public String getName(Object metadataID) throws TeiidComponentException, QueryMetadataException { if(metadataID instanceof TempMetadataID) { TempMetadataID tid = (TempMetadataID)metadataID; return tid.getName(); } return this.actualMetadata.getName(metadataID); }
public void recordDebugAnnotation(String annotation, Object modelID, String resolution, AnalysisRecord record, QueryMetadataInterface metadata) throws QueryMetadataException, TeiidComponentException { if (record != null && record.recordAnnotations()) { boolean current = this.modified; this.modified = true; record.addAnnotation(Annotation.RELATIONAL_PLANNER, annotation + (modelID != null?" " + (metadata!=null?metadata.getName(modelID):modelID):""), resolution + " " + this.nodeToString(false), Priority.LOW); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ this.modified = current; } }
private void markInvalid(LanguageObject object, String reason) { this.valid = false; setAbort(true); if (analysisRecord != null && analysisRecord.recordAnnotations()) { try { analysisRecord.addAnnotation(Annotation.RELATIONAL_PLANNER, reason + " " + this.metadata.getName(this.modelID), object + " was not pushed", Priority.LOW); //$NON-NLS-1$ //$NON-NLS-2$ } catch (QueryMetadataException e) { } catch (TeiidComponentException e) { } } }
public void recordDebugAnnotation(String annotation, Object modelID, String resolution, AnalysisRecord record, QueryMetadataInterface metadata) throws QueryMetadataException, TeiidComponentException { if (record != null && record.recordAnnotations()) { boolean current = this.modified; this.modified = true; record.addAnnotation(Annotation.RELATIONAL_PLANNER, annotation + (modelID != null?" " + (metadata!=null?metadata.getName(modelID):modelID):""), resolution + " " + this.nodeToString(false), Priority.LOW); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ this.modified = current; } }
public void recordDebugAnnotation(String annotation, Object modelID, String resolution, AnalysisRecord record, QueryMetadataInterface metadata) throws QueryMetadataException, TeiidComponentException { if (record != null && record.recordAnnotations()) { boolean current = this.modified; this.modified = true; record.addAnnotation(Annotation.RELATIONAL_PLANNER, annotation + (modelID != null?" " + (metadata!=null?metadata.getName(modelID):modelID):""), resolution + " " + this.nodeToString(false), Priority.LOW); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ this.modified = current; } }
private void markInvalid(LanguageObject object, String reason) { this.valid = false; setAbort(true); if (analysisRecord != null && analysisRecord.recordAnnotations()) { try { analysisRecord.addAnnotation(Annotation.RELATIONAL_PLANNER, reason + " " + this.metadata.getName(this.modelID), object + " was not pushed", Priority.LOW); //$NON-NLS-1$ //$NON-NLS-2$ } catch (QueryMetadataException e) { } catch (TeiidComponentException e) { } } }
private void markInvalid(LanguageObject object, String reason) { this.valid = false; setAbort(true); if (analysisRecord != null && analysisRecord.recordAnnotations()) { try { analysisRecord.addAnnotation(Annotation.RELATIONAL_PLANNER, reason + " " + this.metadata.getName(this.modelID), object + " was not pushed", Priority.LOW); //$NON-NLS-1$ //$NON-NLS-2$ } catch (QueryMetadataException e) { } catch (TeiidComponentException e) { } } }
@Override public TempMetadataID getGlobalTempTableMetadataId(Object groupID) throws TeiidComponentException, TeiidProcessingException { Object mid = metadata.getModelID(groupID); String name = metadata.getName(mid); return getStore(name).getGlobalTempTableMetadataId(groupID); }
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 void validateAlterTarget(Alter<?> obj) throws QueryMetadataException, TeiidComponentException { Object schemaId = obj.getTarget().getMetadataID(); if (schemaId == null) { return; } if (getMetadata().getImportedModels().contains(getMetadata().getName(schemaId))) { handleValidationError(QueryPlugin.Util.getString("ValidationVisitor.invalid_alter", obj.getTarget()), obj.getTarget()); //$NON-NLS-1$ } }
private void validateAlterTarget(Alter<?> obj) throws QueryMetadataException, TeiidComponentException { Object schemaId = obj.getTarget().getMetadataID(); if (schemaId == null) { return; } if (getMetadata().getImportedModels().contains(getMetadata().getName(schemaId))) { handleValidationError(QueryPlugin.Util.getString("ValidationVisitor.invalid_alter", obj.getTarget()), obj.getTarget()); //$NON-NLS-1$ } }
private void modifyToCheckMatViewStatus(QueryMetadataInterface metadata, QueryCommand queryCommand, Set<Object> ids) throws QueryMetadataException, TeiidComponentException { for (Object viewMatadataId : ids) { String schemaName = metadata.getName(metadata.getModelID(viewMatadataId)); String viewName = metadata.getName(viewMatadataId); Expression expr1 = new Constant(schemaName); Expression expr2 = new Constant(viewName); Function status = new Function("mvstatus", new Expression[] {expr1, expr2}); //$NON-NLS-1$ status.setType(DataTypeManager.DefaultDataClasses.INTEGER); FunctionDescriptor descriptor = metadata.getFunctionLibrary().findFunction("mvstatus", new Class[] { DataTypeManager.DefaultDataClasses.STRING, DataTypeManager.DefaultDataClasses.STRING }); //$NON-NLS-1$ status.setFunctionDescriptor(descriptor); Query query = queryCommand.getProjectedQuery(); //insert first so that it gets evaluated ahead of any false predicate query.setCriteria(Criteria.combineCriteria(new CompareCriteria(status, CompareCriteria.EQ, new Constant(1)), query.getCriteria())); } }
private void modifyToCheckMatViewStatus(QueryMetadataInterface metadata, QueryCommand queryCommand, Set<Object> ids) throws QueryMetadataException, TeiidComponentException { for (Object viewMatadataId : ids) { String schemaName = metadata.getName(metadata.getModelID(viewMatadataId)); String viewName = metadata.getName(viewMatadataId); Expression expr1 = new Constant(schemaName); Expression expr2 = new Constant(viewName); Function status = new Function("mvstatus", new Expression[] {expr1, expr2}); //$NON-NLS-1$ status.setType(DataTypeManager.DefaultDataClasses.INTEGER); FunctionDescriptor descriptor = metadata.getFunctionLibrary().findFunction("mvstatus", new Class[] { DataTypeManager.DefaultDataClasses.STRING, DataTypeManager.DefaultDataClasses.STRING }); //$NON-NLS-1$ status.setFunctionDescriptor(descriptor); Query query = queryCommand.getProjectedQuery(); //insert first so that it gets evaluated ahead of any false predicate query.setCriteria(Criteria.combineCriteria(new CompareCriteria(status, CompareCriteria.EQ, new Constant(1)), query.getCriteria())); } }
private void modifyToCheckMatViewStatus(QueryMetadataInterface metadata, QueryCommand queryCommand, Set<Object> ids) throws QueryMetadataException, TeiidComponentException { for (Object viewMatadataId : ids) { String schemaName = metadata.getName(metadata.getModelID(viewMatadataId)); String viewName = metadata.getName(viewMatadataId); Expression expr1 = new Constant(schemaName); Expression expr2 = new Constant(viewName); Function status = new Function("mvstatus", new Expression[] {expr1, expr2}); //$NON-NLS-1$ status.setType(DataTypeManager.DefaultDataClasses.INTEGER); FunctionDescriptor descriptor = metadata.getFunctionLibrary().findFunction("mvstatus", new Class[] { DataTypeManager.DefaultDataClasses.STRING, DataTypeManager.DefaultDataClasses.STRING }); //$NON-NLS-1$ status.setFunctionDescriptor(descriptor); Query query = queryCommand.getProjectedQuery(); //insert first so that it gets evaluated ahead of any false predicate query.setCriteria(Criteria.combineCriteria(new CompareCriteria(status, CompareCriteria.EQ, new Constant(1)), query.getCriteria())); } }