javacommons/security/javasrc/com/nokia/mj/impl/security/midp/common/SecurityExtensionsReader.java
equal
deleted
inserted
replaced
325 */ |
325 */ |
326 private static void setExtPermissionMappings(String odcFile, |
326 private static void setExtPermissionMappings(String odcFile, |
327 String mappingsSystemProperty) |
327 String mappingsSystemProperty) |
328 { |
328 { |
329 String[] mappings = Tokenizer.split(mappingsSystemProperty, ";"); |
329 String[] mappings = Tokenizer.split(mappingsSystemProperty, ";"); |
|
330 Vector validatedPermNames = new Vector(); |
330 if (mappings != null) |
331 if (mappings != null) |
331 { |
332 { |
332 for (int i=0; i<mappings.length; i++) |
333 for (int i=0; i<mappings.length; i++) |
333 { |
334 { |
334 String mapping = mappings[i]; |
335 String mapping = mappings[i]; |
356 if (!found) |
357 if (!found) |
357 { |
358 { |
358 // one more check against the existing extensions |
359 // one more check against the existing extensions |
359 // permission mappings |
360 // permission mappings |
360 found = find(namedPermName, |
361 found = find(namedPermName, |
361 classBasedPermName, |
362 (validatedPermNames.contains(classBasedPermName) |
|
363 ? null: classBasedPermName), |
362 extPermissionMappings); |
364 extPermissionMappings); |
363 } |
365 } |
364 if (!found) |
366 if (!found) |
365 { |
367 { |
|
368 validatedPermNames.addElement(classBasedPermName); |
366 extPermissionMappings.put( |
369 extPermissionMappings.put( |
367 namedPermName, |
370 namedPermName, |
368 new MIDPPermission( |
371 new MIDPPermission( |
369 classBasedPermName, |
372 classBasedPermName, |
370 classBasedPermTarget, |
373 classBasedPermTarget, |
385 for (Enumeration e = permMapping.keys() ; e.hasMoreElements() ;) |
388 for (Enumeration e = permMapping.keys() ; e.hasMoreElements() ;) |
386 { |
389 { |
387 Object key = e.nextElement(); |
390 Object key = e.nextElement(); |
388 Object value = permMapping.get(key); |
391 Object value = permMapping.get(key); |
389 if (((String)key).equalsIgnoreCase(namedPermName) |
392 if (((String)key).equalsIgnoreCase(namedPermName) |
390 || (((MIDPPermission)value)).getName() |
393 || ( classBasedPermName != null |
391 .equalsIgnoreCase(classBasedPermName)) |
394 && (((MIDPPermission)value)).getName() |
|
395 .equalsIgnoreCase(classBasedPermName))) |
392 { |
396 { |
393 return true; |
397 return true; |
394 } |
398 } |
395 } |
399 } |
396 return false; |
400 return false; |