示例#1
0
 private IList<Sudija> loadSudije()
 {
     Query q = new Query();
     foreach (AssociationFetch f in this.FetchModes)
         q.FetchModes.Add(f);
     q.OrderClauses.Add(new OrderClause("Prezime", OrderClause.OrderClauseCriteria.Ascending));
     q.OrderClauses.Add(new OrderClause("Ime", OrderClause.OrderClauseCriteria.Ascending));
     return dataContext.GetByCriteria<Sudija>(q);
 }
 private IList<SudijaUcesnik> loadSudije(int takmicenjeId)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Takmicenje.Id", CriteriaOperator.Equal, takmicenjeId));
     q.OrderClauses.Add(new OrderClause("Prezime", OrderClause.OrderClauseCriteria.Ascending));
     q.OrderClauses.Add(new OrderClause("Ime", OrderClause.OrderClauseCriteria.Ascending));
     foreach (AssociationFetch f in this.FetchModes)
         q.FetchModes.Add(f);
     return dataContext.GetByCriteria<SudijaUcesnik>(q);
 }
示例#3
0
 private TakmicarskaKategorija loadKategorija(Takmicenje takmicenje)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Takmicenje", CriteriaOperator.Equal, takmicenje));
     return dataContext.GetByCriteria<TakmicarskaKategorija>(q)[0];
 }
        private IList<GimnasticarUcesnik> findGimnasticariUcesnici(string ime,
            string prezime, Nullable<int> godRodj, Nullable<Gimnastika> gimnastika,
            DrzavaUcesnik drzava, TakmicarskaKategorija kategorija, KlubUcesnik klub,
            int takmicenjeId)
        {
            Query q = new Query();
            if (!String.IsNullOrEmpty(ime))
                q.Criteria.Add(new Criterion("Ime", CriteriaOperator.Like, ime, StringMatchMode.Start, true));
            if (!String.IsNullOrEmpty(prezime))
                q.Criteria.Add(new Criterion("Prezime", CriteriaOperator.Like, prezime, StringMatchMode.Start, true));
            if (godRodj != null)
            {
                q.Criteria.Add(new Criterion("DatumRodjenja.Godina",
                    CriteriaOperator.Equal, (short)godRodj.Value));
            }
            if (gimnastika != null)
                q.Criteria.Add(new Criterion("Gimnastika", CriteriaOperator.Equal, (byte)gimnastika.Value));
            if (drzava != null)
                q.Criteria.Add(new Criterion("DrzavaUcesnik", CriteriaOperator.Equal, drzava));
            if (kategorija != null)
                q.Criteria.Add(new Criterion("TakmicarskaKategorija", CriteriaOperator.Equal, kategorija));
            if (klub != null)
                q.Criteria.Add(new Criterion("KlubUcesnik", CriteriaOperator.Equal, klub));
            q.Criteria.Add(new Criterion("Takmicenje.Id", CriteriaOperator.Equal, takmicenjeId));

            q.Operator = QueryOperator.And;
            q.OrderClauses.Add(new OrderClause("Prezime", OrderClause.OrderClauseCriteria.Ascending));
            q.OrderClauses.Add(new OrderClause("Ime", OrderClause.OrderClauseCriteria.Ascending));
            foreach (AssociationFetch f in this.FetchModes)
            {
                q.FetchModes.Add(f);
            }
            return dataContext.GetByCriteria<GimnasticarUcesnik>(q);
        }
 // TODO: Probaj da sve slicne exists metode generalizujes u jedan metod u
 // klasi IDataContext
 private bool existsKategorijaGimnasticara(KategorijaGimnasticara kat)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Naziv", CriteriaOperator.Equal, kat.Naziv));
     q.Criteria.Add(new Criterion("Gimnastika", CriteriaOperator.Equal, (byte)kat.Gimnastika));
     q.Operator = QueryOperator.And;
     return dataContext.GetCount<KategorijaGimnasticara>(q) > 0;
 }
