public SMSMessage formatSMS()

in modules/sms/src/main/java/org/apache/axis2/transport/sms/DefaultSMSMessageFormatterImpl.java [32:71]


    public SMSMessage formatSMS(MessageContext messageContext) throws Exception {
        String sendTo;
        //phone number set at the Transport configuration get the precidence
        String axis2PhoneNumber = SMPPTransportOutDetails.getInstence().getPhoneNumber() ;
        Object s= messageContext.getProperty(SMSTransportConstents.SEND_TO);
        if (s != null) {
           sendTo  = (String)s;

        } else {
             sendTo = SMSTransportUtils.getPhoneNumber(messageContext.getTo());
        }
        OMElement elem = messageContext.getEnvelope().getBody();
        String content = "Empty responce";
        boolean cont = true;
        while(cont) {

            content = elem.getFirstElement().getText();
            if("".equals(content) || content == null) {
                elem = elem.getFirstElement();
                if(elem == null) {
                    cont = false;
                    content = "Empty responce";
                }
            } else {
                cont = false;
            }
        }

        //if not configured in the Transport configuration
        if("0000".equals(axis2PhoneNumber)) {
            String axisPhone  = (String)messageContext.getProperty(SMSTransportConstents.DESTINATION);
            if(axisPhone != null) {
                axis2PhoneNumber = axisPhone;
            }
        }
        SMSMessage sms = new SMSMessage( axis2PhoneNumber, sendTo , content ,SMSMessage.OUT_MESSAGE);
        handleMessageContextProperties(sms,messageContext);
        return sms;

    }