⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 portletpreferences.java.svn-base

📁 portal越来越流行了
💻 SVN-BASE
字号:
/*  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. *//* * NOTE: this source code is based on an early draft version of JSR 286 and not intended for product * implementations. This file may change or vanish in the final version of the JSR 286 specification. *//* * This source code implements specifications defined by the Java * Community Process. In order to remain compliant with the specification * DO NOT add / change / or delete method signatures! *//**  * Copyright 2006 IBM Corporation.  */package javax.portlet;/** * The <CODE>PortletPreferences</CODE> interface allows the portlet to store * configuration data. It is not the * purpose of this interface to replace general purpose databases. * <p> * There are two different types of preferences: * <ul> * <li>modifiable preferences - these preferences can be changed by the *     portlet in any standard portlet mode (<code>EDIT, HELP, VIEW</code>). *     Per default every preference is modifiable. * <li>read-only preferences - these preferences cannot be changed by the *     portlet in any standard portlet mode, but may be changed by administrative modes. *     Preferences are read-only, if the are defined in the *     deployment descriptor with <code>read-only</code> set to <code>true</code>, *     or if the portlet container restricts write access. * </ul> * <p> * Changes are persisted when the <code>store</code> method is called. The <code>store</code> method  * can only be invoked within the scope of a <code>processAction</code> call. * Changes that are not persisted are discarded when the * <code>processAction</code> or <code>render</code> method ends. */public interface PortletPreferences{  /**   * Returns true, if the value of this key is defined as read-only and thus   * cannot be modified by the user.   * <p>   * Modifiable preferences can be changed by the   * portlet in any standard portlet mode (<code>EDIT, HELP, VIEW</code>).    * Per default every preference is modifiable.   * <p>   * Read-only preferences cannot be changed by the   * portlet in any standard portlet mode, but inside of custom modes,   * like the <code>CONFIG</code> mode, it may be allowed changing them.   * <p>   * Preferences are read-only, if they are defined in the    * deployment descriptor with <code>read-only</code> set to <code>true</code>,   * or if the portlet container restricts write access.   * <p>   * Note that even if this call returns <code>false</code> and the    * preference key is modifiable in general it does not mean that it   * is modifiable in the scope of the current request, e.g. if this   * request is a render request.   *    * @return  false, if the value of this key can be changed, or   *          if the key is not known   *   * @exception java.lang.IllegalArgumentException    *         if <code>key</code> is <code>null</code>.   */  public boolean isReadOnly(String key);  /**   * Returns the first String value associated with the specified key of this preference.   * If there is one or more preference values associated with the given key    * it returns the first associated value.   * If there are no preference values associated with the given key, or the    * backing preference database is unavailable, it returns the given    * default value.   * A <code>null</code> value is treated as a non-existent value.   *   * @param key key for which the associated value is to be returned   * @param def the value to be returned in the event that there is no    *            value available associated with this <code>key</code>.   *   * @return the value associated with <code>key</code>, or <code>def</code>   *         if no value is associated with <code>key</code>, or the backing   *         store is inaccessible.   *   * @exception java.lang.IllegalArgumentException    *         if <code>key</code> is <code>null</code>. (A    *         <code>null</code> value for <code>def</code> <i>is</i> permitted.)   *    * @see #getValues(String, String[])   */  public String getValue(String key, String def);  /**   * Returns the String array value associated with the specified key in this preference.   *   * <p>Returns the specified default if there is no value   * associated with the key, or if the backing store is inaccessible.   * A <code>null</code> value is treated as a non-existent value.   *   * <p>If the implementation supports <i>stored defaults</i> and such a   * default exists and is accessible, it is used in favor of the   * specified default.   *   *   * @param key key for which associated value is to be returned.   * @param def the value to be returned in the event that this   *        preference node has no value associated with <code>key</code>   *        or the associated value cannot be interpreted as a String array,   *        or the backing store is inaccessible.   *   * @return the String array value associated with   *         <code>key</code>, or <code>def</code> if the   *         associated value does not exist.   *   * @exception java.lang.IllegalArgumentException if <code>key</code> is <code>null</code>.  (A    *         <code>null</code> value for <code>def</code> <i>is</i> permitted.)   *   * @see #getValue(String,String)   */  public String[] getValues(String key, String[] def);  /**   * Associates the specified String value with the specified key in this   * preference.   * <p>   * The key cannot be <code>null</code>, but <code>null</code> values   * for the value parameter are allowed.   * <p>   * If the same key contained already a <code>String</code> or <code>String[]</code>   * value it must be replaced by the new value.   *    * @param key key with which the specified value is to be associated.   * @param value value to be associated with the specified key.   *   * @exception  ReadOnlyException   *                 if this preference cannot be modified for this request   * @exception java.lang.IllegalArgumentException if key is <code>null</code>,   *                 or <code>key.length()</code>    *                 or <code>value.length</code> are to long. The maximum length    *                 for key and value are implementation specific.   *   * @see #setValues(String, String[])   */  public void setValue(String key, String value)  throws ReadOnlyException;  /**   * Associates the specified String array value with the specified key in this   * preference.   * <p>   * The key cannot be <code>null</code>, but <code>null</code> values   * in the values parameter are allowed.   * <p>   * If the same key contained already a <code>String</code> or <code>String[]</code>   * value it must be replaced by the new value.   *   * @param key key with which the  value is to be associated   * @param values values to be associated with key   *   * @exception  java.lang.IllegalArgumentException if key is <code>null</code>, or   *                 <code>key.length()</code>    *                 is to long or <code>value.size</code> is to large.  The maximum    *                 length for key and maximum size for value are implementation specific.   * @exception  ReadOnlyException   *                 if this preference cannot be modified for this request   *   * @see #setValue(String,String)   */  public void setValues(String key, String[] values) throws ReadOnlyException;  /**   * Returns all of the keys that have an associated value,   * or an empty <code>Enumeration</code> if no keys are   * available.   *   * @return an Enumeration of the keys that have an associated value,   *         or an empty <code>Enumeration</code> if no keys are   *         available.   */  public java.util.Enumeration<String> getNames();  /**    * Returns a <code>Map</code> of the preferences.   * <p>   * The values in the returned <code>Map</code> are from type   * String array (<code>String[]</code>).   * <p>   * If no preferences exist this method returns an empty <code>Map</code>.   *   * @return     an immutable <code>Map</code> containing preference names as    *             keys and preference values as map values, or an empty <code>Map</code>   *             if no preference exist. The keys in the preference   *             map are of type String. The values in the preference map are of type   *             String array (<code>String[]</code>).   */  public java.util.Map<String, String[]> getMap();  /**   * Resets or removes the value associated with the specified key.   * <p>   * If this implementation supports stored defaults, and there is such   * a default for the specified preference, the given key will be    * reset to the stored default.   * <p>   * If there is no default available the key will be removed.   *   * @param  key to reset   *   * @exception  java.lang.IllegalArgumentException if key is <code>null</code>.   * @exception  ReadOnlyException   *                 if this preference cannot be modified for this request   */  public void reset(String key) throws ReadOnlyException;  /**   * Commits all changes made to the preferences via the    * <code>set</code> methods in the persistent store.   * <P>   * If this call returns successful, all changes are made   * persistent. If this call fails, no changes are made   * in the persistent store. This call is an atomic operation    * regardless of how many preference attributes have been modified.   * <P>   * All changes made to preferences not followed by a call    * to the <code>store</code> method are discarded when the    * portlet finishes the <code>processAction</code> method.   * <P>   * If a validator is defined for this preferences in the   * deployment descriptor, this validator is called before   * the actual store is performed to check whether the given   * preferences are valid. If this check fails a    * <code>ValidatorException</code> is thrown.   *   * @exception  java.io.IOException       *                 if changes cannot be written into   *                 the backend store   * @exception  ValidatorException   *                 if the validation performed by the   *                 associated validator fails   * @exception  java.lang.IllegalStateException   *                 if this method is called inside a render call   *   * @see  PreferencesValidator   */  public void store() throws java.io.IOException, ValidatorException;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -