Class SmppUtils

java.lang.Object
org.apache.camel.component.smpp.SmppUtils

public final class SmppUtils extends Object
  • Field Details

    • ISO_GSM_0338

      public static final short[] ISO_GSM_0338
      See http://unicode.org/Public/MAPPINGS/ETSI/GSM0338.TXT
    • ISO_GSM_0338_EXT

      public static final short[][] ISO_GSM_0338_EXT
      See http://unicode.org/Public/MAPPINGS/ETSI/GSM0338.TXT
  • Method Details

    • formatTime

      public static String formatTime(Date date)
    • string2Date

      public static Date string2Date(String date)
      YYMMDDhhmmSS where:
      • YY = last two digits of the year (00-99)
      • MM = month (01-12)
      • DD = day (01-31)
      • hh = hour (00-23)
      • mm = minute (00-59)
      • SS = second (00-59)
      Java format is (yyMMddHHmmSS).
      Parameters:
      date - in String format.
      Returns:
      the date
      Throws:
      NumberFormatException - if there is contains non number on date parameter.
      IndexOutOfBoundsException - if the date length in String format is less than 10.
    • getMessageBody

      public static byte[] getMessageBody(org.jsmpp.bean.DeliverSm deliverSm)
      Returns the payload of a deliverSm
      Parameters:
      deliverSm -
      Returns:
      the shortMessage, by first looking in the shortMessage field of the deliver_sm and if its null or empty, fallbacks to the optional parameter "MESSAGE_PAYLOAD".
    • is8Bit

      public static boolean is8Bit(org.jsmpp.bean.Alphabet alphabet)
    • isGsm0338Encodeable

      public static boolean isGsm0338Encodeable(byte[] aMessage)
      Decides if the characters in the argument are GSM 3.38 encodeable.
      Parameters:
      aMessage - must be a set of characters encoded in ISO-8859-1 or a compatible character set. In particular, UTF-8 encoded text should not be passed to this method.
      Returns:
      true if the characters can be represented in GSM 3.38
    • copySubmitSm

      public static org.jsmpp.bean.SubmitSm copySubmitSm(org.jsmpp.bean.SubmitSm src)
    • copySubmitMulti

      public static org.jsmpp.bean.SubmitMulti copySubmitMulti(org.jsmpp.bean.SubmitMulti src)
    • copyDataSm

      public static org.jsmpp.bean.DataSm copyDataSm(org.jsmpp.bean.DataSm src)
    • isServiceStopping

      public static boolean isServiceStopping(org.apache.camel.support.service.BaseService service)
    • isSessionClosed

      public static boolean isSessionClosed(org.jsmpp.session.SMPPSession session)
    • createExecutor

      public static ScheduledExecutorService createExecutor(org.apache.camel.support.service.BaseService service, org.apache.camel.Endpoint endpoint, String taskName)
    • newReconnectTask

      public static org.apache.camel.support.task.BlockingTask newReconnectTask(ScheduledExecutorService service, String taskName, long initialReconnectDelay, long reconnectDelay, int maxReconnect)
    • shutdownReconnectService

      public static void shutdownReconnectService(ScheduledExecutorService service) throws InterruptedException
      Throws:
      InterruptedException
    • decodeBody

      public static String decodeBody(byte[] body, byte dataCoding, String defaultEncoding) throws UnsupportedEncodingException
      This method would try to decode the bytes provided a dataCoding. Supports: US_ASCII, ISO_8859_1, UTF_16_BE alphabet values
      Parameters:
      body - Body of the message in bytes
      dataCoding - The data coding value
      defaultEncoding - The default encoding
      Returns:
      null if body is null or 8bit encoded, or the decoded body on success
      Throws:
      UnsupportedEncodingException - when the default encoding is unsupported