Package org.rssowl.core.model.types

Examples of org.rssowl.core.model.types.ISearchMark


      /* Add */
      final IFolder oldParent = fFactory.createFolder(null, null, "Old parent");
      FeedReference feedRef = new FeedReference(Long.MAX_VALUE);
      final IBookMark bookMark = fFactory.createBookMark(null, oldParent,
          new URL("http://www.link.com"), feedRef, "bookmark");
      final ISearchMark searchMark = fFactory.createSearchMark(null, oldParent, "searchmark");
      fDao.saveFolder(oldParent);

      final IFolder newParent = fFactory.createFolder(null, null, "New parent");
      fFactory.createFolder(null, newParent, "New parent child");
      fDao.saveFolder(newParent);

      final boolean[] bookMarkUpdateEventOccurred = new boolean[1];
      bookMarkListener = new BookMarkListener() {
        public void bookMarkAdded(Set<BookMarkEvent> events) {
          fail("Unexpected event");
        }

        public void bookMarkDeleted(Set<BookMarkEvent> events) {
          fail("Unexpected event");
        }

        public void bookMarkUpdated(Set<BookMarkEvent> events) {
          bookMarkUpdateEventOccurred[0] = true;
          assertEquals(1, events.size());
          BookMarkEvent event = events.iterator().next();
          assertEquals(bookMark, event.getEntity());
          assertTrue("Expected this Event to be Root Event", event.isRoot());
          assertEquals(oldParent, event.getOldParent());
          assertEquals(newParent, event.getEntity().getFolder());
        }
      };

      final boolean[] searchMarkUpdateEventOccurred = new boolean[1];
      searchMarkListener = new SearchMarkListener() {
        public void searchMarkAdded(Set<SearchMarkEvent> events) {
          fail("Unexpected event");
        }

        public void searchMarkDeleted(Set<SearchMarkEvent> events) {
          fail("Unexpected event");
        }

        public void searchMarkUpdated(Set<SearchMarkEvent> events) {
          searchMarkUpdateEventOccurred[0] = true;
          assertEquals(1, events.size());
          SearchMarkEvent event = events.iterator().next();
          assertEquals(searchMark, event.getEntity());
          assertTrue("Expected this Event to be Root Event", event.isRoot());
          assertEquals(oldParent, event.getOldParent());
          assertEquals(newParent, event.getEntity().getFolder());
        }
      };

      final boolean[] folderUpdateEventOccurred = new boolean[1];
      folderListener = new FolderListener() {
        public void folderAdded(Set<FolderEvent> events) {
          fail("Unexpected event");
        }

        public void folderDeleted(Set<FolderEvent> events) {
          fail("Unexpected event");
        }

        public void folderUpdated(Set<FolderEvent> events) {
          folderUpdateEventOccurred[0] = true;
          assertEquals(3, events.size());
          for (FolderEvent event : events) {
            assertFalse("Expected this Event to be NO Root Event", event.isRoot());
          }
        }
      };
      fModel.addFolderListener(folderListener);
      fModel.addBookMarkListener(bookMarkListener);
      fModel.addSearchMarkListener(searchMarkListener);
      Map<IMark, IFolder> markFoldersMap = new HashMap<IMark, IFolder>();
      markFoldersMap.put(bookMark, newParent);
      markFoldersMap.put(searchMark, newParent);
      fAppLayer.reparentMark(markFoldersMap);

      /* Asserts Follow */
      assertFalse(oldParent.getFolders().contains(bookMark));
      assertFalse(oldParent.getFolders().contains(searchMark));
      assertEquals(0, oldParent.getMarks().size());
      assertTrue(newParent.getMarks().contains(bookMark));
      assertTrue(newParent.getMarks().contains(searchMark));
      assertEquals(newParent, bookMark.getFolder());
      assertEquals(newParent, searchMark.getFolder());
      assertEquals(2, newParent.getMarks().size());
      assertTrue("Missing folderUpdated Event", folderUpdateEventOccurred[0]);
      assertTrue("Missing bookMarkUpdated Event", bookMarkUpdateEventOccurred[0]);
      assertTrue("Missing searchMarkUpdated Event", searchMarkUpdateEventOccurred[0]);

