public static CIKey ofLowerCase(final String lowerKey) {
        if (lowerKey == null) {
            return null;
        } else if (lowerKey.isEmpty()) {
            return EMPTY_STRING;
        } else {
            // See if we have a common key that matches exactly with the one requested.
            // Case-sensitive here because CIKey should wrap the exact case passed in.
            return NullSafe.requireNonNullElseGet(
                    CIKeys.getCommonKey(lowerKey),
                    () -> new CIKey(lowerKey, lowerKey));
        }
    }
Create a {@link CIKey} for an all lower case key, e.g. "foo".
This is a minor optimisation to avoid a call to toLowerCase as the
key is already in lower-case.
<p>
Is null safe. If key is null, returns null.
</p>
stroom-util-shared/src/main/java/stroom/util/shared/string/CIKey.java