示例#6
0
        private void insertGimnasticari()
        {
            IList<Drzava> drzave = dataContext.GetAll<Drzava>();

            Query q = new Query();
            q.Criteria.Add(new Criterion("Naziv", CriteriaOperator.Equal, "Seniori"));
            KategorijaGimnasticara seniori = dataContext.GetByCriteria<KategorijaGimnasticara>(q)[0];

            string[] fileNames = new string[]
                {
                    @"..\..\test\Data\KvalifikantiMuskarci.txt",
                    @"..\..\test\Data\KvalifikantiZene.txt"
                };

            for (int i = 0; i < fileNames.Length; i++)
            {
                GimnasticariParser parser = new GimnasticariParser();
                parser.parse(fileNames[i]);

                foreach (object[] o in parser.Gimnasticari)
                {
                    int broj = (int)o[0];
                    string prezime = (string)o[1];
                    string ime = (string)o[2];
                    string kod = (string)o[3];
                    DateTime datumRodj = (DateTime)o[4];

                    Gimnasticar gimnasticar = new Gimnasticar();
                    gimnasticar.Ime = ime;
                    gimnasticar.Prezime = prezime;
                    gimnasticar.DatumRodjenja = new Datum(datumRodj);
                    gimnasticar.Drzava = findDrzava(kod, drzave);
                    if (i == 0)
                        gimnasticar.Gimnastika = Gimnastika.MSG;
                    else
                        gimnasticar.Gimnastika = Gimnastika.ZSG;
                    gimnasticar.Kategorija = seniori;

                    dataContext.Add(gimnasticar);
                }
            }
        }
示例#7
0
 private IList<Gimnasticar> loadAll()
 {
     Query q = new Query();
     if (gimnastika != null)
         q.Criteria.Add(new Criterion("Gimnastika", CriteriaOperator.Equal, (byte)gimnastika.Value));
     q.OrderClauses.Add(new OrderClause("Prezime", OrderClause.OrderClauseCriteria.Ascending));
     q.OrderClauses.Add(new OrderClause("Ime", OrderClause.OrderClauseCriteria.Ascending));
     foreach (AssociationFetch f in this.FetchModes)
         q.FetchModes.Add(f);
     return dataContext.GetByCriteria<Gimnasticar>(q);
 }
示例#8
0
 private bool existsDrzavaNaziv(string naziv)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Naziv", CriteriaOperator.Equal, naziv));
     return dataContext.GetCount<Drzava>(q) > 0;
 }
示例#9
0
        protected override void loadData()
        {
            Query q = new Query();
            string sortingPropertyName = "Naziv";
            q.OrderClauses.Add(new OrderClause(sortingPropertyName, OrderClause.OrderClauseCriteria.Ascending));
            drzave = new List<Drzava>(dataContext.GetByCriteria<Drzava>(q));

            q = new Query();
            q.OrderClauses.Add(new OrderClause("Naziv", OrderClause.OrderClauseCriteria.Ascending));
            klubovi = new List<Klub>(dataContext.GetByCriteria<Klub>(q));
        }
示例#10
0
 private IList<TakmicarskaKategorija> loadKategorije(int takmicenjeId)
 {
     Query q = new Query();
     q.Criteria.Add(
         new Criterion("Takmicenje.Id", CriteriaOperator.Equal, takmicenjeId));
     q.OrderClauses.Add(new OrderClause("RedBroj", OrderClause.OrderClauseCriteria.Ascending));
     return dataContext.GetByCriteria<TakmicarskaKategorija>(q);
 }
示例#11
0
        private List<GimnasticarUcesnik> loadGimnasticari(TakmicarskaKategorija kategorija)
        {
            Query q = new Query();
            q.Criteria.Add(
                new Criterion("TakmicarskaKategorija", CriteriaOperator.Equal, kategorija));
            // Nije potreban Criterion za Takmicenje zato sto TakmicarskaKategorija
            // odredjuje takmicenje (ima asocijaciju prema takmicenju)

            q.OrderClauses.Add(new OrderClause("Prezime", OrderClause.OrderClauseCriteria.Ascending));
            q.OrderClauses.Add(new OrderClause("Ime", OrderClause.OrderClauseCriteria.Ascending));
            q.FetchModes.Add(new AssociationFetch(
                "KlubUcesnik", AssociationFetchMode.Eager));
            q.FetchModes.Add(new AssociationFetch(
                "DrzavaUcesnik", AssociationFetchMode.Eager));
            return new List<GimnasticarUcesnik>(dataContext.GetByCriteria<GimnasticarUcesnik>(q));
        }
示例#12
0
 private KlubUcesnik findKlubUcesnik(int takmicenjeId, string naziv)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Takmicenje.Id", CriteriaOperator.Equal, takmicenjeId));
     q.Criteria.Add(new Criterion("Naziv", CriteriaOperator.Equal, naziv));
     q.Operator = QueryOperator.And;
     IList<KlubUcesnik> result = dataContext.GetByCriteria<KlubUcesnik>(q);
     if (result.Count == 0)
         return null;
     else
         return result[0];
 }
示例#13
0
 private List<Takmicenje> loadTakmicenja()
 {
     Query q = new Query();
     q.OrderClauses.Add(new OrderClause("Datum", OrderClause.OrderClauseCriteria.Descending));
     return new List<Takmicenje>(
         dataContext.GetByCriteria<Takmicenje>(q));
 }
示例#14
0
        private void deleteTakmicenje(Takmicenje takmicenje)
        {
            // brisi ocene
            string query = @"from Ocena o
                           where o.Gimnasticar.Takmicenje.Id = :id";
            IList<Ocena> ocene = dataContext.ExecuteQuery<Ocena>(QueryLanguageType.HQL, query,
                    new string[] { "id" }, new object[] { takmicenje.Id });
            foreach (Ocena o in ocene)
                dataContext.Delete(o);

            // brisi rasporede nastupa
            query = @"select distinct r
                        from RasporedNastupa r
                        join r.Kategorije k
                        where k.Takmicenje.Id = :id";
            IList<RasporedNastupa> rasporediNastupa =
                dataContext.ExecuteQuery<RasporedNastupa>(QueryLanguageType.HQL, query,
                    new string[] { "id" }, new object[] { takmicenje.Id });
            foreach (RasporedNastupa r in rasporediNastupa)
            {
                dataContext.Delete(r);
            }

            // brisi rasporede sudija
            query = @"select distinct r
                        from RasporedSudija r
                        join r.Kategorije k
                        where k.Takmicenje.Id = :id";
            IList<RasporedSudija> rasporediSudija =
                dataContext.ExecuteQuery<RasporedSudija>(QueryLanguageType.HQL, query,
                    new string[] { "id" }, new object[] { takmicenje.Id });
            foreach (RasporedSudija r in rasporediSudija)
                dataContext.Delete(r);

            // brisi sudije ucesnike
            Query q = new Query();
            q.Criteria.Add(new Criterion("Takmicenje", CriteriaOperator.Equal, takmicenje));
            IList<SudijaUcesnik> sudije = dataContext.GetByCriteria<SudijaUcesnik>(q);
            foreach (SudijaUcesnik s in sudije)
                dataContext.Delete(s);

            // brisi rezultatska takmicenja i ekipe
            q = new Query();
            q.Criteria.Add(new Criterion("Takmicenje", CriteriaOperator.Equal, takmicenje));
            IList<RezultatskoTakmicenje> rezTakmicenja =
                dataContext.GetByCriteria<RezultatskoTakmicenje>(q);
            foreach (RezultatskoTakmicenje r in rezTakmicenja)
            {
                Takmicenje1 t1 = r.Takmicenje1;
                foreach (Ekipa ek in t1.Ekipe)
                    dataContext.Delete(ek);
                dataContext.Delete(r);
            }

            // brisi gimnasticare ucesnike
            q = new Query();
            q.Criteria.Add(new Criterion("Takmicenje", CriteriaOperator.Equal, takmicenje));
            IList<GimnasticarUcesnik> gimnasticari =
                dataContext.GetByCriteria<GimnasticarUcesnik>(q);
            foreach (GimnasticarUcesnik g in gimnasticari)
                dataContext.Delete(g);

            // brisi klubove ucesnike
            q = new Query();
            q.Criteria.Add(new Criterion("Takmicenje", CriteriaOperator.Equal, takmicenje));
            IList<KlubUcesnik> klubovi =
                dataContext.GetByCriteria<KlubUcesnik>(q);
            foreach (KlubUcesnik k in klubovi)
                dataContext.Delete(k);

            // brisi drzave ucesnike
            q = new Query();
            q.Criteria.Add(new Criterion("Takmicenje", CriteriaOperator.Equal, takmicenje));
            IList<DrzavaUcesnik> drzave =
                dataContext.GetByCriteria<DrzavaUcesnik>(q);
            foreach (DrzavaUcesnik d in drzave)
                dataContext.Delete(d);

            // brisi kategorije
            dataContext.Attach(takmicenje, false);
            foreach (TakmicarskaKategorija k in takmicenje.Kategorije)
                dataContext.Delete(k);

            // brisi descriptions
            foreach (RezultatskoTakmicenjeDescription d in takmicenje.TakmicenjeDescriptions)
                dataContext.Delete(d);

            // brisi takmicenje
            dataContext.Delete(takmicenje);
        }
