use of org.talend.dq.writer.impl.ReportWriter in project tdq-studio-se by Talend.
the class AElementPersistanceRealTest method testSaveWithoutDependenciesReport.
/**
* Test method for
* {@link org.talend.dq.writer.AElementPersistance#saveWithoutDependencies(org.talend.core.model.properties.Item, orgomg.cwm.objectmodel.core.ModelElement)}
* .
*
* @throws PersistenceException
*/
@Test
public void testSaveWithoutDependenciesReport() throws PersistenceException {
ReportWriter createReportWriter = ElementWriterFactory.getInstance().createReportWriter();
// create analysis
Analysis createAnalysis = AnalysisFactory.eINSTANCE.createAnalysis();
AnalysisResult createAnalysisResult = AnalysisFactory.eINSTANCE.createAnalysisResult();
createAnalysis.setResults(createAnalysisResult);
// $NON-NLS-1$
createAnalysis.setName("AElementPersistanceRealTestanalysis6");
// create analysis item
TDQAnalysisItem createTDQAnalysisItem = PropertiesFactory.eINSTANCE.createTDQAnalysisItem();
createTDQAnalysisItem.setAnalysis(createAnalysis);
Property createAnalysisProperty = org.talend.core.model.properties.PropertiesFactory.eINSTANCE.createProperty();
// $NON-NLS-1$
createAnalysisProperty.setLabel("AElementPersistanceRealTestanalysis6");
createAnalysisProperty.setId(EcoreUtil.generateUUID());
createTDQAnalysisItem.setProperty(createAnalysisProperty);
ProxyRepositoryFactory.getInstance().create(createTDQAnalysisItem, Path.EMPTY, false);
// create report
TdReport createTdReport = ReportsFactory.eINSTANCE.createTdReport();
TDQReportItem createTDQReportItem = PropertiesFactory.eINSTANCE.createTDQReportItem();
createTDQReportItem.setReport(createTdReport);
Property createReportProperty = org.talend.core.model.properties.PropertiesFactory.eINSTANCE.createProperty();
// $NON-NLS-1$
createReportProperty.setLabel("AElementPersistanceRealTestreport6");
createTDQReportItem.setProperty(createReportProperty);
createReportProperty.setId(EcoreUtil.generateUUID());
ProxyRepositoryFactory.getInstance().create(createTDQReportItem, Path.EMPTY, false);
createTdReport.addAnalysis(createAnalysis);
// $NON-NLS-1$
String repName = "rep61";
// $NON-NLS-1$
String exceptedFileName = repName + "_0.1.rep";
createTdReport.setName(repName);
ReturnCode create = createReportWriter.saveWithoutDependencies(createTDQReportItem, createTdReport);
assertTrue(create.isOk());
Assert.assertEquals(exceptedFileName, createTDQReportItem.getFilename());
// $NON-NLS-1$
String repName2 = "rep62";
// $NON-NLS-1$
String exceptedFileName2 = repName2 + "_0.1.rep";
createTdReport.setName(repName2);
create = createReportWriter.saveWithDependencies(createTDQReportItem, createTdReport);
assertTrue(create.isOk());
Assert.assertEquals(exceptedFileName2, createTDQReportItem.getFilename());
}
use of org.talend.dq.writer.impl.ReportWriter in project tdq-studio-se by Talend.
the class AElementPersistanceRealTest method testCreateItemReport.
/**
* Test method for
* {@link org.talend.dq.writer.AElementPersistance#createItem(orgomg.cwm.objectmodel.core.ModelElement)}.
*/
@Test
public void testCreateItemReport() {
ReportWriter createReportWriter = ElementWriterFactory.getInstance().createReportWriter();
// test normal name
// $NON-NLS-1$
String repName = "rep1";
// $NON-NLS-1$
String exceptedFileName = repName + "_0.1.rep";
Report createReport = InformationreportingFactory.eINSTANCE.createReport();
createReport.setName(repName);
Item createItem = createReportWriter.createItem(createReport);
assertTrue(createItem instanceof TDQReportItem);
TDQReportItem reportItem = (TDQReportItem) createItem;
assertTrue(reportItem.getFilename().equals(exceptedFileName));
// test special name
// $NON-NLS-1$
String repName2 = "rep1#^&";
// $NON-NLS-1$
String exceptedFileName2 = "rep1____0.1.rep";
Report createReport2 = InformationreportingFactory.eINSTANCE.createReport();
createReport2.setName(repName2);
Item createItem2 = createReportWriter.createItem(createReport2);
assertTrue(createItem2 instanceof TDQReportItem);
TDQReportItem reportItem2 = (TDQReportItem) createItem2;
assertTrue(reportItem2.getFilename().equals(exceptedFileName2));
}
use of org.talend.dq.writer.impl.ReportWriter in project tdq-studio-se by Talend.
the class TDQResourceChangeHandler method create.
@Override
public Resource create(IProject project, Item item, int classID, IPath path) {
String fileExtension = FileConstants.ITEM_EXTENSION;
Resource itemResource = null;
try {
switch(classID) {
case org.talend.dataquality.properties.PropertiesPackage.TDQ_ANALYSIS_ITEM:
fileExtension = FileConstants.ANA_EXTENSION;
itemResource = xmiResourceManager.createItemResourceWithExtension(project, item, path, ERepositoryObjectType.TDQ_ANALYSIS_ELEMENT, false, fileExtension);
AnalysisWriter createAnalysisWrite = org.talend.dq.writer.impl.ElementWriterFactory.getInstance().createAnalysisWrite();
Analysis analysis = ((TDQAnalysisItem) item).getAnalysis();
createAnalysisWrite.addResourceContent(itemResource, analysis);
createAnalysisWrite.addDependencies(analysis);
break;
case org.talend.dataquality.properties.PropertiesPackage.TDQ_REPORT_ITEM:
fileExtension = FileConstants.REP_EXTENSION;
itemResource = xmiResourceManager.createItemResourceWithExtension(project, item, path, ERepositoryObjectType.TDQ_REPORT_ELEMENT, false, fileExtension);
ReportWriter createReportWriter = org.talend.dq.writer.impl.ElementWriterFactory.getInstance().createReportWriter();
Report report = ((TDQReportItem) item).getReport();
createReportWriter.addResourceContent(itemResource, report);
createReportWriter.addDependencies(report);
break;
case org.talend.dataquality.properties.PropertiesPackage.TDQ_INDICATOR_DEFINITION_ITEM:
fileExtension = FileConstants.DEF_EXTENSION;
itemResource = xmiResourceManager.createItemResourceWithExtension(project, item, path, ERepositoryObjectType.TDQ_INDICATOR_ELEMENT, false, fileExtension);
IndicatorDefinition indicatorDefinition = ((TDQIndicatorDefinitionItem) item).getIndicatorDefinition();
IndicatorDefinitionWriter createIndicatorDefinitionWriter = org.talend.dq.writer.impl.ElementWriterFactory.getInstance().createIndicatorDefinitionWriter();
createIndicatorDefinitionWriter.addResourceContent(itemResource, indicatorDefinition);
break;
case org.talend.dataquality.properties.PropertiesPackage.TDQ_PATTERN_ITEM:
fileExtension = FileConstants.PAT_EXTENSION;
itemResource = xmiResourceManager.createItemResourceWithExtension(project, item, path, ERepositoryObjectType.TDQ_PATTERN_ELEMENT, false, fileExtension);
Pattern pattern = ((TDQPatternItem) item).getPattern();
PatternWriter createPatternWriter = org.talend.dq.writer.impl.ElementWriterFactory.getInstance().createPatternWriter();
createPatternWriter.addResourceContent(itemResource, pattern);
break;
case org.talend.dataquality.properties.PropertiesPackage.TDQ_BUSINESS_RULE_ITEM:
fileExtension = FileConstants.RULE_EXTENSION;
// MOD gdbu 2011-6-10 bug : 21823 2011-06-27 revert the error type code by klliu
DQRule dqrule = ((TDQBusinessRuleItem) item).getDqrule();
if (dqrule instanceof WhereRule) {
itemResource = xmiResourceManager.createItemResourceWithExtension(project, item, path, ERepositoryObjectType.TDQ_RULES_SQL, false, fileExtension);
} else {
itemResource = xmiResourceManager.createItemResourceWithExtension(project, item, path, ERepositoryObjectType.TDQ_RULES_PARSER, false, fileExtension);
}
// ~21823
DQRuleWriter createdRuleWriter = org.talend.dq.writer.impl.ElementWriterFactory.getInstance().createdRuleWriter();
createdRuleWriter.addResourceContent(itemResource, dqrule);
break;
case org.talend.dataquality.properties.PropertiesPackage.TDQ_JRXML_ITEM:
fileExtension = FileConstants.JRXML_EXTENSION;
itemResource = xmiResourceManager.createItemResourceWithExtension(project, item, path, ERepositoryObjectType.TDQ_JRAXML_ELEMENT, true, fileExtension);
itemResource.getContents().add(((TDQFileItem) item).getContent());
break;
case org.talend.dataquality.properties.PropertiesPackage.TDQ_SOURCE_FILE_ITEM:
fileExtension = FileConstants.SQL_EXTENSION;
itemResource = xmiResourceManager.createItemResourceWithExtension(project, item, path, ERepositoryObjectType.TDQ_SOURCE_FILE_ELEMENT, true, fileExtension);
itemResource.getContents().add(((TDQFileItem) item).getContent());
break;
case org.talend.dataquality.properties.PropertiesPackage.TDQ_MATCH_RULE_ITEM:
fileExtension = FileConstants.RULE_EXTENSION;
itemResource = xmiResourceManager.createItemResourceWithExtension(project, item, path, ERepositoryObjectType.TDQ_RULES_MATCHER, false, fileExtension);
MatchRuleDefinition matchRuleDefinition = ((TDQMatchRuleItem) item).getMatchRule();
MatchRuleDefinitionWriter matchRuleDefinitionWriter = org.talend.dq.writer.impl.ElementWriterFactory.getInstance().createdMatchRuleWriter();
matchRuleDefinitionWriter.addResourceContent(itemResource, matchRuleDefinition);
break;
default:
}
} catch (PersistenceException e) {
log.error(e, e);
}
return itemResource;
}
Aggregations