def waitForCommandOutput(self, commandID): """ Espera a que un comando termine, devolviendo su salida en caso de que la haya. Argumentos: commandID: el identificador único del comando Devuelve: - None si el comando no tiene salida - Un diccionario con los datos de su salida en caso contrario @attention: Este método es bloqueante. Si se desea un comportamiento no bloqueante, es necesario utilizar el método getCommandOutput. """ while (self.__commandsDBConnector.isRunning(commandID)) : sleep(0.1) result = self.__commandsDBConnector.getCommandOutput(commandID) if result == None : return None else : return CommandsHandler.deserializeCommandOutput(result[0], result[1])
def getCommandOutput(self, commandID): """ Devuelve la salida de un comando Argumentos: commandID: el identificador único del comando Devuelve: - Si el comando todavía se está ejecutando, se devuelve una tupla vacía. - Si el comando se ha terminado de ejecutar, se devuelve un diccionario con los datos de su salida. """ if (self.__commandsDBConnector.isRunning(commandID)) : return () else : result = self.__commandsDBConnector.getCommandOutput(commandID) if (result != None) : (outputType, outputContent) = result result = CommandsHandler.deserializeCommandOutput(outputType, outputContent) return result
def waitForCommandOutput(self, commandID): """ Espera a que un comando termine, devolviendo su salida en caso de que la haya. Argumentos: commandID: el identificador único del comando Devuelve: - None si el comando no tiene salida - Un diccionario con los datos de su salida en caso contrario @attention: Este método es bloqueante. Si se desea un comportamiento no bloqueante, es necesario utilizar el método getCommandOutput. """ while (self.__commandsDBConnector.isRunning(commandID)): sleep(0.1) result = self.__commandsDBConnector.getCommandOutput(commandID) if result == None: return None else: return CommandsHandler.deserializeCommandOutput( result[0], result[1])
def getCommandOutput(self, commandID): """ Devuelve la salida de un comando Argumentos: commandID: el identificador único del comando Devuelve: - Si el comando todavía se está ejecutando, se devuelve una tupla vacía. - Si el comando se ha terminado de ejecutar, se devuelve un diccionario con los datos de su salida. """ if (self.__commandsDBConnector.isRunning(commandID)): return () else: result = self.__commandsDBConnector.getCommandOutput(commandID) if (result != None): (outputType, outputContent) = result result = CommandsHandler.deserializeCommandOutput( outputType, outputContent) return result