@Override public final boolean equals(Object obj) { if (obj instanceof ImapConfiguration) { ImapConfiguration that = (ImapConfiguration)obj; return Objects.equal(that.isEnableIdle(), enableIdle) && Objects.equal(that.getIdleTimeInterval(), idleTimeInterval) && Objects.equal(that.getIdleTimeIntervalUnit(), idleTimeIntervalUnit) && Objects.equal(that.getDisabledCaps(), disabledCaps) && Objects.equal(that.isCondstoreEnable(), isCondstoreEnable); } return false; }
@Override public void configure(ImapConfiguration imapConfiguration) { super.configure(imapConfiguration); this.heartbeatInterval = imapConfiguration.getIdleTimeInterval(); this.heartbeatIntervalUnit = imapConfiguration.getIdleTimeIntervalUnit(); this.enableIdle = imapConfiguration.isEnableIdle(); if (enableIdle) { this.heartbeatExecutor = Executors.newScheduledThreadPool(DEFAULT_SCHEDULED_POOL_CORE_SIZE); } }
@Test public void idleShouldEnableByDefault() { ImapConfiguration imapConfiguration = ImapConfiguration.builder() .build(); assertThat(imapConfiguration.isEnableIdle()).isTrue(); }
@Test public void idleShouldBeDisable() { ImapConfiguration imapConfiguration = ImapConfiguration.builder() .enableIdle(false) .build(); assertThat(imapConfiguration.isEnableIdle()).isFalse(); }