/*
 * Querydsl query type
 *
 *
 */
package de.ivu.elect.business.person.entity;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.Path;
import com.querydsl.core.types.PathMetadata;
import com.querydsl.core.types.dsl.EntityPathBase;
import com.querydsl.core.types.dsl.NumberPath;
import com.querydsl.core.types.dsl.StringPath;
import com.querydsl.core.types.dsl.EnumPath;
import com.querydsl.core.types.dsl.DateTimePath;
import com.querydsl.core.types.dsl.SetPath;
import com.querydsl.core.types.dsl.BooleanPath;
import com.querydsl.core.types.dsl.PathInits;

@javax.enterprise.inject.Vetoed
@javax.annotation.Generated("de.ivu.takatuka")
public class QPersonendaten extends EntityPathBase<Personendaten> {

  private static final long serialVersionUID = -1;

  // Wird benötigt zur Initialisierung der Entitäten. Verhindert Schleifen, initialisiert standardmäßig aber nur direkte Referenzen, nicht mehrere Ebenen. Mehrere Ebenen müssen explizit angegeben werden.
  private static final PathInits INITS_SAFE = new PathInits("*"
	// Anschrift
, "anschrift.customDataStorage"
	// CustomDataStorage
	// Anschrift
, "erreichbarkeitsanschrift.customDataStorage"
	// Bild
	// Kontoverbindung
	// Wahltermin
, "wahltermin.customDataStorage"
, "wahltermin.einsehenRolle"
, "wahltermin.mandant"
, "wahltermin.stichwahlWahlterminUrspruenglich"
	// Wahl
, "wahl.berichtetAn"
, "wahl.customDataStorage"
, "wahl.einsehenRolle"
, "wahl.wahlart"
, "wahl.wahltermin"
);

  private static final PathInits INITS = de.ivu.elect.jee.entity.QueryDsl.DIREKT_4_EBENEN;

  public static final QPersonendaten personendaten = new QPersonendaten("personendaten");

  public final NumberPath<Long> id = createNumber("id", Long.class);

  public final StringPath akademischerGradUnformatiert = createString("akademischerGradUnformatiert");

  public final StringPath anrede = createString("anrede");

  public final BooleanPath auswaertig = createBoolean("auswaertig");

  public final StringPath bemerkung = createString("bemerkung");

  public final StringPath berufUnformatiert = createString("berufUnformatiert");

  public final StringPath berufsschluessel = createString("berufsschluessel");

  public final NumberPath<java.lang.Long> bewertung = createNumber("bewertung", java.lang.Long.class);

  public final StringPath discriminator = createString("discriminator");

  public final StringPath ehrenamtUnformatiert = createString("ehrenamtUnformatiert");

  public final EnumPath<de.ivu.elect.business.person.entity.PersonenregisterAbgleichStatus> personenregisterAbgleichStatus = createEnum("personenregisterAbgleichStatus", de.ivu.elect.business.person.entity.PersonenregisterAbgleichStatus.class);

  public final DateTimePath personenregisterAbgleichZeitpunkt = createDateTime("personenregisterAbgleichZeitpunkt", java.sql.Timestamp.class);

  public final StringPath externesOrdnungsmerkmal = createString("externesOrdnungsmerkmal");

  public final StringPath externeId = createString("externeId");

  public final StringPath emailAdresse = createString("emailAdresse");

  public final StringPath emailAdresseArbeit = createString("emailAdresseArbeit");

  public final StringPath familienname = createString("familienname");

  public final StringPath familiennameNormalisiert = createString("familiennameNormalisiert");

  public final StringPath faxnummer = createString("faxnummer");

  public final StringPath finanzId = createString("finanzId");

  public final DateTimePath<java.util.Date> geburtsdatum = createDateTime("geburtsdatum", java.util.Date.class);

  public final StringPath geburtsort = createString("geburtsort");

  public final EnumPath<de.ivu.elect.business.person.entity.Geschlecht> geschlecht = createEnum("geschlecht", de.ivu.elect.business.person.entity.Geschlecht.class);

