use of org.talend.core.model.metadata.Query in project tdi-studio-se by Talend.
the class SchemaTypeProcessor method selectRepositoryNode.
@Override
protected boolean selectRepositoryNode(Viewer viewer, RepositoryNode parentNode, RepositoryNode node) {
if (super.selectRepositoryNode(viewer, parentNode, node)) {
IRepositoryViewObject object = node.getObject();
if (object != null) {
// query
if (object instanceof Query) {
return false;
}
}
// cdc
ICDCProviderService cdcService = null;
if (PluginChecker.isCDCPluginLoaded()) {
cdcService = (ICDCProviderService) GlobalServiceRegister.getDefault().getService(ICDCProviderService.class);
}
String repositoryType = getRepositoryType();
if (ERepositoryCategoryType.CDC.getName().equals(repositoryType) && (object != null)) {
if (object.getRepositoryObjectType() == ERepositoryObjectType.METADATA_CONNECTIONS) {
DatabaseConnectionItem item = (DatabaseConnectionItem) object.getProperty().getItem();
DatabaseConnection connection = (DatabaseConnection) item.getConnection();
if (cdcService != null && cdcService.canCreateCDCConnection(connection)) {
return true;
}
return false;
}
if (object instanceof MetadataTable) {
return ((MetadataTableRepositoryObject) object).getTable().isActivatedCDC();
}
}
return true;
}
return false;
}
Aggregations