org.symbian.tools.wrttools/src/org/symbian/tools/wrttools/util/Util.java
author tasneems@symbian.org
Wed, 27 Jan 2010 15:05:37 -0800
changeset 50 0560e98b9bf6
parent 17 f1b0259bb410
child 439 57fff6202b74
permissions -rw-r--r--
Added widget project nature and WRT validators
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
     1
/**
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
     2
 * Copyright (c) 2010 Symbian Foundation and/or its subsidiary(-ies).
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
     3
 * All rights reserved.
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
     5
 * under the terms of the License "Eclipse Public License v1.0"
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
     8
 *
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
     9
 * Initial Contributors:
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    10
 * Symbian Foundation - initial contribution.
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    11
 * Contributors:
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    12
 * Description:
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    13
 * Overview:
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    14
 * Details:
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    15
 * Platforms/Drives/Compatibility:
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    16
 * Assumptions/Requirement/Pre-requisites:
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    17
 * Failures and causes:
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    18
 */
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    19
package org.symbian.tools.wrttools.util;
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    20
50
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    21
import java.util.List;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    22
import java.util.logging.Level;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    23
import java.util.logging.Logger;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    24
17
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    25
public class Util {
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    26
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    27
	public static String removeSpaces(String widgetName) {
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    28
		return widgetName != null ? widgetName.replace(" ", "") : null;
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    29
	}
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    30
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    31
	public static String removeNonAlphaNum(String projectName) {
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    32
		return projectName != null ? projectName.replaceAll("[^a-zA-Z0-9 ]", "") : null;
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    33
	}
50
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    34
public static void logEvent(Logger log, Level level, Throwable throwable)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    35
	{
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    36
		if (level==Level.SEVERE)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    37
		{
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    38
			log.severe(throwable.getLocalizedMessage());
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    39
			if(throwable.getCause()!=null)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    40
			log.severe(throwable.getCause().toString());
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    41
			log.severe(throwable.getStackTrace().toString());
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    42
		}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    43
		if (level==Level.WARNING)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    44
		{
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    45
			log.warning(throwable.getLocalizedMessage());
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    46
			if(throwable.getCause()!=null)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    47
			log.warning(throwable.getCause().toString());
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    48
			log.warning(throwable.getStackTrace().toString());
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    49
		}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    50
		if (level==Level.INFO)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    51
		{
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    52
			log.info(throwable.getLocalizedMessage());
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    53
			if(throwable.getCause()!=null)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    54
			log.info(throwable.getCause().toString());
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    55
			log.info(throwable.getStackTrace().toString());
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    56
		}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    57
		
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    58
	}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    59
	
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    60
	public static String replaceChar(String input, char asciiOutChar, char asciiInChar){
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    61
		char x;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    62
		int ascii ;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    63
		String outString="";
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    64
		int outCharAscii= (asciiOutChar > 127) ? '?' : (char)(asciiOutChar & 0x7F);
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    65
		int inCharAscii= (asciiInChar > 127) ? '?' : (char)(asciiInChar & 0x7F);
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    66
		
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    67
		for (int i = 0; i < input.length(); i++) {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    68
			 x = input.charAt(i);	
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    69
			 ascii = (x > 127) ? '?' : (char)(x & 0x7F);
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    70
			 
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    71
			 if(ascii==outCharAscii){
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    72
				 outString=outString+asciiInChar;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    73
			 }else{
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    74
				 outString=outString+x; 
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    75
			 }
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    76
		
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    77
		}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    78
		return outString;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    79
	}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    80
	
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    81
	  public static void showData(String s) {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    82
		System.out.println(s);
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    83
	}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    84
	  
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    85
	  public static void showData(List<String> listString, String header) {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    86
		 
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    87
		  if(listString!=null&&listString.size()>0) {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    88
			  System.out.println("--------"+header+"------");
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    89
		  for(String s:listString){
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    90
			System.out.println(s);
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    91
			}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    92
		  }else {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    93
			  System.out.println("--------Empty/Null "+header+"------");
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    94
		  }
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    95
		}
17
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
    96
50
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    97
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    98
		@SuppressWarnings("restriction")
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
    99
		/* Validation tests for both Windows & Mac OS */
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   100
		private static String commonValidate(String argName)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   101
		{
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   102
			if (argName.length() == 0 ) {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   103
				return ("Can not be empty");	    		 
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   104
			}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   105
			
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   106
        	// filenames starting with dot are not valid for both Widget name & UID
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   107
	    	if ( argName.charAt(0) == '.' ) {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   108
	    		return("Can not begin with a dot");
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   109
	    	}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   110
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   111
	    	final char lastChar = argName.charAt(argName.length()-1);
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   112
			// filenames ending in dot are not valid for both Widget name & UID
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   113
			if (lastChar == '.') {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   114
				return("Can not end with dot");
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   115
			}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   116
			
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   117
			return null;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   118
		}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   119
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   120
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   121
		public static String validateWidgetName(String widgetName){    	
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   122
			String strError = null;			
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   123
			if ((strError = commonValidate(widgetName)) != null)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   124
				return "Invalid Widget name. " + strError;			
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   125
			if (widgetName.indexOf("<") > -1 || widgetName.indexOf(">") > -1){
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   126
        		return("Invalid Widget name. Angle brackets are not allowed");
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   127
        	}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   128
			final char lastChar = widgetName.charAt(widgetName.length()-1);
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   129
			// trailing or beginning space is not valid in filenames for Widget name
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   130
			if ((Character.isWhitespace(widgetName.charAt(0)) || Character.isWhitespace(lastChar))) {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   131
				return("Invalid Widget name. Beginning or trailing spaces are not allowed");
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   132
			}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   133
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   134
			if (widgetName.indexOf('\n') != -1 || widgetName.indexOf('\t') != -1 ) {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   135
				return("Invalid Widget name. newline character is not allowed");
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   136
			}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   137
			
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   138
	        return null;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   139
		}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   140
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   141
		public static String validateWidgetID(String widgetID)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   142
		{
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   143
			String strError = null; 			
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   144
			if ((strError = commonValidate(widgetID)) != null)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   145
				return "Invalid Widget identifier. " + strError;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   146
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   147
			// file names with white spaces are not allowed for Widget Identifier (UID)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   148
        	if (widgetID.indexOf(" ") > -1 ){
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   149
        		return("Invalid Widget identifier. Whitespaces are not allowed");
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   150
        	}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   151
        	
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   152
        	if (widgetID.length() > 78 ) {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   153
        		return("Invalid Widget identifier. Maximum string length exceeded");
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   154
        	}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   155
        	
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   156
        	/* test invalid characters, allows only alphanumeric and '.' for UID*/
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   157
			String alphnum = ".0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   158
			for (int i = 0; i < widgetID.length(); i++)
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   159
				if (alphnum.indexOf(widgetID.charAt(i),0) == -1) {
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   160
					return("Invalid Widget identifier. Only alphanumeric or '.' is allowed");
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   161
				}
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   162
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   163
			if (widgetID.matches(".*[.]{2,}.*")) {				
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   164
				return("Invalid Widget identifier. Consecutive dots are not allowed");				
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   165
			}	        
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   166
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   167
			return null;
0560e98b9bf6 Added widget project nature and WRT validators
tasneems@symbian.org
parents: 17
diff changeset
   168
		}
17
f1b0259bb410 Validation was added to new project creation wizard
Eugene Ostroukhov <eostroukhov@symbian.org>
parents:
diff changeset
   169
}