All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.commons.text.lookup.DefaultStringLookup Maven / Gradle / Ivy

The newest version!
/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You 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.
 */
package org.apache.commons.text.lookup;

/**
 * An enumeration defining {@link StringLookup} objects available through {@link StringLookupFactory}.
 * 

* This enum was adapted and expanded from Apache Commons Configuration 2.4. *

*

NOTE: Starting in version 1.10.0, not all lookups defined in this class are * included by default in the * {@link StringLookupFactory#addDefaultStringLookups(java.util.Map) StringLookupFactory.addDefaultStringLookups} * method. See the {@link StringLookupFactory} class documentation for details. *

* * @see StringLookupFactory * @see StringLookup * @since 1.7 */ public enum DefaultStringLookup { /** * The lookup for Base64 decoding using the key {@code "base64Decoder"}. * * @see StringLookupFactory#KEY_BASE64_DECODER * @see StringLookupFactory#base64DecoderStringLookup() */ BASE64_DECODER(StringLookupFactory.KEY_BASE64_DECODER, StringLookupFactory.INSTANCE.base64DecoderStringLookup()), /** * The lookup for Base64 encoding using the key {@code "base64Encoder"}. * * @see StringLookupFactory#KEY_BASE64_ENCODER * @see StringLookupFactory#base64EncoderStringLookup() */ BASE64_ENCODER(StringLookupFactory.KEY_BASE64_ENCODER, StringLookupFactory.INSTANCE.base64EncoderStringLookup()), /** * The lookup for Java static class member constants using the key {@code "const"}. * * @see StringLookupFactory#KEY_CONST * @see StringLookupFactory#constantStringLookup() */ CONST(StringLookupFactory.KEY_CONST, StringLookupFactory.INSTANCE.constantStringLookup()), /** * The lookup for formatting the current date using the key {@code "date"}. * * @see StringLookupFactory#KEY_DATE * @see StringLookupFactory#dateStringLookup() */ DATE(StringLookupFactory.KEY_DATE, StringLookupFactory.INSTANCE.dateStringLookup()), /** * The lookup for DNS using the key {@code "dns"}. * * @see StringLookupFactory#KEY_DNS * @see StringLookupFactory#dnsStringLookup() * @since 1.8 */ DNS(StringLookupFactory.KEY_DNS, StringLookupFactory.INSTANCE.dnsStringLookup()), /** * The lookup for environment properties using the key {@code "env"}. * * @see StringLookupFactory#KEY_ENV * @see StringLookupFactory#environmentVariableStringLookup() */ ENVIRONMENT(StringLookupFactory.KEY_ENV, StringLookupFactory.INSTANCE.environmentVariableStringLookup()), /** * The lookup for files using the key {@code "file"}. * * @see StringLookupFactory#KEY_FILE * @see StringLookupFactory#fileStringLookup() */ FILE(StringLookupFactory.KEY_FILE, StringLookupFactory.INSTANCE.fileStringLookup()), /** * The lookup for Java platform information using the key {@code "java"}. * * @see StringLookupFactory#KEY_JAVA * @see StringLookupFactory#javaPlatformStringLookup() */ JAVA(StringLookupFactory.KEY_JAVA, StringLookupFactory.INSTANCE.javaPlatformStringLookup()), /** * The lookup for local host information using the key {@code "localhost"}. * * @see StringLookupFactory#KEY_LOCALHOST * @see StringLookupFactory#localHostStringLookup() */ LOCAL_HOST(StringLookupFactory.KEY_LOCALHOST, StringLookupFactory.INSTANCE.localHostStringLookup()), /** * The lookup for local host information using the key {@code "loopbackAddress"}. * * @see StringLookupFactory#KEY_LOOPBACK_ADDRESS * @see StringLookupFactory#loopbackAddressStringLookup() */ LOOPBACK_ADDRESS(StringLookupFactory.KEY_LOOPBACK_ADDRESS, StringLookupFactory.INSTANCE.loopbackAddressStringLookup()), /** * The lookup for properties using the key {@code "properties"}. * * @see StringLookupFactory#KEY_PROPERTIES * @see StringLookupFactory#propertiesStringLookup() */ PROPERTIES(StringLookupFactory.KEY_PROPERTIES, StringLookupFactory.INSTANCE.propertiesStringLookup()), /** * The lookup for resource bundles using the key {@code "resourceBundle"}. * * @see StringLookupFactory#KEY_RESOURCE_BUNDLE * @see StringLookupFactory#resourceBundleStringLookup() */ RESOURCE_BUNDLE(StringLookupFactory.KEY_RESOURCE_BUNDLE, StringLookupFactory.INSTANCE.resourceBundleStringLookup()), /** * The lookup for scripts using the key {@code "script"}. * * @see StringLookupFactory#KEY_SCRIPT * @see StringLookupFactory#scriptStringLookup() */ SCRIPT(StringLookupFactory.KEY_SCRIPT, StringLookupFactory.INSTANCE.scriptStringLookup()), /** * The lookup for system properties using the key {@code "sys"}. * * @see StringLookupFactory#KEY_SYS * @see StringLookupFactory#systemPropertyStringLookup() */ SYSTEM_PROPERTIES(StringLookupFactory.KEY_SYS, StringLookupFactory.INSTANCE.systemPropertyStringLookup()), /** * The lookup for URLs using the key {@code "url"}. * * @see StringLookupFactory#KEY_URL * @see StringLookupFactory#urlStringLookup() */ URL(StringLookupFactory.KEY_URL, StringLookupFactory.INSTANCE.urlStringLookup()), /** * The lookup for URL decoding using the key {@code "urlDecoder"}. * * @see StringLookupFactory#KEY_URL_DECODER * @see StringLookupFactory#urlDecoderStringLookup() */ URL_DECODER(StringLookupFactory.KEY_URL_DECODER, StringLookupFactory.INSTANCE.urlDecoderStringLookup()), /** * The lookup for URL encoding using the key {@code "urlEncoder"}. * * @see StringLookupFactory#KEY_URL_ENCODER * @see StringLookupFactory#urlEncoderStringLookup() */ URL_ENCODER(StringLookupFactory.KEY_URL_ENCODER, StringLookupFactory.INSTANCE.urlEncoderStringLookup()), /** * The lookup for XML decoding using the key {@code "xml"}. * * @see StringLookupFactory#KEY_XML * @see StringLookupFactory#xmlStringLookup() */ XML(StringLookupFactory.KEY_XML, StringLookupFactory.INSTANCE.xmlStringLookup()), /** * The lookup for XML decoding using the key {@code "xmlDecoder"}. * * @see StringLookupFactory#KEY_XML_DECODER * @see StringLookupFactory#xmlDecoderStringLookup() * @since 1.11.0 */ XML_DECODER(StringLookupFactory.KEY_XML_DECODER, StringLookupFactory.INSTANCE.xmlDecoderStringLookup()), /** * The lookup for XML encoding using the key {@code "xmlEncoder"}. * * @see StringLookupFactory#KEY_XML_ENCODER * @see StringLookupFactory#xmlEncoderStringLookup() * @since 1.11.0 */ XML_ENCODER(StringLookupFactory.KEY_XML_ENCODER, StringLookupFactory.INSTANCE.xmlEncoderStringLookup()); /** The prefix under which the associated lookup object is registered. */ private final String key; /** The associated lookup instance. */ private final StringLookup lookup; /** * Constructs a new instance of {@link DefaultStringLookup} and sets the key and the associated lookup instance. * * @param prefix the prefix * @param lookup the {@link StringLookup} instance */ DefaultStringLookup(final String prefix, final StringLookup lookup) { this.key = prefix; this.lookup = lookup; } /** * Gets the standard prefix for the lookup object of this kind. * * @return the prefix */ public String getKey() { return key; } /** * Gets the standard {@link StringLookup} instance of this kind. * * @return the associated {@link StringLookup} object */ public StringLookup getStringLookup() { return lookup; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy