You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-dev@ws.apache.org by am...@apache.org on 2009/08/27 07:35:18 UTC

svn commit: r808282 - in /webservices/commons/trunk/modules/transport/modules/sms/src/main/java/org/apache/axis2/transport/sms: ./ gsm/ smpp/

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);