es.mcu.yingo.utils.procesador
Class ProcesadorStreamFicheroWs

java.lang.Object
  extended by es.mcu.yingo.utils.procesador.ProcesadorStreamFicheroWs
All Implemented Interfaces:
ProcesadorStream

public class ProcesadorStreamFicheroWs
extends java.lang.Object
implements ProcesadorStream

Procesador que procesa un Stream de fichero y lo envía vía Ws.
Se llamará al ejecutar tarea de la aplicación y el id de tarea que se definan como atributos de esta clase.
La llamada al Ws lo hará con el map de parámetros fijos 'parametrosFijos' y se añadirá también como dato la cadena del fichero codificada en base64 en la clave 'cadenaCampoFicheroEntrada'. Se recogerá el resultado en el map de resultado con la clave 'cadenaCampoFicheroSalida'.

Author:
miguel.esteban

Field Summary
private  java.lang.String cadenaCampoFicheroEntrada
          Cadena con la clave que guardará el fichero en base 64 en el map de datos
private  java.lang.String cadenaCampoFicheroSalida
          Cadena con el que se recogera el fichero procesado en base 64 en el map de resultado
private  WebServices clienteWs
          Cliente Ws
private  java.lang.String idAplicacionWs
          Id de aplicación de la llamada al Servicio Web
private  java.lang.String idTareaWs
          Id de tarea de la llamada al Servicio Web
private  java.util.List<java.lang.String> listaRolesUsuario
          Lista de roles de usuario.
protected  org.apache.commons.logging.Log logger
           
private  java.util.Map<java.lang.String,java.lang.String> parametrosFijos
          Parámetros fijos en la llamada al Servicio Web
 
Constructor Summary
ProcesadorStreamFicheroWs()
           
 
Method Summary
 java.io.InputStream _procesar(java.io.InputStream miInputStream, java.lang.String codExpediente, Usuario usuario)
          Método privado que recoge todas las excepciones.
 java.lang.String getCadenaCampoFicheroEntrada()
           
 java.lang.String getCadenaCampoFicheroSalida()
           
 WebServices getClienteWs()
           
 java.lang.String getIdAplicacionWs()
           
 java.lang.String getIdTareaWs()
           
 java.util.List<java.lang.String> getListaRolesUsuario()
           
 java.util.Map<java.lang.String,java.lang.String> getParametrosFijos()
           
private  java.lang.String obtenerCadenaFicheroSalida(Usuario usuario, java.util.Map<java.lang.String,java.lang.String> datos)
          Obtiene la cadena en base 64 del fichero de salida
private  Usuario obtenerUsuario(Usuario usuario)
          Obtiene el usuario.
 java.io.InputStream procesar(java.io.InputStream miInputStream, java.lang.String codExpediente, Usuario usuario)
          Método que procesa el InputStream devolviendo otro objeto InputStream modificado
 void setCadenaCampoFicheroEntrada(java.lang.String cadenaCampoFicheroEntrada)
           
 void setCadenaCampoFicheroSalida(java.lang.String cadenaCampoFicheroSalida)
           
 void setClienteWs(WebServices clienteWs)
           
 void setIdAplicacionWs(java.lang.String idAplicacionWs)
           
 void setIdTareaWs(java.lang.String idTareaWs)
           
 void setListaRolesUsuario(java.util.List<java.lang.String> listaRolesUsuario)
           
 void setParametrosFijos(java.util.Map<java.lang.String,java.lang.String> parametrosFijos)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected final org.apache.commons.logging.Log logger

clienteWs

private WebServices clienteWs
Cliente Ws


parametrosFijos

private java.util.Map<java.lang.String,java.lang.String> parametrosFijos
Parámetros fijos en la llamada al Servicio Web


cadenaCampoFicheroEntrada

private java.lang.String cadenaCampoFicheroEntrada
Cadena con la clave que guardará el fichero en base 64 en el map de datos


cadenaCampoFicheroSalida

private java.lang.String cadenaCampoFicheroSalida
Cadena con el que se recogera el fichero procesado en base 64 en el map de resultado


idAplicacionWs

private java.lang.String idAplicacionWs
Id de aplicación de la llamada al Servicio Web


idTareaWs

private java.lang.String idTareaWs
Id de tarea de la llamada al Servicio Web


listaRolesUsuario

