Example usage for org.apache.commons.configuration DefaultConfigurationBuilder DefaultConfigurationBuilder

List of usage examples for org.apache.commons.configuration DefaultConfigurationBuilder DefaultConfigurationBuilder

Introduction

In this page you can find the example usage for org.apache.commons.configuration DefaultConfigurationBuilder DefaultConfigurationBuilder.

Prototype

public DefaultConfigurationBuilder() 

Source Link

Document

Creates a new instance of DefaultConfigurationBuilder.

Usage

From source file:org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfigurationTest.java

@Test
public void fromShouldReadXMLConfiguration() throws Exception {
    DefaultConfigurationBuilder xmlConfiguration = new DefaultConfigurationBuilder();
    xmlConfiguration.load(toStream("<configuration>\n" + "  <thresholds>\n" + "    <threshold>"
            + "      <value>0.85</value>" + "      <subjectTemplate>" + SUBJECT_TEMPLATE
            + "</subjectTemplate>\n" + "      <bodyTemplate>" + BODY_TEMPLATE + "</bodyTemplate>\n"
            + "    </threshold>\n" + "    <threshold>\n" + "      <value>0.98</value>\n"
            + "      <subjectTemplate>" + OTHER_SUBJECT_TEMPLATE + "</subjectTemplate>\n"
            + "      <bodyTemplate>" + OTHER_BODY_TEMPLATE + "</bodyTemplate>\n" + "    </threshold>\n"
            + "  </thresholds>\n" + "  <subjectTemplate>" + YET_ANOTHER_SUBJECT_TEMPLATE
            + "</subjectTemplate>\n" + "  <bodyTemplate>" + YET_ANOTHER_BODY_TEMPLATE + "</bodyTemplate>\n"
            + "  <gracePeriod>3 days</gracePeriod>\n" + "  <name>listener-name</name>\n" + "</configuration>"));

    QuotaMailingListenerConfiguration result = QuotaMailingListenerConfiguration.from(xmlConfiguration);

    assertThat(result).isEqualTo(QuotaMailingListenerConfiguration.builder()
            .addThreshold(new QuotaThreshold(0.85), RenderingInformation.from(BODY_TEMPLATE, SUBJECT_TEMPLATE))
            .addThreshold(new QuotaThreshold(0.98),
                    RenderingInformation.from(OTHER_BODY_TEMPLATE, OTHER_SUBJECT_TEMPLATE))
            .gracePeriod(Duration.ofDays(3)).subjectTemplate(YET_ANOTHER_SUBJECT_TEMPLATE)
            .bodyTemplate(YET_ANOTHER_BODY_TEMPLATE).name("listener-name").build());
}

From source file:org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfigurationTest.java

@Test
public void fromShouldReadXMLConfigurationWhenRenderingInformationPartiallyOmited() throws Exception {
    DefaultConfigurationBuilder xmlConfiguration = new DefaultConfigurationBuilder();
    xmlConfiguration.load(toStream("<configuration>\n" + "  <thresholds>\n" + "    <threshold>"
            + "      <value>0.85</value>" + "      <bodyTemplate>" + BODY_TEMPLATE + "</bodyTemplate>\n"
            + "    </threshold>\n" + "    <threshold>\n" + "      <value>0.98</value>\n"
            + "      <subjectTemplate>" + OTHER_SUBJECT_TEMPLATE + "</subjectTemplate>\n" + "    </threshold>\n"
            + "    <threshold>\n" + "      <value>0.99</value>\n" + "    </threshold>\n" + "  </thresholds>\n"
            + "  <gracePeriod>3 days</gracePeriod>\n" + "  <name>listener-name</name>\n" + "</configuration>"));

    QuotaMailingListenerConfiguration result = QuotaMailingListenerConfiguration.from(xmlConfiguration);

    assertThat(result).isEqualTo(QuotaMailingListenerConfiguration.builder()
            .addThreshold(new QuotaThreshold(0.85),
                    RenderingInformation.from(Optional.of(BODY_TEMPLATE), Optional.empty()))
            .addThreshold(new QuotaThreshold(0.98),
                    RenderingInformation.from(Optional.empty(), Optional.of(OTHER_SUBJECT_TEMPLATE)))
            .addThreshold(new QuotaThreshold(0.99),
                    RenderingInformation.from(Optional.empty(), Optional.empty()))
            .gracePeriod(Duration.ofDays(3)).name("listener-name").build());
}

From source file:org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfigurationTest.java