View Full Code Here


    IFolder root = fFactory.createFolder(null, null, "Root");

    /* Today */
    IBookMark bookmark1 = fFactory.createBookMark(null, root, feed.getLink(), feedRef, "BookMark 1");
    bookmark1.setLastVisitDate(fToday);
    ISearchMark searchmark1 = fFactory.createSearchMark(null, root, "SearchMark 1");
    searchmark1.setLastVisitDate(fToday);

    /* Yesterday */
    IBookMark bookmark2 = fFactory.createBookMark(null, root, feed.getLink(), feedRef, "BookMark 2");
    bookmark2.setLastVisitDate(fYesterday);
    ISearchMark searchmark2 = fFactory.createSearchMark(null, root, "SearchMark 2");
    searchmark2.setLastVisitDate(fYesterday);

    /* Earlier this Week */
    IBookMark bookmark3 = fFactory.createBookMark(null, root, feed.getLink(), feedRef, "BookMark 3");
    bookmark3.setLastVisitDate(fEarlierThisWeek);
    ISearchMark searchmark3 = fFactory.createSearchMark(null, root, "SearchMark 3");
    searchmark3.setLastVisitDate(fEarlierThisWeek);

    /* Last Week */
    IBookMark bookmark4 = fFactory.createBookMark(null, root, feed.getLink(), feedRef, "BookMark 4");
    bookmark4.setLastVisitDate(fLastWeek);
    ISearchMark searchmark4 = fFactory.createSearchMark(null, root, "SearchMark 4");
    searchmark4.setLastVisitDate(fLastWeek);

    /* More than one Week ago */
    IBookMark bookmark5 = fFactory.createBookMark(null, root, feed.getLink(), feedRef, "BookMark 5");
    bookmark5.setLastVisitDate(new Date(0));

    /* Visited Never */
    ISearchMark searchmark5 = fFactory.createSearchMark(null, root, "SearchMark 5");

    /* Future */
    IBookMark bookmark6 = fFactory.createBookMark(null, root, feed.getLink(), feedRef, "BookMark 6");
    bookmark6.setLastVisitDate(new Date(fToday.getTime() + 10000000));

View Full Code Here

    IBookMark bm1 = fFactory.createBookMark(null, root, feed1.getLink(), feedRef1, "FookMark 1");
    bm1.setErrorLoading(true);
    bm1.setPopularity(1);

    ISearchMark sm1 = fFactory.createSearchMark(null, root, "SearchMark 1");
    sm1.setPopularity(1);

    IBookMark bm2 = fFactory.createBookMark(null, root, feed2.getLink(), feedRef2, "BookMark 2");
    bm2.setPopularity(1);

    ISearchMark sm2 = fFactory.createSearchMark(null, root, "SearchMark 2");
    sm2.setPopularity(1);

    IBookMark bm3 = fFactory.createBookMark(null, root, feed1.getLink(), feedRef1, "BookMark 3");
    bm3.setPopularity(1);

    ISearchMark sm3 = fFactory.createSearchMark(null, root, "SearchMark 3");
    sm3.setPopularity(1);

    IBookMark bm4 = fFactory.createBookMark(null, root, feed2.getLink(), feedRef2, "BookMark 4");
    bm4.setPopularity(1);

    ISearchMark sm4 = fFactory.createSearchMark(null, root, "SearchMark 4");
    sm4.setPopularity(1);

    IBookMark bm5 = fFactory.createBookMark(null, root, feed1.getLink(), feedRef1, "BookMark 5");
    bm5.setPopularity(1);

    ISearchMark sm5 = fFactory.createSearchMark(null, root, "SearchMark 5");

    IBookMark bm6 = fFactory.createBookMark(null, root, feed2.getLink(), feedRef2, "BookMark 6");

    /* Fill into Array */
    Object elements[] = new Object[] { bm1, bm2, bm3, bm4, bm5, bm6, sm1, sm2, sm3, sm4, sm5 };
View Full Code Here

      IBookMark child = createBookMark(root);
      child.setName(String.valueOf(i));
    }
    int count2 = count * 2;
    for (int i = count; i < count2; ++i) {
      ISearchMark child = createSearchMark(root);
      child.setName(String.valueOf(i));
    }
    root = fModelDAO.saveFolder(root);
    int counter = 0;
    for (IMark child : root.getMarks()) {
      String name = String.valueOf(counter++);
      assertEquals(name, child.getName());
    }
  }
