Java String Shorten shortenDerivedIdentifier(final String derivdedIdentifier)

Here you can find the source of shortenDerivedIdentifier(final String derivdedIdentifier)

Description

shorten Derived Identifier

License

Apache License

Parameter

Parameter Description
derivdedIdentifier A value returned from #derivedIdentifier(String) .

Return

The derivedIdentifier with package parts shortened to initials.

Declaration

public static String shortenDerivedIdentifier(final String derivdedIdentifier) 

Method Source Code

//package com.java2s;
/*//from   ww  w.  j  av  a 2s  .  c o m
 * Copyright (C) 2015 Red Hat, Inc. and/or its affiliates.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *       http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

public class Main {
    /**
     * @param derivdedIdentifier A value returned from {@link #derivedIdentifier(String)}.
     * @return The derivedIdentifier with package parts shortened to initials.
     */
    public static String shortenDerivedIdentifier(final String derivdedIdentifier) {
        return shortenDerivedIdentifier(derivdedIdentifier, "_");
    }

    private static String shortenDerivedIdentifier(final String derivedIdentifier, final String delimiter) {
        final String[] parts = derivedIdentifier.split(delimiter);
        final StringBuilder builder = new StringBuilder();
        boolean haveSeenUpperCase = false;
        for (final String part : parts) {
            if (haveSeenUpperCase || Character.isUpperCase(part.charAt(0))) {
                builder.append(part);
                haveSeenUpperCase = true;
            } else {
                builder.append(part.charAt(0));
            }
            builder.append('_');
        }
        builder.delete(builder.length() - 1, builder.length());

        return builder.toString();
    }
}

Related

  1. shortenComponentLoggerName(String loggerName)
  2. shortenContent(String s, int maxLength)
  3. shortenCount(final long count)
  4. shortenCount(int count)
  5. shortenDbName(String dbName, int desiredLength)
  6. shortenFileName(String name)
  7. shortenFileName(String text, String filename)
  8. shortenGeneratedIdentifier(final String name)
  9. shortenHash(String s)