示例#15
0
 private Takmicenje loadTakmicenje(string naziv)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Mesto", CriteriaOperator.Equal, naziv));
     q.Criteria.Add(new Criterion("Gimnastika", CriteriaOperator.Equal, (byte)gimnastika));
     return dataContext.GetByCriteria<Takmicenje>(q)[0];
 }
 private List<KategorijaGimnasticara> loadKategorije(Nullable<Gimnastika> gimnastika)
 {
     Query q = new Query();
     if (gimnastika != null)
         q.Criteria.Add(new Criterion("Gimnastika", CriteriaOperator.Equal, (byte)gimnastika));
     q.OrderClauses.Add(new OrderClause("Naziv", OrderClause.OrderClauseCriteria.Ascending));
     return new List<KategorijaGimnasticara>(
         dataContext.GetByCriteria<KategorijaGimnasticara>(q));
 }
示例#17
0
 private bool existsDrzavaKod(string kod)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Kod", CriteriaOperator.Equal, kod));
     return dataContext.GetCount<Drzava>(q) > 0;
 }
示例#18
0
 private bool existsSudijaImePrezime(string ime, string prezime)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Ime", CriteriaOperator.Equal, ime));
     q.Criteria.Add(new Criterion("Prezime", CriteriaOperator.Equal, prezime));
     q.Operator = QueryOperator.And;
     return dataContext.GetCount<Sudija>(q) > 0;
 }
示例#19
0
 private IList<Gimnasticar> findGimnasticari(RegistarskiBroj regBroj)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("RegistarskiBroj", CriteriaOperator.Equal, regBroj));
     foreach (AssociationFetch f in this.FetchModes)
     {
         q.FetchModes.Add(f);
     }
     return dataContext.GetByCriteria<Gimnasticar>(q);
 }
示例#20
0
        private IList<TakmicarskaKategorija> loadKategorijeGimnasticara(int takmicenjeId)
        {
            Query q = new Query();
            Gimnastika gimnastika = dataContext.GetById<Takmicenje>(takmicenjeId).Gimnastika;

            q = new Query();
            q.Criteria.Add(new Criterion("Gimnastika", CriteriaOperator.Equal, (byte)gimnastika));
            IList<KategorijaGimnasticara> kategorije =
                dataContext.GetByCriteria<KategorijaGimnasticara>(q);

            IList<TakmicarskaKategorija> result = new List<TakmicarskaKategorija>();
            foreach (KategorijaGimnasticara kat in kategorije)
            {
                result.Add(new TakmicarskaKategorija(kat.Naziv, kat.Gimnastika));
            }
            return result;
        }
示例#21
0
 private IList<KlubUcesnik> findKluboviUcesnici(int takmicenjeId)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Takmicenje.Id", CriteriaOperator.Equal, takmicenjeId));
     q.OrderClauses.Add(new OrderClause("Naziv", OrderClause.OrderClauseCriteria.Ascending));
     return dataContext.GetByCriteria<KlubUcesnik>(q);
 }
示例#22
0
 private IList<TakmicarskaKategorija> loadTakKategorije(int takmicenjeId)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Takmicenje.Id", CriteriaOperator.Equal, takmicenjeId));
     return dataContext.GetByCriteria<TakmicarskaKategorija>(q);
 }
