/** Test genre node. */
 public final void testGenreNode() {
   GenreNode ad = new GenreNode(getGenre());
   assertNotNull(ad);
   JUnitHelpers.ToStringTest(ad);
   assertNotNull(ad.getGenre());
   assertEquals("name", ad.getGenre().getName());
 }
Exemplo n.º 2
0
  public GenreNode findGenrePosition(String nodeData) {
    GenreNode curr = this.head;
    while (curr.getNextGenre() != null) {
      if (curr.getNextGenre().getGenreData().compareToIgnoreCase(nodeData) >= 0) break;
      curr = curr.getNextGenre();
    }

    return curr;
  }
Exemplo n.º 3
0
  public GenreNode findGenreNode(String genre) {
    GenreNode curr = this.head;
    while (curr != null) {
      if (curr.getGenreData().equals(genre)) {
        return curr;
      } else curr = curr.getNextGenre();
    }

    return null;
  }
Exemplo n.º 4
0
  public void printListAll(List printList) {
    GenreNode curr = printList.head;
    if (curr.getNextGenre() == null) {
      System.out.println("EMPTY");
    } else {
      for (curr = printList.head.getNextGenre(); curr != null; curr = curr.getNextGenre()) {

        for (TitleNode curr2nd = curr.getTitleHead().getNextTitle();
            curr2nd != null;
            curr2nd = curr2nd.getNextTitle()) {

          System.out.println("(" + curr.getGenreData() + ", " + curr2nd.getTitleData() + ")");
        }
      }
    }
  }
Exemplo n.º 5
0
 public void search(String keyword) {
   GenreNode curr = this.head;
   String cache = "";
   for (curr = this.head.getNextGenre(); curr != null; curr = curr.getNextGenre()) {
     for (TitleNode curr2nd = curr.getTitleHead().getNextTitle();
         curr2nd != null;
         curr2nd = curr2nd.getNextTitle()) {
       if (curr2nd.getTitleData().contains(keyword)) {
         System.out.println("(" + curr.getGenreData() + ", " + curr2nd.getTitleData() + ")");
         cache = "*";
       }
     }
   }
   if (cache.equals("")) {
     System.out.println("EMPTY");
   }
 }
Exemplo n.º 6
0
  public void insert(String genre, String title) {
    GenreNode genreToInsert = findGenreNode(genre);
    TitleNode titleToInsert;

    if (genreToInsert == null) {

      // 장르 먼저 만든다.
      genreToInsert = new GenreNode(genre);
      GenreNode temp;
      GenreNode position = findGenrePosition(genre);

      temp = position.getNextGenre();
      position.setNextGenre(genreToInsert);
      genreToInsert.setNextGenre(temp);
    }

    if (genreToInsert.isExistTitle(title) == false) { // 장르가 있는 경우이다. 이때는 타이틀만 넣어주면 된다.
      titleToInsert = new TitleNode(title);
      TitleNode temp;
      TitleNode position2 = genreToInsert.findTitlePosition(title);

      temp = position2.getNextTitle();
      position2.setNextTitle(titleToInsert);
      titleToInsert.setNextTitle(temp);
    }
  }
Exemplo n.º 7
0
  public void delete(String genre, String title) {
    GenreNode genreToDelete = findGenreNode(genre);
    if (genreToDelete == null) return;
    TitleNode titleToDelete = genreToDelete.findTitleNode(title);
    if (titleToDelete == null) return;

    TitleNode titlePrev = genreToDelete.findTitlePosition(title);

    titlePrev.setNextTitle(titleToDelete.getNextTitle());

    if (genreToDelete.getTitleHead().getNextTitle() == null) {
      GenreNode genrePrev = findGenrePosition(genre);
      genrePrev.setNextGenre(genreToDelete.getNextGenre());
    }
  }
Exemplo n.º 8
0
 public List(GenreNode node) {
   head = new GenreNode();
   head.setNextGenre(node);
 }