/*
 * JPA2 entity template for JEE6
 *
 *
 * Takatuka - Template fuer JPA JEE6
 *
 * Moeglichkeiten und Einschraenkungen:
 * - Beziehungen werden abgebildet
 * -- es gibt keine 1:1 Beziehungen
 * -- N:M Beziehungen sind immer bidirektional
 * - Vererbung wird nicht unterstuetzt
 */

package de.ivu.elect.business.benutzerverwaltung.entity;

public interface RolleBase extends 
de.ivu.elect.jee.entity.Entity<RollePK, RolleUK>
{

  
  /**
   * getter for primary key wrapper ROLLE.rolle_id
   *
   * @return
   */
  @Override
  RollePK getPk();
    

  /**
   * ATTRIBUTE
   */

    

  /**
   * 
   *
   * getter for ROLLE.BESCHREIBUNG
   *
   */
  java.lang.String getBeschreibung();

  /**
   * 
   *
   * setter for ROLLE.BESCHREIBUNG
   *
   * @param beschreibung
   */
  void setBeschreibung(java.lang.String beschreibung);
      

  /**
   * 
   *
   * getter for ROLLE.NAME
   *
   */
  String getName();

  /**
   * 
   *
   * setter for ROLLE.NAME
   *
   * @param name
   */
  void setName(String name);
  
/**
 * Beziehungen N:1 unidirektional
 */

  /**
   * 
   */
  void setMandant(de.ivu.elect.business.mandant.entity.Mandant mandant);

  /**
   * 
   */
  de.ivu.elect.business.mandant.entity.Mandant getMandant();



/**
 * Beziehungen N:1 bidirektional
 */


/**
 * Beziehungen 1:N unidirektional (nicht unterstuetzt)
   */

/**
 * Beziehungen 1:N bidirektional
   */

java.util.Set<String> getRechtAsString();

   void removeAllRechtAsStrings();

   void removeRechtAsString(String value);

   void addRechtAsString(String value);

/**
 * Beziehungen N:M bidirektional nicht selbstreferenzierend
   */

  /**
  * getter muss read-only verwendet werden, da die Beziehung auf der anderen Seite nicht aktualisiert wird!
  */
  java.util.Set<de.ivu.elect.business.benutzerverwaltung.entity.BenutzerEinsatzort> getBenutzerEinsatzorts();

 /**
  * Hinzufuegen von de.ivu.elect.business.benutzerverwaltung.entity.BenutzerEinsatzort
  */
  void addBenutzerEinsatzort(de.ivu.elect.business.benutzerverwaltung.entity.BenutzerEinsatzort benutzerEinsatzort);

  /**
  * Entfernen von de.ivu.elect.business.benutzerverwaltung.entity.BenutzerEinsatzort
  */
  void removeBenutzerEinsatzort(de.ivu.elect.business.benutzerverwaltung.entity.BenutzerEinsatzort benutzerEinsatzort);

 /**
  * Entfernen von allen  de.ivu.elect.business.benutzerverwaltung.entity.BenutzerEinsatzort
  */
  void removeAllBenutzerEinsatzorts();


  /**
  * getter muss read-only verwendet werden, da die Beziehung auf der anderen Seite nicht aktualisiert wird!
  */
  java.util.Set<de.ivu.elect.business.benutzerverwaltung.entity.Nachricht> getNachrichts();

 /**
  * Hinzufuegen von de.ivu.elect.business.benutzerverwaltung.entity.Nachricht
  */
  void addNachricht(de.ivu.elect.business.benutzerverwaltung.entity.Nachricht nachricht);

  /**
  * Entfernen von de.ivu.elect.business.benutzerverwaltung.entity.Nachricht
  */
  void removeNachricht(de.ivu.elect.business.benutzerverwaltung.entity.Nachricht nachricht);

 /**
  * Entfernen von allen  de.ivu.elect.business.benutzerverwaltung.entity.Nachricht
  */
  void removeAllNachrichts();


/**
 * Beziehungen N:M bidirektional selbstreferenzierend
   */
}
