153 lines
4.5 KiB
Java
153 lines
4.5 KiB
Java
package client;
|
|
|
|
import java.util.Map;
|
|
|
|
import javax.jms.JMSException;
|
|
|
|
import obj.TipoFlusso;
|
|
|
|
import proxy.jms.MessageHandler;
|
|
import xml.*;
|
|
import base.ProtectionManager;
|
|
|
|
public class ClientIBAsincSender {
|
|
|
|
|
|
private XMLGeneratorIF generator;
|
|
private String[] tracciati;
|
|
|
|
|
|
public ClientIBAsincSender(XMLGeneratorIF generator) {
|
|
this.generator = generator;
|
|
}
|
|
|
|
/**
|
|
* @param args
|
|
*
|
|
* ATTIVAZIONE
|
|
* args[0] tipo flusso: ATTIVAZIONE
|
|
* args[1] Numero richieste
|
|
* args[2] Pre post pagato: PRP,POP,MISTO
|
|
* args[3] DONATING: WIND,OPIV,H3GI,MISTO, TIMG (per RV)
|
|
* args[4] accodata: ACCODATA, NO_ACCODATA
|
|
* args[5] prefisso: NULL, prefisso
|
|
* args[6] telefono: NULL, telefono
|
|
* args[7] iccid: NULL, iccid
|
|
*
|
|
* VALIDAZIONE
|
|
* args[0] tipo flusso: VALIDAZIONE
|
|
* args[1] esito: ACCETTATA, RIFIUTATA
|
|
* args[2] causale: 1,...,13,NULL
|
|
* args[3] tipo processo: D (donor standard), V (donor virtuale)
|
|
* args[4] id richiesta: NULL, id richiesta
|
|
* @throws Exception
|
|
*
|
|
* RISPOSTA DI CESSAZIONE/ATTIVAZIONE
|
|
* (da usare se fallisce la risposta automatica mediante
|
|
* IBConnector)
|
|
* args[0] tipo flusso: RISP_CESSAZIONE || RISP_ATTIVAZIONE
|
|
* args[1] esito: 001||002||003
|
|
* args[2] tipo processo: D (donor) se [tipo flusso]=RISP_CESSAZIONE,
|
|
* R(recipient) o W (recipient virtuale) se [tipo flusso]=RISP_ATTIVAZIONE
|
|
* C cessazione
|
|
* P Proting terze Parte
|
|
*
|
|
*
|
|
* NOTIFICA DI CESSAZIONE / ATTIVAZIONE
|
|
* args[0] tipo flusso: NOT_CESSAZIONE || NOT_ATTIVAZIONE
|
|
* args[1] esito: 081 (Cessazione Rec Virtuale) se args[0] NOT_CESSAZIONE,
|
|
* 082 (Cessazione Donor Virtuale) se args[0] NOT_CESSAZIONE,
|
|
* 083 (Attivazione Donor Virtuale) se args[0] NOT_ATTIVAZIONE
|
|
* args[2] id richiesta: non obbligatoria, se non presente sono
|
|
* considerate tutte le richieste possibili
|
|
*
|
|
*
|
|
* UPDATE DCO MVNO DONOR Prjhoc
|
|
* args[0] tipo flusso: UPDATEDCO
|
|
* args[1] nuova DCO (AAAAMMGG)
|
|
*/
|
|
public static void main(String args[]) throws Exception {
|
|
ProtectionManager.check();
|
|
ClientIBAsincSender sender=null;
|
|
if (args.length == 0){
|
|
throw new IllegalArgumentException("Numero parametri errati!");
|
|
}
|
|
else if (args[0].equals(TipoFlusso.ATTIVAZIONE)) {
|
|
sender = new ClientIBAsincSender(new XMLMvnoPortingInGenerator());
|
|
}
|
|
else if (args[0].equals(TipoFlusso.VALIDAZIONE)) {
|
|
sender = new ClientIBAsincSender(new XMLMvnoValGenerator());
|
|
}
|
|
else if (args[0].equals(TipoFlusso.RISP_CESSAZIONE) || args[0].equals(TipoFlusso.RISP_ATTIVAZIONE)) {
|
|
sender = new ClientIBAsincSender(new XMLGispResponseGenerator());
|
|
}
|
|
else if (args[0].equals(TipoFlusso.NOT_CESSAZIONE) || args[0].equals(TipoFlusso.NOT_ATTIVAZIONE)) {
|
|
sender = new ClientIBAsincSender(new XMLGispNotificationGenerator());
|
|
}
|
|
else if (args[0].equals(TipoFlusso.NOTIFICA_MVNO_TC)) {
|
|
sender = new ClientIBAsincSender(new XMLMvnoNotificaTcGenerator());
|
|
}
|
|
else if (args[0].equals(TipoFlusso.NOTIFICA_MSP_TC)) {
|
|
sender = new ClientIBAsincSender(new XMLNotificaMspTcGenerator());
|
|
}
|
|
else if (args[0].equals(TipoFlusso.NOTIFICA_MSPCOOP_TC)) {
|
|
sender = new ClientIBAsincSender(new XMLNotificaMspCoopTcGenerator());
|
|
}
|
|
else if (args[0].equals(TipoFlusso.UPDATEDCO_MVNO)) {
|
|
sender = new ClientIBAsincSender(new XMLMvnoUpdateDCOGenerator());
|
|
}
|
|
else
|
|
throw new IllegalArgumentException("Tipo Flusso errato: " + args[0]);
|
|
sender.setTracciati(sender.getGenerator().generateXml(args));
|
|
String tipoFlusso = args[0];
|
|
sender.sendXML(tipoFlusso);
|
|
|
|
}
|
|
|
|
|
|
private void sendXML(String tipoFlusso) throws Exception {
|
|
|
|
Map params = MessageHandler.getParams(tipoFlusso);
|
|
|
|
if (tracciati.length==0) {
|
|
System.out.println("Nessun flusso di " +tipoFlusso+ " da inviare");
|
|
return;
|
|
}
|
|
for (int i = 0; i < tracciati.length; i++) {
|
|
System.out.println(tracciati[i]);
|
|
try {
|
|
MessageHandler.getInstance().sendMessage(tracciati[i],
|
|
(String) params.get(MessageHandler.QUEUE_NAME),
|
|
(String) params.get(MessageHandler.ID_SYSTEM),
|
|
(String) params.get(MessageHandler.ID_SERVICE));
|
|
this.getGenerator().postGenerate();
|
|
} catch (JMSException je) {
|
|
je.printStackTrace();
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @return the generator
|
|
*/
|
|
public XMLGeneratorIF getGenerator() {
|
|
return generator;
|
|
}
|
|
|
|
/**
|
|
* @return the tracciati
|
|
*/
|
|
public String[] getTracciati() {
|
|
return tracciati;
|
|
}
|
|
|
|
/**
|
|
* @param tracciati the tracciati to set
|
|
*/
|
|
public void setTracciati(String[] tracciati) {
|
|
this.tracciati = tracciati;
|
|
}
|
|
}
|