/**
   * @param id
   * @param createDate
   * @param modifyDate
   */
  protected BaseEntity(
      DbOptional<Long> id, DbOptional<Long> createDate, DbOptional<Long> modifyDate) {

    long currTime = System.currentTimeMillis();

    mId = id;
    mCreateDate = createDate.isPresent() ? createDate : DbOptional.<Long>of(currTime);
    mModifyDate = modifyDate.isPresent() ? modifyDate : DbOptional.<Long>of(currTime);
  }