You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Julian Reschke (JIRA)" <ji...@apache.org> on 2012/08/21 09:11:37 UTC

[jira] [Updated] (JCR-3414) avoid use of toUpperCase /toLowerCase without locale

     [ https://issues.apache.org/jira/browse/JCR-3414?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3414:
--------------------------------

    Description: 
Because for some locales, it doesn't do the expected thing even for US-ASCII (http://www.i18nguy.com/unicode/turkish-i18n.html#problem)

(Note that equalsIgnoreCase on the other hand is not locale-dependant)

  was:
Because for some locales, it doesn't do the expected thing even for US-ASCII (http://www.i18nguy.com/unicode/turkish-i18n.html#problem)


jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeManagerImpl.java:231:            if (contentType.equalsIgnoreCase(TEXT_XML)
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeManagerImpl.java:232:                    || contentType.equalsIgnoreCase(APPLICATION_XML)) {
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeManagerImpl.java:251:            } else if (contentType.equalsIgnoreCase(TEXT_X_JCR_CND)) {
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/join/QueryEngine.java:141:        if (JCR_JOIN_TYPE_RIGHT_OUTER.equalsIgnoreCase(join.getJoinType())) {
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/join/QueryEngine.java:160:        boolean isOuterJoin = JCR_JOIN_TYPE_LEFT_OUTER.equalsIgnoreCase(join
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/RepositoryFactoryImpl.java:82:                if (("file".equalsIgnoreCase(scheme)
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/RepositoryFactoryImpl.java:83:                        || "jcr-jackrabbit".equalsIgnoreCase(scheme))
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authentication/CryptedSimpleCredentials.java:148:        if (getUserID().equalsIgnoreCase(credentials.getUserID())) {
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/SimpleJBossAccessManager.java:79:                    && principal.getName().equalsIgnoreCase("Roles")) {
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/SimpleJBossAccessManager.java:85:                    system = system || "full".equalsIgnoreCase(role);
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/SimpleJBossAccessManager.java:86:                    anonymous = anonymous || "read".equalsIgnoreCase(role);
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/user/UserImporter.java:743:            if (NAME_IGNORE.equalsIgnoreCase(behaviorString)) {
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/user/UserImporter.java:745:            } else if (NAME_BESTEFFORT.equalsIgnoreCase(behaviorString)) {
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/user/UserImporter.java:747:            } else if (NAME_ABORT.equalsIgnoreCase(behaviorString)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/cnd/CompactNodeTypeDefReader.java:734:            if (currentToken.equalsIgnoreCase(value)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/JcrUtils.java:639:                    if ("charset".equalsIgnoreCase(parameter.trim())) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/JndiRepositoryFactory.java:78:                    if ("jndi".equalsIgnoreCase(uri.getScheme())) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/json/JsonParser.java:282:            } else if (v.equalsIgnoreCase("true")) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/json/JsonParser.java:284:            } else if (v.equalsIgnoreCase("false")) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:199:            if ("ISSAMENODE".equalsIgnoreCase(name)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:208:            } else if ("ISCHILDNODE".equalsIgnoreCase(name)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:212:            } else if ("ISDESCENDANTNODE".equalsIgnoreCase(name)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:335:        if ("CONTAINS".equalsIgnoreCase(functionName)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:355:        } else if ("ISSAMENODE".equalsIgnoreCase(functionName)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:362:        } else if ("ISCHILDNODE".equalsIgnoreCase(functionName)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:369:        } else if ("ISDESCENDANTNODE".equalsIgnoreCase(functionName)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:399:        if ("LENGTH".equalsIgnoreCase(functionName)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:401:        } else if ("NAME".equalsIgnoreCase(functionName)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:407:        } else if ("LOCALNAME".equalsIgnoreCase(functionName)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:413:        } else if ("SCORE".equalsIgnoreCase(functionName)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:419:        } else if ("LOWER".equalsIgnoreCase(functionName)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:421:        } else if ("UPPER".equalsIgnoreCase(functionName)) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:642:        boolean result = token.equalsIgnoreCase(currentToken) && !currentTokenQuoted;
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/commons/query/sql2/Parser.java:651:        if (!expected.equalsIgnoreCase(currentToken) || currentTokenQuoted) {
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/util/Locked.java:315:        return "true".equalsIgnoreCase(s.getRepository().getDescriptor(Repository.OPTION_OBSERVATION_SUPPORTED));
jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RmiRepositoryFactory.java:57:            if ("rmi".equalsIgnoreCase(scheme)) {
jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RmiRepositoryFactory.java:59:            } else if ("jndi".equalsIgnoreCase(scheme)) {
jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/server/BasicCredentialsProvider.java:85:                if (authStr.length >= 2 && authStr[0].equalsIgnoreCase(HttpServletRequest.BASIC_AUTH)) {
jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/server/jcr/JCRWebdavServer.java:375:                    if ("data".equalsIgnoreCase(uri.getScheme())) {
jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/webdav/jcr/DefaultItemCollection.java:816:        if (!OrderingConstants.ORDERING_TYPE_CUSTOM.equalsIgnoreCase(orderPatch.getOrderingType())) {
jackrabbit-jcr2dav/src/main/java/org/apache/jackrabbit/jcr2dav/Jcr2davRepositoryFactory.java:84:                if ("http".equalsIgnoreCase(scheme)
jackrabbit-jcr2dav/src/main/java/org/apache/jackrabbit/jcr2dav/Jcr2davRepositoryFactory.java:85:                        || "https".equalsIgnoreCase(scheme)) {
jackrabbit-spi-commons/src/main/java/org/apache/jackrabbit/spi/commons/lock/Locked.java:268:        return "true".equalsIgnoreCase(s.getRepository().getDescriptor(Repository.OPTION_OBSERVATION_SUPPORTED));
jackrabbit-webdav/src/main/java/org/apache/jackrabbit/webdav/header/DepthHeader.java:117:	if (depth.equalsIgnoreCase(DavConstants.DEPTH_INFINITY_S)) {
jackrabbit-webdav/src/main/java/org/apache/jackrabbit/webdav/header/OverwriteHeader.java:57:            doOverwrite = overwriteHeader.equalsIgnoreCase(OVERWRITE_TRUE);
jackrabbit-webdav/src/main/java/org/apache/jackrabbit/webdav/header/TimeoutHeader.java:98:            } else if (timeoutStr.equalsIgnoreCase(TIMEOUT_INFINITE)) {
jackrabbit-webdav/src/main/java/org/apache/jackrabbit/webdav/lock/LockDiscovery.java:201:            return DEPTH_INFINITY_S.equalsIgnoreCase(depth);
jackrabbit-webdav/src/main/java/org/apache/jackrabbit/webdav/util/CSRFUtil.java:81:            if (DISABLED.equalsIgnoreCase(config.trim())) {
jackrabbit-webdav/src/test/java/org/apache/jackrabbit/webdav/util/CSRFUtilTest.java:143:            if ("Referer".equalsIgnoreCase(name)) {


        Summary: avoid use of toUpperCase /toLowerCase without locale  (was: avoid use of equalsIgnoreCase without locale)
    
> avoid use of toUpperCase /toLowerCase without locale
> ----------------------------------------------------
>
>                 Key: JCR-3414
>                 URL: https://issues.apache.org/jira/browse/JCR-3414
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>            Reporter: Julian Reschke
>            Priority: Minor
>
> Because for some locales, it doesn't do the expected thing even for US-ASCII (http://www.i18nguy.com/unicode/turkish-i18n.html#problem)
> (Note that equalsIgnoreCase on the other hand is not locale-dependant)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira