use of org.pentaho.platform.api.engine.IActionSequenceResource in project pentaho-platform by pentaho.
the class ActionSequenceParameterMgr method getString.
public String getString(final IActionResource actionResource) throws IOException {
String resourceString = null;
IActionSequenceResource resource = runtimeContext.getResourceDefintion(actionResource.getName());
if (resource != null) {
resourceString = runtimeContext.getResourceAsString(resource);
}
return resourceString;
}
use of org.pentaho.platform.api.engine.IActionSequenceResource in project pentaho-platform by pentaho.
the class ActionSequenceParameterMgr method getInputStream.
public InputStream getInputStream(final IActionResource actionResource) throws FileNotFoundException {
InputStream inputStream = null;
IActionSequenceResource resource = runtimeContext.getResourceDefintion(actionResource.getName());
if (resource != null) {
inputStream = resource.getInputStream(RepositoryFilePermission.READ, LocaleHelper.getLocale());
}
return inputStream;
}
use of org.pentaho.platform.api.engine.IActionSequenceResource in project pentaho-platform by pentaho.
the class HQLBaseComponent method getCatalog.
/*
* Utility function to get the catalog info from hibernate config.
*/
private String getCatalog() {
IActionResource hibernateConfigRes = ((HQLConnectionAction) getActionDefinition()).getHibernateConfigResource();
String catalog = null;
String resAddress = null;
if (hibernateConfigRes != null) {
String resName = this.applyInputsToFormat(hibernateConfigRes.getName());
IActionSequenceResource resource = getResource(resName);
resAddress = resource.getAddress();
if (resAddress != null) {
catalog = this.applyInputsToFormat(resAddress);
}
}
return catalog;
}
use of org.pentaho.platform.api.engine.IActionSequenceResource in project pentaho-platform by pentaho.
the class JFreeReportDataComponent method getJarDataFactory.
@SuppressWarnings("unused")
private PentahoTableDataFactory getJarDataFactory() throws Exception {
PentahoTableDataFactory factory = null;
if (isDefinedResource(AbstractJFreeReportComponent.DATACOMPONENT_JARINPUT)) {
final IActionSequenceResource resource = getResource(AbstractJFreeReportComponent.DATACOMPONENT_JARINPUT);
final InputStream in;
try {
in = resource.getInputStream(RepositoryFilePermission.READ, LocaleHelper.getLocale());
try {
// not being able to read a single char is definitly a big boo ..
if (in.read() == -1) {
// $NON-NLS-1$
throw new Exception(Messages.getInstance().getErrorString("JFreeReport.ERROR_0009_REPORT_JAR_UNREADABLE"));
} else {
final ClassLoader loader = ReportUtils.createJarLoader(getSession(), resource);
if (loader == null) {
throw new Exception(Messages.getInstance().getString(// $NON-NLS-1$
"JFreeReportDataComponent.ERROR_0035_COULD_NOT_CREATE_CLASSLOADER"));
} else if (!isDefinedInput(AbstractJFreeReportComponent.DATACOMPONENT_CLASSLOCINPUT)) {
throw new Exception(Messages.getInstance().getErrorString(// $NON-NLS-1$
"JFreeReport.ERROR_0012_CLASS_LOCATION_MISSING"));
} else {
final String classLocation = getInputStringValue(AbstractJFreeReportComponent.DATACOMPONENT_CLASSLOCINPUT);
// Get input parameters, and set them as properties in the report
// object.
final ReportParameterValues reportProperties = new ReportParameterValues();
final Set paramNames = getInputNames();
final Iterator it = paramNames.iterator();
while (it.hasNext()) {
final String paramName = (String) it.next();
final Object paramValue = getInputValue(paramName);
if (paramValue instanceof Object[]) {
final Object[] values = (Object[]) paramValue;
final StringBuffer valuesBuffer = new StringBuffer();
// TODO support non-string items
for (int i = 0; i < values.length; i++) {
if (i == 0) {
valuesBuffer.append(values[i].toString());
} else {
valuesBuffer.append(',').append(values[i].toString());
}
}
reportProperties.put(paramName, valuesBuffer.toString());
} else {
reportProperties.put(paramName, paramValue);
}
}
final DataFactory dataFactory = new PentahoDataFactory(loader);
final TableModel model = dataFactory.queryData(classLocation, new ParameterDataRow(reportProperties));
factory = new PentahoTableDataFactory(AbstractJFreeReportComponent.DATACOMPONENT_DEFAULTINPUT, model);
}
}
} catch (Exception e) {
// $NON-NLS-1$
throw new Exception(Messages.getInstance().getErrorString("JFreeReport.ERROR_0009_REPORT_JAR_UNREADABLE"));
}
} catch (FileNotFoundException e1) {
throw new Exception(Messages.getInstance().getErrorString("JFreeReport.ERROR_0010_REPORT_JAR_MISSING", // $NON-NLS-1$
resource.getAddress()));
}
}
return factory;
}
use of org.pentaho.platform.api.engine.IActionSequenceResource in project pentaho-platform by pentaho.
the class JFreeReportGenerateDefinitionComponent method getReportSpec.
public ReportSpec getReportSpec() throws FileNotFoundException {
ReportSpec reportSpec = null;
if (isDefinedResource(AbstractJFreeReportComponent.REPORTGENERATEDEFN_REPORTSPECINPUT)) {
IActionSequenceResource resource = getResource(AbstractJFreeReportComponent.REPORTGENERATEDEFN_REPORTSPECINPUT);
reportSpec = loadFromZip(resource);
if (reportSpec == null) {
InputStream reportSpecInputStream = resource.getInputStream(RepositoryFilePermission.READ, LocaleHelper.getLocale());
reportSpec = (ReportSpec) CastorUtility.getInstance().readCastorObject(reportSpecInputStream, ReportSpec.class);
}
}
return reportSpec;
}
Aggregations