code: @Override
      public void addTerm(FilterTerm.Operator op, DB.DateTime date) throws IllegalStateException {
          final GregorianCalendar cal = new GregorianCalendar();
          cal.setTime(date.getValue());
          cal.set(MILLISECOND, 0);
          switch (op) {
              case GreaterThan:
                  cal.add(Calendar.SECOND, 1);
                  super.addTerm(GreaterThanOrEqual, new DB.DateTime(cal.getTime()));
                  break;
              case GreaterThanOrEqual:
                  super.addTerm(GreaterThanOrEqual, new DB.DateTime(cal.getTime()));
                  break;
              case LessThan:
                  super.addTerm(LessThan, new DB.DateTime(cal.getTime()));
                  break;
              case LessThanOrEqual:
                  cal.add(Calendar.SECOND, 1);
                  super.addTerm(LessThan, new DB.DateTime(cal.getTime()));
                  break;
              case Equal:
                  super.addTerm(GreaterThanOrEqual, new DB.DateTime(cal.getTime()));
                  cal.add(Calendar.SECOND, 1);
                  super.addTerm(LessThan, new DB.DateTime(cal.getTime()));
                  break;
              default:
                  throw new IllegalStateException("This operation is not supported: " + op);
          }
      }
docs: Adds comparison term. Only specified {@link com.versionone.apiclient.FilterTerm.Operator} supported:
  <ul>
  <li>GreaterThan
  <li>GreaterThanOrEqual
  <li>LessThan
  <li>LessThanOrEqual
  <li>equal
  </ul>
  
  @param op   comparison operator.
  @param date value to compare with.
  @throws IllegalStateException if wrong operator or wrong operators composition supplied.