Author: amilas Date: Thu Aug 27 05:35:17 2009 New Revision: 808282 URL: http://svn.apache.org/viewvc?rev=808282&view=rev Log: applied the patch for WSCOMMONS-495
Modified: webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSImplManager.java webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSManager.java webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSMessageReciever.java webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSSender.java webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/gsm/GSMDispatcher.java webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/gsm/GSMImplManager.java webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPDispatcher.java webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPImplManager.java webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPListener.java Modified: webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSImplManager.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSImplManager.java?rev=808282&r1=808281&r2=808282&view=diff ============================================================================== --- webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSImplManager.java (original) +++ webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSImplManager.java Thu Aug 27 05:35:17 2009 @@ -60,4 +60,16 @@ * @param sm SMSMessage to be send */ public void sendSMS(SMSMessage sm); + + /** + * set the SMS manager that carries out SMS In task to the SMSImplimentaion + * @param manager + */ + public void setSMSInManager(SMSManager manager); + + /** + * get the refferance to the SMSMeneger instance that the implimentaion has + * @return + */ + public SMSManager getSMSInManager(); } Modified: webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSManager.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSManager.java?rev=808282&r1=808281&r2=808282&view=diff ============================================================================== --- webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSManager.java (original) +++ webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSManager.java Thu Aug 27 05:35:17 2009 @@ -48,24 +48,7 @@ /** the reference to the actual commons logger to be used for log messages */ protected Log log = LogFactory.getLog(this.getClass()); - private static SMSManager ourInstence; - - - - - private SMSManager() { - - } - - /** - * @return singleton Object of the SMSManager - */ - public static SMSManager getSMSManager() { - if(ourInstence == null) { - ourInstence = new SMSManager(); - } - return ourInstence; - } + /** * initialize the SMS manager with TransportinDiscription @@ -143,6 +126,7 @@ throw new AxisFault("Error while instentiating class " + implClass, e); } } + currentImplimentation.setSMSInManager(this); } /** Modified: webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSMessageReciever.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSMessageReciever.java?rev=808282&r1=808281&r2=808282&view=diff ============================================================================== --- webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSMessageReciever.java (original) +++ webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSMessageReciever.java Thu Aug 27 05:35:17 2009 @@ -32,7 +32,7 @@ private SMSManager smsManeger; public void init(ConfigurationContext configurationContext, TransportInDescription transportInDescription) throws AxisFault { - smsManeger = SMSManager.getSMSManager(); + smsManeger = new SMSManager(); smsManeger.init(transportInDescription , configurationContext); } Modified: webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSSender.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSSender.java?rev=808282&r1=808281&r2=808282&view=diff ============================================================================== --- webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSSender.java (original) +++ webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/SMSSender.java Thu Aug 27 05:35:17 2009 @@ -46,7 +46,7 @@ } public void init(ConfigurationContext confContext, TransportOutDescription transportOut) throws AxisFault { - smsManager = SMSManager.getSMSManager(); + smsManager = new SMSManager(); smsManager.init(transportOut, confContext); } Modified: webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/gsm/GSMDispatcher.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/gsm/GSMDispatcher.java?rev=808282&r1=808281&r2=808282&view=diff ============================================================================== --- webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/gsm/GSMDispatcher.java (original) +++ webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/gsm/GSMDispatcher.java Thu Aug 27 05:35:17 2009 @@ -37,13 +37,15 @@ private Service service; private long pollInterval=5000; - + private SMSManager smsManager; /** * To create a GSMDispatcher a service object that is created for the current GSM modem is needed * @param service + * @param manager */ - public GSMDispatcher(Service service) { + public GSMDispatcher(Service service , SMSManager manager) { this.service = service; + this.smsManager = manager; } public void run() { @@ -58,7 +60,7 @@ synchronized (this) { sms= new SMSMessage(msg.getOriginator(),null,msg.getText() ,SMSMessage.IN_MESSAGE); } - SMSManager.getSMSManager().dispatchToAxis2(sms); + smsManager.dispatchToAxis2(sms); //delete the message form inbox service.deleteMessage(msg); } Modified: webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/gsm/GSMImplManager.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/gsm/GSMImplManager.java?rev=808282&r1=808281&r2=808282&view=diff ============================================================================== --- webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/gsm/GSMImplManager.java (original) +++ webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/gsm/GSMImplManager.java Thu Aug 27 05:35:17 2009 @@ -21,6 +21,7 @@ import org.apache.axis2.transport.sms.SMSImplManager; import org.apache.axis2.transport.sms.SMSMessage; import org.apache.axis2.transport.sms.SMSTransportConstents; +import org.apache.axis2.transport.sms.SMSManager; import org.apache.axis2.description.TransportOutDescription; import org.apache.axis2.description.TransportInDescription; import org.apache.axis2.AxisFault; @@ -54,6 +55,8 @@ private GSMDispatcher dispatcher; private Service service = null; private SerialModemGateway gateway; + + private SMSManager smsInManeger; public void start() { service = new Service(); @@ -81,7 +84,7 @@ // Start! (i.e. connect to all defined Gateways) this.service.startService(); - dispatcher = new GSMDispatcher(service); + dispatcher = new GSMDispatcher(service , smsInManeger); dispatcher.setPollInterval(gsmTransportInDetails.getModemPollInterval()); Thread thread = new Thread(dispatcher); thread.start(); @@ -225,4 +228,12 @@ } } + public void setSMSInManager(SMSManager manager) { + this.smsInManeger = manager; + } + + public SMSManager getSMSInManager() { + return smsInManeger; + } + } Modified: webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPDispatcher.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPDispatcher.java?rev=808282&r1=808281&r2=808282&view=diff ============================================================================== --- webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPDispatcher.java (original) +++ webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPDispatcher.java Thu Aug 27 05:35:17 2009 @@ -29,13 +29,19 @@ SMSMessage smsMessage; + private SMSManager manager; + + public SMPPDispatcher(SMSManager manager) { + this.manager = manager; + } + void dispatch(String source , String receiver,String message) throws AxisFault { synchronized (this){ smsMessage = new SMSMessage(source ,receiver, message , SMSMessage.IN_MESSAGE); } - SMSManager.getSMSManager().dispatchToAxis2(smsMessage); + manager.dispatchToAxis2(smsMessage); } } Modified: webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPImplManager.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPImplManager.java?rev=808282&r1=808281&r2=808282&view=diff ============================================================================== --- webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPImplManager.java (original) +++ webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPImplManager.java Thu Aug 27 05:35:17 2009 @@ -21,6 +21,7 @@ import org.apache.axis2.transport.sms.SMSImplManager; import org.apache.axis2.transport.sms.SMSTransportConstents; import org.apache.axis2.transport.sms.SMSMessage; +import org.apache.axis2.transport.sms.SMSManager; import org.apache.axis2.description.TransportInDescription; import org.apache.axis2.description.TransportOutDescription; import org.apache.axis2.AxisFault; @@ -47,7 +48,7 @@ private SMPPTransportOutDetails smppTransportOutDetails = SMPPTransportOutDetails.getInstence(); private volatile boolean stop=true; - + private SMSManager smsInManeger; private SMPPSession inSession; private SMPPSession outSession; @@ -59,7 +60,7 @@ inSession.connectAndBind(smppTransportInDetails.getHost(), smppTransportInDetails.getPort(), new BindParameter(BindType.BIND_RX, smppTransportInDetails.getSystemId(), smppTransportInDetails.getPassword(), smppTransportInDetails.getSystemType() , TypeOfNumber.UNKNOWN, NumberingPlanIndicator.UNKNOWN, null)); - SMPPListener listener = new SMPPListener(); + SMPPListener listener = new SMPPListener(smsInManeger); inSession.setMessageReceiverListener(listener); stop = false; System.out.println(" [Axis2] bind and connect to " + smppTransportInDetails.getHost()+" : " + @@ -214,4 +215,12 @@ } } + + public void setSMSInManager(SMSManager manager) { + this.smsInManeger = manager; + } + + public SMSManager getSMSInManager() { + return smsInManeger; + } } Modified: webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPListener.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPListener.java?rev=808282&r1=808281&r2=808282&view=diff ============================================================================== --- webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPListener.java (original) +++ webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms/smpp/SMPPListener.java Thu Aug 27 05:35:17 2009 @@ -25,6 +25,7 @@ import org.jsmpp.session.MessageReceiverListener; import org.jsmpp.util.InvalidDeliveryReceiptException; import org.apache.axis2.AxisFault; +import org.apache.axis2.transport.sms.SMSManager; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -34,8 +35,12 @@ public class SMPPListener implements MessageReceiverListener{ /** the reference to the actual commons logger to be used for log messages */ protected Log log = LogFactory.getLog(this.getClass()); + private SMSManager smsManeger; - + public SMPPListener(SMSManager manager){ + this.smsManeger = manager; + } + public void onAcceptDeliverSm(DeliverSm deliverSm) throws ProcessRequestException { if (MessageType.SMSC_DEL_RECEIPT.containedIn(deliverSm.getEsmClass())) { @@ -62,7 +67,7 @@ } else { try { - new SMPPDispatcher().dispatch(deliverSm.getSourceAddr() ,deliverSm.getDestAddress() ,new String(deliverSm.getShortMessage())); + new SMPPDispatcher(smsManeger).dispatch(deliverSm.getSourceAddr() ,deliverSm.getDestAddress() ,new String(deliverSm.getShortMessage())); } catch (AxisFault axisFault) { log.debug("Error while dispatching SMPP message" , axisFault);