You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

758 lines
24 KiB

package data;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import javafx.collections.ObservableList;
public enum Taxonomy {
TOTAL("Total", "Total"),
// GOS
DISKURZ("gos.T", "gos.T - diskurz"),
DISKURZ_JAVNI("gos.T.J", " gos.T.J - diskurz-javni"),
DISKURZ_INFORMATIVNO_IZOBRAZEVALNI("gos.T.J.I", " gos.T.J.I - diskurz-javni-informativno-izobraževalni"),
DISKURZ_RAZVEDRILNI("gos.T.J.R", " gos.T.J.R - diskurz-javni-razvedrilni"),
DISKURZ_NEJAVNI("gos.T.N", " gos.T.N - diskurz-nejavni"),
DISKURZ_NEZASEBNI("gos.T.N.N", " gos.T.N.N - diskurz-nejavni-nezasebni"),
DISKURZ_ZASEBNI("gos.T.N.Z", " gos.T.N.Z - diskurz-nejavni-zasebni"),
SITUACIJA("gos.S", "gos.S - situacija"),
SITUACIJA_RADIO("gos.S.R", " gos.S.R - situacija-radio"),
SITUACIJA_TELEVIZIJA("gos.S.T", " gos.S.T - situacija-televizija"),
KANAL("gos.K", "gos.K - kanal"),
KANAL_OSEBNI_STIK("gos.K.O", " gos.K.O - kanal-osebni stik"),
KANAL_TELEFON("gos.K.P", " gos.K.P - kanal-telefon"),
KANAL_RADIO("gos.K.R", " gos.K.R - kanal-radio"),
KANAL_TELEVIZIJA("gos.K.T", " gos.K.T - kanal-televizija"),
// Gigafida
// KNJIZNO("knjižno", "T.K", "gigafida"),
// LEPOSLOVNO("leposlovno", "T.K.L", "gigafida"),
// STROKOVNO("strokovno", "T.K.S", "gigafida"),
// PERIODICNO("periodično", "T.P", "gigafida"),
// CASOPIS("časopis", "T.P.C", "gigafida"),
// REVIJA("revija", "T.P.R", "gigafida"),
// INTERNET("internet", "I", "gigafida"),
SSJ_TISK("SSJ.T", "SSJ.T - tisk"),
SSJ_KNJIZNO("SSJ.T.K", " SSJ.T.K - tisk-knjižno"),
SSJ_LEPOSLOVNO("SSJ.T.K.L", " SSJ.T.K.L - tisk-knjižno-leposlovno"),
SSJ_STROKOVNO("SSJ.T.K.S", " SSJ.T.K.S - tisk-knjižno-strokovno"),
SSJ_PERIODICNO("SSJ.T.P", " SSJ.T.P - tisk-periodično"),
SSJ_CASOPIS("SSJ.T.P.C", " SSJ.T.P.C - tisk-periodično-časopis"),
SSJ_REVIJA("SSJ.T.P.R", " SSJ.T.P.R - tisk-periodično-revija"),
SSJ_DRUGO("SSJ.T.D", " SSJ.T.D - tisk-drugo"),
SSJ_INTERNET("SSJ.I", "SSJ.I - internet"),
FT_P_PRENOSNIK("Ft.P", "Ft.P - prenosnik"),
FT_P_GOVORNI("Ft.P.G", " Ft.P.G - prenosnik-govorni"),
FT_P_ELEKTRONSKI("Ft.P.E", " Ft.P.E - prenosnik-elektronski"),
FT_P_PISNI("Ft.P.P", " Ft.P.P - prenosnik-pisni"),
FT_P_OBJAVLJENO("Ft.P.P.O", " Ft.P.P.O - prenosnik-pisni-objavljeno"),
FT_P_KNJIZNO("Ft.P.P.O.K", " Ft.P.P.O.K - prenosnik-pisni-objavljeno-knjižno"),
FT_P_PERIODICNO("Ft.P.P.O.P", " Ft.P.P.O.P - prenosnik-pisni-objavljeno-periodično"),
FT_P_CASOPISNO("Ft.P.P.O.P.C", " Ft.P.P.O.P.C - prenosnik-pisni-objavljeno-periodično-časopisno"),
FT_P_DNEVNO("Ft.P.P.O.P.C.D", " Ft.P.P.O.P.C.D - prenosnik-pisni-objavljeno-periodično-časopisno-dnevno"),
FT_P_VECKRAT_TEDENSKO("Ft.P.P.O.P.C.V", " Ft.P.P.O.P.C.V - prenosnik-pisni-objavljeno-periodično-časopisno-večkrat tedensko"),
FT_P_CASOPISNO_TEDENSKO("Ft.P.P.O.P.C.T", " Ft.P.P.O.P.C.T - prenosnik-pisni-objavljeno-periodično-časopisno-tedensko"),
FT_P_REVIALNO("Ft.P.P.O.P.R", " Ft.P.P.O.P.R - prenosnik-pisni-objavljeno-periodično-revialno"),
FT_P_TEDENSKO("Ft.P.P.O.P.R.T", " Ft.P.P.O.P.R.T - prenosnik-pisni-objavljeno-periodično-revialno-tedensko"),
FT_P_STIRINAJSTDNEVNO("Ft.P.P.O.P.R.S", " Ft.P.P.O.P.R.S - prenosnik-pisni-objavljeno-periodično-revialno-štirinajstdnevno"),
FT_P_MESECNO("Ft.P.P.O.P.R.M", " Ft.P.P.O.P.R.M - prenosnik-pisni-objavljeno-periodično-revialno-mesečno"),
FT_P_REDKEJE_KOT_MESECNO("Ft.P.P.O.P.R.D", " Ft.P.P.O.P.R.D - prenosnik-pisni-objavljeno-periodično-revialno-redkeje kot na mesec"),
FT_P_OBCASNO("Ft.P.P.O.P.R.O", " Ft.P.P.O.P.R.O - prenosnik-pisni-objavljeno-periodično-revialno-občasno"),
FT_P_NEOBJAVLJENO("Ft.P.P.N", " Ft.P.P.N - prenosnik-pisni-neobjavljeno"),
FT_P_JAVNO("Ft.P.P.N.J", " Ft.P.P.N.J - prenosnik-pisni-neobjavljeno-javno"),
FT_P_INTERNO("Ft.P.P.N.I", " Ft.P.P.N.I - prenosnik-pisni-neobjavljeno-interno"),
FT_P_ZASEBNO("Ft.P.P.N.Z", " Ft.P.P.N.Z - prenosnik-pisni-neobjavljeno-zasebno"),
FT_ZVRST("Ft.Z", "Ft.Z - zvrst"),
FT_UMETNOSTNA("Ft.Z.U", " Ft.Z.U - zvrst-umetnostna"),
FT_PESNISKA("Ft.Z.U.P", " Ft.Z.U.P - zvrst-umetnostna-pesniška"),
FT_PROZNA("Ft.Z.U.R", " Ft.Z.U.R - zvrst-umetnostna-prozna"),
FT_DRAMSKA("Ft.Z.U.D", " Ft.Z.U.D - zvrst-umetnostna-dramska"),
FT_NEUMETNOSTNA("Ft.Z.N", " Ft.Z.N - zvrst-neumetnostna"),
FT_STROKOVNA("Ft.Z.N.S", " Ft.Z.N.S - zvrst-neumetnostna-strokovna"),
FT_HID("Ft.Z.N.S.H", " Ft.Z.N.S.H - zvrst-neumetnostna-strokovna-humanistična in družboslovna"),
FT_NIT("Ft.Z.N.S.N", " Ft.Z.N.S.N - zvrst-neumetnostna-strokovna-naravoslovna in tehnična"),
FT_NESTROKOVNA("Ft.Z.N.N", " Ft.Z.N.N - zvrst-neumetnostna-nestrokovna"),
FT_PRAVNA("Ft.Z.N.P", " Ft.Z.N.P - zvrst-neumetnostna-pravna"),
FT_LEKTORIRANO("Ft.L", "Ft.L - zvrst-lektorirano"),
FT_DA("Ft.L.D", " Ft.L.D - zvrst-lektorirano-da"),
FT_NE("Ft.L.N", " Ft.L.N - zvrst-lektorirano-ne");
private final String name;
private final String longName;
Taxonomy(String name, String longName) {
this.name = name;
this.longName = longName;
}
public String toString() {
return this.name;
}
public String toLongNameString() {
return this.longName;
}
public static Taxonomy factory(String tax) {
if (tax != null) {
// GOS
if (DISKURZ.toString().equals(tax)) {
return DISKURZ;
}
if (DISKURZ_JAVNI.toString().equals(tax)) {
return DISKURZ_JAVNI;
}
if (DISKURZ_INFORMATIVNO_IZOBRAZEVALNI.toString().equals(tax)) {
return DISKURZ_INFORMATIVNO_IZOBRAZEVALNI;
}
if (DISKURZ_RAZVEDRILNI.toString().equals(tax)) {
return DISKURZ_RAZVEDRILNI;
}
if (DISKURZ_NEJAVNI.toString().equals(tax)) {
return DISKURZ_NEJAVNI;
}
if (DISKURZ_NEZASEBNI.toString().equals(tax)) {
return DISKURZ_NEZASEBNI;
}
if (DISKURZ_ZASEBNI.toString().equals(tax)) {
return DISKURZ_ZASEBNI;
}
if (SITUACIJA.toString().equals(tax)) {
return SITUACIJA;
}
if (SITUACIJA_RADIO.toString().equals(tax)) {
return SITUACIJA_RADIO;
}
if (SITUACIJA_TELEVIZIJA.toString().equals(tax)) {
return SITUACIJA_TELEVIZIJA;
}
if (KANAL.toString().equals(tax)) {
return KANAL;
}
if (KANAL_OSEBNI_STIK.toString().equals(tax)) {
return KANAL_OSEBNI_STIK;
}
if (KANAL_TELEFON.toString().equals(tax)) {
return KANAL_TELEFON;
}
if (KANAL_RADIO.toString().equals(tax)) {
return KANAL_RADIO;
}
if (KANAL_TELEVIZIJA.toString().equals(tax)) {
return KANAL_TELEVIZIJA;
}
// Gigafida
// if (TISK.toString().equals(tax)) {
// return TISK;
// }
if (SSJ_TISK.toString().equals(tax)) {
return SSJ_TISK;
}
if (SSJ_KNJIZNO.toString().equals(tax)) {
return SSJ_KNJIZNO;
}
if (SSJ_LEPOSLOVNO.toString().equals(tax)) {
return SSJ_LEPOSLOVNO;
}
if (SSJ_STROKOVNO.toString().equals(tax)) {
return SSJ_STROKOVNO;
}
if (SSJ_PERIODICNO.toString().equals(tax)) {
return SSJ_PERIODICNO;
}
if (SSJ_CASOPIS.toString().equals(tax)) {
return SSJ_CASOPIS;
}
if (SSJ_REVIJA.toString().equals(tax)) {
return SSJ_REVIJA;
}
if (SSJ_DRUGO.toString().equals(tax)) {
return SSJ_DRUGO;
}
if (SSJ_INTERNET.toString().equals(tax)) {
return SSJ_INTERNET;
}
if (FT_P_PRENOSNIK.toString().equals(tax)) {
return FT_P_PRENOSNIK;
}
if (FT_P_GOVORNI.toString().equals(tax)) {
return FT_P_GOVORNI;
}
if (FT_P_ELEKTRONSKI.toString().equals(tax)) {
return FT_P_ELEKTRONSKI;
}
if (FT_P_PISNI.toString().equals(tax)) {
return FT_P_PISNI;
}
if (FT_P_OBJAVLJENO.toString().equals(tax)) {
return FT_P_OBJAVLJENO;
}
if (FT_P_KNJIZNO.toString().equals(tax)) {
return FT_P_KNJIZNO;
}
if (FT_P_PERIODICNO.toString().equals(tax)) {
return FT_P_PERIODICNO;
}
if (FT_P_CASOPISNO.toString().equals(tax)) {
return FT_P_CASOPISNO;
}
if (FT_P_DNEVNO.toString().equals(tax)) {
return FT_P_DNEVNO;
}
if (FT_P_VECKRAT_TEDENSKO.toString().equals(tax)) {
return FT_P_VECKRAT_TEDENSKO;
}
if (FT_P_CASOPISNO_TEDENSKO.toString().equals(tax)) {
return FT_P_CASOPISNO_TEDENSKO;
}
if (FT_P_REVIALNO.toString().equals(tax)) {
return FT_P_REVIALNO;
}
if (FT_P_TEDENSKO.toString().equals(tax)) {
return FT_P_TEDENSKO;
}
if (FT_P_STIRINAJSTDNEVNO.toString().equals(tax)) {
return FT_P_STIRINAJSTDNEVNO;
}
if (FT_P_MESECNO.toString().equals(tax)) {
return FT_P_MESECNO;
}
if (FT_P_REDKEJE_KOT_MESECNO.toString().equals(tax)) {
return FT_P_REDKEJE_KOT_MESECNO;
}
if (FT_P_OBCASNO.toString().equals(tax)) {
return FT_P_OBCASNO;
}
if (FT_P_NEOBJAVLJENO.toString().equals(tax)) {
return FT_P_NEOBJAVLJENO;
}
if (FT_P_JAVNO.toString().equals(tax)) {
return FT_P_JAVNO;
}
if (FT_P_INTERNO.toString().equals(tax)) {
return FT_P_INTERNO;
}
if (FT_P_ZASEBNO.toString().equals(tax)) {
return FT_P_ZASEBNO;
}
if (FT_ZVRST.toString().equals(tax)) {
return FT_ZVRST;
}
if (FT_UMETNOSTNA.toString().equals(tax)) {
return FT_UMETNOSTNA;
}
if (FT_PESNISKA.toString().equals(tax)) {
return FT_PESNISKA;
}
if (FT_PROZNA.toString().equals(tax)) {
return FT_PROZNA;
}
if (FT_DRAMSKA.toString().equals(tax)) {
return FT_DRAMSKA;
}
if (FT_NEUMETNOSTNA.toString().equals(tax)) {
return FT_NEUMETNOSTNA;
}
if (FT_STROKOVNA.toString().equals(tax)) {
return FT_STROKOVNA;
}
if (FT_NIT.toString().equals(tax)) {
return FT_NIT;
}
if (FT_HID.toString().equals(tax)) {
return FT_HID;
}
if (FT_NESTROKOVNA.toString().equals(tax)) {
return FT_NESTROKOVNA;
}
if (FT_PRAVNA.toString().equals(tax)) {
return FT_PRAVNA;
}
if (FT_LEKTORIRANO.toString().equals(tax)) {
return FT_LEKTORIRANO;
}
if (FT_DA.toString().equals(tax)) {
return FT_DA;
}
if (FT_NE.toString().equals(tax)) {
return FT_NE;
}
}
return null;
}
public static Taxonomy factoryLongName(String tax) {
if (tax != null) {
// GOS
if (DISKURZ.toLongNameString().equals(tax)) {
return DISKURZ;
}
if (DISKURZ_JAVNI.toLongNameString().equals(tax)) {
return DISKURZ_JAVNI;
}
if (DISKURZ_INFORMATIVNO_IZOBRAZEVALNI.toLongNameString().equals(tax)) {
return DISKURZ_INFORMATIVNO_IZOBRAZEVALNI;
}
if (DISKURZ_RAZVEDRILNI.toLongNameString().equals(tax)) {
return DISKURZ_RAZVEDRILNI;
}
if (DISKURZ_NEJAVNI.toLongNameString().equals(tax)) {
return DISKURZ_NEJAVNI;
}
if (DISKURZ_NEZASEBNI.toLongNameString().equals(tax)) {
return DISKURZ_NEZASEBNI;
}
if (DISKURZ_ZASEBNI.toLongNameString().equals(tax)) {
return DISKURZ_ZASEBNI;
}
if (SITUACIJA.toLongNameString().equals(tax)) {
return SITUACIJA;
}
if (SITUACIJA_RADIO.toLongNameString().equals(tax)) {
return SITUACIJA_RADIO;
}
if (SITUACIJA_TELEVIZIJA.toLongNameString().equals(tax)) {
return SITUACIJA_TELEVIZIJA;
}
if (KANAL.toLongNameString().equals(tax)) {
return KANAL;
}
if (KANAL_OSEBNI_STIK.toLongNameString().equals(tax)) {
return KANAL_OSEBNI_STIK;
}
if (KANAL_TELEFON.toLongNameString().equals(tax)) {
return KANAL_TELEFON;
}
if (KANAL_RADIO.toLongNameString().equals(tax)) {
return KANAL_RADIO;
}
if (KANAL_TELEVIZIJA.toLongNameString().equals(tax)) {
return KANAL_TELEVIZIJA;
}
// Gigafida
// if (TISK.toString().equals(tax)) {
// return TISK;
// }
if (SSJ_TISK.toLongNameString().equals(tax)) {
return SSJ_TISK;
}
if (SSJ_KNJIZNO.toLongNameString().equals(tax)) {
return SSJ_KNJIZNO;
}
if (SSJ_LEPOSLOVNO.toLongNameString().equals(tax)) {
return SSJ_LEPOSLOVNO;
}
if (SSJ_STROKOVNO.toLongNameString().equals(tax)) {
return SSJ_STROKOVNO;
}
if (SSJ_PERIODICNO.toLongNameString().equals(tax)) {
return SSJ_PERIODICNO;
}
if (SSJ_CASOPIS.toLongNameString().equals(tax)) {
return SSJ_CASOPIS;
}
if (SSJ_REVIJA.toLongNameString().equals(tax)) {
return SSJ_REVIJA;
}
if (SSJ_DRUGO.toLongNameString().equals(tax)) {
return SSJ_DRUGO;
}
if (SSJ_INTERNET.toLongNameString().equals(tax)) {
return SSJ_INTERNET;
}
if (FT_P_PRENOSNIK.toLongNameString().equals(tax)) {
return FT_P_PRENOSNIK;
}
if (FT_P_GOVORNI.toLongNameString().equals(tax)) {
return FT_P_GOVORNI;
}
if (FT_P_ELEKTRONSKI.toLongNameString().equals(tax)) {
return FT_P_ELEKTRONSKI;
}
if (FT_P_PISNI.toLongNameString().equals(tax)) {
return FT_P_PISNI;
}
if (FT_P_OBJAVLJENO.toLongNameString().equals(tax)) {
return FT_P_OBJAVLJENO;
}
if (FT_P_KNJIZNO.toLongNameString().equals(tax)) {
return FT_P_KNJIZNO;
}
if (FT_P_PERIODICNO.toLongNameString().equals(tax)) {
return FT_P_PERIODICNO;
}
if (FT_P_CASOPISNO.toLongNameString().equals(tax)) {
return FT_P_CASOPISNO;
}
if (FT_P_DNEVNO.toLongNameString().equals(tax)) {
return FT_P_DNEVNO;
}
if (FT_P_VECKRAT_TEDENSKO.toLongNameString().equals(tax)) {
return FT_P_VECKRAT_TEDENSKO;
}
if (FT_P_CASOPISNO_TEDENSKO.toLongNameString().equals(tax)) {
return FT_P_CASOPISNO_TEDENSKO;
}
if (FT_P_REVIALNO.toLongNameString().equals(tax)) {
return FT_P_REVIALNO;
}
if (FT_P_TEDENSKO.toLongNameString().equals(tax)) {
return FT_P_TEDENSKO;
}
if (FT_P_STIRINAJSTDNEVNO.toLongNameString().equals(tax)) {
return FT_P_STIRINAJSTDNEVNO;
}
if (FT_P_MESECNO.toLongNameString().equals(tax)) {
return FT_P_MESECNO;
}
if (FT_P_REDKEJE_KOT_MESECNO.toLongNameString().equals(tax)) {
return FT_P_REDKEJE_KOT_MESECNO;
}
if (FT_P_OBCASNO.toLongNameString().equals(tax)) {
return FT_P_OBCASNO;
}
if (FT_P_NEOBJAVLJENO.toLongNameString().equals(tax)) {
return FT_P_NEOBJAVLJENO;
}
if (FT_P_JAVNO.toLongNameString().equals(tax)) {
return FT_P_JAVNO;
}
if (FT_P_INTERNO.toLongNameString().equals(tax)) {
return FT_P_INTERNO;
}
if (FT_P_ZASEBNO.toLongNameString().equals(tax)) {
return FT_P_ZASEBNO;
}
if (FT_ZVRST.toLongNameString().equals(tax)) {
return FT_ZVRST;
}
if (FT_UMETNOSTNA.toLongNameString().equals(tax)) {
return FT_UMETNOSTNA;
}
if (FT_PESNISKA.toLongNameString().equals(tax)) {
return FT_PESNISKA;
}
if (FT_PROZNA.toLongNameString().equals(tax)) {
return FT_PROZNA;
}
if (FT_DRAMSKA.toLongNameString().equals(tax)) {
return FT_DRAMSKA;
}
if (FT_NEUMETNOSTNA.toLongNameString().equals(tax)) {
return FT_NEUMETNOSTNA;
}
if (FT_STROKOVNA.toLongNameString().equals(tax)) {
return FT_STROKOVNA;
}
if (FT_NIT.toLongNameString().equals(tax)) {
return FT_NIT;
}
if (FT_HID.toLongNameString().equals(tax)) {
return FT_HID;
}
if (FT_NESTROKOVNA.toLongNameString().equals(tax)) {
return FT_NESTROKOVNA;
}
if (FT_PRAVNA.toLongNameString().equals(tax)) {
return FT_PRAVNA;
}
if (FT_LEKTORIRANO.toLongNameString().equals(tax)) {
return FT_LEKTORIRANO;
}
if (FT_DA.toLongNameString().equals(tax)) {
return FT_DA;
}
if (FT_NE.toLongNameString().equals(tax)) {
return FT_NE;
}
}
return null;
}
public static ArrayList<Taxonomy> taxonomySelected(Taxonomy disjointTaxonomy) {
ArrayList<Taxonomy> r = new ArrayList<>();
System.out.println(disjointTaxonomy);
if(disjointTaxonomy.equals(DISKURZ)){
r.add(DISKURZ_JAVNI);
r.add(DISKURZ_INFORMATIVNO_IZOBRAZEVALNI);
r.add(DISKURZ_RAZVEDRILNI);
r.add(DISKURZ_NEJAVNI);
r.add(DISKURZ_NEZASEBNI);
r.add(DISKURZ_ZASEBNI);
} else if(disjointTaxonomy.equals(DISKURZ_JAVNI)){
r.add(DISKURZ_INFORMATIVNO_IZOBRAZEVALNI);
r.add(DISKURZ_RAZVEDRILNI);
} else if(disjointTaxonomy.equals(DISKURZ_NEJAVNI)){
r.add(DISKURZ_NEZASEBNI);
r.add(DISKURZ_ZASEBNI);
} else if(disjointTaxonomy.equals(SITUACIJA)){
r.add(SITUACIJA_RADIO);
r.add(SITUACIJA_TELEVIZIJA);
} else if(disjointTaxonomy.equals(KANAL)){
r.add(KANAL_OSEBNI_STIK);
r.add(KANAL_TELEFON);
r.add(KANAL_RADIO);
r.add(KANAL_TELEVIZIJA);
} else if(disjointTaxonomy.equals(SSJ_TISK)){
r.add(SSJ_KNJIZNO);
r.add(SSJ_LEPOSLOVNO);
r.add(SSJ_STROKOVNO);
r.add(SSJ_PERIODICNO);
r.add(SSJ_CASOPIS);
r.add(SSJ_REVIJA);
r.add(SSJ_DRUGO);
} else if(disjointTaxonomy.equals(SSJ_KNJIZNO)){
r.add(SSJ_LEPOSLOVNO);
r.add(SSJ_STROKOVNO);
} else if(disjointTaxonomy.equals(SSJ_PERIODICNO)){
r.add(SSJ_CASOPIS);
r.add(SSJ_REVIJA);
} else if(disjointTaxonomy.equals(FT_P_PRENOSNIK)){
r.add(FT_P_GOVORNI);
r.add(FT_P_ELEKTRONSKI);
r.add(FT_P_PISNI);
r.add(FT_P_OBJAVLJENO);
r.add(FT_P_KNJIZNO);
r.add(FT_P_PERIODICNO);
r.add(FT_P_CASOPISNO);
r.add(FT_P_DNEVNO);
r.add(FT_P_VECKRAT_TEDENSKO);
r.add(FT_P_CASOPISNO_TEDENSKO);
r.add(FT_P_REVIALNO);
r.add(FT_P_TEDENSKO);
r.add(FT_P_STIRINAJSTDNEVNO);
r.add(FT_P_MESECNO);
r.add(FT_P_REDKEJE_KOT_MESECNO);
r.add(FT_P_OBCASNO);
r.add(FT_P_NEOBJAVLJENO);
r.add(FT_P_JAVNO);
r.add(FT_P_INTERNO);
r.add(FT_P_ZASEBNO);
} else if(disjointTaxonomy.equals(FT_P_PISNI)){
r.add(FT_P_OBJAVLJENO);
r.add(FT_P_KNJIZNO);
r.add(FT_P_PERIODICNO);
r.add(FT_P_CASOPISNO);
r.add(FT_P_DNEVNO);
r.add(FT_P_VECKRAT_TEDENSKO);
r.add(FT_P_CASOPISNO_TEDENSKO);
r.add(FT_P_REVIALNO);
r.add(FT_P_TEDENSKO);
r.add(FT_P_STIRINAJSTDNEVNO);
r.add(FT_P_MESECNO);
r.add(FT_P_REDKEJE_KOT_MESECNO);
r.add(FT_P_OBCASNO);
r.add(FT_P_NEOBJAVLJENO);
r.add(FT_P_JAVNO);
r.add(FT_P_INTERNO);
r.add(FT_P_ZASEBNO);
} else if(disjointTaxonomy.equals(FT_P_OBJAVLJENO)){
r.add(FT_P_KNJIZNO);
r.add(FT_P_PERIODICNO);
r.add(FT_P_CASOPISNO);
r.add(FT_P_DNEVNO);
r.add(FT_P_VECKRAT_TEDENSKO);
r.add(FT_P_CASOPISNO_TEDENSKO);
r.add(FT_P_REVIALNO);
r.add(FT_P_TEDENSKO);
r.add(FT_P_STIRINAJSTDNEVNO);
r.add(FT_P_MESECNO);
r.add(FT_P_REDKEJE_KOT_MESECNO);
r.add(FT_P_OBCASNO);
} else if(disjointTaxonomy.equals(FT_P_PERIODICNO)){
r.add(FT_P_CASOPISNO);
r.add(FT_P_DNEVNO);
r.add(FT_P_VECKRAT_TEDENSKO);
r.add(FT_P_CASOPISNO_TEDENSKO);
r.add(FT_P_REVIALNO);
r.add(FT_P_TEDENSKO);
r.add(FT_P_STIRINAJSTDNEVNO);
r.add(FT_P_MESECNO);
r.add(FT_P_REDKEJE_KOT_MESECNO);
r.add(FT_P_OBCASNO);
} else if(disjointTaxonomy.equals(FT_P_CASOPISNO)){
r.add(FT_P_DNEVNO);
r.add(FT_P_VECKRAT_TEDENSKO);
r.add(FT_P_CASOPISNO_TEDENSKO);
} else if(disjointTaxonomy.equals(FT_P_REVIALNO)) {
r.add(FT_P_TEDENSKO);
r.add(FT_P_STIRINAJSTDNEVNO);
r.add(FT_P_MESECNO);
r.add(FT_P_REDKEJE_KOT_MESECNO);
r.add(FT_P_OBCASNO);
} else if(disjointTaxonomy.equals(FT_P_NEOBJAVLJENO)){
r.add(FT_P_JAVNO);
r.add(FT_P_INTERNO);
r.add(FT_P_ZASEBNO);
} else if(disjointTaxonomy.equals(FT_ZVRST)){
r.add(FT_UMETNOSTNA);
r.add(FT_PESNISKA);
r.add(FT_PROZNA);
r.add(FT_DRAMSKA);
r.add(FT_NEUMETNOSTNA);
r.add(FT_STROKOVNA);
r.add(FT_HID);
r.add(FT_NIT);
r.add(FT_NESTROKOVNA);
r.add(FT_PRAVNA);
} else if(disjointTaxonomy.equals(FT_UMETNOSTNA)){
r.add(FT_PESNISKA);
r.add(FT_PROZNA);
r.add(FT_DRAMSKA);
} else if(disjointTaxonomy.equals(FT_NEUMETNOSTNA)){
r.add(FT_STROKOVNA);
r.add(FT_HID);
r.add(FT_NIT);
r.add(FT_NESTROKOVNA);
r.add(FT_PRAVNA);
} else if(disjointTaxonomy.equals(FT_STROKOVNA)){
r.add(FT_HID);
r.add(FT_NIT);
} else if(disjointTaxonomy.equals(FT_LEKTORIRANO)){
r.add(FT_DA);
r.add(FT_NE);
}
return r;
}
public static ArrayList<Taxonomy> taxonomyDeselected(Taxonomy disjointTaxonomy){
ArrayList<Taxonomy> r = new ArrayList<>();
Map<Taxonomy, Taxonomy> connections = new ConcurrentHashMap<>();
connections.put(DISKURZ_JAVNI, DISKURZ);
connections.put(DISKURZ_INFORMATIVNO_IZOBRAZEVALNI, DISKURZ_JAVNI);
connections.put(DISKURZ_RAZVEDRILNI, DISKURZ_JAVNI);
connections.put(DISKURZ_NEJAVNI, DISKURZ);
connections.put(DISKURZ_NEZASEBNI, DISKURZ_NEJAVNI);
connections.put(DISKURZ_ZASEBNI, DISKURZ_NEJAVNI);
connections.put(SITUACIJA_RADIO, SITUACIJA);
connections.put(SITUACIJA_TELEVIZIJA, SITUACIJA);
connections.put(KANAL_OSEBNI_STIK, KANAL);
connections.put(KANAL_TELEFON, KANAL);
connections.put(KANAL_RADIO, KANAL);
connections.put(KANAL_TELEVIZIJA, KANAL);
connections.put(SSJ_KNJIZNO, SSJ_TISK);
connections.put(SSJ_LEPOSLOVNO, SSJ_KNJIZNO);
connections.put(SSJ_STROKOVNO, SSJ_KNJIZNO);
connections.put(SSJ_PERIODICNO, SSJ_TISK);
connections.put(SSJ_CASOPIS, SSJ_PERIODICNO);
connections.put(SSJ_REVIJA, SSJ_PERIODICNO);
connections.put(SSJ_DRUGO, SSJ_TISK);
connections.put(FT_P_GOVORNI, FT_P_PRENOSNIK);
connections.put(FT_P_ELEKTRONSKI, FT_P_PRENOSNIK);
connections.put(FT_P_PISNI, FT_P_PRENOSNIK);
connections.put(FT_P_OBJAVLJENO, FT_P_PISNI);
connections.put(FT_P_KNJIZNO, FT_P_OBJAVLJENO);
connections.put(FT_P_PERIODICNO, FT_P_OBJAVLJENO);
connections.put(FT_P_CASOPISNO, FT_P_OBJAVLJENO);
connections.put(FT_P_DNEVNO, FT_P_CASOPISNO);
connections.put(FT_P_VECKRAT_TEDENSKO, FT_P_CASOPISNO);
connections.put(FT_P_CASOPISNO_TEDENSKO, FT_P_CASOPISNO);
connections.put(FT_P_REVIALNO, FT_P_PERIODICNO);
connections.put(FT_P_TEDENSKO, FT_P_REVIALNO);
connections.put(FT_P_STIRINAJSTDNEVNO, FT_P_REVIALNO);
connections.put(FT_P_MESECNO, FT_P_REVIALNO);
connections.put(FT_P_REDKEJE_KOT_MESECNO, FT_P_REVIALNO);
connections.put(FT_P_OBCASNO, FT_P_REVIALNO);
connections.put(FT_P_NEOBJAVLJENO, FT_P_PISNI);
connections.put(FT_P_JAVNO, FT_P_NEOBJAVLJENO);
connections.put(FT_P_INTERNO, FT_P_NEOBJAVLJENO);
connections.put(FT_P_ZASEBNO, FT_P_NEOBJAVLJENO);
connections.put(FT_UMETNOSTNA, FT_ZVRST);
connections.put(FT_PESNISKA, FT_UMETNOSTNA);
connections.put(FT_PROZNA, FT_UMETNOSTNA);
connections.put(FT_DRAMSKA, FT_UMETNOSTNA);
connections.put(FT_NEUMETNOSTNA, FT_ZVRST);
connections.put(FT_STROKOVNA, FT_NEUMETNOSTNA);
connections.put(FT_HID, FT_STROKOVNA);
connections.put(FT_NIT, FT_STROKOVNA);
connections.put(FT_NESTROKOVNA, FT_NEUMETNOSTNA);
connections.put(FT_PRAVNA, FT_NEUMETNOSTNA);
connections.put(FT_DA, FT_LEKTORIRANO);
connections.put(FT_NE, FT_LEKTORIRANO);
Taxonomy currentTaxonomy = disjointTaxonomy;
r.add(currentTaxonomy);
while(connections.containsKey(currentTaxonomy)){
currentTaxonomy = connections.get(currentTaxonomy);
r.add(currentTaxonomy);
}
Collections.reverse(r);
return r;
}
public static ArrayList<Taxonomy> convertStringListToTaxonomyList(ObservableList<String> stringList){
System.out.println(stringList);
ArrayList<Taxonomy> taxonomyList = new ArrayList<>();
// System.out.println("INTERESTING STUFF");
// System.out.println(stringList);
for (String e : stringList) {
taxonomyList.add(factoryLongName(e));
}
// System.out.println(taxonomyList);
// System.out.println("-----------------");
return taxonomyList;
}
public static void modifyingTaxonomy(ArrayList<Taxonomy> taxonomy, ArrayList<Taxonomy> checkedItemsTaxonomy, Corpus corpus){
// get taxonomies that were selected/deselected by user
// System.out.println(taxonomy);
// System.out.println(checkedItemsTaxonomy);
Set<Taxonomy> disjointTaxonomies = new HashSet<>(checkedItemsTaxonomy);
if (taxonomy != null) {
disjointTaxonomies.addAll(taxonomy);
for (Taxonomy s : checkedItemsTaxonomy) {
if (taxonomy.contains(s)) {
disjointTaxonomies.remove(s);
}
}
}
// remove previously selected items plus remove taxonomies that are not presented in current setup
ArrayList<Taxonomy> disArr = new ArrayList<>(disjointTaxonomies);
int i = 0;
while(i < disArr.size()){
Taxonomy s = disArr.get(i);
if(!Taxonomy.convertStringListToTaxonomyList(corpus.getTaxonomy()).contains(s)){
disjointTaxonomies.remove(s);
disArr.remove(s);
// taxonomy.remove(s);
i--;
}
i++;
}
if (disjointTaxonomies.size() > 0) {
Taxonomy disjointTaxonomy = disjointTaxonomies.iterator().next();
// taxonomy was selected
if (checkedItemsTaxonomy.contains(disjointTaxonomy)) {
ArrayList<Taxonomy> addTaxonomies = Taxonomy.taxonomySelected(disjointTaxonomy);
checkedItemsTaxonomy.addAll(addTaxonomies);
} else if (taxonomy.contains(disjointTaxonomy)) {
ArrayList<Taxonomy> removeTaxonomies = Taxonomy.taxonomyDeselected(disjointTaxonomy);
checkedItemsTaxonomy.removeAll(removeTaxonomies);
}
}
}
}