public void doFunctionalQueryTest(IMap imap) {
   Employee em = new Employee("joe", 33, false, 14.56);
   imap.put("1", new Employee("joe", 33, false, 14.56));
   imap.put("2", new Employee("ali", 23, true, 15.00));
   for (int i = 3; i < 103; i++) {
     imap.put(
         String.valueOf(i), new Employee("name" + i, i % 60, ((i % 2) == 1), Double.valueOf(i)));
   }
   Set<Map.Entry> entries = imap.entrySet();
   assertEquals(102, entries.size());
   int itCount = 0;
   for (Map.Entry entry : entries) {
     Employee c = (Employee) entry.getValue();
     itCount++;
   }
   assertEquals(102, itCount);
   EntryObject e = new PredicateBuilder().getEntryObject();
   Predicate predicate = e.is("active").and(e.get("age").equal(23));
   entries = imap.entrySet(predicate);
   assertEquals(3, entries.size());
   for (Map.Entry entry : entries) {
     Employee c = (Employee) entry.getValue();
     assertEquals(c.getAge(), 23);
     assertTrue(c.isActive());
   }
   imap.remove("2");
   entries = imap.entrySet(predicate);
   assertEquals(2, entries.size());
   for (Map.Entry entry : entries) {
     Employee c = (Employee) entry.getValue();
     assertEquals(c.getAge(), 23);
     assertTrue(c.isActive());
   }
 }
Exemplo n.º 2
0
  public void run() {
    Calendar today = Calendar.getInstance();
    Week prevWeek = DateUtils.week(today.getTime()).getPrevious();
    // Check to see if last week's timesheet was submitted.
    for (Employee employee : directory.getByUserName().values()) {
      if (!employee.isActive()) {
        continue;
      }

      if (!employee.active(convert(prevWeek.getStart().getTime()))) {
        continue;
      }

      TimesheetImpl timesheet =
          new TimesheetImpl(
              sarariman,
              employee.getNumber(),
              prevWeek,
              sarariman.getTimesheetEntries(),
              sarariman.getTasks(),
              sarariman.getDataSource(),
              sarariman.getDirectory());
      if (!timesheet.isSubmitted() && (employee.isFulltime() || timesheet.getRegularHours() > 0)) {
        Collection<Integer> chainOfCommand =
            sarariman.getOrganizationHierarchy().getChainsOfCommand(employee.getNumber());
        Iterable<InternetAddress> chainOfCommandAddresses =
            EmailDispatcher.addresses(sarariman.employees(chainOfCommand));
        String message =
            "Please submit your timesheet for the week of "
                + prevWeek
                + " at "
                + sarariman.getMountPoint()
                + ".";
        emailDispatcher.send(
            employee.getEmail(), chainOfCommandAddresses, "late timesheet", message);
        PhoneNumber mobile = employee.getMobile();
        if (mobile != null) {
          try {
            sarariman.getSMSGateway().send(mobile, message);
          } catch (Exception e) {
            // FIXME: log
            e.printStackTrace();
          }
        }
      }
    }
  }
 @Test
 public void putAndGetEmployeeObjects() {
   HazelcastClient hClient = getHazelcastClient();
   int counter = 1000;
   Map<String, Employee> clientMap = hClient.getMap("putAndGetEmployeeObjects");
   for (int i = 0; i < counter; i++) {
     Employee employee = new Employee("name" + i, i, true, 5000 + i);
     employee.setMiddleName("middle" + i);
     employee.setFamilyName("familiy" + i);
     clientMap.put("" + i, employee);
   }
   for (int i = 0; i < counter; i++) {
     Employee e = clientMap.get("" + i);
     assertEquals("name" + i, e.getName());
     assertEquals("middle" + i, e.getMiddleName());
     assertEquals("familiy" + i, e.getFamilyName());
     assertEquals(i, e.getAge());
     assertEquals(true, e.isActive());
     assertEquals(5000 + i, e.getSalary(), 0);
   }
   //        }
 }