KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > exoplatform > services > communication > sms > util > SmsUtil


1 /**
2  * Copyright 2001-2004 The eXo platform SARL All rights reserved.
3  * Please look at license.txt in info directory for more license detail.
4  **/

5 package org.exoplatform.services.communication.sms.util;
6
7 import java.util.regex.Matcher JavaDoc;
8 import java.util.regex.Pattern JavaDoc;
9
10 /**
11  * @author Ove Ranheim (oranheim@yahoo.no)
12  * @since Jun 18, 2004 12:00:24 AM
13  */

14 public class SmsUtil {
15
16     public static String JavaDoc encodeHexEncoded(Object JavaDoc object) {
17         StringBuffer JavaDoc buf = new StringBuffer JavaDoc();
18         String JavaDoc token = object.toString();
19         char[] array = token.toCharArray();
20         for (int i = 0; i < array.length; i++) {
21             String JavaDoc hexCode = Integer.toHexString(array[i]).toUpperCase();
22             buf.append(hexCode);
23         }
24         return buf.toString();
25     }
26
27     public static String JavaDoc encodeUnicodeHexEncoded(Object JavaDoc object) {
28         StringBuffer JavaDoc buf = new StringBuffer JavaDoc();
29         String JavaDoc token = object.toString();
30         char[] array = token.toCharArray();
31         for (int i = 0; i < array.length; i++) {
32             String JavaDoc hexCode = Integer.toHexString(array[i]).toUpperCase();
33             hexCode = ("000" + hexCode).substring(hexCode.length() - 1);
34             buf.append(hexCode);
35         }
36         return buf.toString();
37     }
38
39     public static boolean hasMobileNumberPrefix(String JavaDoc number) {
40         if (number.startsWith("+")) return true;
41         else if (number.startsWith("00")) return true;
42         return false;
43     }
44     
45     public static String JavaDoc truncateMobileNumberPrefix(String JavaDoc number) {
46         // Remove potential prefix
47
if (number.startsWith("+")) number = number.substring(1, number.length());
48         else if (number.startsWith("00")) number = number.substring(2, number.length());
49         return number;
50     }
51
52     public static String JavaDoc prepareCellularNumber(String JavaDoc number) {
53         number = truncateMobileNumberPrefix(number);
54         StringBuffer JavaDoc b = new StringBuffer JavaDoc(number.length());
55         char[] a = number.toCharArray();
56         for (int n = 0; n < a.length; n++) {
57             char c = a[n];
58             if (c >= '0' && c <= '9') b.append(c);
59         }
60         return b.toString();
61     }
62
63     public static boolean isAlpha(String JavaDoc token) {
64         Pattern JavaDoc p = Pattern.compile("\\p{Alpha}");
65         Matcher JavaDoc m = p.matcher(token);
66         return m.find();
67     }
68
69 }
Popular Tags