From cc79d34f64b577e76c6022ecdd0e76548b619ddb Mon Sep 17 00:00:00 2001
From: tornhale <hannes.lt.tornberg@student.jyu.fi>
Date: Mon, 10 Mar 2025 20:04:24 +0200
Subject: [PATCH] =?UTF-8?q?Testej=C3=A4=20vaille=20vaihe=205?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 Kirjalista.jar                                | Bin 262305 -> 234742 bytes
 build.xml                                     |   2 +-
 src/Kirjalista/Genre.java                     |  44 ++++++++-
 src/Kirjalista/GenreRelaatio.java             |  27 +++++-
 src/Kirjalista/Genret.java                    |  84 ++++++++++++++++++
 src/Kirjalista/KirjanGenre.java               |  13 ++-
 src/Kirjalista/Kirjasto.java                  |  67 ++++++++++----
 src/Kirjalista/Kirjat.java                    |  54 +++++++++--
 src/Kirjalista/test/GenreRelaatioTest.java    |  28 ++++++
 src/Kirjalista/test/KirjanGenreTest.java      |  35 ++------
 src/fxKirjalista/KirjalistaGUIController.java |   7 +-
 src/fxKirjalista/LisaaController.java         |  39 +++++++-
 12 files changed, 328 insertions(+), 72 deletions(-)
 create mode 100644 src/Kirjalista/Genret.java
 create mode 100644 src/Kirjalista/test/GenreRelaatioTest.java

