// ********************************************************************** // // Copyright (c) 2003-2010 ZeroC, Inc. All rights reserved. // // This copy of Ice is licensed to you under the terms described in the // ICE_LICENSE file included in this distribution. // // ********************************************************************** // Ice version 3.4.1 package Ice; // <auto-generated> // // Generated from file `Properties.ice' // // Warning: do not edit this file. // // </auto-generated> /** * A property set used to configure Ice and Ice applications. * Properties are key/value pairs, with both keys and values * being strings. By convention, property keys should have the form * <em>application-name</em>\[.<em>category</em>\[.<em>sub-category</em>]].<em>name</em>. * **/ public interface Properties { /** * Get a property by key. If the property is not set, an empty * string is returned. * * @param key The property key. * * @return The property value. * * @see #setProperty * **/ String getProperty(String key); /** * Get a property by key. If the property is not set, the * given default value is returned. * * @param key The property key. * * @param value The default value to use if the property does not * exist. * * @return The property value or the default value. * * @see #setProperty * **/ String getPropertyWithDefault(String key, String value); /** * Get a property as an integer. If the property is not set, 0 * is returned. * * @param key The property key. * * @return The property value interpreted as an integer. * * @see #setProperty * **/ int getPropertyAsInt(String key); /** * Get a property as an integer. If the property is not set, the * given default value is returned. * * @param key The property key. * * @param value The default value to use if the property does not * exist. * * @return The property value interpreted as an integer, or the * default value. * * @see #setProperty * **/ int getPropertyAsIntWithDefault(String key, int value); /** * Get a property as a list of strings. If the property is not set, * an empty list is returned. The strings in the list can contain * whitespace if they are enclosed in single or double quotes. * If quotes are mismatched, an empty list is returned. * Within single quotes or double-quotes, you can escape the * quote in question with \, e.g. O'Reilly can be written as * O'Reilly, "O'Reilly" or 'O\'Reilly'. * * @param key The property key. * * @return The property value interpreted as a list of strings. * * @see #setProperty * **/ String[] getPropertyAsList(String key); /** * Get a property as a list of strings. If the property is not set, * the default list is returned. The strings in the list can contain * whitespace if they are enclosed in single or double quotes. * If quotes are mismatched, the default list is returned. * Within single quotes or double-quotes, you can escape the * quote in question with \, e.g. O'Reilly can be written as * O'Reilly, "O'Reilly" or 'O\'Reilly'. * * @param key The property key. * * @param value The default value to use if the property is not set. * * @return The property value interpreted as list of strings, or the * default value. * * @see #setProperty * **/ String[] getPropertyAsListWithDefault(String key, String[] value); /** * Get all properties whose keys begins with * <em>prefix</em>. If * <em>prefix</em> is an empty string, * then all properties are returned. * * @param prefix The prefix to search for (empty string if none). * @return The matching property set. * **/ java.util.Map<java.lang.String, java.lang.String> getPropertiesForPrefix(String prefix); /** * Set a property. To unset a property, set it to * the empty string. * * @param key The property key. * @param value The property value. * * @see #getProperty * **/ void setProperty(String key, String value); /** * Get a sequence of command-line options that is equivalent to * this property set. Each element of the returned sequence is * a command-line option of the form * <tt>--<em>key</em>=<em>value</em></tt>. * * @return The command line options for this property set. * **/ String[] getCommandLineOptions(); /** * Convert a sequence of command-line options into properties. * All options that begin with * <tt>--<em>prefix</em>.</tt> are * converted into properties. If the prefix is empty, all options * that begin with <tt>--</tt> are converted to properties. * * @param prefix The property prefix, or an empty string to * convert all options starting with <tt>--</tt>. * * @param options The command-line options. * * @return The command-line options that do not start with the specified * prefix, in their original order. * **/ String[] parseCommandLineOptions(String prefix, String[] options); /** * Convert a sequence of command-line options into properties. * All options that begin with one of the following prefixes * are converted into properties: <tt>--Ice</tt>, <tt>--IceBox</tt>, <tt>--IceGrid</tt>, * <tt>--IcePatch2</tt>, <tt>--IceSSL</tt>, <tt>--IceStorm</tt>, <tt>--Freeze</tt>, and <tt>--Glacier2</tt>. * * @param options The command-line options. * * @return The command-line options that do not start with one of * the listed prefixes, in their original order. * **/ String[] parseIceCommandLineOptions(String[] options); /** * Load properties from a file. * * @param file The property file. * **/ void load(String file); /** * Create a copy of this property set. * * @return A copy of this property set. * **/ Properties _clone(); }