@Test
public void fromShouldAcceptEmptyThreshold() throws Exception {
    DefaultConfigurationBuilder xmlConfiguration = new DefaultConfigurationBuilder();
    xmlConfiguration.load(toStream("<configuration>\n" + "  <thresholds></thresholds>\n"
            + "  <gracePeriod>3 days</gracePeriod>\n" + "</configuration>"));

    QuotaMailingListenerConfiguration result = QuotaMailingListenerConfiguration.from(xmlConfiguration);

    assertThat(result)//  ww w. ja va2  s .c o  m
            .isEqualTo(QuotaMailingListenerConfiguration.builder().gracePeriod(Duration.ofDays(3)).build());
}

From source file:org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfigurationTest.java

@Test
public void fromShouldReturnDefaultWhenEmptyConfiguration() throws Exception {
    DefaultConfigurationBuilder xmlConfiguration = new DefaultConfigurationBuilder();
    xmlConfiguration.load(toStream("<configuration></configuration>"));

    QuotaMailingListenerConfiguration result = QuotaMailingListenerConfiguration.from(xmlConfiguration);

    assertThat(result).isEqualTo(QuotaMailingListenerConfiguration.builder().build());
}

From source file:org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfigurationTest.java

@Test
public void fromShouldThrowOnNonParsableGracePeriod() throws Exception {
    DefaultConfigurationBuilder xmlConfiguration = new DefaultConfigurationBuilder();
    xmlConfiguration.load(toStream("<configuration><gracePeriod>nonParsable</gracePeriod></configuration>"));

    assertThatThrownBy(() -> QuotaMailingListenerConfiguration.from(xmlConfiguration))
            .isInstanceOf(NumberFormatException.class);
}

From source file:org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfigurationTest.java

@Test
public void fromShouldThrowOnNegativeGracePeriod() throws Exception {
    DefaultConfigurationBuilder xmlConfiguration = new DefaultConfigurationBuilder();
    xmlConfiguration.load(toStream("<configuration><gracePeriod>-12 ms</gracePeriod></configuration>"));

    assertThatThrownBy(() -> QuotaMailingListenerConfiguration.from(xmlConfiguration))
            .isInstanceOf(NumberFormatException.class);
}

From source file:org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfigurationTest.java

@Test
public void fromShouldLoadGracePeriodInMs() throws Exception {
    DefaultConfigurationBuilder xmlConfiguration = new DefaultConfigurationBuilder();
    xmlConfiguration.load(toStream("<configuration><gracePeriod>12 ms</gracePeriod></configuration>"));

    assertThat(QuotaMailingListenerConfiguration.from(xmlConfiguration).getGracePeriod())
            .isEqualTo(Duration.ofMillis(12));
}

From source file:org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfigurationTest.java

@Test
public void defaultUnitShouldBeMilliseconds() throws Exception {
    DefaultConfigurationBuilder xmlConfiguration = new DefaultConfigurationBuilder();
    xmlConfiguration.load(toStream("<configuration><gracePeriod>12</gracePeriod></configuration>"));

    assertThat(QuotaMailingListenerConfiguration.from(xmlConfiguration).getGracePeriod())
            .isEqualTo(Duration.ofDays(12));
}

From source file:org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfigurationTest.java

@Test
public void fromShouldThrowOnEmptySubjectTemplate() throws Exception {
    DefaultConfigurationBuilder xmlConfiguration = new DefaultConfigurationBuilder();
    xmlConfiguration.load(toStream("<configuration>\n" + "  <thresholds>\n" + "    <threshold>"
            + "      <value>0.85</value>" + "      <subjectTemplate></subjectTemplate>\n"
            + "      <bodyTemplate>" + BODY_TEMPLATE + "</bodyTemplate>\n" + "    </threshold>\n"
            + "  </thresholds>\n" + "  <gracePeriod>3 days</gracePeriod>\n" + "  <name>listener-name</name>\n"
            + "</configuration>"));

    assertThatThrownBy(() -> QuotaMailingListenerConfiguration.from(xmlConfiguration))
            .isInstanceOf(IllegalArgumentException.class);
}

From source file:org.apache.james.mailbox.quota.mailing.QuotaMailingListenerConfigurationTest.java

@Test
public void fromShouldThrowOnEmptyBodyTemplate() throws Exception {
    DefaultConfigurationBuilder xmlConfiguration = new DefaultConfigurationBuilder();
    xmlConfiguration.load(toStream("<configuration>\n" + "  <thresholds>\n" + "    <threshold>"
            + "      <value>0.85</value>" + "      <subjectTemplate>" + SUBJECT_TEMPLATE
            + "</subjectTemplate>\n" + "      <bodyTemplate></bodyTemplate>\n" + "    </threshold>\n"
            + "  </thresholds>\n" + "  <name>listener-name</name>\n" + "</configuration>"));

    assertThatThrownBy(() -> QuotaMailingListenerConfiguration.from(xmlConfiguration))
            .isInstanceOf(IllegalArgumentException.class);
}