Home » commons-collections-3.2.1-src » org.apache.commons » collections » [javadoc | source]
    1   /*
    2    *  Licensed to the Apache Software Foundation (ASF) under one or more
    3    *  contributor license agreements.  See the NOTICE file distributed with
    4    *  this work for additional information regarding copyright ownership.
    5    *  The ASF licenses this file to You under the Apache License, Version 2.0
    6    *  (the "License"); you may not use this file except in compliance with
    7    *  the License.  You may obtain a copy of the License at
    8    *
    9    *      http://www.apache.org/licenses/LICENSE-2.0
   10    *
   11    *  Unless required by applicable law or agreed to in writing, software
   12    *  distributed under the License is distributed on an "AS IS" BASIS,
   13    *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   14    *  See the License for the specific language governing permissions and
   15    *  limitations under the License.
   16    */
   17   package org.apache.commons.collections;
   18   
   19   /**
   20    * Defines a map that allows bidirectional lookup between key and values
   21    * and retains and provides access to an ordering.
   22    * <p>
   23    * Implementations should allow a value to be looked up from a key and
   24    * a key to be looked up from a value with equal performance.
   25    * 
   26    * @since Commons Collections 3.0
   27    * @version $Revision: 646777 $ $Date: 2008-04-10 13:33:15 +0100 (Thu, 10 Apr 2008) $
   28    *
   29    * @author Stephen Colebourne
   30    */
   31   public interface OrderedBidiMap extends BidiMap, OrderedMap {
   32   
   33       /**
   34        * Gets a view of this map where the keys and values are reversed.
   35        * <p>
   36        * Changes to one map will be visible in the other and vice versa.
   37        * This enables both directions of the map to be accessed equally.
   38        * <p>
   39        * Implementations should seek to avoid creating a new object every time this
   40        * method is called. See <code>AbstractMap.values()</code> etc. Calling this
   41        * method on the inverse map should return the original.
   42        * <p>
   43        * Implementations must return an <code>OrderedBidiMap</code> instance,
   44        * usually by forwarding to <code>inverseOrderedBidiMap()</code>.
   45        *
   46        * @return an inverted bidirectional map
   47        */
   48       public BidiMap inverseBidiMap();
   49       
   50       /**
   51        * Gets a view of this map where the keys and values are reversed.
   52        * <p>
   53        * Changes to one map will be visible in the other and vice versa.
   54        * This enables both directions of the map to be accessed equally.
   55        * <p>
   56        * Implementations should seek to avoid creating a new object every time this
   57        * method is called. See <code>AbstractMap.values()</code> etc. Calling this
   58        * method on the inverse map should return the original.
   59        *
   60        * @return an inverted bidirectional map
   61        */
   62       public OrderedBidiMap inverseOrderedBidiMap();
   63       
   64   }

Save This Page
Home » commons-collections-3.2.1-src » org.apache.commons » collections » [javadoc | source]