@Test
public void testStylesheetDescriptorDao() throws Exception {
final String ssName1 = this.execute(new Callable<String>() {
@Override
public String call() throws Exception {
final IStylesheetDescriptor stylesheetDescriptor = stylesheetDescriptorDao.createStylesheetDescriptor("columns", "classpath:/layout/struct/columns.xsl");
assertNotSame(-1, stylesheetDescriptor.getId());
StylesheetParameterDescriptorImpl ssp = new StylesheetParameterDescriptorImpl("ssp1", Scope.PERSISTENT);
ssp.setDefaultValue("value1");
stylesheetDescriptor.setStylesheetParameterDescriptor(ssp);
ssp = new StylesheetParameterDescriptorImpl("ssp2", Scope.PERSISTENT);
ssp.setDefaultValue("value2");
stylesheetDescriptor.setStylesheetParameterDescriptor(ssp);
ssp = new StylesheetParameterDescriptorImpl("ssp3", Scope.PERSISTENT);
ssp.setDefaultValue("value3");
stylesheetDescriptor.setStylesheetParameterDescriptor(ssp);
stylesheetDescriptorDao.updateStylesheetDescriptor(stylesheetDescriptor);
return stylesheetDescriptor.getName();
}
});
final String ssName2 = this.execute(new Callable<String>() {
@Override
public String call() throws Exception {
final IStylesheetDescriptor stylesheetDescriptor = stylesheetDescriptorDao.createStylesheetDescriptor("lists", "classpath:/layout/struct/lists.xsl");
assertNotSame(-1, stylesheetDescriptor.getId());
return stylesheetDescriptor.getName();
}
});
this.execute(new Callable<String>() {
@Override
public String call() throws Exception {
final IStylesheetDescriptor stylesheetDescriptor = stylesheetDescriptorDao.getStylesheetDescriptorByName(ssName1);
assertNotNull(stylesheetDescriptor);
final Collection<IOutputPropertyDescriptor> outputPropertyDescriptors = stylesheetDescriptor.getOutputPropertyDescriptors();
assertEquals(0, outputPropertyDescriptors.size());
stylesheetDescriptor.setOutputPropertyDescriptor(new OutputPropertyDescriptorImpl("propA", Scope.PERSISTENT));
stylesheetDescriptorDao.updateStylesheetDescriptor(stylesheetDescriptor);
return null;
}
});
this.execute(new Callable<String>() {
@Override
public String call() throws Exception {
final IStylesheetDescriptor stylesheetDescriptor = stylesheetDescriptorDao.getStylesheetDescriptorByName(ssName2);
assertNotNull(stylesheetDescriptor);
final Collection<IOutputPropertyDescriptor> outputPropertyDescriptors = stylesheetDescriptor.getOutputPropertyDescriptors();
assertEquals(0, outputPropertyDescriptors.size());
stylesheetDescriptor.setOutputPropertyDescriptor(new OutputPropertyDescriptorImpl("propA", Scope.SESSION));
stylesheetDescriptorDao.updateStylesheetDescriptor(stylesheetDescriptor);
return null;
}
});
this.execute(new Callable<String>() {
@Override
public String call() throws Exception {
final IStylesheetDescriptor stylesheetDescriptor = stylesheetDescriptorDao.getStylesheetDescriptorByName(ssName1);
assertNotNull(stylesheetDescriptor);
final Collection<IOutputPropertyDescriptor> outputPropertyDescriptors = stylesheetDescriptor.getOutputPropertyDescriptors();
assertEquals(1, outputPropertyDescriptors.size());
stylesheetDescriptor.setOutputPropertyDescriptor(new OutputPropertyDescriptorImpl("propA", Scope.REQUEST));
stylesheetDescriptorDao.updateStylesheetDescriptor(stylesheetDescriptor);
return null;
}
});
this.execute(new Callable<String>() {
@Override
public String call() throws Exception {
final IStylesheetDescriptor stylesheetDescriptor = stylesheetDescriptorDao.getStylesheetDescriptorByName(ssName1);
assertNotNull(stylesheetDescriptor);
final Collection<IOutputPropertyDescriptor> outputPropertyDescriptors = stylesheetDescriptor.getOutputPropertyDescriptors();
assertEquals(1, outputPropertyDescriptors.size());
return null;
}
});