use of org.talend.cwm.relational.TdView in project tdq-studio-se by Talend.
the class DBColumnRepNode method getParentViewObject.
/*
* (non-Javadoc)
*
* @see
* org.talend.dq.nodes.DQRepositoryNode#getParentViewObject(org.talend.core.model.repository.IRepositoryViewObject)
*/
@Override
protected IRepositoryViewObject getParentViewObject() {
IRepositoryViewObject returnViewObject = null;
MetadataTable columnOwnerAsMetadataTable = ColumnHelper.getColumnOwnerAsMetadataTable(getTdColumn());
if (columnOwnerAsMetadataTable instanceof TdTable) {
returnViewObject = new TdTableRepositoryObject(metadataColumnRepositoryObject.getViewObject(), (TdTable) columnOwnerAsMetadataTable);
} else if (columnOwnerAsMetadataTable instanceof TdView) {
returnViewObject = new TdViewRepositoryObject(metadataColumnRepositoryObject.getViewObject(), (TdView) columnOwnerAsMetadataTable);
}
return returnViewObject;
}
use of org.talend.cwm.relational.TdView in project tdi-studio-se by Talend.
the class FillParametersForDatabaseConnectionMigrationTask method fillParametersForColumns.
private void fillParametersForColumns(EList<orgomg.cwm.objectmodel.core.Package> pkgs) {
for (orgomg.cwm.objectmodel.core.Package pkg : pkgs) {
// handle tables
List<TdTable> tables = PackageHelper.getTables(pkg);
for (TdTable table : tables) {
fillParamaters(TableHelper.getColumns(table));
}
// handle views
List<TdView> views = PackageHelper.getViews(pkg);
for (TdView view : views) {
fillParamaters(ViewHelper.getColumns(view));
}
}
}
use of org.talend.cwm.relational.TdView in project tdq-studio-se by Talend.
the class RepositoryNodeHelper method getAllColumnNodes.
/**
* get All the Column level Nodes.
*
* @param selectedNodes
* @return
*/
public static IRepositoryNode[] getAllColumnNodes(Object[] selectedNodes) {
List<IRepositoryNode> list = new ArrayList<IRepositoryNode>();
if (selectedNodes == null || selectedNodes.length == 0) {
return list.toArray(new IRepositoryNode[list.size()]);
}
Object firstElement = selectedNodes[0];
if (firstElement instanceof IRepositoryNode) {
IRepositoryNode repNode = (IRepositoryNode) firstElement;
IRepositoryViewObject repViewObject = repNode.getObject();
if (repViewObject instanceof MetadataColumnRepositoryObject || repViewObject instanceof MetadataXmlElementType) {
IRepositoryNode[] column = new IRepositoryNode[selectedNodes.length];
for (int i = 0; i < selectedNodes.length; i++) {
column[i] = (IRepositoryNode) selectedNodes[i];
}
return column;
} else if (repViewObject instanceof MetadataTableRepositoryObject) {
for (Object currentObj : selectedNodes) {
IRepositoryNode columnSetNode = (IRepositoryNode) currentObj;
List<IRepositoryNode> children = columnSetNode.getChildren();
if (children.size() > 0) {
list.addAll(children.get(0).getChildren());
}
}
return list.toArray(new IRepositoryNode[list.size()]);
}
} else if (firstElement instanceof TdTable) {
TdTable table = (TdTable) firstElement;
EList<MetadataColumn> columns = table.getColumns();
for (MetadataColumn column : columns) {
RepositoryNode recursiveFind = RepositoryNodeHelper.recursiveFind(column);
list.add(recursiveFind);
}
return list.toArray(new IRepositoryNode[list.size()]);
} else if (firstElement instanceof WhereRuleChartDataEntity) {
// ADD msjian 2012-2-9 TDQ-4470: get columns from the join conditions
EList<JoinElement> joinConditions = ((WhereRuleChartDataEntity) firstElement).getIndicator().getJoinConditions();
if (joinConditions != null && joinConditions.size() > 0) {
JoinElement joinElement = joinConditions.get(0);
list.add(RepositoryNodeHelper.recursiveFind(joinElement.getColA()));
list.add(RepositoryNodeHelper.recursiveFind(joinElement.getColB()));
return list.toArray(new IRepositoryNode[list.size()]);
}
// TDQ-4470 ~
} else if (firstElement instanceof TdView) {
// Added yyin 20120522 TDQ-4945, support tdView
TdView view = (TdView) firstElement;
EList<MetadataColumn> columns = view.getColumns();
for (MetadataColumn column : columns) {
RepositoryNode recursiveFind = RepositoryNodeHelper.recursiveFind(column);
list.add(recursiveFind);
}
return list.toArray(new IRepositoryNode[list.size()]);
}
// ~
return null;
}
use of org.talend.cwm.relational.TdView in project tdq-studio-se by Talend.
the class RepositoryNodeHelper method createRepositoryNode.
/**
* create a new RepositoryNode when the node is hide on the repositoryView.
*
* @param findModelElement
* @throws PersistenceException
*/
public static RepositoryNode createRepositoryNode(ModelElement findModelElement) {
RepositoryNode returnNode = null;
if (findModelElement == null) {
return returnNode;
}
Property property = PropertyHelper.getProperty(findModelElement);
IRepositoryViewObject lastVersion = null;
if (property == null) {
// $NON-NLS-1$
log.error("Can not find property from modelElement: " + findModelElement.getName());
return returnNode;
} else {
try {
lastVersion = ProxyRepositoryFactory.getInstance().getLastVersion(property.getId());
} catch (PersistenceException e) {
log.error(e, e);
return returnNode;
}
if (lastVersion == null) {
// $NON-NLS-1$
log.error("Can not find lastVersion from property: " + property.getDisplayName());
return returnNode;
}
}
if (findModelElement instanceof TdColumn) {
returnNode = createMetadataColumnRepNode((TdColumn) findModelElement, lastVersion);
} else if (findModelElement instanceof TdTable) {
returnNode = createDBTableRepNode((TdTable) findModelElement, lastVersion);
} else if (findModelElement instanceof TdView) {
returnNode = createDBViewRepNode((TdView) findModelElement, lastVersion);
}
return returnNode;
}
use of org.talend.cwm.relational.TdView in project tdq-studio-se by Talend.
the class CatalogSchemaComparisonLevel method getSavedReloadObject.
@Override
protected EObject getSavedReloadObject() throws ReloadCompareException {
Package selectedPackage = getPackageFromObject(selectedObj);
// ADD TDQ-11146 msjian: to save the TaggedValues before clear
if (PluginChecker.isTDQLoaded()) {
tmpTableTaggedValuesMap = new HashMap<String, String>();
List<TdTable> tables = PackageHelper.getTables(selectedPackage);
for (TdTable table : tables) {
String tmpTableConceptName = TaggedValueHelper.getValueString(TaggedValueHelper.CONCEPT_NAME, table);
if (StringUtils.isNotBlank(tmpTableConceptName)) {
tmpTableTaggedValuesMap.put(table.getName(), tmpTableConceptName);
}
}
List<TdView> views = PackageHelper.getViews(selectedPackage);
for (TdView view : views) {
String tmpViewConceptName = TaggedValueHelper.getValueString(TaggedValueHelper.CONCEPT_NAME, view);
if (StringUtils.isNotBlank(tmpViewConceptName)) {
tmpTableTaggedValuesMap.put(view.getName(), tmpViewConceptName);
}
}
}
// TDQ-11146~
// MOD mzhao 2009-01-20 Extract method findMatchedPackage to
// DQStructureComparer class
// for common use.
Package findMatchPackage = DQStructureComparer.findMatchedPackage(selectedPackage, tempReloadProvider);
reloadElementOfPackage(findMatchPackage);
return findMatchPackage;
}
Aggregations