La interfaz de EJB (Enterprise JavaBeans) del planificador de trabajos se utiliza para someter y manipular mediante programación un trabajo de Compute Grid.
/** * Es la interfaz remota para el EJB del planificador de trabajos. * Los clientes de esta interfaz pueden someter y manipular mediante programación trabajos * al Planificador de trabajos. Se puede utilizar código parecido al siguiente para consultar * e invocar la interfaz de EJB del Planificador de trabajos remota: * <p> * * InitialContext ctxt = new InitialContext(); <br> * Hashtable env = new Hashtable(); <br> * * env.put (Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory"); <br> * env.put(Context.PROVIDER_URL, "corbaloc:iiop:<schedulerHostName>:<schedulerBootstrapPort>/NameServiceCellRoot"); <br> * ctxt = new InitialContext(env); <br> * * // Para buscar el EJB del planificador de trabajos en el contexto de célula en el <br> * // espacio de nombres, se debe proporcionar el contexto de nombre del servidor de <br> * // aplicaciones o clúster en el que se despliega la aplicación Planificador de trabajos. <br> * // Por ejemplo, "nodes/myNode/servers/myServer" o "clusters/myCluster". <br> <br> * * String jobSchedulerContext = clusters/myCluster; <br> <br> * * JobSchedulerHome zjsHome = (JobSchedulerHome) PortableRemoteObject.narrow(ctxt.lookup(jobSchedulerContext + * "/ejb/com/ibm/websphere/longrun/JobSchedulerHome"),JobSchedulerHome.class); <br> * * JobScheduler js = zjsHome.create(); <br> * * * * @ibm-api */ public interface JobScheduler extends javax.ejb.EJBObject { /** * Somete el trabajo especificado, guardado en el repositorio de xJCL, al planificador de trabajos * @param job El nombre del trabajo que se ha almacenado en el repositorio de xJCL * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * * @throws InvalidJobNameException si no se encuentra el trabajo en el repositorio de xJCL. * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL almacenado en el repositorio está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws java.rmi.RemoteException */ public String submitJobFromRepository( String job ) throws InvalidJobNameException, SchedulerException, JCLException, JobSubmissionException, java.rmi.RemoteException; /** * Somete el trabajo, definido por xJCL, al planificador de trabajos * * @param xJCL El xJCL del trabajo * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL almacenado en el repositorio está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws java.rmi.RemoteException * */ public String submitJob( String xJCL ) throws SchedulerException, JCLException, JobSubmissionException, java.rmi.RemoteException; /** * Somete el trabajo especificado por el xJCL pasado al Planificador de trabajos y * guarda el xJCL en el repositorio de xJCL. * * @param xJCL El xJCL del trabajo * @param job El nombre dado al trabajo guardado en el repositorio de xJCL. Se puede * utilizar este nombre al invocar el método submitJobFromRepository. * @param replace Un valor booleano que indica si debe sustituirse el xJCL del * utilizar este nombre en caso de que ya exista un trabajo por ese nombre * en el repositorio de xJCL. * * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * * @throws InvalidOperationException si ya existe el trabajo en el repositorio de xJCL y el parámetro replace especificado es false * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL almacenado en el repositorio está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws java.rmi.RemoteException * */ public String saveJobToRepositoryAndSubmit( String xJCL, String job, boolean replace ) throws InvalidOperationException, SchedulerException, JCLException, JobSubmissionException, java.rmi.RemoteException; /** * Depura el trabajo identificado por el ID de trabajo del Planificador de trabajos y * de los entornos de puntos finales de trabajos de larga duración * * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws SchedulerException si el planificador de trabajos genera un error inesperado al depurar el trabajo * @throws java.rmi.RemoteException * * @throws jobid: el ID del trabajo que se va a depurar */ public void purgeJob( String jobid ) throws InvalidJobIDException, SchedulerException, java.rmi.RemoteException; /** * Cancela el trabajo identificado por el ID de trabajo. * * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws SchedulerException si el planificador de trabajos genera un error inesperado al cancelar el trabajo * @throws java.rmi.RemoteException * * @param jobid El ID del trabajo */ public void cancelJob( String jobid ) throws InvalidOperationException, InvalidJobIDException, SchedulerException, java.rmi.RemoteException; /** * Cancela obligatoriamente el trabajo identificado por el ID de trabajo. * * Sólo se da soporte en z/OS. La solicitud forcedCancelJob se procesará como una solicitud * cancelJob en plataformas distribuidas. * * * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws SchedulerException si el planificador de trabajos genera un error inesperado al cancelar el trabajo * @throws java.rmi.RemoteException * * @param jobid El ID del trabajo */ public void forcedCancelJob( String jobid ) throws InvalidOperationException, InvalidJobIDException, SchedulerException, java.rmi.RemoteException; /** * Reinicia el trabajo identificado por el ID de trabajo. Sólo pueden reiniciarse los trabajos en el estado reiniciable. * * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al reiniciar el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws java.rmi.RemoteException * * @param jobid El ID del trabajo */ public void restartJob( String jobid ) throws InvalidJobIDException, InvalidOperationException, SchedulerException, JCLException, JobSubmissionException, java.rmi.RemoteException; /** * Devuelve el estado de trabajo del ID de trabajo dado. Consulte {@link JobStatusConstants JobStatusConstants} para obtener una * lista de los códigos de estado de trabajos que devuelve este método. * * @param jobid El ID del trabajo * * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * * @return El estado del trabajo */ public int getJobStatus( String jobid ) throws InvalidJobIDException, SchedulerException, java.rmi.RemoteException; /** * Devuelve la salida de trabajo para un ID de trabajo dado que muestra el progreso del trabajo. Esto sólo se aplica a trabajos por lotes. * * @param jobid El ID del trabajo * * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * * @return la salida del trabajo */ public String getJobOutput( String jobid ) throws InvalidJobIDException, SchedulerException, java.rmi.RemoteException; /** * Devuelve los detalles del trabajo del ID de trabajo dado. * * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * * @return los detalles del trabajo, como el ID de trabajo, el texto de estado y el tipo de trabajo */ public String getJobDetails(String jobid) throws InvalidJobIDException,SchedulerException,java.rmi.RemoteException; /** * Guarda el xJCL pasado al repositorio de xJCL. * * @param xJCL El xJCL del trabajo * @param job El nombre dado al trabajo guardado en el repositorio de xJCL. Se puede * utilizar este nombre al invocar el método submitJobFromRepository. * @param replace Un valor booleano que indica si debe sustituirse el xJCL del * utilizar este nombre en caso de que ya exista un trabajo por ese nombre * en el repositorio de xJCL. * * @throws InvalidOperationException si ya existe el trabajo en el repositorio de xJCL y el parámetro replace especificado es false * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws JCLException si el xJCL almacenado en el repositorio está dañado o no es válido. * @throws java.rmi.RemoteException * */ public void saveJobToRepository( String xJCL, String job, boolean replace ) throws InvalidOperationException, SchedulerException, JCLException, java.rmi.RemoteException; /** * Devuelve el xJCL del repositorio de xJCL para el nombre de trabajo determinado. * * @param job El nombre dado al trabajo guardado en el repositorio de xJCL. Se puede * utilizar este nombre al invocar el método submitJobFromRepository. * * @throws InvalidJobNameException si no se encuentra el trabajo en el repositorio de xJCL. * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * * @return El xJCL del trabajo dado */ public String showJobFromRepository( String job ) throws InvalidJobNameException, SchedulerException, java.rmi.RemoteException; /** * Elimina el xJCL del trabajo especificado en el repositorio de xJCL * * @param job El nombre dado al trabajo guardado en el repositorio de xJCL. * * @throws InvalidJobNameException si no se encuentra el trabajo en el repositorio de xJCL. * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * */ public void removeJobFromRepository( String job ) throws InvalidJobNameException, SchedulerException, java.rmi.RemoteException; /** * Muestra todos los trabajos del planificador de trabajos * * @return La lista de ID de trabajos de todos los trabajos del planificador de trabajos * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * */ public String[] showAllJobs() throws SchedulerException, java.rmi.RemoteException; /** * Suspende el trabajo especificado durante el número de segundos especificado. Una vez que ha finalizado el periodo de tiempo, * se reanuda automáticamente el trabajo. Esto sólo se aplica a trabajos por lotes. * * @param jobid El ID del trabajo que se va a suspender * @param seconds El número de segundos para suspender el trabajo * * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al suspender el trabajo * @throws java.rmi.RemoteException * */ public void suspendJob( String jobid, String seconds ) throws InvalidOperationException, InvalidJobIDException, SchedulerException, java.rmi.RemoteException; /** * Reanuda la ejecución del trabajo especificado. Esto sólo se aplica a trabajos por lotes. * * @param jobid El ID del trabajo que se va a reanudar * * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al reanudar el trabajo * @throws java.rmi.RemoteException * */ public void resumeJob( String jobid ) throws InvalidOperationException, InvalidJobIDException, SchedulerException, java.rmi.RemoteException; /** * Devuelve el código de retorno del trabajo por lotes. * * @param jobid El ID del trabajo * @return El código de retorno del trabajo por lotes * * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * */ public int getBatchJobRC(String jobid) throws InvalidOperationException, InvalidJobIDException, SchedulerException, java.rmi.RemoteException; /** * Somete el trabajo, definido por xJCL, al planificador de trabajos a la hora de inicio especificada * * @param xJCL El xJCL del trabajo * @param startTime La hora en que se someterá el trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws java.rmi.RemoteException */ public String submitDelayedJob( String xJCL, String startTime ) throws SchedulerException, JCLException, JobSubmissionException, InvalidStartDateTimeFormatException, StaleTimeException, java.rmi.RemoteException; /** * Somete el trabajo, guardado en el repositorio xJCL, al planificador de trabajos a la hora de inicio especificado. * * @param job El nombre del trabajo que se ha almacenado en el repositorio de trabajos * @param startTime La hora en que se someterá el trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * @throws InvalidJobNameException si no se encuentra el trabajo en el repositorio de xJCL. * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws java.rmi.RemoteException */ public String submitDelayedJobFromRepository( String job, String startTime ) throws InvalidJobNameException, SchedulerException, JCLException, JobSubmissionException, InvalidStartDateTimeFormatException, StaleTimeException, java.rmi.RemoteException; /** * Somete el trabajo retrasado especificado por el xJCL pasado al planificador de trabajos y * guarda el xJCL en el repositorio de xJCL. * * @param xJCL El xJCL del trabajo * @param startTime La hora en que se someterá el trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param job El nombre dado al trabajo guardado en el repositorio de xJCL. Se puede * utilizar este nombre al invocar el método submitJobFromRepository. * @param replace Un valor booleano que indica si debe sustituirse el xJCL del repositorio en caso de que ya exista un trabajo por ese nombre * en el repositorio de trabajos. * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws java.rmi.RemoteException */ public String saveDelayedJobToRepositoryAndSubmit( String xJCL, String job, boolean replace, String startTime ) throws InvalidOperationException, SchedulerException, JCLException, JobSubmissionException, InvalidStartDateTimeFormatException, StaleTimeException, java.rmi.RemoteException; /** * Crea una planificación de trabajos para someter el trabajo, definido por el xJCL, en la hora y el intervalo especificados. * * @param reqId El nombre de la solicitud de trabajo recurrente * @param xJCL El xJCL del trabajo * @param startTime La hora en la que se someterá el primer trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param interval El intervalo de tiempo entre trabajos (por ejemplo, diariamente, semanalmente, mensualmente) * * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws InvalidIntervalException si el intervalo especificado no es uno de los intervalos de tiempo admitidos * @throws java.rmi.RemoteException */ public void submitRecurringRequest( String reqId, String xJCL, String startTime, String interval ) throws InvalidOperationException, SchedulerException, JCLException, InvalidStartDateTimeFormatException, InvalidIntervalException, StaleTimeException, java.rmi.RemoteException; /** * Crea una planificación de trabajo para someter el trabajo especificado, guardado en el repositorio xJCL, en la hora y el intervalo especificados. * * @param jobName El nombre del trabajo que se ha almacenado en el repositorio de trabajos * @param reqId El nombre de la solicitud de trabajo recurrente * @param startTime La hora en que se someterá el trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param interval El intervalo de tiempo entre trabajos (por ejemplo, diariamente, semanalmente, mensualmente) * * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws InvalidIntervalException si el intervalo especificado no es uno de los intervalos de tiempo admitidos * @throws InvalidJobNameException si no se encuentra el trabajo en el repositorio de xJCL. * @throws java.rmi.RemoteException */ public void submitRecurringRequestFromRepository(String jobName, String reqId, String startTime, String interval) throws InvalidOperationException, SchedulerException, JCLException, InvalidStartDateTimeFormatException, InvalidIntervalException, StaleTimeException, InvalidJobNameException, java.rmi.RemoteException; /** * Cancelar una planificación de trabajos existente * * @param reqId El nombre de la planificación de trabajos * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al cancelar el trabajo * @throws java.rmi.RemoteException */ public void cancelRecurringRequest( String reqId ) throws InvalidOperationException, SchedulerException, java.rmi.RemoteException; /** * Devuelve detalles de una planificación de trabajos existente * * @param reqId El nombre de la planificación de trabajos que se va a devolver * @return información sobre la planificación como el nombre de planificación, el nombre de trabajo, la hora de inicio y el intervalo * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String getRecurringRequestDetails(String reqId) throws SchedulerException, InvalidOperationException, java.rmi.RemoteException; /** * * Modificar una planificación de trabajos existente. * * @param reqId Nombre del planificador de trabajos que se va a modificar * @param xJCL El xJCL del trabajo * @param startTime La hora en la que se someterá el primer trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param interval El intervalo de tiempo entre trabajos (por ejemplo, diariamente, semanalmente, mensualmente) * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws InvalidIntervalException si el intervalo especificado no es uno de los intervalos de tiempo admitidos * @throws java.rmi.RemoteException */ public void modifyRecurringRequest(String reqId, String xJCL, String startTime, String interval) throws SchedulerException, JCLException, InvalidOperationException, InvalidStartDateTimeFormatException, StaleTimeException, InvalidIntervalException, java.rmi.RemoteException; /** * Lista todas las planificaciones de trabajos existentes * * @return Una lista de todas las planificaciones de trabajos actualmente en el sistema * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException */ public String[] showAllRecurringRequests() throws SchedulerException, java.rmi.RemoteException; /** * Mostrar todos los trabajos en la planificación de trabajos especificada * * @param reqId El nombre de la planificación de trabajos * @return La lista de ID de trabajos de los trabajos de la planificación de trabajos especificada * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String[] showRecurringJobs(String reqId) throws SchedulerException, InvalidOperationException, java.rmi.RemoteException; /** * Devuelve el estado del trabajo en formato XML para los ID de trabajo dados. * * @param jobid Lista de los ID de trabajo * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * * @return Estado de trabajo como el ID de trabajo, el código de retorno y el texto de estado en formato XML */ public String getJobsStatus(String[] jobid) throws SchedulerException, java.rmi.RemoteException; /** * Devuelve una lista de ID de trabajos que coinciden con los criterios especificados. Deben darse todas las condiciones para que se establezca una coincidencia. * * @param jobFilter El valor de filtro SQL que se va a aplicar al ID de trabajo (por ejemplo, Postings% ) * @param submitterFilter El valor de filtro SQL que se va aplicar al emisor * @param nodeFilter El valor de filtro SQL que se va a aplicar a los nombres de nodos donde se ejecutan los trabajos (por ejemplo, node_ ) * @param appServerFilter El valor de filtro SQL que se va a aplicar a los nombres de los servidores de aplicaciones donde se han ejecutado los trabajos * @param stateFilter Lista de estados de trabajo. Consulte {@link JobStatusConstants JobStatusConstants} para obtener una * lista de estados de trabajo posibles. * @param sortBy Campo utilizado para ordenar resultados (por ejemplo, JOBID, STATUS, APPSERVER) * @param ascending Distintivo que indica si los resultados deben devolverse en orden ascendente o descendente * del campo sortBy. * * @return La lista de ID de trabajos que coinciden con los criterios especificados * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException */ public String[] getJobsId(String jobFilter, String submitterFilter, String nodeFilter, String appServerFilter, Integer[] stateFilter, String sortBy, boolean ascending) throws SchedulerException, java.rmi.RemoteException; /** * Cancela los trabajos identificados por la lista de ID de trabajos * * @throws SchedulerException si el planificador de trabajos genera un error inesperado al cancelar el trabajo * @throws java.rmi.RemoteException * * @param jobid La lista de ID de trabajos que se van a cancelar * @return Lista de códigos de retorno. Consulte {@link JobSchedulerConstants JobSchedulerConstants} para obtener una lista de los códigos de retorno posibles. */ public int[] cancelJob( String[] jobid ) throws SchedulerException, java.rmi.RemoteException; /** * Depura los trabajos, identificados por la lista de ID de trabajos, de los entornos del planificador de trabajos y de puntos finales de trabajos de larga duración * * @throws SchedulerException si el planificador de trabajos genera un error inesperado al depurar el trabajo * @throws java.rmi.RemoteException * * @param jobid La lista de ID de trabajos que se van a depurar * @return Lista de códigos de retorno. Consulte {@link JobSchedulerConstants JobSchedulerConstants} para obtener una lista de los códigos de retorno posibles. */ public int[] purgeJob( String[] jobid ) throws SchedulerException, java.rmi.RemoteException; /** * Reinicia los trabajos identificados por la lista de ID de trabajos. Sólo pueden reiniciarse los trabajos en el estado reiniciable. * * @throws SchedulerException si el planificador de trabajos genera un error inesperado al reiniciar el trabajo * @throws java.rmi.RemoteException * * @param jobid La lista de ID de trabajos que se van a reiniciar * @return Lista de códigos de retorno. Consulte {@link JobSchedulerConstants JobSchedulerConstants} para obtener una lista de los códigos de retorno posibles. */ public int[] restartJob( String[] jobid ) throws SchedulerException, java.rmi.RemoteException; /** * Reanuda la ejecución de los trabajos identificados por la lista de ID de trabajos. Esto sólo se aplica a trabajos por lotes. * * @param jobid La lista de ID de trabajos que se van a reanudar * @return Lista de códigos de retorno. Consulte {@link JobSchedulerConstants JobSchedulerConstants} para obtener una lista de los códigos de retorno posibles. * * @throws SchedulerException si el planificador de trabajos genera un error inesperado al reanudar el trabajo * @throws java.rmi.RemoteException * */ public int[] resumeJob( String[] jobid ) throws SchedulerException, java.rmi.RemoteException; /** * Suspende los trabajos especificados durante el número de segundos especificado. Una * vez que ha finalizado el periodo de tiempo, los trabajos se reanudan automáticamente. Esto sólo se aplica a trabajos por lotes. * * @param jobid El ID del trabajo que se va a suspender * @param seconds El número de segundos para suspender el trabajo * @return Lista de códigos de retorno. Consulte {@link JobSchedulerConstants JobSchedulerConstants} para obtener una lista de los códigos de retorno posibles. * * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al suspender el trabajo * @throws java.rmi.RemoteException * */ public int[] suspendJob( String[] jobid, String seconds ) throws SchedulerException, InvalidOperationException, java.rmi.RemoteException; /** * Somete el trabajo especificado, guardado en el repositorio xJCL y todos los pares nombre/valor especificadas para el planificador de trabajos * a la hora de inicio especificada * * @param job El nombre del trabajo que se ha almacenado en el repositorio de xJCL * @param startTime La hora en que se someterá el trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param nameValuePairs Los pares de nombre=valor delimitados por espacios que se utilizan para modificar el xJCL (por ejemplo, "host=myhost port=myport") * Todos los valores que contienen caracteres especiales o espacios deben estar codificados por URL con el esquema de codificación UTF-8 antes de pasarse en la solicitud. * * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * * @throws InvalidJobNameException si no se encuentra el trabajo en el repositorio de xJCL. * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws java.rmi.RemoteException */ public String submitModifiableDelayedJobFromRepository( String job, String startTime, String nameValuePairs ) throws InvalidJobNameException, SchedulerException, JCLException, JobSubmissionException, InvalidStartDateTimeFormatException, StaleTimeException,java.rmi.RemoteException; /** * Somete el trabajo, definido por xJCL y todos los pares de nombre/valor especificados, al planificador de trabajos * a la hora de inicio especificada * * @param xJCL El xJCL del trabajo * @param startTime La hora en que se someterá el trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param nameValuePairs Los pares de nombre=valor delimitados por espacios que se utilizan para modificar el xJCL (por ejemplo, "host=myhost port=myport") * Todos los valores que contienen caracteres especiales o espacios deben estar codificados por URL con el esquema de codificación UTF-8 antes de pasarse en la solicitud. * * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws java.rmi.RemoteException */ public String submitModifiableDelayedJob( String xJCL, String startTime, String nameValuePairs ) throws SchedulerException, JCLException, JobSubmissionException, InvalidStartDateTimeFormatException, StaleTimeException,java.rmi.RemoteException; /** * Somete el trabajo retrasado, definido por xJCL y los pares de nombre/valor especificados, al planificador de trabajos y * guarda el xJCL en el repositorio de xJCL. * * @param xJCL El xJCL del trabajo * @param startTime La hora en que se someterá el trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param job El nombre dado al trabajo guardado en el repositorio de xJCL. Se puede * utilizar este nombre al invocar el método submitJobFromRepository. * @param replace Un valor booleano que indica si debe sustituirse el xJCL del * utilizar este nombre en caso de que ya exista un trabajo por ese nombre * en el repositorio de trabajos. * @param nameValuePairs Los pares de nombre=valor delimitados por espacios que se utilizan para modificar el xJCL (por ejemplo, "host=myhost port=myport") * Todos los valores que contienen caracteres especiales o espacios deben estar codificados por URL con el esquema de codificación UTF-8 antes de pasarse en la solicitud. * * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws java.rmi.RemoteException */ public String saveModifiableDelayedJobToRepositoryAndSubmit( String xJCL, String job, boolean replace, String startTime, String nameValuePairs ) throws InvalidOperationException, SchedulerException, JCLException, JobSubmissionException, InvalidStartDateTimeFormatException, StaleTimeException,java.rmi.RemoteException; /** * Crea una planificación de trabajos para someter el trabajo en el intervalo de tiempo especificado. Los trabajos se definen por el xJCL y todos los pares de nombre/valor especificados. * * @param reqId El nombre de la planificación de trabajos * @param xJCL El xJCL del trabajo * @param startTime La hora en que se someterá el trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param interval El intervalo de tiempo entre trabajos (por ejemplo, diariamente, semanalmente, mensualmente) * @param nameValuePairs Los pares de nombre=valor delimitados por espacios que se utilizan para modificar el xJCL (por ejemplo, "host=myhost port=myport") * Todos los valores que contienen caracteres especiales o espacios deben estar codificados por URL con el esquema de codificación UTF-8 antes de pasarse en la solicitud. * * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws InvalidIntervalException si el intervalo especificado no es uno de los intervalos de tiempo admitidos * @throws java.rmi.RemoteException */ public void submitModifiableRecurringRequest( String reqId, String xJCL, String startTime, String interval, String nameValuePairs ) throws InvalidOperationException, SchedulerException, JCLException, InvalidStartDateTimeFormatException, InvalidIntervalException, StaleTimeException, java.rmi.RemoteException; /** * Crea una planificación de trabajos para someter el trabajo en el intervalo de tiempo especificado. Los trabajos se definen por el xJCL almacenado en el repositorio de xJCL * y todos los pares de nombre/valor especificados. * * @param jobName El nombre del trabajo que se ha almacenado en el repositorio de trabajos * @param reqId El nombre de la solicitud de trabajo recurrente * @param startTime La hora en que se someterá el trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param interval El intervalo de tiempo entre trabajos (por ejemplo, diariamente, semanalmente, mensualmente) * @param nameValuePairs Los pares de nombre=valor delimitados por espacios que se utilizan para modificar el xJCL (por ejemplo, "host=myhost port=myport") * Todos los valores que contienen caracteres especiales o espacios deben estar codificados por URL con el esquema de codificación UTF-8 antes de pasarse en la solicitud. * * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws InvalidIntervalException si el intervalo especificado no es uno de los intervalos de tiempo admitidos * @throws InvalidJobNameException si no se encuentra el trabajo en el repositorio de xJCL. * @throws java.rmi.RemoteException */ public void submitModifiableRecurringRequestFromRepository(String jobName, String reqId, String startTime, String interval, String nameValuePairs ) throws InvalidOperationException, SchedulerException, JCLException, InvalidStartDateTimeFormatException, InvalidIntervalException, StaleTimeException, InvalidJobNameException, java.rmi.RemoteException; /** * Somete el trabajo, definido por xJCL y los pares de nombre/valor especificados, al planificador de trabajos y * guarda el xJCL en el repositorio de xJCL. * * @param xJCL El xJCL del trabajo * @param job El nombre dado al trabajo guardado en el repositorio de xJCL. Se puede * utilizar este nombre al invocar el método submitJobFromRepository. * @param replace Un valor booleano que indica si debe sustituirse el xJCL del * utilizar este nombre en caso de que ya exista un trabajo por ese nombre * en el repositorio de xJCL. * @param nameValuePairs Los pares de nombre=valor delimitados por espacios que se utilizan para modificar el xJCL (por ejemplo, "host=myhost port=myport") * Todos los valores que contienen caracteres especiales o espacios deben estar codificados por URL con el esquema de codificación UTF-8 antes de pasarse en la solicitud. * * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * * @throws InvalidOperationException si ya existe el trabajo en el repositorio de xJCL y el parámetro replace especificado es false * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL almacenado en el repositorio está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws java.rmi.RemoteException * */ public String saveModifiableJobToRepositoryAndSubmit( String xJCL, String job, boolean replace, String nameValuePairs ) throws InvalidOperationException, SchedulerException, JCLException, JobSubmissionException, java.rmi.RemoteException; /** * Somete el trabajo especificado, guardado en el repositorio de xJCL, y todos los pares de nombre/valor especificados para el planificador de trabajos * * @param job El nombre del trabajo que se ha almacenado en el repositorio de xJCL * @param nameValuePairs Los pares de nombre=valor delimitados por espacios que se utilizan para modificar el xJCL (por ejemplo, "host=myhost port=myport") * Todos los valores que contienen caracteres especiales o espacios deben estar codificados por URL con el esquema de codificación UTF-8 antes de pasarse en la solicitud. * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * * @throws InvalidJobNameException si no se encuentra el trabajo en el repositorio de xJCL. * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL almacenado en el repositorio está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws java.rmi.RemoteException */ public String submitModifiableJobFromRepository( String job, String nameValuePairs ) throws InvalidJobNameException, SchedulerException, JCLException, JobSubmissionException, java.rmi.RemoteException; /** * Somete el trabajo, definido por xJCL y los pares de nombre/valor especificados, al planificador de trabajos * * @param xJCL El xJCL del trabajo * @param nameValuePairs Los pares de nombre=valor delimitados por espacios que se utilizan para modificar el xJCL (por ejemplo, "host=myhost port=myport") * Todos los valores que contienen caracteres especiales o espacios deben estar codificados por URL con el esquema de codificación UTF-8 antes de pasarse en la solicitud. * @return El ID de trabajo asignado por el Planificador de trabajos al trabajo sometido * * @throws SchedulerException si el planificador de trabajos genera un error inesperado al someter el trabajo * @throws JCLException si el xJCL almacenado en el repositorio está dañado o no es válido. * @throws JobSubmissionException si se produce un error cuando se somete el trabajo * @throws java.rmi.RemoteException * */ public String submitModifiableJob( String xJCL, String nameValuePairs ) throws SchedulerException, JCLException, JobSubmissionException, java.rmi.RemoteException; /** * Modificar una planificación de trabajos existente. * * @param reqId Nombre del planificador de trabajos que se va a modificar * @param xJCL El xJCL del trabajo * @param startTime La hora en la que se someterá el primer trabajo. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param interval El intervalo de tiempo entre trabajos (por ejemplo, diariamente, semanalmente, mensualmente) * @param nameValuePairs Los pares de nombre=valor delimitados por espacios que se utilizan para modificar el xJCL (por ejemplo, "host=myhost port=myport") * Todos los valores que contienen caracteres especiales o espacios deben estar codificados por URL con el esquema de codificación UTF-8 antes de pasarse en la solicitud. * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws JCLException si el xJCL del trabajo está dañado o no es válido. * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws InvalidStartDateTimeFormatException si la fecha y/u hora de inicio no están en el formato necesario * @throws StaleTimeException si la fecha y/u hora del pasado se basaba en la hora actual * @throws InvalidIntervalException si el intervalo especificado no es uno de los intervalos de tiempo admitidos * @throws java.rmi.RemoteException */ public void modifyModifiableRecurringRequest(String reqId, String xJCL, String startTime, String interval, String nameValuePairs) throws SchedulerException, JCLException, InvalidOperationException, InvalidStartDateTimeFormatException, StaleTimeException, InvalidIntervalException, java.rmi.RemoteException; /** * Devuelve una lista de los nombres de trabajo del repositorio de trabajo que coinciden con los criterios especificado. Deben darse todas las condiciones para que se establezca una coincidencia. * * @param jobNameFilter El valor de filtro SQL que se va a aplicar a los nombres de trabajo (por ejemplo, Postings% ) * @param jobDescFilter no se utiliza * @param sortBy Campo utilizado para ordenar resultados (por ejemplo, JOBNAME, TXT) * @param ascending Distintivo que indica si los resultados deben devolverse en orden ascendente o descendente * del campo sortBy. * * @return La lista de nombres de trabajo que coinciden con los criterios especificados * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar la solicitud * @throws java.rmi.RemoteException */ public String[] getJobsName(String jobNameFilter, String jobDescFilter, String sortBy, boolean ascending) throws SchedulerException, java.rmi.RemoteException; /** * Detiene el trabajo identificado por el ID de trabajo * * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws InvalidJobIDException si no existe ningún trabajo por el ID de trabajo especificado en el Planificador de trabajos * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar la solicitud * @throws java.rmi.RemoteException * * @param jobid El ID del trabajo */ public void stopJob( String jobid ) throws InvalidOperationException, InvalidJobIDException, SchedulerException, java.rmi.RemoteException; /** * Detiene los trabajos identificados por la lista de ID de trabajos * * @throws SchedulerException si el planificador de trabajos genera un error inesperado al depurar el trabajo * @throws java.rmi.RemoteException * * @param jobid La lista de ID de trabajos que se van a detener * @return Lista de códigos de retorno. Consulte {@link JobSchedulerConstants JobSchedulerConstants} para obtener una lista de los códigos de retorno posibles. */ public int[] stopJob( String[] jobid ) throws SchedulerException, java.rmi.RemoteException; /** * Analiza el xJCL para crear una correlación de todas las variables simbólicas utilizadas en el xJCL y que no son propiedades del sistema * @param xJCL El xJCL del trabajo * @return una correlación de pares de nombre/valor predeterminado; value==null ==> ningún valor predeterminado en substitution-props * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws JCLException si el xJCL almacenado en el repositorio está dañado o no es válido. * @throws java.rmi.RemoteException * */ public String getSymbolicVariables( String clientXJCL ) throws SchedulerException, JCLException, java.rmi.RemoteException; /** * Devuelve la información de planificación de trabajo en formato XML para los nombres de planificaciones de trabajos dados. * * @param requestid Lista de los nombres de planificaciones de trabajos * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * * @return Información sobre la planificación en formato XML, como un nombre de planificación de trabajo, nombre de trabajo, hora de inicio e intervalo */ public String getRequests(String[] requestid) throws SchedulerException, java.rmi.RemoteException; /** * Devuelve una lista de nombres de planificaciones de trabajos que coinciden con los criterios especificados. Deben darse todas las condiciones para que se establezca una coincidencia. * * @param requestIdFilter El valor de filtro SQL que se va a aplicar al nombre del planificador de trabajo (por ejemplo, %Postings% ) * @param startTimeFilter El valor de filtro SQL que se va a aplicar a la hora de sometimiento inicial de los trabajos. El formato de la hora de sometimiento es aaaa-mm-dd hh:mm:ss. * @param submitterFilter El valor de filtro SQL que se va aplicar al emisor * @param intervalFilter La lista de periodos de tiempo entre sometimientos de trabajos (por ejemplo, diariamente, semanalmente, mensualmente) * @param statusFilter Lista de estados de trabajo. Consulte {@link JobStatusConstants JobStatusConstants} para obtener una * lista de estados de trabajo posibles. * @param sortBy Campo utilizado para ordenar resultados (por ejemplo, REQUESTID, STARTTIME, INTERVAL) * @param ascending Distintivo que indica si los resultados deben devolverse en orden ascendente o descendente * del campo sortBy. * * @return la lista de nombres de planificaciones de trabajo que coinciden con los criterios especificados * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException */ public String[] getRequestsId(String requestIdFilter, String startTimeFilter, String submitterFilter, String[] intervalFilter, Integer[] statusFilter, String sortBy, boolean ascending) throws SchedulerException, java.rmi.RemoteException; /** * Cancelar planificaciones de trabajos existentes * * @param reqId La lista de los nombres de planificaciones de trabajos que se van a cancelar * @return Lista de códigos de retorno. Consulte {@link JobSchedulerConstants JobSchedulerConstants} para obtener una lista de los códigos de retorno posibles. * * @throws SchedulerException si el planificador de trabajos genera un error inesperado al cancelar el trabajo * @throws java.rmi.RemoteException */ public int[] cancelRecurringRequest( String[] reqId ) throws SchedulerException, java.rmi.RemoteException; /** * Devuelve las anotaciones de trabajo comprimidas asociadas al ID de trabajo solicitado * * @param jobid: el ID del trabajo cuyo nombre de archivo de anotaciones se va a devolver * @return el nombre del sistema de archivos de las anotaciones de trabajo del trabajo especificado * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidJobIDException si el planificador de trabajos no encuentra anotaciones de trabajo para el ID de trabajo especificado * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String getJobLog( String jobid ) throws SchedulerException, InvalidJobIDException, InvalidOperationException, java.rmi.RemoteException; /** * Devuelve los metadatos de anotaciones de trabajo asociados al ID de trabajo solicitado (lista de subdirectorios de anotaciones de trabajo distintos para el ID de trabajo) * * @param jobid El ID del trabajo cuyos metadatos se van a devolver * @return los metadatos de anotaciones de trabajo para el trabajo especificado * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidJobIDException si el Planificador de trabajos no encuentra metadatos de anotaciones de trabajo para el ID de trabajo especificado * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String[] getLogMetaData( String jobid ) throws SchedulerException, InvalidJobIDException, InvalidOperationException, java.rmi.RemoteException; /** * Devuelve la lista de componentes de anotaciones de trabajo asociados al ID de trabajo y subdirectorio de anotaciones solicitados * * @param jobid El ID del trabajo cuya información de componente se va a devolver * @param logSubDirName El nombre del subdirectorio de anotaciones del trabajo cuya información de componente se va a devolver * @return la información de componente de anotaciones de trabajo para el trabajo especificado * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidJobIDException si el Planificador de trabajos no encuentra información de componentes para el ID de trabajo especificado * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String[] getLogPartList( String jobid, String logSubDirName ) throws SchedulerException, InvalidJobIDException, InvalidOperationException, java.rmi.RemoteException; /** * Devuelve el contenido del archivo de anotaciones de trabajo asociado al ID de trabajo, subdirectorio de anotaciones y número de piezas solicitados * * @param jobid El ID del trabajo cuya información de componente se va a devolver * @param logSubDirName El nombre del subdirectorio de anotaciones del trabajo cuya información de componente se va a devolver * @param partNumber El nombre del bloque de anotaciones de trabajo del subdirectorio de anotaciones cuya información de componente se va a devolver * * @return el contenido del componente de anotaciones de trabajo para el subdirectorio de trabajos y anotaciones especificado * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidJobIDException si el Planificador de trabajos no encuentra información de componentes para el ID de trabajo especificado * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String[] getLogPart( String jobid, String logSubDirName, String partNumber ) throws SchedulerException, InvalidJobIDException, InvalidOperationException, java.rmi.RemoteException; /** * Devuelve el tamaño en bytes del archivo de anotaciones de trabajo asociado al ID de trabajo solicitado * * @param jobid El ID del trabajo cuya información de tamaño se va a devolver * @param logSubDirName El nombre del subdirectorio de anotaciones del trabajo cuya información de tamaño se va a devolver * @return el tamaño de las anotaciones de trabajo para el trabajo especificado * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidJobIDException si el Planificador de trabajos no encuentra información de tamaño para el ID de trabajo especificado * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String getLogSize( String jobid, String logSubDirName ) throws SchedulerException, InvalidJobIDException, InvalidOperationException, java.rmi.RemoteException; /** * Devuelve la antigüedad del archivo de anotaciones de trabajo asociado con el ID de trabajo solicitado y el subdirectorio de anotaciones * * @param jobid El ID del trabajo cuya información de antigüedad se va a devolver * @param logSubDirName El nombre del subdirectorio de anotaciones del trabajo cuya información de antigüedad se va a devolver * * @return la antigüedad de las anotaciones de trabajo en días para el jobname y subdirectorio de anotaciones de trabajo especificados * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidJobIDException si el Planificador de trabajos no encuentra información de antigüedad para el ID de trabajo especificado * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public int getLogAge( String jobid, String logSubDirName ) throws SchedulerException, InvalidJobIDException, InvalidOperationException, java.rmi.RemoteException; /** * Devuelve la lista de anotaciones de trabajo asociadas a la clase de trabajo solicitada * * @param jobid El identificador de clase cuya información de lista de trabajos se va a devolver * @param jobClass El identificador de clase por el se va que comparar * @return una lista de todos los ID de trabajo cuyo identificador de clase coincide con la jobClass especificada * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String[] getJobsByClass( String jobClass ) throws SchedulerException, InvalidOperationException, java.rmi.RemoteException; /** * Elimina las anotaciones de trabajo comprimidas asociadas al ID de trabajo solicitado [esta es la acción complementaria necesaria para {@link JobScheduler#getJobLog(String) getJobLog(jobid) ] * * @param jobid: el ID del trabajo cuyo archivo de anotaciones comprimido se va a devolver * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidJobIDException si el Planificador de trabajos no encuentra información de componentes para el ID de trabajo especificado * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public void removeJobLog( String jobid ) throws SchedulerException, InvalidJobIDException, InvalidOperationException, java.rmi.RemoteException; /** * Depura el archivo de anotaciones de trabajo asociado al ID de trabajo solicitado y al subdirectorio de anotaciones * * @param jobid: el ID del trabajo cuyas anotaciones de trabajos se va a depurar * @param logSubDirName: el nombre del subdirectorio de anotaciones del trabajo cuyas anotaciones de trabajo se van a depurar * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidJobIDException si el Planificador de trabajos no encuentra información de trabajo para el ID de trabajo especificado * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public void purgeJobLog( String jobid, String logSubDirName ) throws SchedulerException, InvalidJobIDException, InvalidOperationException, java.rmi.RemoteException; /** * Devuelve las direcciones JMX del clúster del Planificador * * @return las direcciones JMX del clúster del Planificador * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String[] getAdminAddresses() throws SchedulerException, InvalidOperationException, java.rmi.RemoteException; /** * Recupera una lista de preferencias de usuario para el ID de usuario dado y el ámbito dado. * @param userId El ID de usuario utilizado para iniciar la sesión en la consola de gestión de trabajos * @param prefScope El ámbito de las preferencias dentro de la consola de gestión de trabajos. (por ejemplo, JobCollectionForm, SavedJobCollectionForm, * JobScheduleCollectionForm) * @return una lista de preferencias de usuario en el formato nombre=valor * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * */ public String[] getUserPrefs( String userId, String prefScope ) throws SchedulerException, java.rmi.RemoteException; /** * Guarda una lista de preferencias de usuario para el ID de usuario dado y el ámbito dado. * @param userId El ID de usuario utilizado para iniciar la sesión en la consola de gestión de trabajos * @param prefScope El ámbito de las preferencias dentro de la consola de gestión de trabajos. (por ejemplo, JobCollectionForm, SavedJobCollectionForm, * JobScheduleCollectionForm) * @param prefNameValue La lista de preferencias de usuario en el formato nombre=valor * * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws java.rmi.RemoteException * */ public void saveUserPrefs( String userId, String prefScope, String[] prefNameValue) throws SchedulerException, java.rmi.RemoteException; /** * Devuelve la lista de anotaciones de trabajo asociadas a la clase de trabajo solicitada ordenada por antigüedad de anotaciones de trabajo * * @param jobClass El identificador de clase por el se va que comparar * @return una lista de todos los ID de trabajo cuyo identificador de clase coincide con jobClass * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String[] getJobLogMetaDataByAgeForClass( String jobClass ) throws SchedulerException, InvalidOperationException, java.rmi.RemoteException; /** * Devuelve la lista de anotaciones de trabajo asociadas a la clase de trabajo solicitada ordenada por tamaño de anotaciones de trabajo * * @param jobClass El identificador de clase por el se va que comparar * @return una lista de todos los ID de trabajo cuyo identificador de clase coincide con jobClass * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public String[] getJobLogMetaDataBySizeForClass( String jobClass ) throws SchedulerException, InvalidOperationException, java.rmi.RemoteException; /** * Detiene las anotaciones de trabajo de usuario * * @param jobid: el ID del trabajo cuyas anotaciones de trabajo de aplicación se van a detener * @throws SchedulerException si se genera un error inesperado mediante el Planificador de trabajos al procesar el mandato * @throws InvalidJobIDException si el Planificador de trabajos no encuentra el ID de trabajo especificado * @throws InvalidOperationException si la operación no se permite actualmente en el trabajo * @throws java.rmi.RemoteException */ public void quiesceLogging( String jobid ) throws SchedulerException, InvalidJobIDException, InvalidOperationException, java.rmi.RemoteException; /** * * * @param jobid El ID del trabajo * @param Status El estado del trabajo * * @throws java.rmi.RemoteException */ public void sendCheckpointNotification( String jobid, String Status ) throws java.rmi.RemoteException; /** * Devuelve true si está habilitada la autorización SAF. * Sólo se da soporte en z/OS. * * @return true si está habilitada la autorización SAF; de lo contrario, devolverá false. * @throws java.rmi.RemoteException */ public boolean isSAF() throws java.rmi.RemoteException; }