diff --git a/Kirjalista.jar b/Kirjalista.jar
index 8463797545d1e1cab93946687893a8335db33d9e..efec7402fef9b585d65eceb0e90b8d3e390fa6cd 100644
GIT binary patch
delta 20618
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
SivQ5xr{N04s(1PI`Tqg1PSd{t

delta 48142
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

diff --git a/build.xml b/build.xml
index 3ccde9e..76ad47b 100644
--- a/build.xml
+++ b/build.xml
@@ -17,7 +17,7 @@
             <zipfileset excludes="META-INF/*.SF" src="C:/devel/jar/Ali.jar"/>
             <zipfileset excludes="META-INF/*.SF" src="C:/devel/jar/fxgui.jar"/>
             <zipfileset excludes="META-INF/*.SF" src="C:/devel/jar/Graphics.jar"/>
-            <zipfileset excludes="META-INF/*.SF" src="C:/devel/jar/Music.jar"/>
+            <zipfileset excludes="META-INF/*.SF" src="C:/Users/omistaja/Ohjelmointi/Java-projektit/Jarreja/Tietorakenne.jar"/>
         </jar>
     </target>
 </project>
diff --git a/src/Kirjalista/Genre.java b/src/Kirjalista/Genre.java
index ce75905..6aaa9ab 100644
--- a/src/Kirjalista/Genre.java
+++ b/src/Kirjalista/Genre.java
@@ -1,5 +1,7 @@
 package Kirjalista;
 
+import java.io.PrintStream;
+import java.util.Random;
 
 /**
  * Genre-luokka
@@ -17,7 +19,7 @@ public class Genre {
     /**
      * Ottaa merkkijonon ja muuttaa sen genren tiedoiksi, poistaa turhat völilyönnit ja muuttaa
      * syötteen pieniksi kirjaimiksi
-     * @param mjono Merkkijono, josta kirjan tiedot saadaan
+     * @param mjono Merkkijono, josta genren tiedot saadaan
      * <pre name="test">
      * Genre g = new Genre();
      * g.parse("fantasia");
@@ -58,6 +60,25 @@ public class Genre {
     }
     
     
+    
+    private String[] esim = {"Fantasia", "Sci-fi", "Kauhu"};
+    /**
+     * Asettaa genreksi jonkun ylläolevista
+     * TODO poista
+     */
+    public void esimerkkiGenre() {
+        Random rand = new Random();
+        this.nimi = esim[rand.nextInt(3)];
+    }
+    
+    
+    /**
+     * @return Genren nimi
+     */
+    public String getNimi() {
+        return this.nimi;
+    }
+    
     /**
      * palauttaa genren id:n
      * @return Genren id
@@ -65,4 +86,25 @@ public class Genre {
     public int getId() {
         return this.id;
     }
+    
+    
+    /**
+     * Tulostaa genren tiedot
+     * @param out Tietovirta johon tulostetaan
+     */
+    public void tulosta(PrintStream out) {
+        out.println(this.id + " " + this.nimi);
+    }
+
+
+    /**
+     * Asettaa id:lle annetun arvon
+     * @param id arvo, joka asetetaan id:ksi
+     * Tämä olemassa, koska tietyllä genrellä on aina tietty id ja ilman tätä aliohjelmaa tulisi
+     * ongelmia sellaisten lisättyjen kirjojen kanssa, joiden genre on jo "tietokannassa." Ilman tätä
+     * kyseisten genrejen id olisi 0 ja ohjelma ei osaisi hakea niitä
+     */
+    public void setId(int id) {
+        this.id = id;
+    }
 }
diff --git a/src/Kirjalista/GenreRelaatio.java b/src/Kirjalista/GenreRelaatio.java
index 8cb4e5f..8a2ef37 100644
--- a/src/Kirjalista/GenreRelaatio.java
+++ b/src/Kirjalista/GenreRelaatio.java
@@ -28,15 +28,29 @@ public class GenreRelaatio {
      * esim. palauttaa kaikkien kirjojen id:t, joiden genre on fantasia
      * @param genreId Genren id, jonka perusteella haetaan kirjojen id:itä
      * @return Kaikkien niiden kirjojen id:t, joiden genren id on genreId 
+     * TODO testit
+     * <pre name="test">
+     * GenreRelaatio gr = new GenreRelaatio();
+	 * gr.lisaa(new KirjanGenre(1, 2));
+	 * int[] t = gr.haeKirjat(2);  
+	 * t[0] === 1;
+	 * TODO lisää testejä
+	 * </pre>
      */
     public ArrayList<Integer> haeKirjat(int genreId) {
+        //if (alkiot.length() <= 0) throw new IndexOutOfBoundsException();        
         ArrayList<Integer> kirjojenIdt = new ArrayList<Integer>();
+        
+        alkiot.iter = alkiot.getEka();
+        
         for (int i = 0; i < alkiot.length(); i++) {
-            KirjanGenre alkio = alkiot.getByIndex(i);
+            KirjanGenre alkio = alkiot.iter.getSisalto();
             if (alkio.getGenreId() == genreId) {
-                kirjojenIdt.add(alkio.getKirjaId());
+                kirjojenIdt.add(alkio.getGenreId());
             }
+            alkiot.iter = alkiot.iter.getNext();
         }
+        
         return kirjojenIdt;
     }
     
@@ -46,15 +60,22 @@ public class GenreRelaatio {
      * eli toisin sanoen palauttaa tietyn kirjan kaikkien genrejen id:t
      * @param kirjaId Kirjan id, jonka perusteella haetaan genrejen id:itä
      * @return Kaikkien niiden genrejen id:t, joiden kirjan id on kirjaId 
+     * TODO testit
      */
     public ArrayList<Integer> haeGenret(int kirjaId) {
+        //if (alkiot.length() <= 0) throw new IndexOutOfBoundsException(); ??? tämä ei mahdollista
         ArrayList<Integer> genrejenIdt = new ArrayList<Integer>();
+        
+        alkiot.iter = alkiot.getEka();
+        
         for (int i = 0; i < alkiot.length(); i++) {
-            KirjanGenre alkio = alkiot.getByIndex(i);
+            KirjanGenre alkio = alkiot.iter.getSisalto();
             if (alkio.getKirjaId() == kirjaId) {
                 genrejenIdt.add(alkio.getGenreId());
             }
+            alkiot.iter = alkiot.iter.getNext();
         }
+        
         return genrejenIdt;
     }
     
diff --git a/src/Kirjalista/Genret.java b/src/Kirjalista/Genret.java
new file mode 100644
index 0000000..c852475
--- /dev/null
+++ b/src/Kirjalista/Genret.java
@@ -0,0 +1,84 @@
+package Kirjalista;
+
+import java.util.ArrayList;
+import java.util.NoSuchElementException;
+
+/**
+ * Monikkoluokka genreille
+ * - Sisältää listan genreistä
+ * - Lisää ja poistaa kirjoja
+ * - Lukee ja kirjoittaa tiedostoon
+ * - Etsii ja lajittelee
+ */
+public class Genret {
+    private ArrayList<Genre> alkiot = new ArrayList<Genre>();
+    
+    
+    /**
+     * Lisää genren listaan, jos samannimistä genreä ei ole olemassa
+     * @param genre Lisättävä genre
+     */
+    public void lisaa(Genre genre) {
+        if (onOlemassa(genre.getNimi())) {
+            genre.setId(haeIdNimella(genre.getNimi()));
+            return;
+        }
+        genre.rekisteroi();
+        alkiot.add(genre);
+    }
+    
+    
+    private int haeIdNimella(String nimi) {
+        for (int i = 0; i < alkiot.size(); i++) {
+            if (alkiot.get(i).getNimi() == nimi) return alkiot.get(i).getId();
+        }
+        return -1;
+    }
+
+
+    /**
+     * Poistaa genren annetulla id:llä
+     * @param id Id, jonka perusteella genre poistetaan
+     * TODO testit
+     */
+    public void poista(int id) {
+        for (int i = 0; i < alkiot.size(); i++) {
+            if (alkiot.get(i).getId() == id) {
+                alkiot.remove(i);
+                return;
+            }
+        }
+        throw new NoSuchElementException("Genreä id:llä " + id + " ei löydy.");
+    }
+    
+    
+    /**
+     * Tarkistaa, onko tietyn nimistä genreä olemassa
+     * @param nimi Genren nimi
+     * @return True, jos genre on olemassa
+     */
+    public boolean onOlemassa(String nimi) {
+        for (int i = 0; i < alkiot.size(); i++) {
+            if (alkiot.get(i).getNimi() == nimi) {
+                return true;
+            }
+        }
+        return false;
+    }
+    
+    
+    /**
+     * Hakee genren nimen id:n perusteella
+     * @param id haettavan genren id
+     * @return Viite genreen halutulla id:llä
+     * TODO testit
+     */
+    public Genre hae(int id) {
+        for (int i = 0; i < alkiot.size(); i++) {
+            if (alkiot.get(i).getId() == id) return alkiot.get(i);
+        }
+        
+        throw new NoSuchElementException("Genreä id:llä " + id + " ei löydy!");
+    }
+    
+}
diff --git a/src/Kirjalista/KirjanGenre.java b/src/Kirjalista/KirjanGenre.java
index 5e786c7..3b59375 100644
--- a/src/Kirjalista/KirjanGenre.java
+++ b/src/Kirjalista/KirjanGenre.java
@@ -11,15 +11,12 @@ public class KirjanGenre {
     
     /**
      * Luo olion
-     * @param kirjaId Kirjan id
-     * @param genreId Genren id
-     * <pre name="test">
-     
-     * </pre>
+     * @param kirja Kirja
+     * @param genre Genre
      */
-    public KirjanGenre(int kirjaId, int genreId) {
-        this.kirjaId = kirjaId;
-        this.genreId = genreId;
+    public KirjanGenre(Kirja kirja, Genre genre) {
+        this.kirjaId = kirja.getId();
+        this.genreId = genre.getId();
     }
     
     
diff --git a/src/Kirjalista/Kirjasto.java b/src/Kirjalista/Kirjasto.java
index 03475a8..aaca495 100644
--- a/src/Kirjalista/Kirjasto.java
+++ b/src/Kirjalista/Kirjasto.java
@@ -1,6 +1,7 @@
 package Kirjalista;
 
-
+import java.util.ArrayList;
+import java.util.NoSuchElementException;
 
 /**
  * Luokka, joka keskustelee käyttöliittymän kanssa 
@@ -8,8 +9,8 @@ package Kirjalista;
  */
 public class Kirjasto {
     private Kirjat kirjat = new Kirjat();
-    private GenreRelaatio genreRelaatio;
-    //private Genret genret;
+    private GenreRelaatio genreRelaatio = new GenreRelaatio();
+    private Genret genret = new Genret();
     
     
     
@@ -23,25 +24,50 @@ public class Kirjasto {
     
     
     /**
-     * Ottaa taulukollisen genreId:itä ja liima ne kirjan id:n kanssa yhteen. Lisää lopuksi listaan
-     * @param kirjaId Kirjan id
-     * @param genreId Taulukko kaikista kirjan genrejen id:istä
+     * Lisää genret, jos sen nimisiä ei vielä ole olemassa
+     * @param genre Lisättävät genret
      */
-    public void lisaaGenreRelaatio(int kirjaId, int[] genreId) {
-        for (int i = 0; i < genreId.length; i++) {
-            genreRelaatio.lisaa(new KirjanGenre(kirjaId, genreId[i])); 
+    public void lisaaGenre(Genre[] genre) {
+        for (int i = 0; i < genre.length; i++) {
+            genret.lisaa(genre[i]);
         }
     }
     
-    // TODO haku ja poisto genreRelaatioille
+    /**
+     * Ottaa taulukollisen genrejä ja liima ne kirjan id:n kanssa yhteen
+     * @param kirja Kirja
+     * @param kirjanGenret Taulukko kaikista kirjan genreistä
+     */
+    public void lisaaGenreRelaatio(Kirja kirja, Genre[] kirjanGenret) {
+        for (int i = 0; i < kirjanGenret.length; i++) {
+            genreRelaatio.lisaa(new KirjanGenre(kirja, kirjanGenret[i])); 
+        }
+    }
+    
+    // TODO haku ja poisto genreRelaatioille ???
     
     /**
-     * @param indeksi Indeksipaikka, josta kirja haetaan
+     * @param idnro Haettavan kirjan id
      * @return Kirja annetussa indeksipaikassa
-     * @throws IndexOutOfBoundsException Jos indeksi laiton
+     * @throws NoSuchElementException Jos id laiton
      */
-    public Kirja haeKirja(int indeksi) throws IndexOutOfBoundsException {
-        return kirjat.hae(indeksi);
+    public Kirja haeKirja(int idnro) throws NoSuchElementException {
+        return kirjat.hae(idnro);
+    }
+    
+    
+    /**
+     * Hakee taulukon kirjan genreistä kirjan id:n perusteella
+     * @param kirjaId Sen kirjan id, jonka genrejä haetaan
+     * @return Kaikki kirjan genret taulukossa
+     */
+    public Genre[] haeGenret(int kirjaId) {
+        ArrayList<Integer> idt = genreRelaatio.haeGenret(kirjaId);
+        Genre[] palautettava = new Genre[idt.size()];
+        for (int i = 0; i < idt.size(); i++) {
+            palautettava[i] = genret.hae(idt.get(i));
+        }
+        return palautettava;
     }
     
     
@@ -51,9 +77,14 @@ public class Kirjasto {
     public int getKirjaLkm() {
         return this.kirjat.getLkm();
     }
-    /*
-    public Genre haeGenre(Kirja kirja) {
-        GenreRelaatio.haeGenret();
+
+    
+    /**
+     * Hakee kirjan indeksin perusteella
+     * @param ind Indeksipaikka, josta kirja haetaan
+     * @return Kirja annetussa indeksipaikassa
+     */
+    public Kirja haeKirjaIndeksilla(int ind) {
+        return kirjat.haeIndeksilla(ind);
     }
-    */
 }
diff --git a/src/Kirjalista/Kirjat.java b/src/Kirjalista/Kirjat.java
index 27f9f89..8f56955 100644
--- a/src/Kirjalista/Kirjat.java
+++ b/src/Kirjalista/Kirjat.java
@@ -1,5 +1,6 @@
 package Kirjalista;
 
+import java.util.NoSuchElementException;
 
 /**
  * Monikkoluokka kirjoille.
@@ -10,7 +11,7 @@ package Kirjalista;
  */
 public class Kirjat {
     private int maxLkm = 8;
-    private int lkm;
+    private int lkm = 0;
     private Kirja[] alkiot = new Kirja[maxLkm];
     
     
@@ -21,24 +22,59 @@ public class Kirjat {
     public void lisaa(Kirja kirja) throws SailoException {
         if (this.lkm >= this.alkiot.length) throw new SailoException("Liikaa alkioita");
         this.alkiot[this.lkm] = kirja;
+        kirja.rekisteroi();
         this.lkm++;
     }
     
     
+    /**
+     * Poistaa kirjan annetulla id:llä
+     * @param id Poistettavan kirjan id
+     * @throws NoSuchElementException Jos id:tä vastaavaa kirjaa ei löydy
+     * TODO testit
+     */
+    public void poista(int id) throws NoSuchElementException {
+        for (int i = 0; i < alkiot.length; i++) {
+            if (alkiot[i].getId() == id) {
+                for (int j = i; j < alkiot.length - 1; j++) {
+                    alkiot[j] = alkiot[j + 1];
+                }
+                alkiot[alkiot.length] = null;
+                this.lkm--;
+                return;
+            }
+        }
+        throw new NoSuchElementException("Kirjaa id:llä " + id + " ei löydy.");
+    }
 
     /**
-     * Hakee kirjan indeksipaikassa i
-     * @param i Halutun kirjan indeksi
-     * @return viite kirjaan, jonka indeksi on i
-     * @throws IndexOutOfBoundsException jos indeksi liian suuri tai pieni  
+     * Hakee kirjan id:n perusteella
+     * @param id Halutun kirjan id
+     * @return Viite kirjaan halutulla id:llä
+     * @throws NoSuchElementException
+     * TODO testit
      */
-    public Kirja hae(int i) throws IndexOutOfBoundsException {
-        if (i < 0 || this.lkm <= i)
-            throw new IndexOutOfBoundsException("Laiton indeksi: " + i);
-        return this.alkiot[i];
+    public Kirja hae(int id) throws NoSuchElementException {
+        
+        for (int i = 0; i < alkiot.length; i++) {
+            if (alkiot[i].getId() == id) return alkiot[i];
+        }
+        
+        throw new NoSuchElementException("Kirjaa id:llä " + id + " ei löytynyt.");
     }
 
     
+    /**
+     * Hakee kirjan indeksin perusteella
+     * @param ind Indeksipaikka, josta kirja haetaan
+     * @return Kirja annetussa indeksipaikassa
+     */
+    public Kirja haeIndeksilla(int ind) {
+        if (ind < 0 || ind >= this.lkm) throw new NullPointerException("Laiton indeksi");
+        return alkiot[ind];
+    }
+    
+    
     /**
      * Palauttaa kirjojen lukumäärän
      * @return kirjojen lukumäärä
diff --git a/src/Kirjalista/test/GenreRelaatioTest.java b/src/Kirjalista/test/GenreRelaatioTest.java
new file mode 100644
index 0000000..e0049be
--- /dev/null
+++ b/src/Kirjalista/test/GenreRelaatioTest.java
@@ -0,0 +1,28 @@
+package Kirjalista.test;
+// Generated by ComTest BEGIN
+import static org.junit.Assert.*;
+import org.junit.*;
+import Kirjalista.*;
+// Generated by ComTest END
+import tietorakenne.LinkattuLista;
+
+/**
+ * Test class made by ComTest
+ * @version 2025.03.05 22:52:50 // Generated by ComTest
+ *
+ */
+@SuppressWarnings({ "all" })
+public class GenreRelaatioTest {
+
+
+
+  // Generated by ComTest BEGIN
+  /** testHaeKirjat33 */
+  @Test
+  public void testHaeKirjat33() {    // GenreRelaatio: 33
+    GenreRelaatio gr = new GenreRelaatio(); 
+    gr.lisaa(new KirjanGenre(1, 2)); 
+    int[] t = gr.haeKirjat(2); 
+    assertEquals("From: GenreRelaatio line: 37", 1, t[0]); 
+  } // Generated by ComTest END
+}
\ No newline at end of file
diff --git a/src/Kirjalista/test/KirjanGenreTest.java b/src/Kirjalista/test/KirjanGenreTest.java
index 4034012..67e68bc 100644
--- a/src/Kirjalista/test/KirjanGenreTest.java
+++ b/src/Kirjalista/test/KirjanGenreTest.java
@@ -2,41 +2,16 @@ package Kirjalista.test;
 // Generated by ComTest BEGIN
 import static org.junit.Assert.*;
 import org.junit.*;
-
-import Kirjalista.Genre;
-import Kirjalista.Kirja;
-import Kirjalista.KirjanGenre;
+import Kirjalista.*;
+// Generated by ComTest END
+ * @version 2025.03.10 18:15:06 // Generated by ComTest
+package Kirjalista.test;
 
 /**
  * Test class made by ComTest
- * @version 2025.02.24 13:51:58 // Generated by ComTest
+ * @version 2025.03.10 18:15:06 // Generated by ComTest
  *
  */
 @SuppressWarnings({ "all" })
 public class KirjanGenreTest {
-
-
-
-  // Generated by ComTest BEGIN
-  /** testKirjanGenre16 */
-  @Test
-  public void testKirjanGenre16() {    // KirjanGenre: 16
-    Kirja k = new Kirja(); 
-    k.rekisteroi(); 
-    Kirja k1 = new Kirja(); 
-    k1.rekisteroi(); 
-    Genre g = new Genre(); 
-    g.rekisteroi(); 
-    Genre g1 = new Genre(); 
-    g1.rekisteroi(); 
-    KirjanGenre kg = new KirjanGenre(k, g); 
-    KirjanGenre kg1 = new KirjanGenre(k1, g1); 
-    KirjanGenre kg2 = new KirjanGenre(k, g1); 
-    assertEquals("From: KirjanGenre line: 31", k.getId(), kg.getKirjaId()); 
-    assertEquals("From: KirjanGenre line: 32", k1.getId(), kg1.getKirjaId());
-    assertEquals("From: KirjanGenre line: 33", k.getId(), kg2.getKirjaId()); 
-    assertEquals("From: KirjanGenre line: 35", g.getId(), kg.getGenreId()); 
-    assertEquals("From: KirjanGenre line: 36", g1.getId(), kg1.getGenreId()); 
-    assertEquals("From: KirjanGenre line: 37", g1.getId(), kg2.getGenreId()); 
-  } // Generated by ComTest END
 }
\ No newline at end of file
diff --git a/src/fxKirjalista/KirjalistaGUIController.java b/src/fxKirjalista/KirjalistaGUIController.java
index 2f096cf..02452b2 100644
--- a/src/fxKirjalista/KirjalistaGUIController.java
+++ b/src/fxKirjalista/KirjalistaGUIController.java
@@ -5,6 +5,7 @@ import java.net.URL;
 import java.util.Optional;
 import java.util.ResourceBundle;
 
+import Kirjalista.Genre;
 import Kirjalista.Kirja;
 import Kirjalista.Kirjasto;
 import fi.jyu.mit.fxgui.Dialogs;
@@ -171,7 +172,7 @@ public class KirjalistaGUIController implements Initializable {
         
         int index = 0;
         for (int i = 0; i < kirjasto.getKirjaLkm(); i++) {
-            Kirja kirja = kirjasto.haeKirja(i);
+            Kirja kirja = kirjasto.haeKirjaIndeksilla(i);
             if (kirja.getId() == idnro) index = i;
             chooserKirjat.add(kirja.getNimi(), kirja);
         }
@@ -191,6 +192,10 @@ public class KirjalistaGUIController implements Initializable {
         areaKirja.setText("");
         try (PrintStream os = TextAreaOutputStream.getTextPrintStream(areaKirja)) {
             valittuKirja.tulosta(os);
+            os.println("=========================================");
+            for (Genre g : kirjasto.haeGenret(valittuKirja.getId())) {
+                g.tulosta(os);
+            }
         }
     }
     
diff --git a/src/fxKirjalista/LisaaController.java b/src/fxKirjalista/LisaaController.java
index e8dcd8c..ef0e321 100644
--- a/src/fxKirjalista/LisaaController.java
+++ b/src/fxKirjalista/LisaaController.java
@@ -1,5 +1,6 @@
 package fxKirjalista;
 
+import Kirjalista.Genre;
 import Kirjalista.Kirja;
 import Kirjalista.Kirjasto;
 import Kirjalista.SailoException;
@@ -73,15 +74,51 @@ public class LisaaController {
      * taulukkoon ja antaa virheen, jos ei onnistu.
      */
     protected void uusiKirja() {
+        /* Lopullisessa versiossa käyttöliittymästä tulisi 
+         * tekstiä, josta parsetaan kirjan tiedot ja tekstiä, josta
+         * parsetaan genret. 
+         */
+        
+        
         Kirja uusi = new Kirja();
+        Genre genre1 = new Genre();
+        Genre genre2 = new Genre();
+        Genre genre3 = new Genre();
+        // uusi.parse( käyttöliittymästä tullut teksti );
+        // 
+        // String[] genreStr = teksti.split("|");
+        // Genre[] genret = new Genre[genreStr.length];
+        // for (int i = 0; i < genreStr.length; i++) {
+        //     genre g = new Genre();
+        //     genret[i] = g.parse(genreStr[i]);
+        // }
+        // kirjasto.lisaaGenre(genret);
+        // 
+        // kirjasto.lisaaGenreRelaatio(uusi, genret);
+        //
+        // ^^^^ näin sitten toimivassa ohjelmassa ^^^^
+        
+
+        
         uusi.esimerkkiKirja();
-        uusi.rekisteroi();
+        genre1.esimerkkiGenre();
+        genre2.esimerkkiGenre();
+        genre3.esimerkkiGenre();
+        
+        
+        Genre[] g = {genre1, genre2, genre3};
+        
+        kirjasto.lisaaGenre(g);
+        
         try {
             kirjasto.lisaaKirja(uusi);
         } catch (SailoException e) {
             Dialogs.showMessageDialog("Ongelma " + e.getMessage());
             return;
         }
+        
+        kirjasto.lisaaGenreRelaatio(uusi, g);
+        
         isanta.hae(uusi.getId());
     
     }
-- 
GitLab