final String file = "XPrintable.prt" ;
final String fileName = utils.getOfficeTempDirSys((XMultiServiceFactory)tParam.getMSF())+file ;
final String fileURL = utils.getOfficeTemp((XMultiServiceFactory)tParam.getMSF()) + file ;
XSimpleFileAccess fAcc = null ;
try {
Object oFAcc =
((XMultiServiceFactory)tParam.getMSF()).createInstance
("com.sun.star.ucb.SimpleFileAccess") ;
fAcc = (XSimpleFileAccess) UnoRuntime.queryInterface
(XSimpleFileAccess.class, oFAcc) ;
if (fAcc == null) throw new StatusException
(Status.failed("Can't create SimpleFileAccess service")) ;
if (fAcc.exists(fileURL)) {
log.println("Old file exists and will be deleted");
fAcc.kill(fileURL);
}
} catch (com.sun.star.uno.Exception e) {
log.println("Error accessing file '" + fileURL + "'");
e.printStackTrace(log);
}
try {
PropertyValue[] PrintOptions = new PropertyValue[2];
PropertyValue firstProp = new PropertyValue();
firstProp.Name = "FileName";
log.println("Printing to :"+fileName);
firstProp.Value = fileName;
firstProp.State = com.sun.star.beans.PropertyState.DEFAULT_VALUE;
PrintOptions[0] = firstProp;
PrintOptions[1] = new PropertyValue();
PrintOptions[1].Name = "Wait";
PrintOptions[1].Value = new Boolean(true);
oObj.print(PrintOptions);
}
catch (com.sun.star.lang.IllegalArgumentException ex) {
log.println("couldn't print");
ex.printStackTrace(log);
result = false ;
}
try {
boolean fileExists = fAcc.exists(fileURL);
log.println("File "+fileName+" exists = "+fileExists);
if (result) {
result &= fileExists ;