  public final StringPath kuenstlername = createString("kuenstlername");

  public final StringPath familiennameBestandteil = createString("familiennameBestandteil");

  public final StringPath familiennameBestandteilNormalisiert = createString("familiennameBestandteilNormalisiert");

  public final StringPath ordensname = createString("ordensname");

  public final EnumPath<de.ivu.elect.business.person.entity.PersonStatus> personStatus = createEnum("personStatus", de.ivu.elect.business.person.entity.PersonStatus.class);

  public final EnumPath<de.ivu.elect.business.person.entity.SichtpruefungStatus> sichtpruefungStatus = createEnum("sichtpruefungStatus", de.ivu.elect.business.person.entity.SichtpruefungStatus.class);

  public final EnumPath<de.ivu.elect.business.person.entity.Sperrmerkmal> sperrmerkmal = createEnum("sperrmerkmal", de.ivu.elect.business.person.entity.Sperrmerkmal.class);

  public final StringPath staatsangehoerigkeitenSortOrder = createString("staatsangehoerigkeitenSortOrder");

  public final StringPath stimmbezirkSchluessel = createString("stimmbezirkSchluessel");

  public final StringPath telefonnummerArbeit = createString("telefonnummerArbeit");

  public final StringPath telefonnummerFestnetz = createString("telefonnummerFestnetz");

  public final StringPath telefonnummerMobil = createString("telefonnummerMobil");

  public final StringPath titel = createString("titel");

  public final StringPath rufname = createString("rufname");

  public final StringPath vornamen = createString("vornamen");

  public final StringPath vornamenNormalisiert = createString("vornamenNormalisiert");

  public final StringPath rufnameNormalisiert = createString("rufnameNormalisiert");

  public final EnumPath<de.ivu.elect.business.person.entity.Wahlrechtsausschluss> wahlrechtsausschluss = createEnum("wahlrechtsausschluss", de.ivu.elect.business.person.entity.Wahlrechtsausschluss.class);

  public final DateTimePath<java.util.Date> zuzugsdatumBund = createDateTime("zuzugsdatumBund", java.util.Date.class);

  public final DateTimePath<java.util.Date> zuzugsdatumGemeinde = createDateTime("zuzugsdatumGemeinde", java.util.Date.class);

  public final DateTimePath<java.util.Date> zuzugsdatumLand = createDateTime("zuzugsdatumLand", java.util.Date.class);

  public final DateTimePath<java.util.Date> zuzugsdatumStadtbezirk = createDateTime("zuzugsdatumStadtbezirk", java.util.Date.class);


  // Beziehungen N:1 unidirektional

  public final de.ivu.elect.business.anschrift.entity.QAnschrift anschrift;

  public final de.ivu.elect.business.customdata.entity.QCustomDataStorage customDataStorage;

  public final de.ivu.elect.business.anschrift.entity.QAnschrift erreichbarkeitsanschrift;

  public final de.ivu.elect.business.image.entity.QBild foto;

  public final de.ivu.elect.business.person.entity.QKontoverbindung kontoverbindung;

  public final de.ivu.elect.business.wahl.entity.QWahltermin wahltermin;

  public final de.ivu.elect.business.wahl.entity.QWahl wahl;

  // Beziehungen N:1 bidirektional


  // Beziehungen 1:N bidirektional

  public final SetPath<de.ivu.elect.business.person.entity.PersonenVerknuepfung, de.ivu.elect.business.person.entity.QPersonenVerknuepfung> personenVerknuepfungsByPerson1 = this.<de.ivu.elect.business.person.entity.PersonenVerknuepfung, de.ivu.elect.business.person.entity.QPersonenVerknuepfung>createSet("personenVerknuepfungsByPerson1", de.ivu.elect.business.person.entity.PersonenVerknuepfung.class, de.ivu.elect.business.person.entity.QPersonenVerknuepfung.class, PathInits.DIRECT);

