Logo
Distributed Genetic Programming Framework
print print

File org.sfc.collections.ImmutableCollection.java

Here you can find all the information about the file org.sfc.collections.ImmutableCollection.java. You may explore it here or download it onto your local disk.
/*
 * Copyright (c) 2006 Thomas Weise
 * 
 * E-Mail           : tweise@gmx.de
 * Creation Date    : 2006-06-08 08:52:15
 * Original Filename: org.sfc.collections.ImmutableCollection.java
 * Version          : 1.0.0
 * Last modification: 2006-06-08
 *                by: Thomas Weise
 * 
 * License          : GNU LESSER GENERAL PUBLIC LICENSE
 *                    Version 2.1, February 1999
 *                    You should have received a copy of this license along
 *                    with this library; if not, write to the Free Software
 *                    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
 *                    MA 02111-1307, USA or download the license under
 *                    http://www.gnu.org/copyleft/lesser.html.
 *                    
 * Warranty         : This software is provided "as is" without any
 *                    warranty; without even the implied warranty of
 *                    merchantability or fitness for a particular purpose.
 *                    See the Gnu Lesser General Public License for more
 *                    details.
 */

 
package org.sfc.collections;

import java.util.Collection;


/**
 * This abstract base class provides all modification methods of lists and
 * sets, but, since it is the base for immutable things, it lets all of
 * them throw exceptions.
 * 
 * @param <Type>  The item type.
 *
 * @author Thomas Weise
 */

public abstract class ImmutableCollection<Type> extends  BasicList<Type>
  {

/**
 * does nothing
 *
 * @param p_o element to be appended to this list.
 * @return never
 * 
 * @throws UnsupportedOperationException always
 */

  @Override
  public   final boolean add(final Type p_o)
    {
    throw new UnsupportedOperationException();
    }

/**
 * does nothing
 *
 * @param p_o element to be removed from this list, if present.
 * @return never
 * @throws UnsupportedOperationException always
 */

  @Override
  public   final boolean remove(final Object p_o)
    {
    throw new UnsupportedOperationException();
    }



/** 
 * Returns <tt>true</tt> if this list contains all of the elements of the
 * specified collection.
 *
 * @param  p_c collection to be checked for containment in this list.
 * @return <tt>true</tt> if this list contains all of the elements of the
 *         specified collection.
 * @throws ClassCastException if the types of one or more elements
 *         in the specified collection are incompatible with this
 *         list (optional).
 * @throws NullPointerException if the specified collection contains one
 *         or more null elements and this list does not support null
 *         elements (optional).
 * @throws NullPointerException if the specified collection is
 *         <tt>null</tt>.
 * @see #contains(Object)
 */

  @Override
  public   final boolean containsAll(final Collection<?> p_c)
    {    
main:
    for(Object l_p : p_c)
      {
      if(!(this.contains(l_p))) return false;
      }
    return true;
    }

/**
 * does nothing
 * @param p_c collection whose elements are to be added to this list.
 * @return never
 * 
 * @throws UnsupportedOperationException always
 */

  @Override
  public   final boolean addAll(final Collection<? extends Type> p_c)
    {
    throw new UnsupportedOperationException();
    }

/**
 * does nothing
 * @param p_index index at which to insert first element from the specified
 *              collection.
 * @param p_c elements to be inserted into this list.
 * @return never
 * 
 * @throws UnsupportedOperationException always
 */

  @Override
  public   final boolean addAll(final int                         p_index,
                                final Collection<? extends Type>  p_c)
    {
    throw new UnsupportedOperationException();
    }

/**
 * does nothing
 * @param p_c collection that defines which elements will be removed from
 *          this list.
 * @return never
 * 
 * @throws UnsupportedOperationException always
 */

  @Override
  public   final boolean removeAll(final Collection<?> p_c)
    {
    throw new UnsupportedOperationException();
    }

/**
 * does nothing
 *
 * @param p_c collection that defines which elements this set will retain.
 * 
 * @return never
 * 
 * @throws UnsupportedOperationException always
 */


  @Override
  public   final boolean retainAll(final Collection<?> p_c)
    {
    throw new UnsupportedOperationException();
    }

/**
 * does nothing
 *
 * @throws UnsupportedOperationException always
 */


  @Override
  public   final void clear()
    {
    throw new UnsupportedOperationException();
    }
  

/**
 * does nothing
 * @param p_index index of element to replace.
 * @param p_element element to be stored at the specified position.
 * @return never
 * 
 * @throws UnsupportedOperationException always
 */

  @Override
  public   final  Type set(final int   p_index,
                           final Type  p_element)
    {
    throw new UnsupportedOperationException();
    }

/**
 * does nothing
 * @param p_index index at which the specified element is to be inserted.
 * @param p_element element to be inserted.
 * 
 * @throws UnsupportedOperationException always
 */

  @Override
  public   final void add(final int   p_index,
                          final Type  p_element)
    {
    throw new UnsupportedOperationException();
    }

/**
 * does nothing
 * @param p_index the index of the element to removed.
 * @return never
 * 
 * @throws UnsupportedOperationException always
 */

  @Override
  public   final Type remove( int p_index)
    {
    throw new UnsupportedOperationException();
    }
  
  }

File Information:

file name:ImmutableCollection.java
package:org.sfc.collections
qualified name:org.sfc.collections.ImmutableCollection.java
file type:Java Source File
download location:download http://dgpf.sourceforge.net/source/org/sfc/collections/ImmutableCollection.java
size:5.639 KB (5775 B)
uploaded: 2015-07-22 04:11:11 GMT+0000
last update: 2006-06-13 01:12:11 GMT+0000
last access: 2018-01-21 23:59:36 GMT+0000

statistics online since 2006-01-02.   RSS Feed
Contact us by sending an email to tweise@gmx.de to receive further information, to report errors, or to join our project.
All content on this site (http://dgpf.sourceforge.net/) is LGPL-licensed.
http://dgpf.sourceforge.net/scripts/source/source.php last modified at 2015-07-22 04:10:53 GMT+0000 served at 2018-01-21 23:59:36 GMT+0000.
Valid CSS Valid XHTML 1.1
Valid RSS SourceForge.net Logo