private java.util.List<java.lang.String> listaRolesUsuario
Lista de roles de usuario.
Si están definidos en la llamada al servicio Web se creará una instancia con el mismo id de usuario y esta lista de roles.
Si no están definidos se ejecutará la tarea con el mismo usuario que se pasa por argumento.

Constructor Detail

ProcesadorStreamFicheroWs

public ProcesadorStreamFicheroWs()
Method Detail

procesar

public java.io.InputStream procesar(java.io.InputStream miInputStream,
                                    java.lang.String codExpediente,
                                    Usuario usuario)
                             throws YingoException
Description copied from interface: ProcesadorStream
Método que procesa el InputStream devolviendo otro objeto InputStream modificado

Specified by:
procesar in interface ProcesadorStream
Returns:
Throws:
YingoException

_procesar

public java.io.InputStream _procesar(java.io.InputStream miInputStream,
                                     java.lang.String codExpediente,
                                     Usuario usuario)
                              throws java.lang.Exception
Método privado que recoge todas las excepciones. Se obtiene la representación en Base64 del inputStream y se realiza la llamada al Servicio Web
Los datos se obtienen de los parámetros fijos, la cadena en base64 se coloca en el map con la clave 'cadenaCampoFicheroEntrada' y se obtiene el fichero procesado en 'cadenaCampoFicheroSalida'

Parameters:
miInputStream -
codExpediente -
usuario -
Returns:
Throws:
java.lang.Exception

obtenerCadenaFicheroSalida

private java.lang.String obtenerCadenaFicheroSalida(Usuario usuario,
                                                    java.util.Map<java.lang.String,java.lang.String> datos)
                                             throws java.lang.Exception
Obtiene la cadena en base 64 del fichero de salida

Parameters:
usuario -
datos -
Returns:
Throws:
java.lang.Exception

obtenerUsuario

private Usuario obtenerUsuario(Usuario usuario)
Obtiene el usuario. Si la lista de roles de usuario no está definida a nivel de clase se devolverá el usuario que se pasa por parámetro.
Si la lista de roles está definida. Se creará una instancia de 'UsuarioPasswordImpl' con el mismo id de usuario que el que se pasa por parámetro y la lista de roles definida a nivel de clase

Parameters:
usuario -
Returns:

getParametrosFijos

public java.util.Map<java.lang.String,java.lang.String> getParametrosFijos()
Returns:
the parametrosFijos

setParametrosFijos

public void setParametrosFijos(java.util.Map<java.lang.String,java.lang.String> parametrosFijos)
Parameters:
parametrosFijos - the parametrosFijos to set

getClienteWs

public WebServices getClienteWs()
Returns:
the clienteWs

setClienteWs

public void setClienteWs(WebServices clienteWs)
Parameters:
clienteWs - the clienteWs to set

getCadenaCampoFicheroEntrada

public java.lang.String getCadenaCampoFicheroEntrada()
Returns:
the cadenaCampoFicheroEntrada

setCadenaCampoFicheroEntrada

public void setCadenaCampoFicheroEntrada(java.lang.String cadenaCampoFicheroEntrada)
Parameters:
cadenaCampoFicheroEntrada - the cadenaCampoFicheroEntrada to set

getIdAplicacionWs

public java.lang.String getIdAplicacionWs()
Returns:
the idAplicacionWs

setIdAplicacionWs

public void setIdAplicacionWs(java.lang.String idAplicacionWs)
Parameters:
idAplicacionWs - the idAplicacionWs to set

getIdTareaWs

public java.lang.String getIdTareaWs()
Returns:
the idTareaWs

setIdTareaWs

public void setIdTareaWs(java.lang.String idTareaWs)
Parameters:
idTareaWs - the idTareaWs to set

getListaRolesUsuario

public java.util.List<java.lang.String> getListaRolesUsuario()
Returns:
the listaRolesUsuario

setListaRolesUsuario

public void setListaRolesUsuario(java.util.List<java.lang.String> listaRolesUsuario)
Parameters:
listaRolesUsuario - the listaRolesUsuario to set

getCadenaCampoFicheroSalida

public java.lang.String getCadenaCampoFicheroSalida()
Returns:
the cadenaCampoFicheroSalida

setCadenaCampoFicheroSalida

public void setCadenaCampoFicheroSalida(java.lang.String cadenaCampoFicheroSalida)
Parameters:
cadenaCampoFicheroSalida - the cadenaCampoFicheroSalida to set