1cdf0e10cSrcweir<?xml version="1.0" encoding="UTF-8"?> 2cdf0e10cSrcweir<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3cdf0e10cSrcweir<script:module xmlns:script="http://openoffice.org/2000/script" script:name="system_XSystemShellExecute" script:language="StarBasic"> 4cdf0e10cSrcweir 5cdf0e10cSrcweir 6cdf0e10cSrcweir'************************************************************************* 7cdf0e10cSrcweir' 8*3e6afcd2SAndrew Rist' Licensed to the Apache Software Foundation (ASF) under one 9*3e6afcd2SAndrew Rist' or more contributor license agreements. See the NOTICE file 10*3e6afcd2SAndrew Rist' distributed with this work for additional information 11*3e6afcd2SAndrew Rist' regarding copyright ownership. The ASF licenses this file 12*3e6afcd2SAndrew Rist' to you under the Apache License, Version 2.0 (the 13*3e6afcd2SAndrew Rist' "License"); you may not use this file except in compliance 14*3e6afcd2SAndrew Rist' with the License. You may obtain a copy of the License at 15*3e6afcd2SAndrew Rist' 16*3e6afcd2SAndrew Rist' http://www.apache.org/licenses/LICENSE-2.0 17*3e6afcd2SAndrew Rist' 18*3e6afcd2SAndrew Rist' Unless required by applicable law or agreed to in writing, 19*3e6afcd2SAndrew Rist' software distributed under the License is distributed on an 20*3e6afcd2SAndrew Rist' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 21*3e6afcd2SAndrew Rist' KIND, either express or implied. See the License for the 22*3e6afcd2SAndrew Rist' specific language governing permissions and limitations 23*3e6afcd2SAndrew Rist' under the License. 24cdf0e10cSrcweir' 25cdf0e10cSrcweir'************************************************************************* 26cdf0e10cSrcweir 27cdf0e10cSrcweir 28cdf0e10cSrcweir 29*3e6afcd2SAndrew Rist 30*3e6afcd2SAndrew Rist 31cdf0e10cSrcweir' Be sure that all variables are dimensioned: 32cdf0e10cSrcweiroption explicit 33cdf0e10cSrcweir 34cdf0e10cSrcweir'************************************************************************* 35cdf0e10cSrcweir' This Interface/Service test depends on the following GLOBAL variables, 36cdf0e10cSrcweir' which must be specified in the object creation: 37cdf0e10cSrcweir 38cdf0e10cSrcweir' - java existing in PATH system var and 39cdf0e10cSrcweir' SystemShellExecute.class file in docs dir 40cdf0e10cSrcweir 41cdf0e10cSrcweir'************************************************************************* 42cdf0e10cSrcweir 43cdf0e10cSrcweir 44cdf0e10cSrcweir 45cdf0e10cSrcweir 46cdf0e10cSrcweir 47cdf0e10cSrcweir 48cdf0e10cSrcweirSub RunTest() 49cdf0e10cSrcweir 50cdf0e10cSrcweir'************************************************************************* 51cdf0e10cSrcweir' INTERFACE: 52cdf0e10cSrcweir' com.sun.star.system.XSystemShellExecute 53cdf0e10cSrcweir'************************************************************************* 54cdf0e10cSrcweirOn Error Goto ErrHndl 55cdf0e10cSrcweir Dim bOK As Boolean 56cdf0e10cSrcweir Dim cResFile As String, cResURL As String, cClassPath As String 57cdf0e10cSrcweir Dim oFacc As Object 58cdf0e10cSrcweir Dim bExist As Boolean, i As Integer 59cdf0e10cSrcweir Dim cArgs As String 60cdf0e10cSrcweir 61cdf0e10cSrcweir Test.StartMethod("execute()") 62cdf0e10cSrcweir cClassPath = utils.URL2Path(utils.Path2URL(cTestDocsDir)) 63cdf0e10cSrcweir cResURL = utils.getTempFileURL("SystemShellExecute.txt", true) 64cdf0e10cSrcweir cResFile = utils.URL2Path(cResURL) 65cdf0e10cSrcweir bOK = true 66cdf0e10cSrcweir 67cdf0e10cSrcweir cArgs = "-classpath " + cClassPath + " SystemShellExecute " + cResFile 68cdf0e10cSrcweir Out.Log("Executing : 'java " + cArgs + "'") 69cdf0e10cSrcweir oObj.execute("java", cArgs, 1) 70cdf0e10cSrcweir 71cdf0e10cSrcweir oFacc = createUnoService("com.sun.star.ucb.SimpleFileAccess") 72cdf0e10cSrcweir 73cdf0e10cSrcweir if bOK then 74cdf0e10cSrcweir Out.Log("Waiting while the file will be created or timeout reached ...") 75cdf0e10cSrcweir bExist = false 76cdf0e10cSrcweir i = 0 77cdf0e10cSrcweir while i < 20 AND NOT bExist 78cdf0e10cSrcweir bExist = oFacc.exists(cResURL) 79cdf0e10cSrcweir wait(1000) 80cdf0e10cSrcweir i = i + 1 81cdf0e10cSrcweir wend 82cdf0e10cSrcweir 83cdf0e10cSrcweir if bExist then 84cdf0e10cSrcweir Out.Log("The command was executed and file created in " + i + " sec.") 85cdf0e10cSrcweir else 86cdf0e10cSrcweir Out.Log("File was not created.") 87cdf0e10cSrcweir endif 88cdf0e10cSrcweir 89cdf0e10cSrcweir bOK = bOK AND bExist 90cdf0e10cSrcweir endif 91cdf0e10cSrcweir 92cdf0e10cSrcweir Test.MethodTested("execute()", bOK) 93cdf0e10cSrcweir 94cdf0e10cSrcweirExit Sub 95cdf0e10cSrcweirErrHndl: 96cdf0e10cSrcweir Test.Exception() 97cdf0e10cSrcweir bOK = false 98cdf0e10cSrcweir resume next 99cdf0e10cSrcweirEnd Sub 100cdf0e10cSrcweir</script:module> 101