示例#23
0
        private void insertRegistrovaniGimnasticari()
        {
            RegistrovaniGimnasticariParser parser = new RegistrovaniGimnasticariParser();
            string fileName = @"..\..\test\Data\RegistracijaTakmicara2009.txt";
            parser.parse(fileName);

            IList<Gimnasticar> gimnasticari = dataContext.GetAll<Gimnasticar>();
            IList<Klub> klubovi = dataContext.GetAll<Klub>();

            Query q = new Query();
            q.Criteria.Add(new Criterion("Kod", CriteriaOperator.Equal, "SRB"));
            Drzava srbija = dataContext.GetByCriteria<Drzava>(q)[0];

            foreach (object[] o in parser.Gimnasticari)
            {
                char pol = (char)o[0];
                string ime = (string)o[1];
                string prezime = (string)o[2];
                string datumRodj = (string)o[3];
                string klubMesto = (string)o[4];
                string regBroj = (string)o[5];
                string datumReg = (string)o[6];

                Gimnasticar gimnasticar = findGimnasticar(ime, prezime, gimnasticari);
                if (gimnasticar != null)
                {
                    if (datumRodj.Trim() == "NULL")
                        gimnasticar.DatumRodjenja = null;
                    else
                        gimnasticar.DatumRodjenja = Datum.Parse(datumRodj);
                    gimnasticar.RegistarskiBroj = RegistarskiBroj.Parse(regBroj);
                    if (datumReg.Trim() == String.Empty)
                        gimnasticar.DatumPoslednjeRegistracije = null;
                    else
                        gimnasticar.DatumPoslednjeRegistracije = Datum.Parse(datumReg);
                    gimnasticar.Klub = findKlub(klubMesto, klubovi);

                    dataContext.Save(gimnasticar);
                }
                else
                {
                    gimnasticar = new Gimnasticar();
                    if (pol == 'M')
                        gimnasticar.Gimnastika = Gimnastika.MSG;
                    else if (pol == 'Z')
                        gimnasticar.Gimnastika = Gimnastika.ZSG;
                    else if (pol == ' ')
                        gimnasticar.Gimnastika = Gimnastika.Undefined;
                    else
                        throw new FormatException("Invalid format in file " + fileName);

                    gimnasticar.Ime = ime.Trim();
                    gimnasticar.Prezime = prezime.Trim();
                    if (datumRodj.Trim() == "NULL")
                        gimnasticar.DatumRodjenja = null;
                    else
                        gimnasticar.DatumRodjenja = Datum.Parse(datumRodj);
                    gimnasticar.RegistarskiBroj = RegistarskiBroj.Parse(regBroj);
                    if (datumReg.Trim() == String.Empty)
                        gimnasticar.DatumPoslednjeRegistracije = null;
                    else
                        gimnasticar.DatumPoslednjeRegistracije = Datum.Parse(datumReg);

                    gimnasticar.Klub = findKlub(klubMesto, klubovi);
                    gimnasticar.Drzava = srbija;

                    dataContext.Add(gimnasticar);
                }
            }
        }
示例#24
0
        protected override void loadData()
        {
            if (editMode)
                kategorije = loadKategorije(((Gimnasticar)entity).Gimnastika);
            else
                kategorije = new List<KategorijaGimnasticara>();

            Query q = new Query();
            q.OrderClauses.Add(new OrderClause("Naziv", OrderClause.OrderClauseCriteria.Ascending));
            klubovi = new List<Klub>(dataContext.GetByCriteria<Klub>(q));

            q = new Query();
            q.OrderClauses.Add(new OrderClause("Naziv", OrderClause.OrderClauseCriteria.Ascending));
            drzave = new List<Drzava>(dataContext.GetByCriteria<Drzava>(q));

            q = new Query();
            q.OrderClauses.Add(new OrderClause("Prezime", OrderClause.OrderClauseCriteria.Ascending));
            gimnasticari = new List<Gimnasticar>(dataContext.GetByCriteria<Gimnasticar>(q));
        }
示例#25
0
 private int getKategorijeCount(int takmicenjeId)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Takmicenje.Id", CriteriaOperator.Equal, takmicenjeId));
     return dataContext.GetCount<TakmicarskaKategorija>(q);
 }
示例#26
0
 private bool existsGimnasticarImeSrednjeImePrezimeDatumRodjenja(Gimnasticar g)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("Ime", CriteriaOperator.Equal, g.Ime));
     q.Criteria.Add(new Criterion("Prezime", CriteriaOperator.Equal, g.Prezime));
     if (string.IsNullOrEmpty(g.SrednjeIme))
         q.Criteria.Add(new Criterion("SrednjeIme", CriteriaOperator.IsNull, null));
     else
         q.Criteria.Add(new Criterion("SrednjeIme", CriteriaOperator.Equal, g.SrednjeIme));
     q.Operator = QueryOperator.And;
     IList<Gimnasticar> result = dataContext.GetByCriteria<Gimnasticar>(q);
     foreach (Gimnasticar g2 in result)
     {
         // Equals dodatno proverava datum rodjenja
         if (g2.Equals(g))
             return true;
     }
     return false;
 }
