public static String reverseTokens(@Nullable String str, @Nonnull String delimiter) {
    """
	<p> Reverse tokens of given tokenized {@code str}.</p>
	<p>Sample: "server1.ecommerce.mycompany.com" returns {@code "com.mycompany.ecommerce.server1"}.</p>
	
	@param str
	@param delimiter
	@return reversed string or {@code null} if given string is {@code null}
    """
        if (str == null) {
            return null;
        }
        Preconditions2.checkNotNull(delimiter, "given delimiter can not be null");

        StringTokenizer st = new StringTokenizer(str, delimiter);
        List<String> tokens = new ArrayList<>();

        while (st.hasMoreTokens()) {
            tokens.add(st.nextToken());
        }
        Collections.reverse(tokens);

        return join(tokens, delimiter);
    }
public static String reverseTokens(@Nullable String str, @Nonnull String delimiter) {
        if (str == null) {
            return null;
        }
        Preconditions2.checkNotNull(delimiter, "given delimiter can not be null");

        StringTokenizer st = new StringTokenizer(str, delimiter);
        List<String> tokens = new ArrayList<>();

        while (st.hasMoreTokens()) {
            tokens.add(st.nextToken());
        }
        Collections.reverse(tokens);

        return join(tokens, delimiter);
    }
public static String reverseTokens ( @ Nullable String str , @ Nonnull String delimiter ) { if ( str == null ) { return null ; } Preconditions2 . checkNotNull ( delimiter , "given delimiter can not be null" ) ; StringTokenizer st = new StringTokenizer ( str , delimiter ) ; List < String > tokens = new ArrayList <> ( ) ; while ( st . hasMoreTokens ( ) ) { tokens . add ( st . nextToken ( ) ) ; } Collections . reverse ( tokens ) ; return join ( tokens , delimiter ) ; }
<p> Reverse tokens of given tokenized {@code str}.</p>
<p>Sample: "server1.ecommerce.mycompany.com" returns {@code "com.mycompany.ecommerce.server1"}.</p>

@param str
@param delimiter
@return reversed string or {@code null} if given string is {@code null}
<p > Reverse tokens of given tokenized { @code str } . < / p > <p > Sample : server1 . ecommerce . mycompany . com returns { @code com . mycompany . ecommerce . server1 } . < / p >