Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * 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.catalina.util;
 
 
 import static org.jboss.web.CatalinaMessages.MESSAGES;
 
 import java.util.Map;


Extended implementation of HashMap that includes a locked property. This class can be used to safely expose Catalina internal parameter map objects to user classes without having to clone them in order to avoid modifications. When first created, a ParmaeterMap instance is not locked.

Author(s):
Craig R. McClanahan
Version:
$Revision: 515 $ $Date: 2008-03-17 22:02:23 +0100 (Mon, 17 Mar 2008) $
 
 
 public final class ParameterMap extends HashMap {
 
 
     // ----------------------------------------------------------- Constructors
 

    
Construct a new, empty map with the default initial capacity and load factor.
 
     public ParameterMap() {
 
         super();
 
     }


    
Construct a new, empty map with the specified initial capacity and default load factor.

Parameters:
initialCapacity The initial capacity of this map
 
     public ParameterMap(int initialCapacity) {
 
         super(initialCapacity);
 
     }


    
Construct a new, empty map with the specified initial capacity and load factor.

Parameters:
initialCapacity The initial capacity of this map
loadFactor The load factor of this map
 
     public ParameterMap(int initialCapacityfloat loadFactor) {
 
         super(initialCapacityloadFactor);
 
     }


    
Construct a new map with the same mappings as the given map.

Parameters:
map Map whose contents are dupliated in the new map
 
     public ParameterMap(Map map) {
 
         super(map);
 
     }
 
 
     // ------------------------------------------------------------- Properties
 

    
The current lock state of this parameter map.
    private boolean locked = false;


    
Return the locked state of this parameter map.
    public boolean isLocked() {
        return (this.);
    }


    
Set the locked state of this parameter map.

Parameters:
locked The new locked state
    public void setLocked(boolean locked) {
        this. = locked;
    }
    // --------------------------------------------------------- Public Methods



    
Remove all mappings from this map.

Throws:
java.lang.IllegalStateException if this map is currently locked
    public void clear() {
        if ()
            throw .lockedParameterMap();
        super.clear();
    }


    
Associate the specified value with the specified key in this map. If the map previously contained a mapping for this key, the old value is replaced.

Parameters:
key Key with which the specified value is to be associated
value Value to be associated with the specified key
Returns:
The previous value associated with the specified key, or null if there was no mapping for key
Throws:
java.lang.IllegalStateException if this map is currently locked
    public Object put(Object keyObject value) {
        if ()
            throw .lockedParameterMap();
        return (super.put(keyvalue));
    }


    
Copy all of the mappings from the specified map to this one. These mappings replace any mappings that this map had for any of the keys currently in the specified Map.

Parameters:
map Mappings to be stored into this map
Throws:
java.lang.IllegalStateException if this map is currently locked
    public void putAll(Map map) {
        if ()
            throw .lockedParameterMap();
        super.putAll(map);
    }


    
Remove the mapping for this key from the map if present.

Parameters:
key Key whose mapping is to be removed from the map
Returns:
The previous value associated with the specified key, or null if there was no mapping for that key
Throws:
java.lang.IllegalStateException if this map is currently locked
    public Object remove(Object key) {
        if ()
            throw .lockedParameterMap();
        return (super.remove(key));
    }
New to GrepCode? Check out our FAQ X