示例#27
0
 private bool existsGimnasticarRegBroj(RegistarskiBroj regBroj)
 {
     Query q = new Query();
     q.Criteria.Add(new Criterion("RegistarskiBroj.Broj", CriteriaOperator.Equal, regBroj.Broj));
     return dataContext.GetCount<Gimnasticar>(q) > 0;
 }
        private void loadData()
        {
            kategorije = loadKategorije(gimnastika);

            Query q = new Query();
            string sortingPropertyName = "Naziv";
            q.OrderClauses.Add(new OrderClause(sortingPropertyName, OrderClause.OrderClauseCriteria.Ascending));
            klubovi = new List<Klub>(dataContext.GetByCriteria<Klub>(q));

            q = new Query();
            sortingPropertyName = "Naziv";
            q.OrderClauses.Add(new OrderClause(sortingPropertyName, OrderClause.OrderClauseCriteria.Ascending));
            drzave = new List<Drzava>(dataContext.GetByCriteria<Drzava>(q));
        }
 private IList<GimnasticarUcesnik> loadAll()
 {
     Query q = new Query();
     if (gimnastika != null)
         q.Criteria.Add(new Criterion("Gimnastika", CriteriaOperator.Equal, (byte)gimnastika.Value));
     if (kategorija != null)
         q.Criteria.Add(new Criterion("TakmicarskaKategorija", CriteriaOperator.Equal, kategorija));
     q.Criteria.Add(new Criterion("Takmicenje.Id", CriteriaOperator.Equal, takmicenjeId));
     q.Operator = QueryOperator.And;
     q.OrderClauses.Add(new OrderClause("Prezime", OrderClause.OrderClauseCriteria.Ascending));
     q.OrderClauses.Add(new OrderClause("Ime", OrderClause.OrderClauseCriteria.Ascending));
     foreach (AssociationFetch f in this.FetchModes)
         q.FetchModes.Add(f);
     return dataContext.GetByCriteria<GimnasticarUcesnik>(q);
 }
示例#30
0
        private void insertSudijeUcesnici()
        {
            Takmicenje takmicenje = loadTakmicenje("Milano");

            Query q = new Query();
            q.Criteria.Add(new Criterion("Takmicenje", CriteriaOperator.Equal, takmicenje));
            IList<DrzavaUcesnik> drzave = dataContext.GetByCriteria<DrzavaUcesnik>(q);

            ISet<SudijaUcesnik> sudije = new HashSet<SudijaUcesnik>();

            string[] fileNames;
            if (gimnastika == Gimnastika.MSG)
                fileNames = new string[]
                {
                    @"..\..\test\Data\RasporedSudijaMuskarciKvalifikacije.txt",
                    @"..\..\test\Data\RasporedSudijaMuskarciViseboj.txt",
                };
            else
                fileNames = new string[]
                {
                    @"..\..\test\Data\RasporedSudijaZeneKvalifikacije.txt",
                    @"..\..\test\Data\RasporedSudijaZeneViseboj.txt"
                };

            for (int i = 0; i < fileNames.Length; i++)
            {
                SudijeParser parser = new SudijeParser();
                parser.parse(fileNames[i]);

                Pol pol = Pol.Muski;
                if (gimnastika == Gimnastika.ZSG)
                    pol = Pol.Zenski;
                foreach (object[] o in parser.SudijskeUloge)
                {
                    string ime = (string)o[0];
                    string prezime = (string)o[1];
                    string kod = (string)o[2];
                    SudijskaUloga uloga = (SudijskaUloga)o[4];
                    bool clanGlavSudOdbora =
                        uloga >= SudijskaUloga.PredsednikGlavnogSudijskogOdbora
                        && uloga <= SudijskaUloga.GredaKontrolor;

                    SudijaUcesnik sudija = new SudijaUcesnik();
                    sudija.Ime = ime;
                    sudija.Prezime = prezime;
                    sudija.Pol = pol;
                    if (clanGlavSudOdbora)
                        sudija.UlogaUGlavnomSudijskomOdboru = uloga;
                    else
                        sudija.UlogaUGlavnomSudijskomOdboru = SudijskaUloga.Undefined;
                    sudija.DrzavaUcesnik = findDrzavaUcesnik(kod, drzave);
                    if (sudija.DrzavaUcesnik == null)
                        throw new Exception("Greska prilikom dodavanja sudija ucesnika.");

                    sudija.Takmicenje = takmicenje;

                    if (sudije.Add(sudija))
                        dataContext.Add(sudija);
                }
            }
            /*foreach (DrzavaUcesnik d in drzave)
                dataContext.Evict(d);*/
        }