First Commit - Source Code from Reply
This commit is contained in:
118
dbcmnpsrc/FE/mnpdev/sim/sistemi/src/client/ClientDBSSTFC.java
Normal file
118
dbcmnpsrc/FE/mnpdev/sim/sistemi/src/client/ClientDBSSTFC.java
Normal file
@@ -0,0 +1,118 @@
|
||||
package client;
|
||||
|
||||
import conf.SimConfFile;
|
||||
import dbcmnp.soa.mobilenumberportabilitymgmt.x20150511.PortOutCreditRequest;
|
||||
import dbcmnp.soa.mobilenumberportabilitymgmt.x20150511.TipoEventoTYPE;
|
||||
|
||||
import it.telecomitalia.soa.soap.soapheader.HeaderType;
|
||||
import it.telecomitalia.soa.soap.soapheader.InteractionDateType;
|
||||
import it.valueteam.mnp.ws.dbss.client.MobileNumberPortabilityMgmt10;
|
||||
import it.valueteam.mnp.ws.dbss.client.MobileNumberPortabilityMgmt10_Impl;
|
||||
import it.valueteam.mnp.ws.dbss.client.MobileNumberPortabilityMgmtPortType;
|
||||
import mnp.utility.UUIDHelper;
|
||||
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
import javax.xml.rpc.Stub;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.Properties;
|
||||
|
||||
public class ClientDBSSTFC {
|
||||
|
||||
private static final int NUM_PAR = 4;
|
||||
private static final String SOURCE_SYSTEM = "DBSS-COM";
|
||||
private static final int DEFAULT_TIMEOUT = 30000;
|
||||
private static final String DATE_FORMAT = "yyyy-MM-dd";
|
||||
private static final String TIME_FORMAT = "HH:mm:ss";
|
||||
private static final String CREDITO_PATTERN = "[0-9]{1,5}.[0-9]{2}";
|
||||
|
||||
public static void main(String args[]) {
|
||||
|
||||
try {
|
||||
|
||||
if (args.length != NUM_PAR) {
|
||||
throw new IllegalArgumentException("Errore nei parametri");
|
||||
}
|
||||
|
||||
String idRIchiesta = args[0];
|
||||
String orderItemId = args[1];
|
||||
String importoCreditoResiduo = args[2];
|
||||
String tipoEvento = args[3];
|
||||
|
||||
if (idRIchiesta.length() > 23) {
|
||||
System.out.println("ClientDBSSTFC: id richiesta - lunghezza errata");
|
||||
return;
|
||||
}
|
||||
|
||||
if (orderItemId.length() > 30) {
|
||||
System.out.println("ClientDBSSTFC: order item id - lunghezza errata");
|
||||
return;
|
||||
}
|
||||
|
||||
Pattern r = Pattern.compile(CREDITO_PATTERN);
|
||||
Matcher m = r.matcher(importoCreditoResiduo);
|
||||
if (!m.find()) {
|
||||
System.out.println("ClientDBSSTFC: credito residuo - formato errato");
|
||||
return;
|
||||
}
|
||||
|
||||
if (!"01".equals(tipoEvento) && !"03".equals(tipoEvento)) {
|
||||
System.out.println("ClientDBSSTFC: tipo evento - valore errato");
|
||||
return;
|
||||
}
|
||||
|
||||
if ("01".equals(tipoEvento) && !"NULL".equals(orderItemId)) {
|
||||
System.out.println("ClientDBSSTFC: order item deve essere NULL per tipo evento = 01");
|
||||
return;
|
||||
}
|
||||
|
||||
if ("03".equals(tipoEvento) && "NULL".equals(orderItemId)) {
|
||||
System.out.println("ClientDBSSTFC: order item non puo' essere NULL per tipo evento = 03");
|
||||
return;
|
||||
}
|
||||
|
||||
if (orderItemId.equals("NULL")) {
|
||||
orderItemId = ClientDBSSGenerator.getRandomString(30, false);
|
||||
}
|
||||
|
||||
PortOutCreditRequest reqBody = new PortOutCreditRequest();
|
||||
reqBody.setIMPORTO_CREDITO_RESIDUO(importoCreditoResiduo);
|
||||
reqBody.setTIPO_EVENTO(TipoEventoTYPE.fromString(tipoEvento));
|
||||
reqBody.setID_RICHIESTA_DBC(idRIchiesta);
|
||||
reqBody.setORDER_ITEM_ID(orderItemId);
|
||||
|
||||
HeaderType reqHeader = new HeaderType();
|
||||
|
||||
Properties properties = SimConfFile.getInstance().ReadSection("DBSS");
|
||||
String url = properties.getProperty("dbssWsUrl");
|
||||
MobileNumberPortabilityMgmt10 service = new MobileNumberPortabilityMgmt10_Impl();
|
||||
MobileNumberPortabilityMgmtPortType port = service.getMobileNumberPortabilityMgmt();
|
||||
|
||||
((Stub) port)._setProperty("javax.xml.rpc.service.endpoint.address", url);
|
||||
|
||||
((Stub) port)._setProperty("weblogic.wsee.transport.connection.timeout", DEFAULT_TIMEOUT);
|
||||
|
||||
reqHeader.setSourceSystem(SOURCE_SYSTEM);
|
||||
|
||||
Date date = new Date();
|
||||
String d = new SimpleDateFormat(DATE_FORMAT).format(date);
|
||||
String t = new SimpleDateFormat(TIME_FORMAT).format(date);
|
||||
InteractionDateType intDate = new InteractionDateType();
|
||||
intDate.setDate(d);
|
||||
intDate.setTime(t);
|
||||
reqHeader.setInteractionDate(intDate);
|
||||
|
||||
reqHeader.setBusinessID(UUIDHelper.generateBusinessID());
|
||||
reqHeader.setMessageID(UUIDHelper.generateBusinessID());
|
||||
reqHeader.setTransactionID(UUIDHelper.generateBusinessID());
|
||||
|
||||
port.portOutCredit(reqHeader, reqBody);
|
||||
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
System.out.println("ClientDBSSTFC failed ex: " + ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user