/***
 * File neve: lista.java
 * Szerző: Szatmáry Botond
 * Utolsó módosítás: 1998. jun. 15.
 * Leírás: A Java.util.Vector osztály terjeszti ki. Két plussz metódust kap:
 * egy speciális torol metódus, illetve a benne, ami tartalmi egyezést vizsgál
 * egy listában.
 ***/

import java.util.*;

public class lista extends Vector
{
  public lista()
  {
    super();
  }
  public lista( int initialCapacity )
  {
    super( initialCapacity );
  }
  public lista( int initialCapacity, int capacityIncrement )
  {
    super( initialCapacity, capacityIncrement );
  }

  /**
   * Megállapítja, hogy 's' String benne van-e a listában?
   * Ugyanazt kell tartalmazzák, és nem az objektumok egyenlőségét nézi.
   */
  public boolean benne( String s )
  {
    boolean l=false;
    for ( Enumeration e=this.elements(); e.hasMoreElements() && !l; )
      l=((csucs)e.nextElement()).azonosito.equals(s);
    return l;
  }

  /**
   * Kitörli azokat az elemeket, amelyek benne vannak a hívo lista-ban,
   * viszont nincsenek benne a paraméterként kapott listában.
   * Így lehet a következők listából törölni.
   */
  public void torol( csucs cs, lista v )
  {
    for ( Enumeration e=this.elements(); e.hasMoreElements(); )
      {
	csucs p=(csucs)e.nextElement();
	boolean l=false;
	for ( Enumeration ee=v.elements(); ee.hasMoreElements() && !l; )
	  l=((String)ee.nextElement()).equals(p.azonosito);
	if ( !l )
	  {
	    this.removeElement(p);
	    p.elozo.removeElement(cs);
	  }
      }
  }
}