View Full Code Here

      assertEquals(name, child.getName());
    }
  }
 
  private ISearchMark createSearchMark(IFolder folder) {
    ISearchMark mark = fTypesFactory.createSearchMark(null, folder, "SomeName");
    mark.setCreationDate(new Date());
    mark.setLastVisitDate(createDate());
    mark.setPopularity(50);
    ISearchField field1 = fTypesFactory.createSearchField(INews.STATE, INews.class);
    fTypesFactory.createSearchCondition(null, mark, field1, SearchSpecifier.IS, State.NEW.toString(), false);

    ISearchField field2 = fTypesFactory.createSearchField(INews.STATE, INews.class);
    fTypesFactory.createSearchCondition(null, mark, field2, SearchSpecifier.IS, State.UPDATED.toString(), false);
View Full Code Here

      BookMarkEvent eventTemplate = (BookMarkEvent) template;
      IFolder oldParent = eventTemplate == null ? null : eventTemplate.getOldParent();
      modelEvent = new BookMarkEvent(mark, oldParent, root);
    }
    else if (entity instanceof ISearchMark) {
      ISearchMark mark = (ISearchMark) entity;
      SearchMarkEvent eventTemplate = (SearchMarkEvent) template;
      IFolder oldParent = eventTemplate == null ? null : eventTemplate.getOldParent();
      modelEvent = new SearchMarkEvent(mark, oldParent, root);
    }
    else if (entity instanceof IFolder) {
View Full Code Here

  @Override
  public IMark merge(IMark mark) {
    Assert.isTrue(mark instanceof ISearchMark, "Error trying to merge a SearchMark with a non-BookMark"); //$NON-NLS-1$
    super.merge(mark);

    ISearchMark searchmark = (ISearchMark) mark;

    /* Merge Search-Conditions */
    Comparator<ISearchCondition> comparator = new Comparator<ISearchCondition>() {
      public int compare(ISearchCondition o1, ISearchCondition o2) {
        if (o1 == o2)
          return 0;

        if (getClass() != o2.getClass())
          return -1;

        final SearchCondition other = (SearchCondition) o2;
        if (o1.getField() == null) {
          if (other.getField() != null)
            return -1;
        } else if (!o1.getField().equals(other.getField()))
          return -1;

        if (o1.isAndSearch() != other.isAndSearch())
          return -1;

        if (o1.getSpecifier() == null) {
          if (other.getSpecifier() != null)
            return -1;
        } else if (!o1.getSpecifier().equals(other.getSpecifier()))
          return -1;

        if (o1.getValue() == null) {
          if (other.getValue() != null)
            return -1;
        } else if (!o1.getValue().equals(other.getValue()))
          return -1;

        return 0;
      }
    };
    fSearchConditions = MergeUtils.merge(fSearchConditions, searchmark.getSearchConditions(), comparator, this);

    return this;
  }
View Full Code Here

  /*
   * @see org.rssowl.core.model.dao.IModelDAO#deleteSearchMark(org.rssowl.core.model.reference.SearchMarkReference)
   */
  public final void deleteSearchMark(SearchMarkReference reference) throws PersistenceException {
    ISearchMark mark = loadSearchMark(reference.getId());
    SearchMarkEvent event = new SearchMarkEvent(mark, null, true);
    deleteEntityAndFireEvents(event);
  }
View Full Code Here

   * @throws Exception
   */
  @Test
  public void testRemoveSearchConditionWithoutSearchMark() throws Exception {
    IFolder folder = fFactory.createFolder(null, null, "Folder");
    ISearchMark searchMark = fFactory.createSearchMark(null, folder, "Mark");
    ISearchField searchField = fFactory.createSearchField(0, INews.class);
    fFactory.createSearchCondition(null, searchMark, searchField, SearchSpecifier.BEGINS_WITH, "Some value", false);
    IFolder savedFolder = fDao.saveFolder(folder);
    ISearchMark savedMark = (ISearchMark) savedFolder.getMarks().get(0);
    fDao.deleteSearchCondition(new SearchConditionReference(savedMark.getSearchConditions().get(0).getId()));
    assertNotNull(fDao.loadSearchMark(savedMark.getId()));
  }
View Full Code Here

  @Test
  public void testRemoveSearchMarkWithoutFolder() throws Exception {
    IFolder folder = fFactory.createFolder(null, null, "Folder");
    fFactory.createSearchMark(null, folder, "Mark");
    IFolder savedFolder = fDao.saveFolder(folder);
    ISearchMark savedMark = (ISearchMark) savedFolder.getMarks().get(0);
    fDao.deleteSearchMark(new SearchMarkReference(savedMark.getId()));
    assertNotNull(fDao.loadFolder(savedFolder.getId()));
  }
View Full Code Here

TOP

Related Classes of org.rssowl.core.model.types.ISearchMark

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.