  public final SetPath<de.ivu.elect.business.person.entity.PersonenVerknuepfung, de.ivu.elect.business.person.entity.QPersonenVerknuepfung> personenVerknuepfungsByPerson2 = this.<de.ivu.elect.business.person.entity.PersonenVerknuepfung, de.ivu.elect.business.person.entity.QPersonenVerknuepfung>createSet("personenVerknuepfungsByPerson2", de.ivu.elect.business.person.entity.PersonenVerknuepfung.class, de.ivu.elect.business.person.entity.QPersonenVerknuepfung.class, PathInits.DIRECT);

  /**
   * Beziehungen N:M bidirektional nicht selbstreferenzierend
   */
			  /**
   * Beziehung N:M (bidirektional, fuehrend) zu Staats
   */
  public final SetPath<de.ivu.elect.business.staat.entity.Staat, de.ivu.elect.business.staat.entity.QStaat> staats = this.<de.ivu.elect.business.staat.entity.Staat, de.ivu.elect.business.staat.entity.QStaat>createSet("staats", de.ivu.elect.business.staat.entity.Staat.class, de.ivu.elect.business.staat.entity.QStaat.class, PathInits.DIRECT);

  public QPersonendaten(Class<? extends Personendaten> type, PathMetadata metadata, PathInits inits) {
    super(type, metadata, inits);
    this.anschrift = inits.isInitialized("anschrift") ? new de.ivu.elect.business.anschrift.entity.QAnschrift(forProperty("anschrift"), inits.get("anschrift")) : null;// de.ivu.elect.business.anschrift.entity.QAnschrift.anschrift;
    this.customDataStorage = inits.isInitialized("customDataStorage") ? new de.ivu.elect.business.customdata.entity.QCustomDataStorage(forProperty("customDataStorage"), inits.get("customDataStorage")) : null;// de.ivu.elect.business.customdata.entity.QCustomDataStorage.customDataStorage;
    this.erreichbarkeitsanschrift = inits.isInitialized("erreichbarkeitsanschrift") ? new de.ivu.elect.business.anschrift.entity.QAnschrift(forProperty("erreichbarkeitsanschrift"), inits.get("erreichbarkeitsanschrift")) : null;// de.ivu.elect.business.anschrift.entity.QAnschrift.anschrift;
    this.foto = inits.isInitialized("foto") ? new de.ivu.elect.business.image.entity.QBild(forProperty("foto"), inits.get("foto")) : null;// de.ivu.elect.business.image.entity.QBild.bild;
    this.kontoverbindung = inits.isInitialized("kontoverbindung") ? new de.ivu.elect.business.person.entity.QKontoverbindung(forProperty("kontoverbindung"), inits.get("kontoverbindung")) : null;// de.ivu.elect.business.person.entity.QKontoverbindung.kontoverbindung;
    this.wahltermin = inits.isInitialized("wahltermin") ? new de.ivu.elect.business.wahl.entity.QWahltermin(forProperty("wahltermin"), inits.get("wahltermin")) : null;// de.ivu.elect.business.wahl.entity.QWahltermin.wahltermin;
    this.wahl = inits.isInitialized("wahl") ? new de.ivu.elect.business.wahl.entity.QWahl(forProperty("wahl"), inits.get("wahl")) : null;// de.ivu.elect.business.wahl.entity.QWahl.wahl;
  }

  public QPersonendaten(String variable) {
    this(Personendaten.class, forVariable(variable), INITS);
  }

  public QPersonendaten(Path<? extends Personendaten> path) {
    this(path.getType(), path.getMetadata(), path.getMetadata().isRoot() ? INITS : PathInits.DEFAULT);
  }

  public QPersonendaten(PathMetadata metadata) {
    this(metadata, metadata.isRoot() ? INITS : PathInits.DEFAULT);
  }

  public QPersonendaten(PathMetadata metadata, PathInits inits) {
    this(Personendaten.class, metadata, inits);
  }
}
