├── .adr-dir ├── .asf.yaml ├── .gitattributes ├── .gitignore ├── .mvn ├── develocity-custom-user-data.groovy ├── develocity.xml ├── extensions.xml └── maven.config ├── .scalafix.conf ├── CHANGELOG.md ├── Jenkinsfile ├── LICENSE ├── README.adoc ├── backends-common ├── README.adoc ├── cassandra │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── backends │ │ │ └── cassandra │ │ │ ├── components │ │ │ ├── CassandraDataDefinition.java │ │ │ ├── CassandraMutualizedQuotaDataDefinition.java │ │ │ ├── CassandraQuotaCurrentValueDao.java │ │ │ ├── CassandraQuotaCurrentValueTable.java │ │ │ ├── CassandraQuotaLimitDao.java │ │ │ ├── CassandraQuotaLimitTable.java │ │ │ ├── CassandraTable.java │ │ │ └── CassandraType.java │ │ │ ├── init │ │ │ ├── CassandraSessionConfiguration.java │ │ │ ├── CassandraTableManager.java │ │ │ ├── CassandraTypesCreator.java │ │ │ ├── CassandraTypesProvider.java │ │ │ ├── CassandraZonedDateTimeDataDefinition.java │ │ │ ├── ClusterFactory.java │ │ │ ├── KeyspaceFactory.java │ │ │ ├── ResilientClusterProvider.java │ │ │ ├── SessionWithInitializedTablesFactory.java │ │ │ └── configuration │ │ │ │ ├── CassandraConfiguration.java │ │ │ │ ├── ClusterConfiguration.java │ │ │ │ ├── InjectionNames.java │ │ │ │ ├── JamesExecutionProfiles.java │ │ │ │ └── KeyspaceConfiguration.java │ │ │ ├── migration │ │ │ ├── CassandraMigrationService.java │ │ │ ├── CassandraSchemaTransitions.java │ │ │ ├── Migration.java │ │ │ ├── MigrationException.java │ │ │ ├── MigrationTask.java │ │ │ ├── MigrationTaskAdditionalInformationDTO.java │ │ │ └── MigrationTaskDTO.java │ │ │ ├── utils │ │ │ ├── CassandraAsyncExecutor.java │ │ │ ├── CassandraConstants.java │ │ │ ├── CassandraHealthCheck.java │ │ │ ├── LightweightTransactionException.java │ │ │ ├── LockLessConcurrencyLimitingRequestThrottler.java │ │ │ └── ZonedDateTimeRepresentation.java │ │ │ └── versions │ │ │ ├── CassandraSchemaVersionDAO.java │ │ │ ├── CassandraSchemaVersionDataDefinition.java │ │ │ ├── CassandraSchemaVersionManager.java │ │ │ ├── SchemaTransition.java │ │ │ ├── SchemaVersion.java │ │ │ └── table │ │ │ └── CassandraSchemaVersionTable.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── backends │ │ │ └── cassandra │ │ │ ├── CassandraCluster.java │ │ │ ├── CassandraClusterExtension.java │ │ │ ├── CassandraClusterTest.java │ │ │ ├── CassandraWaitStrategy.java │ │ │ ├── DockerCassandra.java │ │ │ ├── DockerCassandraExtension.java │ │ │ ├── DockerCassandraRule.java │ │ │ ├── DockerCassandraSingleton.java │ │ │ ├── Scenario.java │ │ │ ├── ScenarioTest.java │ │ │ ├── StatementRecorder.java │ │ │ ├── TestingSession.java │ │ │ ├── TestingSessionTest.java │ │ │ ├── components │ │ │ ├── CassandraTableTest.java │ │ │ └── CassandraTypeTest.java │ │ │ ├── init │ │ │ ├── CassandraConfigurationReadingTest.java │ │ │ ├── CassandraConfigurationTest.java │ │ │ ├── CassandraTableManagerConcurrentTest.java │ │ │ ├── CassandraTableManagerTest.java │ │ │ ├── CassandraTypeProviderTest.java │ │ │ ├── CassandraTypesCreatorTest.java │ │ │ ├── ClusterFactoryTest.java │ │ │ ├── ResilientClusterProviderTest.java │ │ │ └── SessionWithInitializedTablesFactoryTest.java │ │ │ ├── migration │ │ │ ├── CassandraMigrationServiceTest.java │ │ │ └── MigrationTaskSerializationTest.java │ │ │ ├── quota │ │ │ ├── CassandraQuotaCurrentValueDaoTest.java │ │ │ └── CassandraQuotaLimitDaoTest.java │ │ │ ├── utils │ │ │ ├── CassandraHealthCheckTest.java │ │ │ ├── PaggingTest.java │ │ │ └── ZonedDateTimeRepresentationTest.java │ │ │ └── versions │ │ │ ├── CassandraSchemaVersionDAOTest.java │ │ │ ├── CassandraSchemaVersionManagerTest.java │ │ │ ├── SchemaTransitionTest.java │ │ │ └── SchemaVersionTest.java │ │ └── resources │ │ ├── cassandra-driver.conf │ │ └── configuration-reader-test │ │ └── cassandra.properties ├── jpa │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── backends │ │ │ └── jpa │ │ │ ├── EntityManagerUtils.java │ │ │ ├── JPAConfiguration.java │ │ │ └── TransactionRunner.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── backends │ │ └── jpa │ │ ├── JPAConfigurationTest.java │ │ └── JpaTestCluster.java ├── opensearch │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── backends │ │ │ └── opensearch │ │ │ ├── AliasName.java │ │ │ ├── ClientProvider.java │ │ │ ├── DeleteByQueryPerformer.java │ │ │ ├── DocumentId.java │ │ │ ├── IndexCreationFactory.java │ │ │ ├── IndexName.java │ │ │ ├── OpenSearchConfiguration.java │ │ │ ├── OpenSearchHealthCheck.java │ │ │ ├── OpenSearchIndexer.java │ │ │ ├── ReactorOpenSearchClient.java │ │ │ ├── ReadAliasName.java │ │ │ ├── RoutingKey.java │ │ │ ├── UpdatedRepresentation.java │ │ │ ├── WriteAliasName.java │ │ │ └── search │ │ │ └── ScrolledSearch.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── backends │ │ │ └── opensearch │ │ │ ├── AliasNameTest.java │ │ │ ├── ClientProviderImplConnectionAuthESIgnoreSSLCheckTest.java │ │ │ ├── ClientProviderImplConnectionAuthESOverrideTrustStoreTest.java │ │ │ ├── ClientProviderImplConnectionContract.java │ │ │ ├── ClientProviderImplConnectionNoAuthESTest.java │ │ │ ├── ClientProviderTest.java │ │ │ ├── DockerAuthOpenSearchSingleton.java │ │ │ ├── DockerOpenSearch.java │ │ │ ├── DockerOpenSearchExtension.java │ │ │ ├── DockerOpenSearchSingleton.java │ │ │ ├── DocumentIdTest.java │ │ │ ├── IndexCreationFactoryTest.java │ │ │ ├── OpenSearchClusterExtension.java │ │ │ ├── OpenSearchConfigurationTest.java │ │ │ ├── OpenSearchHealthCheckConnectionTest.java │ │ │ ├── OpenSearchHealthCheckTest.java │ │ │ ├── OpenSearchIndexerTest.java │ │ │ ├── RoutingKeyTest.java │ │ │ └── search │ │ │ └── ScrolledSearchTest.java │ │ └── resources │ │ └── auth-es │ │ ├── NginxDockerfile │ │ ├── README.md │ │ ├── default.crt │ │ ├── default.key │ │ ├── nginx-conf │ │ ├── passwd │ │ └── reverse_elasticsearch.conf │ │ └── server.jks ├── pom.xml ├── postgres │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── backends │ │ │ └── postgres │ │ │ ├── PostgresCommons.java │ │ │ ├── PostgresConfiguration.java │ │ │ ├── PostgresDataDefinition.java │ │ │ ├── PostgresIndex.java │ │ │ ├── PostgresTable.java │ │ │ ├── PostgresTableManager.java │ │ │ ├── RowLevelSecurity.java │ │ │ ├── quota │ │ │ ├── PostgresQuotaCurrentValueDAO.java │ │ │ ├── PostgresQuotaDataDefinition.java │ │ │ └── PostgresQuotaLimitDAO.java │ │ │ └── utils │ │ │ ├── JamesPostgresConnectionFactory.java │ │ │ ├── PoolBackedPostgresConnectionFactory.java │ │ │ ├── PostgresConnectionClosure.java │ │ │ ├── PostgresExecutor.java │ │ │ ├── PostgresHealthCheck.java │ │ │ └── PostgresUtils.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── backends │ │ └── postgres │ │ ├── DockerPostgresSingleton.java │ │ ├── JamesPostgresConnectionFactoryTest.java │ │ ├── PoolBackedPostgresConnectionFactoryTest.java │ │ ├── PostgresConfigurationTest.java │ │ ├── PostgresExecutorThreadSafetyTest.java │ │ ├── PostgresExtension.java │ │ ├── PostgresExtensionTest.java │ │ ├── PostgresFixture.java │ │ ├── PostgresTableManagerTest.java │ │ ├── quota │ │ ├── PostgresQuotaCurrentValueDAOTest.java │ │ └── PostgresQuotaLimitDaoTest.java │ │ └── utils │ │ └── PostgresHealthCheckTest.java ├── pulsar │ ├── pom.xml │ └── src │ │ ├── main │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── backends │ │ │ └── pulsar │ │ │ ├── PulsarClients.scala │ │ │ ├── PulsarConfiguration.scala │ │ │ └── PulsarReader.scala │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── backends │ │ └── pulsar │ │ ├── DockerPulsarExtension.java │ │ ├── PulsarConfigurationTest.java │ │ ├── PulsarReaderTest.scala │ │ └── TestPulsarModule.java ├── rabbitmq │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── backends │ │ │ └── rabbitmq │ │ │ ├── Constants.java │ │ │ ├── QueueArguments.java │ │ │ ├── RabbitMQConfiguration.java │ │ │ ├── RabbitMQConnectionFactory.java │ │ │ ├── RabbitMQHealthCheck.java │ │ │ ├── RabbitMQManagementAPI.java │ │ │ ├── RabbitMQServerVersion.java │ │ │ ├── ReactorRabbitMQChannelPool.java │ │ │ ├── ReceiverProvider.java │ │ │ └── SimpleConnectionPool.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── backends │ │ │ └── rabbitmq │ │ │ ├── ChannelPoolContract.java │ │ │ ├── ConstantsTest.java │ │ │ ├── DockerClusterRabbitMQExtension.java │ │ │ ├── DockerRabbitMQ.java │ │ │ ├── DockerRabbitMQSingleton.java │ │ │ ├── InMemoryConsumer.java │ │ │ ├── RabbitMQClusterTest.java │ │ │ ├── RabbitMQConfigurationTest.java │ │ │ ├── RabbitMQConnectionFactoryTest.java │ │ │ ├── RabbitMQExtension.java │ │ │ ├── RabbitMQFixture.java │ │ │ ├── RabbitMQHealthCheckTest.java │ │ │ ├── RabbitMQServerVersionTest.java │ │ │ ├── RabbitMQTest.java │ │ │ ├── RabbitMQWaitStrategy.java │ │ │ └── ReactorRabbitMQChannelPoolTest.java │ │ └── resources │ │ ├── empty-store │ │ ├── test-keystore-password-password │ │ └── test-truststore-password-password └── redis │ ├── pom.xml │ └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── backends │ │ └── redis │ │ ├── RedisClientFactory.scala │ │ ├── RedisConfiguration.scala │ │ └── RedisHealthCheck.scala │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── james │ │ └── backends │ │ └── redis │ │ ├── DockerKvrocks.java │ │ ├── DockerRedis.java │ │ ├── KvrocksExtension.java │ │ ├── KvrocksExtensionTest.java │ │ ├── KvrocksSentinelExtension.java │ │ ├── RedisClusterExtension.java │ │ ├── RedisClusterHealthCheckTest.scala │ │ ├── RedisConfigurationTest.scala │ │ ├── RedisExtension.java │ │ ├── RedisExtensionTest.java │ │ ├── RedisHealthCheckTest.java │ │ ├── RedisMasterReplicaExtension.java │ │ ├── RedisMasterReplicaHealthCheckTest.scala │ │ ├── RedisSentinelExtension.java │ │ ├── RedisSentinelHealthCheckTest.scala │ │ ├── RedisStandaloneHealthCheckTest.scala │ │ ├── RedisTLSExtension.java │ │ └── RedisTLSStandaloneHealthCheckTest.scala │ └── resources │ ├── certificate.crt │ ├── keystore.p12 │ ├── kvrocks │ ├── master │ │ └── kvrocks.conf │ ├── replica │ │ └── kvrocks.conf │ └── sentinel │ │ └── sentinel.conf │ ├── private.key │ ├── redis_cluster.conf │ ├── rootCA.crt │ ├── sentinel.conf │ └── sentinel_tls.conf ├── checkstyle-suppressions.xml ├── checkstyle.xml ├── code-coverage-report └── pom.xml ├── core ├── pom.xml └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ ├── core │ │ ├── ConnectionDescription.java │ │ ├── ConnectionDescriptionSupplier.java │ │ ├── Disconnector.java │ │ ├── Domain.java │ │ ├── MailAddress.java │ │ ├── MaybeSender.java │ │ ├── Username.java │ │ ├── builder │ │ │ ├── MimeMessageBuilder.java │ │ │ └── MimeMessageWrapper.java │ │ ├── healthcheck │ │ │ ├── ComponentName.java │ │ │ ├── HealthCheck.java │ │ │ ├── Result.java │ │ │ └── ResultStatus.java │ │ └── quota │ │ │ ├── QuotaComponent.java │ │ │ ├── QuotaCountLimit.java │ │ │ ├── QuotaCountUsage.java │ │ │ ├── QuotaCurrentValue.java │ │ │ ├── QuotaLimit.java │ │ │ ├── QuotaLimitValue.java │ │ │ ├── QuotaScope.java │ │ │ ├── QuotaSizeLimit.java │ │ │ ├── QuotaSizeUsage.java │ │ │ ├── QuotaType.java │ │ │ └── QuotaUsageValue.java │ │ └── util │ │ ├── Host.java │ │ └── Port.java │ └── test │ └── java │ └── org │ └── apache │ └── james │ ├── core │ ├── CoreFixture.java │ ├── MailAddressTest.java │ ├── MaybeSenderTest.java │ ├── UsernameTest.java │ ├── builder │ │ ├── MimeMessageBuilderTest.java │ │ └── MimeMessageWrapperTest.java │ ├── healthcheck │ │ ├── ComponentNameTest.java │ │ ├── ResultStatusTest.java │ │ └── ResultTest.java │ └── quota │ │ ├── QuotaCountLimitTest.java │ │ ├── QuotaCountUsageTest.java │ │ ├── QuotaCurrentValueTest.java │ │ ├── QuotaLimitTest.java │ │ ├── QuotaLimitValueTest.java │ │ ├── QuotaSizeLimitTest.java │ │ ├── QuotaSizeUsageTest.java │ │ └── QuotaUsageValueTest.java │ ├── domainlist │ └── api │ │ └── DomainTest.java │ └── util │ ├── HostTest.java │ └── PortTest.java ├── docs ├── Dockerfile ├── README.md ├── antora-playbook-local.yml ├── antora.yml ├── modules │ ├── ROOT │ │ ├── nav.adoc │ │ └── pages │ │ │ └── index.adoc │ ├── community │ │ ├── images │ │ │ └── linagora.png │ │ ├── nav.adoc │ │ └── pages │ │ │ ├── contributing.adoc │ │ │ ├── download.adoc │ │ │ ├── guidelines.adoc │ │ │ ├── index.adoc │ │ │ ├── mailing-lists.adoc │ │ │ ├── release.adoc │ │ │ ├── support.adoc │ │ │ └── website.adoc │ ├── concepts │ │ ├── nav.adoc │ │ └── pages │ │ │ ├── configuration.adoc │ │ │ ├── glossary.adoc │ │ │ ├── index.adoc │ │ │ ├── mail │ │ │ └── index.adoc │ │ │ ├── messages │ │ │ ├── imf.adoc │ │ │ ├── index.adoc │ │ │ └── mime.adoc │ │ │ ├── processing │ │ │ └── index.adoc │ │ │ ├── protocols │ │ │ ├── esmtp.adoc │ │ │ ├── imap.adoc │ │ │ ├── index.adoc │ │ │ ├── jmap.adoc │ │ │ ├── lmtp.adoc │ │ │ ├── pop.adoc │ │ │ └── smtp.adoc │ │ │ ├── storage │ │ │ ├── index.adoc │ │ │ ├── mailbox.adoc │ │ │ └── users.adoc │ │ │ └── user │ │ │ └── index.adoc │ ├── customization │ │ ├── assets │ │ │ └── images │ │ │ │ └── james-hexagons-extensions.png │ │ ├── nav.adoc │ │ └── pages │ │ │ ├── imap.adoc │ │ │ ├── index.adoc │ │ │ ├── mail-processing.adoc │ │ │ ├── mailbox-listeners.adoc │ │ │ ├── smtp-hooks.adoc │ │ │ └── webadmin-routes.adoc │ ├── development │ │ ├── nav.adoc │ │ └── pages │ │ │ ├── deployment-tests.adoc │ │ │ ├── index.adoc │ │ │ └── logging.adoc │ └── servers │ │ ├── assets │ │ └── images │ │ │ ├── BlobStore.png │ │ │ ├── IMAP_board.png │ │ │ ├── JMAP_board.png │ │ │ ├── JVM_board.png │ │ │ ├── MATCHER.png │ │ │ ├── apache-james-lens.png │ │ │ ├── cassandra_stress_test_result_1.png │ │ │ ├── cassandra_stress_test_result_2.png │ │ │ ├── james-imap-base-performance-distributed.png │ │ │ ├── james-imap-base-performance-postgres.png │ │ │ ├── postgres_pg_stat_statements.png │ │ │ ├── preload-dashboards.png │ │ │ ├── remote-delivery-error-handling.png │ │ │ ├── server-components.png │ │ │ ├── specialized-instances-distributed.png │ │ │ ├── specialized-instances-postgres.png │ │ │ ├── storage_james_distributed.png │ │ │ ├── storage_james_postgres.png │ │ │ ├── storage_james_postgres.svg │ │ │ └── webAdmin.png │ │ ├── nav.adoc │ │ ├── pages │ │ ├── 15-minute-demo.adoc │ │ ├── 5-minute-demo.adoc │ │ ├── basic │ │ │ ├── architecture.adoc │ │ │ ├── concepts.adoc │ │ │ ├── conf │ │ │ │ └── index.adoc │ │ │ ├── context.adoc │ │ │ ├── help.adoc │ │ │ ├── index.adoc │ │ │ ├── objectives.adoc │ │ │ └── self-hosting.notes │ │ ├── demo.adoc │ │ ├── distributed │ │ │ ├── architecture │ │ │ │ ├── consistency-model.adoc │ │ │ │ ├── consistency_model_data_replication_extend.adoc │ │ │ │ ├── implemented-standards.adoc │ │ │ │ ├── index.adoc │ │ │ │ ├── mailqueue_combined_extend.adoc │ │ │ │ └── specialized-instances.adoc │ │ │ ├── benchmark │ │ │ │ ├── benchmark_prepare.adoc │ │ │ │ ├── db-benchmark.adoc │ │ │ │ ├── index.adoc │ │ │ │ ├── james-benchmark.adoc │ │ │ │ └── provision.sh │ │ │ ├── configure │ │ │ │ ├── batchsizes.adoc │ │ │ │ ├── blobstore.adoc │ │ │ │ ├── cassandra.adoc │ │ │ │ ├── collecting-contacts.adoc │ │ │ │ ├── collecting-events.adoc │ │ │ │ ├── dns.adoc │ │ │ │ ├── domainlist.adoc │ │ │ │ ├── droplists.adoc │ │ │ │ ├── dsn.adoc │ │ │ │ ├── extensions.adoc │ │ │ │ ├── healthcheck.adoc │ │ │ │ ├── imap.adoc │ │ │ │ ├── index.adoc │ │ │ │ ├── jmap.adoc │ │ │ │ ├── jmx.adoc │ │ │ │ ├── jvm.adoc │ │ │ │ ├── listeners.adoc │ │ │ │ ├── mailetcontainer.adoc │ │ │ │ ├── mailets.adoc │ │ │ │ ├── mailrepositorystore.adoc │ │ │ │ ├── mat-sts.adoc │ │ │ │ ├── matchers.adoc │ │ │ │ ├── opensearch.adoc │ │ │ │ ├── pop3.adoc │ │ │ │ ├── queue.adoc │ │ │ │ ├── rabbitmq.adoc │ │ │ │ ├── recipientrewritetable.adoc │ │ │ │ ├── redis.adoc │ │ │ │ ├── remote-delivery-error-handling.adoc │ │ │ │ ├── search.adoc │ │ │ │ ├── sieve.adoc │ │ │ │ ├── smtp-hooks.adoc │ │ │ │ ├── smtp.adoc │ │ │ │ ├── spam.adoc │ │ │ │ ├── ssl.adoc │ │ │ │ ├── tika.adoc │ │ │ │ ├── usersrepository.adoc │ │ │ │ ├── vault.adoc │ │ │ │ └── webadmin.adoc │ │ │ ├── extending.adoc │ │ │ ├── index.adoc │ │ │ ├── objectives.adoc │ │ │ ├── operate │ │ │ │ ├── cassandra-migration.adoc │ │ │ │ ├── cli.adoc │ │ │ │ ├── guide.adoc │ │ │ │ ├── index.adoc │ │ │ │ ├── logging.adoc │ │ │ │ ├── logging │ │ │ │ │ └── docker-compose-block.adoc │ │ │ │ ├── metrics.adoc │ │ │ │ ├── migrating.adoc │ │ │ │ ├── performanceChecklist.adoc │ │ │ │ ├── security.adoc │ │ │ │ ├── webadmin.adoc │ │ │ │ └── webadmin │ │ │ │ │ ├── admin-mail-queues-extend.adoc │ │ │ │ │ ├── admin-mailboxes-extend.adoc │ │ │ │ │ └── admin-messages-extend.adoc │ │ │ └── run │ │ │ │ ├── index.adoc │ │ │ │ ├── k8s-checklist.adoc │ │ │ │ ├── k8s-logsMetrics.adoc │ │ │ │ ├── k8s-secrets.adoc │ │ │ │ ├── k8s-values.adoc │ │ │ │ ├── run-docker.adoc │ │ │ │ ├── run-java.adoc │ │ │ │ └── run-kubernetes.adoc │ │ ├── index.adoc │ │ ├── postgres │ │ │ ├── architecture │ │ │ │ ├── consistency-model.adoc │ │ │ │ ├── consistency_model_data_replication_extend.adoc │ │ │ │ ├── implemented-standards.adoc │ │ │ │ ├── index.adoc │ │ │ │ ├── mailqueue_combined_extend.adoc │ │ │ │ └── specialized-instances.adoc │ │ │ ├── benchmark │ │ │ │ ├── benchmark_prepare.adoc │ │ │ │ ├── db-benchmark.adoc │ │ │ │ ├── index.adoc │ │ │ │ └── james-benchmark.adoc │ │ │ ├── configure │ │ │ │ ├── batchsizes.adoc │ │ │ │ ├── blobstore.adoc │ │ │ │ ├── collecting-contacts.adoc │ │ │ │ ├── collecting-events.adoc │ │ │ │ ├── dns.adoc │ │ │ │ ├── domainlist.adoc │ │ │ │ ├── droplists.adoc │ │ │ │ ├── dsn.adoc │ │ │ │ ├── extensions.adoc │ │ │ │ ├── healthcheck.adoc │ │ │ │ ├── imap.adoc │ │ │ │ ├── index.adoc │ │ │ │ ├── jmap.adoc │ │ │ │ ├── jmx.adoc │ │ │ │ ├── jvm.adoc │ │ │ │ ├── listeners.adoc │ │ │ │ ├── mailetcontainer.adoc │ │ │ │ ├── mailets.adoc │ │ │ │ ├── mailrepositorystore.adoc │ │ │ │ ├── mat-sts.adoc │ │ │ │ ├── matchers.adoc │ │ │ │ ├── opensearch.adoc │ │ │ │ ├── pop3.adoc │ │ │ │ ├── queue.adoc │ │ │ │ ├── rabbitmq.adoc │ │ │ │ ├── recipientrewritetable.adoc │ │ │ │ ├── redis.adoc │ │ │ │ ├── remote-delivery-error-handling.adoc │ │ │ │ ├── search.adoc │ │ │ │ ├── sieve.adoc │ │ │ │ ├── smtp-hooks.adoc │ │ │ │ ├── smtp.adoc │ │ │ │ ├── spam.adoc │ │ │ │ ├── ssl.adoc │ │ │ │ ├── tika.adoc │ │ │ │ ├── usersrepository.adoc │ │ │ │ ├── vault.adoc │ │ │ │ └── webadmin.adoc │ │ │ ├── extending.adoc │ │ │ ├── extending │ │ │ │ └── index.adoc │ │ │ ├── index.adoc │ │ │ ├── objectives.adoc │ │ │ ├── operate │ │ │ │ ├── cli.adoc │ │ │ │ ├── guide.adoc │ │ │ │ ├── index.adoc │ │ │ │ ├── logging.adoc │ │ │ │ ├── logging │ │ │ │ │ └── docker-compose-block.adoc │ │ │ │ ├── metrics.adoc │ │ │ │ ├── migrating.adoc │ │ │ │ ├── performanceChecklist.adoc │ │ │ │ ├── security.adoc │ │ │ │ ├── webadmin.adoc │ │ │ │ └── webadmin │ │ │ │ │ ├── admin-mail-queues-extend.adoc │ │ │ │ │ ├── admin-mailboxes-extend.adoc │ │ │ │ │ └── admin-messages-extend.adoc │ │ │ └── run │ │ │ │ ├── index.adoc │ │ │ │ ├── run-docker.adoc │ │ │ │ └── run-java.adoc │ │ ├── run.adoc │ │ └── test.adoc │ │ └── partials │ │ ├── AddDeliveredToHeader.adoc │ │ ├── AddFooter.adoc │ │ ├── AddSubjectPrefix.adoc │ │ ├── All.adoc │ │ ├── AmqpForwardAttribute.adoc │ │ ├── AtLeastPriority.adoc │ │ ├── AtMost.adoc │ │ ├── AtMostPriority.adoc │ │ ├── AttachmentFileNameIs.adoc │ │ ├── Bounce.adoc │ │ ├── ClamAVScan.adoc │ │ ├── ClassifyBounce.adoc │ │ ├── CommandForListserv.adoc │ │ ├── CommandListservMatcher.adoc │ │ ├── CompareNumericHeaderValue.adoc │ │ ├── ContactExtractor.adoc │ │ ├── ConvertTo7Bit.adoc │ │ ├── DKIMSign.adoc │ │ ├── DKIMVerify.adoc │ │ ├── DLP.adoc │ │ ├── DSNBounce.adoc │ │ ├── DeconnectionRight.adoc │ │ ├── Expires.adoc │ │ ├── ExtractMDNOriginalJMAPMessageId.adoc │ │ ├── FetchedFrom.adoc │ │ ├── FileRegexMatcher.adoc │ │ ├── FoldLongLines.adoc │ │ ├── Forward.adoc │ │ ├── FromRepository.adoc │ │ ├── HasAttachment.adoc │ │ ├── HasException.adoc │ │ ├── HasHeader.adoc │ │ ├── HasHeaderWithPrefix.adoc │ │ ├── HasMailAttribute.adoc │ │ ├── HasMailAttributeWithValue.adoc │ │ ├── HasMailAttributeWithValueRegex.adoc │ │ ├── HasMimeType.adoc │ │ ├── HasMimeTypeAnySubPart.adoc │ │ ├── HasMimeTypeParameter.adoc │ │ ├── HasPriority.adoc │ │ ├── HeadersToHTTP.adoc │ │ ├── HostIs.adoc │ │ ├── HostIsLocal.adoc │ │ ├── ICALToHeader.adoc │ │ ├── ICALToJsonAttribute.adoc │ │ ├── ICSSanitizer.adoc │ │ ├── ICalendarParser.adoc │ │ ├── InSpammerBlacklist.adoc │ │ ├── IsMarkedAsSpam.adoc │ │ ├── IsOverQuota.adoc │ │ ├── IsRemoteDeliveryPermanentError.adoc │ │ ├── IsRemoteDeliveryTemporaryError.adoc │ │ ├── IsSMIMEEncrypted.adoc │ │ ├── IsSMIMESigned.adoc │ │ ├── IsSenderInRRTLoop.adoc │ │ ├── IsSingleRecipient.adoc │ │ ├── IsX509CertificateSubject.adoc │ │ ├── LDAPMatchers.adoc │ │ ├── LocalDelivery.adoc │ │ ├── LogMessage.adoc │ │ ├── MailAttributesListToMimeHeaders.adoc │ │ ├── MailAttributesToMimeHeaders.adoc │ │ ├── MailToAllUsers.adoc │ │ ├── ManageSieveMailet.adoc │ │ ├── MetricsMailet.adoc │ │ ├── MimeDecodingMailet.adoc │ │ ├── NESSpamCheck.adoc │ │ ├── NotifyPostmaster.adoc │ │ ├── NotifySender.adoc │ │ ├── Null.adoc │ │ ├── OnlyText.adoc │ │ ├── PartHasContentType.adoc │ │ ├── PostmasterAlias.adoc │ │ ├── RandomStoring.adoc │ │ ├── RecipientCountExceeds.adoc │ │ ├── RecipientDomainIs.adoc │ │ ├── RecipientIs.adoc │ │ ├── RecipientIsLocal.adoc │ │ ├── RecipientIsRegex.adoc │ │ ├── RecipientRewriteTable.adoc │ │ ├── RecipientToLowerCase.adoc │ │ ├── RecoverAttachment.adoc │ │ ├── Redirect.adoc │ │ ├── RelayLimit.adoc │ │ ├── RemoteAddrInNetwork.adoc │ │ ├── RemoteAddrNotInNetwork.adoc │ │ ├── RemoteDelivery.adoc │ │ ├── RemoteDeliveryFailedWithSMTPCode.adoc │ │ ├── RemoveAllMailAttributes.adoc │ │ ├── RemoveMailAttribute.adoc │ │ ├── RemoveMimeHeader.adoc │ │ ├── RemoveMimeHeaderByPrefix.adoc │ │ ├── ReplaceContent.adoc │ │ ├── Resend.adoc │ │ ├── SMIMECheckSignature.adoc │ │ ├── SMIMEDecrypt.adoc │ │ ├── SMIMESign.adoc │ │ ├── SMTPAuthSuccessful.adoc │ │ ├── SMTPAuthUserIs.adoc │ │ ├── SMTPIsAuthNetwork.adoc │ │ ├── SPF.adoc │ │ ├── SanitizeMimeMessageId.adoc │ │ ├── SenderDomainIs.adoc │ │ ├── SenderHostIs.adoc │ │ ├── SenderHostIsLocal.adoc │ │ ├── SenderInFakeDomain.adoc │ │ ├── SenderIs.adoc │ │ ├── SenderIsLocal.adoc │ │ ├── SenderIsNull.adoc │ │ ├── SenderIsRegex.adoc │ │ ├── SentByJmap.adoc │ │ ├── SentByMailet.adoc │ │ ├── SerialiseToHTTP.adoc │ │ ├── ServerTime.adoc │ │ ├── SetMailAttribute.adoc │ │ ├── SetMimeHeader.adoc │ │ ├── Sieve.adoc │ │ ├── Sign.adoc │ │ ├── SizeGreaterThan.adoc │ │ ├── SpamAssassin.adoc │ │ ├── SplitMail.adoc │ │ ├── StripAttachment.adoc │ │ ├── SubAddressing.adoc │ │ ├── SubjectIs.adoc │ │ ├── SubjectStartsWith.adoc │ │ ├── TextCalendarBodyToAttachment.adoc │ │ ├── ToPlainText.adoc │ │ ├── ToProcessor.adoc │ │ ├── ToRepository.adoc │ │ ├── ToSenderDomainRepository.adoc │ │ ├── ToSenderFolder.adoc │ │ ├── TooManyLines.adoc │ │ ├── TooManyRecipients.adoc │ │ ├── UnwrapText.adoc │ │ ├── UseHeaderRecipients.adoc │ │ ├── UserIs.adoc │ │ ├── VacationMailet.adoc │ │ ├── WithPriority.adoc │ │ ├── WithStorageDirective.adoc │ │ ├── WrapText.adoc │ │ ├── XOriginatingIpInNetwork.adoc │ │ ├── architecture │ │ ├── consistency-model.adoc │ │ ├── implemented-standards.adoc │ │ ├── index.adoc │ │ └── specialized-instances.adoc │ │ ├── benchmark │ │ ├── db-benchmark.adoc │ │ ├── index.adoc │ │ └── james-benchmark.adoc │ │ ├── configure │ │ ├── batchsizes.adoc │ │ ├── blobstore.adoc │ │ ├── collecting-contacts.adoc │ │ ├── collecting-events.adoc │ │ ├── dns.adoc │ │ ├── domainlist.adoc │ │ ├── droplists.adoc │ │ ├── dsn.adoc │ │ ├── extensions.adoc │ │ ├── forCoreComponentsPartial.adoc │ │ ├── forExtensionsPartial.adoc │ │ ├── forProtocolsPartial.adoc │ │ ├── forStorageDependenciesPartial.adoc │ │ ├── healthcheck.adoc │ │ ├── imap.adoc │ │ ├── jmap.adoc │ │ ├── jmx.adoc │ │ ├── jvm.adoc │ │ ├── listeners.adoc │ │ ├── mailetcontainer.adoc │ │ ├── mailets.adoc │ │ ├── mailrepositorystore.adoc │ │ ├── matchers.adoc │ │ ├── mta-sts.adoc │ │ ├── opensearch.adoc │ │ ├── pop3.adoc │ │ ├── queue.adoc │ │ ├── rabbitmq.adoc │ │ ├── recipientrewritetable.adoc │ │ ├── redis.adoc │ │ ├── remote-delivery-error-handling.adoc │ │ ├── search.adoc │ │ ├── sieve.adoc │ │ ├── smtp-hooks.adoc │ │ ├── smtp-limitation-hoot.adoc │ │ ├── smtp.adoc │ │ ├── spam.adoc │ │ ├── ssl.adoc │ │ ├── systemPropertiesPartial.adoc │ │ ├── tika.adoc │ │ ├── usersrepository.adoc │ │ ├── vault.adoc │ │ └── webadmin.adoc │ │ └── operate │ │ ├── cli.adoc │ │ ├── guide.adoc │ │ ├── index.adoc │ │ ├── logging.adoc │ │ ├── metrics.adoc │ │ ├── migrating.adoc │ │ ├── performanceChecklist.adoc │ │ ├── security.adoc │ │ └── webadmin.adoc └── ui-overrides │ ├── img │ └── james.svg │ └── partials │ └── header-content.hbs ├── event-bus ├── api │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ ├── events │ │ │ ├── DispatchingFailureGroup.java │ │ │ ├── Event.java │ │ │ ├── EventBus.java │ │ │ ├── EventBusName.java │ │ │ ├── EventDeadLetters.java │ │ │ ├── EventDeadLettersHealthCheck.java │ │ │ ├── EventListener.java │ │ │ ├── EventSerializer.java │ │ │ ├── EventSerializersAggregator.java │ │ │ ├── Group.java │ │ │ ├── GroupAlreadyRegistered.java │ │ │ ├── GroupRegistrationNotFound.java │ │ │ ├── Registration.java │ │ │ ├── RegistrationKey.java │ │ │ └── RetryBackoffConfiguration.java │ │ │ └── mailbox │ │ │ └── events │ │ │ └── GenericGroup.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── events │ │ ├── DispatchingFailureGroupTest.java │ │ ├── ErrorHandlingContract.java │ │ ├── EventBusConcurrentTestContract.java │ │ ├── EventBusContract.java │ │ ├── EventBusTestFixture.java │ │ ├── EventCollector.java │ │ ├── EventDeadLettersContract.java │ │ ├── EventDeadLettersHealthCheckContract.java │ │ ├── GroupContract.java │ │ ├── GroupTest.java │ │ ├── InsertionIdTest.java │ │ ├── KeyContract.java │ │ └── RetryBackoffConfigurationTest.java ├── cassandra │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── events │ │ │ ├── CassandraEventDeadLetters.java │ │ │ ├── CassandraEventDeadLettersDAO.java │ │ │ ├── CassandraEventDeadLettersDataDefinition.java │ │ │ ├── CassandraEventDeadLettersGroupDAO.java │ │ │ └── tables │ │ │ ├── CassandraEventDeadLettersGroupTable.java │ │ │ └── CassandraEventDeadLettersTable.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── events │ │ ├── CassandraEventDeadLettersDAOTest.java │ │ ├── CassandraEventDeadLettersGroupDAOTest.java │ │ ├── CassandraEventDeadLettersHealthCheckTest.java │ │ └── CassandraEventDeadLettersTest.java ├── distributed │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── events │ │ │ ├── EventBusId.java │ │ │ ├── EventBusReconnectionHandler.java │ │ │ ├── EventDispatcher.java │ │ │ ├── GroupConsumerRetry.java │ │ │ ├── GroupRegistration.java │ │ │ ├── GroupRegistrationHandler.java │ │ │ ├── KeyReconnectionHandler.java │ │ │ ├── KeyRegistration.java │ │ │ ├── KeyRegistrationHandler.java │ │ │ ├── ListenerExecutor.java │ │ │ ├── LocalListenerRegistry.java │ │ │ ├── NamingStrategy.java │ │ │ ├── RabbitEventBusConsumerHealthCheck.java │ │ │ ├── RabbitMQEventBus.java │ │ │ ├── RabbitMQJmapEventBusDeadLetterQueueHealthCheck.java │ │ │ ├── RabbitMQMailboxEventBusDeadLetterQueueHealthCheck.java │ │ │ ├── RegistrationBinder.java │ │ │ ├── RegistrationQueueName.java │ │ │ ├── RoutingKeyConverter.java │ │ │ └── WaitDelayGenerator.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── events │ │ ├── EventBusIdTest.java │ │ ├── LocalListenerRegistryTest.java │ │ ├── NetworkErrorTest.java │ │ ├── RabbitMQEventBusDeadLetterQueueUpgradeTest.java │ │ ├── RabbitMQEventBusTest.java │ │ ├── RabbitMQEventBusUsingQuorumQueueTest.java │ │ ├── RabbitMQJmapEventBusDeadLetterQueueHealthCheckTest.java │ │ ├── RabbitMQMailboxEventBusDeadLetterQueueHealthCheckTest.java │ │ ├── RoutingKeyConverterTest.java │ │ └── WaitDelayGeneratorTest.java ├── in-vm │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── events │ │ │ ├── InVMEventBus.java │ │ │ ├── MemoryEventDeadLetters.java │ │ │ └── delivery │ │ │ ├── EventDelivery.java │ │ │ └── InVmEventDelivery.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── events │ │ ├── InVMEventBusTest.java │ │ ├── MemoryEventDeadLettersHealthCheckTest.java │ │ ├── MemoryEventDeadLettersTest.java │ │ └── delivery │ │ └── InVmEventDeliveryTest.java ├── pom.xml └── postgres │ ├── pom.xml │ └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── events │ │ ├── PostgresEventDeadLetters.java │ │ └── PostgresEventDeadLettersDataDefinition.java │ └── test │ └── java │ └── org │ └── apache │ └── james │ └── events │ └── PostgresEventDeadLettersTest.java ├── event-sourcing ├── event-sourcing-core │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── eventsourcing │ │ │ │ └── CommandHandler.java │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── eventsourcing │ │ │ ├── CommandDispatcher.scala │ │ │ ├── EventBus.scala │ │ │ ├── EventSourcingSystem.scala │ │ │ └── Subscriber.scala │ │ └── test │ │ └── scala │ │ └── org │ │ └── apache │ │ └── james │ │ └── eventsourcing │ │ ├── DataCollectorSubscriber.scala │ │ └── EventSourcingSystemTest.scala ├── event-sourcing-pojo │ ├── pom.xml │ └── src │ │ ├── main │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── eventsourcing │ │ │ ├── AggregateId.scala │ │ │ ├── Command.scala │ │ │ ├── Event.scala │ │ │ └── EventId.scala │ │ └── test │ │ └── scala │ │ └── org │ │ └── apache │ │ └── james │ │ └── eventsourcing │ │ ├── EventIdTest.scala │ │ ├── TestAggregateId.scala │ │ └── TestEvent.scala ├── event-store-api │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── eventsourcing │ │ │ │ └── eventstore │ │ │ │ └── EventNestedTypes.java │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── eventsourcing │ │ │ └── eventstore │ │ │ ├── EventStore.scala │ │ │ ├── EventStoreFailedException.scala │ │ │ ├── History.scala │ │ │ ├── JsonEventSerializer.scala │ │ │ └── dto │ │ │ ├── EventDTO.scala │ │ │ └── EventDTOModule.scala │ │ └── test │ │ └── scala │ │ └── org │ │ └── apache │ │ └── james │ │ └── eventsourcing │ │ └── eventstore │ │ ├── EventStoreContract.scala │ │ ├── HistoryTest.scala │ │ └── dto │ │ ├── OtherEvent.scala │ │ ├── OtherTestEventDTO.scala │ │ ├── SnapshotEvent.scala │ │ ├── SnapshotEventDTO.scala │ │ ├── TestEventDTO.scala │ │ └── TestEventDTOModules.scala ├── event-store-cassandra │ ├── pom.xml │ └── src │ │ ├── main │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── eventsourcing │ │ │ └── eventstore │ │ │ └── cassandra │ │ │ ├── CassandraEventStore.scala │ │ │ ├── CassandraEventStoreDataDefinition.scala │ │ │ ├── CassandraEventStoreTable.scala │ │ │ └── EventStoreDao.scala │ │ └── test │ │ └── scala │ │ └── org │ │ └── apache │ │ └── james │ │ └── eventsourcing │ │ └── eventstore │ │ └── cassandra │ │ ├── CassandraEventSourcingSystemTest.scala │ │ ├── CassandraEventStoreExtension.scala │ │ ├── CassandraEventStoreExtensionForTestEvents.scala │ │ ├── CassandraEventStoreTest.scala │ │ └── JsonEventSerializerTest.scala ├── event-store-jpa │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── eventsourcing │ │ │ └── eventstore │ │ │ └── jpa │ │ │ ├── JPAEventStore.java │ │ │ └── model │ │ │ └── JPAEvent.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── eventsourcing │ │ │ └── eventstore │ │ │ └── jpa │ │ │ ├── JPAEventSourcingSystemTest.java │ │ │ ├── JPAEventStoreExtension.java │ │ │ ├── JPAEventStoreTest.java │ │ │ └── model │ │ │ └── JPAEventTest.java │ │ └── resources │ │ └── persistence.xml ├── event-store-memory │ ├── pom.xml │ └── src │ │ ├── main │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── eventsourcing │ │ │ └── eventstore │ │ │ └── memory │ │ │ └── InMemoryEventStore.scala │ │ └── test │ │ └── scala │ │ └── org │ │ └── apache │ │ └── james │ │ └── eventsourcing │ │ └── eventstore │ │ └── memory │ │ ├── InMemoryEventSourcingSystemTest.scala │ │ ├── InMemoryEventStoreExtension.scala │ │ └── InMemoryEventStoreTest.scala ├── event-store-postgres │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── eventsourcing │ │ │ └── eventstore │ │ │ └── postgres │ │ │ ├── PostgresEventStore.java │ │ │ ├── PostgresEventStoreDAO.java │ │ │ └── PostgresEventStoreDataDefinition.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── eventsourcing │ │ └── eventstore │ │ └── postgres │ │ ├── PostgresEventSourcingSystemTest.java │ │ ├── PostgresEventStoreExtension.java │ │ ├── PostgresEventStoreExtensionForTestEvents.java │ │ └── PostgresEventStoreTest.java └── pom.xml ├── examples ├── README.md ├── custom-healthcheck │ ├── README.md │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── examples │ │ │ └── HealthCheckA.java │ │ └── resources │ │ └── healthcheck.properties ├── custom-imap │ ├── README.md │ ├── docker-compose.yml │ ├── pom.xml │ ├── sample-configuration │ │ └── imapserver.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── examples │ │ │ │ └── imap │ │ │ │ ├── PingCommandParser.java │ │ │ │ ├── PingImapPackages.java │ │ │ │ ├── PingProcessor.java │ │ │ │ └── PingResponseEncoder.java │ │ └── resources │ │ │ └── imapserver.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── examples │ │ │ └── imap │ │ │ └── ImapCustomPackagesTest.java │ │ └── resources │ │ ├── dnsservice.xml │ │ ├── domainlist.xml │ │ ├── keystore │ │ ├── listeners.xml │ │ ├── lmtpserver.xml │ │ ├── mailetcontainer.xml │ │ ├── mailrepositorystore.xml │ │ ├── managesieveserver.xml │ │ ├── pop3server.xml │ │ ├── smtpserver.xml │ │ └── usersrepository.xml ├── custom-james-assembly │ ├── README.md │ ├── pom.xml │ ├── sample-configuration │ │ ├── imapserver.xml │ │ ├── logback.xml │ │ ├── mailetcontainer.xml │ │ ├── mailrepositorystore.xml │ │ └── smtpserver.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── examples │ │ └── CustomJamesServerMain.java ├── custom-listeners │ ├── README.md │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── examples │ │ │ │ └── custom │ │ │ │ └── listeners │ │ │ │ └── SetCustomFlagOnBigMessages.java │ │ └── resources │ │ │ └── listeners.xml │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── examples │ │ └── custom │ │ └── listeners │ │ └── SetCustomFlagOnBigMessagesTest.java ├── custom-mailets │ ├── README.md │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── examples │ │ │ └── custom │ │ │ └── mailets │ │ │ ├── IsDelayedForMoreThan.java │ │ │ └── SendPromotionCode.java │ │ └── resources │ │ └── mailetcontainer.xml ├── custom-smtp-command │ ├── README.md │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── examples │ │ │ ├── MyCmdHandlerLoader.java │ │ │ └── MyNoopCmdHandler.java │ │ └── resources │ │ └── smtpserver.xml ├── custom-smtp-hooks │ ├── README.md │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── examples │ │ │ └── LoggingRcptHook.java │ │ └── resources │ │ └── smtpserver.xml ├── custom-webadmin-route │ ├── README.md │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── examples │ │ │ └── RouteA.java │ │ └── resources │ │ └── webadmin.properties ├── imap-autoconf │ ├── README.adoc │ ├── content │ │ ├── .well-known │ │ │ └── autoconfig │ │ │ │ └── mail │ │ │ │ └── config-v1.1.xml │ │ ├── autodiscover │ │ │ └── autodiscover.xml │ │ └── mail │ │ │ └── config-v1.1.xml │ ├── docker-compose.yml │ ├── outlook_enjoyAutoConfig.jpg │ ├── outlook_enterMailAddress.jpg │ ├── outlook_enterPassword.jpg │ └── thunderbird_autoconf.png ├── metrics-graphite │ ├── README.md │ ├── docker-compose.yml │ ├── image │ │ └── metrics-graphite.png │ ├── james │ │ └── extensions.properties │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── examples │ │ └── GraphiteExporter.java ├── oidc │ ├── README.md │ ├── _media │ │ ├── IMAP-SMTP-oidc.png │ │ ├── IMAP_SMTP oidc.drawio │ │ ├── imap-setting.png │ │ ├── login-popup.png │ │ ├── oidc-slo.drawio │ │ ├── oidc-slo.png │ │ ├── oidc-sso.drawio │ │ ├── oidc-sso.png │ │ ├── receive-mail.png │ │ ├── send-mail.png │ │ └── smtp-setting.png │ ├── apisix │ │ └── conf │ │ │ ├── apisix.yaml │ │ │ └── config.yaml │ ├── docker-compose.yml │ ├── james │ │ ├── imapserver.xml │ │ ├── jmap.properties │ │ ├── smtpserver.xml │ │ └── usersrepository.xml │ ├── keycloak │ │ └── realm-oidc.json │ ├── ldap │ │ └── populate.ldif │ └── test.sh ├── opensearch-dahsboard │ ├── README.md │ ├── docker-compose.yml │ ├── img.png │ ├── img_1.png │ ├── img_10.png │ ├── img_11.png │ ├── img_12.png │ ├── img_13.png │ ├── img_14.png │ ├── img_15.png │ ├── img_2.png │ ├── img_3.png │ ├── img_4.png │ ├── img_5.png │ ├── img_6.png │ ├── img_7.png │ ├── img_8.png │ ├── img_9.png │ └── james-dashboard.ndjson ├── pom.xml └── proxy-smtp │ ├── README.md │ ├── docker-compose.yml │ ├── haproxy.cfg │ ├── imapserver.xml │ └── smtpserver.xml ├── james-logo.png ├── javax-mail-extension ├── pom.xml └── src │ └── main │ └── java │ └── org │ └── apache │ └── james │ └── javax │ ├── AddressHelper.java │ ├── MimeMultipartReport.java │ └── MultipartUtil.java ├── json ├── pom.xml └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── json │ │ ├── DTO.java │ │ ├── DTOConverter.java │ │ ├── DTOModule.java │ │ └── JsonGenericSerializer.java │ └── test │ └── java │ └── org │ └── apache │ └── james │ ├── DTOConverterTest.java │ ├── JsonGenericSerializerTest.java │ ├── JsonSerializationVerifier.java │ ├── JsonSerializationVerifierTest.java │ ├── SerializationFixture.java │ └── dto │ ├── BaseType.java │ ├── FirstDTO.java │ ├── FirstDomainObject.java │ ├── FirstNestedDTO.java │ ├── FirstNestedType.java │ ├── NestedType.java │ ├── SecondDTO.java │ ├── SecondDomainObject.java │ ├── SecondNestedDTO.java │ ├── SecondNestedType.java │ ├── TestModule.java │ ├── TestModules.java │ └── TestNestedModule.java ├── mailbox ├── README.md ├── api │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ ├── ApplicableFlagBuilder.java │ │ │ ├── AttachmentContentLoader.java │ │ │ ├── AttachmentIdFactory.java │ │ │ ├── AttachmentManager.java │ │ │ ├── Authenticator.java │ │ │ ├── Authorizator.java │ │ │ ├── DefaultMailboxes.java │ │ │ ├── FlagsBuilder.java │ │ │ ├── MailboxAnnotationManager.java │ │ │ ├── MailboxCounterCorrector.java │ │ │ ├── MailboxManager.java │ │ │ ├── MailboxPathLocker.java │ │ │ ├── MailboxSession.java │ │ │ ├── MailboxSessionIdGenerator.java │ │ │ ├── MailboxUtil.java │ │ │ ├── MessageIdManager.java │ │ │ ├── MessageManager.java │ │ │ ├── MessageUid.java │ │ │ ├── MetadataWithMailboxId.java │ │ │ ├── ModSeq.java │ │ │ ├── RequestAware.java │ │ │ ├── RightManager.java │ │ │ ├── Role.java │ │ │ ├── SessionProvider.java │ │ │ ├── StringBackedAttachmentIdFactory.java │ │ │ ├── SubscriptionManager.java │ │ │ ├── SystemMailboxesProvider.java │ │ │ ├── UuidBackedAttachmentIdFactory.java │ │ │ ├── acl │ │ │ ├── ACLDiff.java │ │ │ ├── MailboxACLResolver.java │ │ │ ├── PositiveUserACLChanged.java │ │ │ ├── PositiveUserACLDiff.java │ │ │ └── UnionMailboxACLResolver.java │ │ │ ├── copier │ │ │ └── MailboxCopier.java │ │ │ ├── events │ │ │ ├── MailboxEvents.java │ │ │ ├── MailboxIdRegistrationKey.java │ │ │ └── MessageMoveEvent.java │ │ │ ├── exception │ │ │ ├── AnnotationException.java │ │ │ ├── AttachmentNotFoundException.java │ │ │ ├── BadCredentialsException.java │ │ │ ├── DifferentDomainException.java │ │ │ ├── ForbiddenDelegationException.java │ │ │ ├── HasEmptyMailboxNameInHierarchyException.java │ │ │ ├── InboxAlreadyCreated.java │ │ │ ├── InsufficientRightsException.java │ │ │ ├── MailboxException.java │ │ │ ├── MailboxExistsException.java │ │ │ ├── MailboxNameException.java │ │ │ ├── MailboxNotFoundException.java │ │ │ ├── MailboxRoleNotFoundException.java │ │ │ ├── MailboxSecurityException.java │ │ │ ├── MessageRangeException.java │ │ │ ├── OverQuotaException.java │ │ │ ├── ReadOnlyException.java │ │ │ ├── SubscriptionException.java │ │ │ ├── ThreadNotFoundException.java │ │ │ ├── TooLongMailboxNameException.java │ │ │ ├── UnsupportedCriteriaException.java │ │ │ ├── UnsupportedOperationException.java │ │ │ ├── UnsupportedRightException.java │ │ │ ├── UnsupportedSearchException.java │ │ │ └── UserDoesNotExistException.java │ │ │ ├── extension │ │ │ └── PreDeletionHook.java │ │ │ ├── extractor │ │ │ ├── ParsedContent.java │ │ │ └── TextExtractor.java │ │ │ ├── indexer │ │ │ ├── IndexingDetailInformation.java │ │ │ ├── MessageIdReIndexer.java │ │ │ ├── ReIndexer.java │ │ │ └── ReIndexingExecutionFailures.java │ │ │ ├── model │ │ │ ├── AttachmentId.java │ │ │ ├── AttachmentMetadata.java │ │ │ ├── ByteContent.java │ │ │ ├── ByteSourceContent.java │ │ │ ├── Cid.java │ │ │ ├── ComposedMessageId.java │ │ │ ├── ComposedMessageIdWithMetaData.java │ │ │ ├── Content.java │ │ │ ├── ContentType.java │ │ │ ├── CurrentQuotas.java │ │ │ ├── DeleteResult.java │ │ │ ├── FetchGroup.java │ │ │ ├── Header.java │ │ │ ├── HeaderAndBodyByteContent.java │ │ │ ├── Headers.java │ │ │ ├── InputStreamContent.java │ │ │ ├── Mailbox.java │ │ │ ├── MailboxACL.java │ │ │ ├── MailboxAnnotation.java │ │ │ ├── MailboxAnnotationKey.java │ │ │ ├── MailboxConstants.java │ │ │ ├── MailboxCounters.java │ │ │ ├── MailboxId.java │ │ │ ├── MailboxMetaData.java │ │ │ ├── MailboxPath.java │ │ │ ├── MessageAttachmentMetadata.java │ │ │ ├── MessageId.java │ │ │ ├── MessageIdDto.java │ │ │ ├── MessageMetaData.java │ │ │ ├── MessageMoves.java │ │ │ ├── MessageRange.java │ │ │ ├── MessageResult.java │ │ │ ├── MessageResultIterator.java │ │ │ ├── MimeDescriptor.java │ │ │ ├── MimePath.java │ │ │ ├── MultimailboxesSearchQuery.java │ │ │ ├── ParsedAttachment.java │ │ │ ├── PartContentDescriptor.java │ │ │ ├── Profiles.java │ │ │ ├── Quota.java │ │ │ ├── QuotaOperation.java │ │ │ ├── QuotaRatio.java │ │ │ ├── QuotaRoot.java │ │ │ ├── SearchQuery.java │ │ │ ├── SerializableQuota.java │ │ │ ├── SerializableQuotaLimitValue.java │ │ │ ├── SerializableQuotaUsageValue.java │ │ │ ├── StringBackedAttachmentId.java │ │ │ ├── ThreadId.java │ │ │ ├── UidValidity.java │ │ │ ├── UpdatedFlags.java │ │ │ ├── UuidBackedAttachmentId.java │ │ │ └── search │ │ │ │ ├── ExactName.java │ │ │ │ ├── ExactNameCaseInsensitive.java │ │ │ │ ├── MailboxNameExpression.java │ │ │ │ ├── MailboxQuery.java │ │ │ │ ├── PrefixedRegex.java │ │ │ │ ├── PrefixedWildcard.java │ │ │ │ ├── PrefixedWildcardCaseInsensitive.java │ │ │ │ └── Wildcard.java │ │ │ ├── probe │ │ │ ├── ACLProbe.java │ │ │ ├── MailboxProbe.java │ │ │ └── QuotaProbe.java │ │ │ ├── quota │ │ │ ├── CurrentQuotaManager.java │ │ │ ├── Limits.java │ │ │ ├── MaxQuotaManager.java │ │ │ ├── QuotaChangeNotifier.java │ │ │ ├── QuotaCodec.java │ │ │ ├── QuotaManager.java │ │ │ ├── QuotaRootDeserializer.java │ │ │ ├── QuotaRootResolver.java │ │ │ └── UserQuotaRootResolver.java │ │ │ └── searchhighligt │ │ │ ├── SearchHighlighter.java │ │ │ ├── SearchHighlighterConfiguration.java │ │ │ └── SearchSnippet.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ ├── AppendResultTest.java │ │ │ ├── ApplicableFlagBuilderTest.java │ │ │ ├── ComposedMessageIdTest.java │ │ │ ├── EventTest.java │ │ │ ├── MailboxExceptionTest.java │ │ │ ├── MailboxListenerTest.java │ │ │ ├── MailboxManagerStressContract.java │ │ │ ├── MailboxManagerTest.java │ │ │ ├── MailboxSessionUtil.java │ │ │ ├── MessageMoveEventTest.java │ │ │ ├── MessageUidTest.java │ │ │ ├── MetadataWithMailboxIdTest.java │ │ │ ├── ModSeqTest.java │ │ │ ├── RoleTest.java │ │ │ ├── SubscriptionManagerContract.java │ │ │ ├── acl │ │ │ ├── ACLDiffTest.java │ │ │ ├── PositiveUserACLChangedTest.java │ │ │ ├── PositiveUserACLDiffTest.java │ │ │ └── UnionMailboxACLResolverTest.java │ │ │ ├── events │ │ │ └── MailboxIdRegistrationKeyTest.java │ │ │ ├── extension │ │ │ └── PreDeletionHookTest.java │ │ │ ├── extractor │ │ │ ├── ParsedContentTest.java │ │ │ └── TextExtractorContract.java │ │ │ ├── fixture │ │ │ └── MailboxFixture.java │ │ │ ├── indexer │ │ │ ├── ReindexingExecutionFailuresTest.java │ │ │ └── ReindexingFailureTest.java │ │ │ ├── manager │ │ │ ├── IntegrationResources.java │ │ │ ├── ManagerTestProvisionner.java │ │ │ └── QuotaMessageManagerContract.java │ │ │ ├── mock │ │ │ ├── DataProvisioner.java │ │ │ └── MockMail.java │ │ │ ├── model │ │ │ ├── AttachmentMetadataTest.java │ │ │ ├── CidTest.java │ │ │ ├── ComposedMessageIdWithMetaDataTest.java │ │ │ ├── ContentTypeTest.java │ │ │ ├── CurrentQuotasTest.java │ │ │ ├── FetchGroupTest.java │ │ │ ├── MailboxACLEntryKeyTest.java │ │ │ ├── MailboxACLTest.java │ │ │ ├── MailboxAnnotationKeyTest.java │ │ │ ├── MailboxAnnotationTest.java │ │ │ ├── MailboxAssertingTool.java │ │ │ ├── MailboxAssertingToolTest.java │ │ │ ├── MailboxCountersTest.java │ │ │ ├── MailboxFolderDelimiterAwareTest.java │ │ │ ├── MailboxPathTest.java │ │ │ ├── MessageAttachmentMetadataTest.java │ │ │ ├── MessageIdDtoTest.java │ │ │ ├── MessageMetaDataTest.java │ │ │ ├── MessageMovesTest.java │ │ │ ├── MessageRangeTest.java │ │ │ ├── MimePathTest.java │ │ │ ├── MultimailboxesSearchQueryTest.java │ │ │ ├── PartContentDescriptorTest.java │ │ │ ├── QuotaOperationTest.java │ │ │ ├── QuotaRatioTest.java │ │ │ ├── QuotaRootTest.java │ │ │ ├── QuotaTest.java │ │ │ ├── Rfc4314RightsTest.java │ │ │ ├── SearchQueryTest.java │ │ │ ├── StringBackedAttachmentIdTest.java │ │ │ ├── TestId.java │ │ │ ├── TestMessageId.java │ │ │ ├── ThreadIdTest.java │ │ │ ├── UidValidityTest.java │ │ │ ├── UpdatedFlagsTest.java │ │ │ └── search │ │ │ │ ├── ExactNameCaseInsensitiveTest.java │ │ │ │ ├── ExactNameTest.java │ │ │ │ ├── MailboxQueryTest.java │ │ │ │ ├── PrefixedRegexTest.java │ │ │ │ ├── PrefixedWildcardCaseInsensitiveTest.java │ │ │ │ ├── PrefixedWildcardTest.java │ │ │ │ └── WildcardTest.java │ │ │ ├── quota │ │ │ └── QuotaFixture.java │ │ │ ├── searchhighligt │ │ │ └── SearchHighLighterContract.java │ │ │ └── util │ │ │ └── EventCollector.java │ │ └── resources │ │ ├── eml │ │ └── twoAttachmentsApi.eml │ │ ├── shattered-1.pdf │ │ └── shattered-2.pdf ├── backup │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── backup │ │ │ ├── ArchiveService.java │ │ │ ├── DefaultMailboxBackup.java │ │ │ ├── Directory.java │ │ │ ├── MailArchiveEntry.java │ │ │ ├── MailArchiveIterator.java │ │ │ ├── MailArchiveRestorer.java │ │ │ ├── MailArchivesLoader.java │ │ │ ├── MailboxBackup.java │ │ │ ├── MailboxWithAnnotations.java │ │ │ ├── MailboxWithAnnotationsArchiveEntry.java │ │ │ ├── MessageArchiveEntry.java │ │ │ ├── SerializedMailboxId.java │ │ │ ├── SerializedMessageId.java │ │ │ ├── UnknownArchiveEntry.java │ │ │ ├── ZipMailArchiveRestorer.java │ │ │ └── zip │ │ │ ├── EntryTypeExtraField.java │ │ │ ├── ExtraFieldExtractor.java │ │ │ ├── FlagsExtraField.java │ │ │ ├── InternalDateExtraField.java │ │ │ ├── LongExtraField.java │ │ │ ├── MailboxIdExtraField.java │ │ │ ├── MessageIdExtraField.java │ │ │ ├── SizeExtraField.java │ │ │ ├── StringExtraField.java │ │ │ ├── UidExtraField.java │ │ │ ├── UidValidityExtraField.java │ │ │ ├── WithZipHeader.java │ │ │ ├── ZipArchivesLoader.java │ │ │ ├── ZipEntryIterator.java │ │ │ ├── ZipEntryType.java │ │ │ ├── ZippedMailAccountIterator.java │ │ │ ├── Zipper.java │ │ │ └── package-info.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── mailbox │ │ └── backup │ │ ├── DefaultMailboxBackupTest.java │ │ ├── DirectoryTest.java │ │ ├── FlagExtraFieldTest.java │ │ ├── InternalDateExtraFieldTest.java │ │ ├── MailboxIdExtraFieldTest.java │ │ ├── MailboxMessageFixture.java │ │ ├── MessageIdExtraFieldTest.java │ │ ├── SizeExtraFieldTest.java │ │ ├── UidExtraFieldTest.java │ │ ├── UidValidityExtraFieldTest.java │ │ ├── WithZipHeaderTest.java │ │ ├── ZipArchiveEntryAssert.java │ │ ├── ZipArchivesLoaderTest.java │ │ ├── ZipAssert.java │ │ ├── ZipAssertTest.java │ │ ├── ZipEntryTypeContract.java │ │ ├── ZipEntryTypeExtraFieldTest.java │ │ └── ZipperTest.java ├── cassandra │ ├── README.txt │ ├── doc │ │ ├── README.md │ │ ├── table_structure.drawio │ │ └── table_structure.png │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── cassandra │ │ │ ├── CassandraMailboxManager.java │ │ │ ├── CassandraMailboxSessionMapperFactory.java │ │ │ ├── CassandraMessageManager.java │ │ │ ├── CassandraThreadIdGuessingAlgorithm.java │ │ │ ├── DeleteMessageListener.java │ │ │ ├── GhostMailbox.java │ │ │ ├── MailboxOperationLoggingListener.java │ │ │ ├── ids │ │ │ ├── CassandraId.java │ │ │ └── CassandraMessageId.java │ │ │ ├── json │ │ │ └── MailboxACLJsonConverter.java │ │ │ ├── mail │ │ │ ├── ACLMapper.java │ │ │ ├── AttachmentBlobReferenceSource.java │ │ │ ├── AttachmentLoader.java │ │ │ ├── CassandraACLDAOV2.java │ │ │ ├── CassandraACLMapper.java │ │ │ ├── CassandraAnnotationMapper.java │ │ │ ├── CassandraApplicableFlagDAO.java │ │ │ ├── CassandraAttachmentDAOV2.java │ │ │ ├── CassandraAttachmentMapper.java │ │ │ ├── CassandraDeletedMessageDAO.java │ │ │ ├── CassandraFirstUnseenDAO.java │ │ │ ├── CassandraIdAndPath.java │ │ │ ├── CassandraIndexTableHandler.java │ │ │ ├── CassandraMailboxCounterDAO.java │ │ │ ├── CassandraMailboxDAO.java │ │ │ ├── CassandraMailboxMapper.java │ │ │ ├── CassandraMailboxPathV3DAO.java │ │ │ ├── CassandraMailboxRecentsDAO.java │ │ │ ├── CassandraMessageDAOV3.java │ │ │ ├── CassandraMessageIdDAO.java │ │ │ ├── CassandraMessageIdMapper.java │ │ │ ├── CassandraMessageIdToImapUidDAO.java │ │ │ ├── CassandraMessageMapper.java │ │ │ ├── CassandraMessageMetadata.java │ │ │ ├── CassandraModSeqProvider.java │ │ │ ├── CassandraThreadDAO.java │ │ │ ├── CassandraThreadLookupDAO.java │ │ │ ├── CassandraUidProvider.java │ │ │ ├── CassandraUserMailboxRightsDAO.java │ │ │ ├── FlagsExtractor.java │ │ │ ├── MailboxDeleteDuringUpdateException.java │ │ │ ├── MessageAttachmentRepresentation.java │ │ │ ├── MessageBlobReferenceSource.java │ │ │ ├── MessageRepresentation.java │ │ │ ├── ThreadTablePartitionKey.java │ │ │ ├── eventsourcing │ │ │ │ └── acl │ │ │ │ │ ├── ACLModule.java │ │ │ │ │ ├── AclV2DAOSubscriber.java │ │ │ │ │ ├── DeleteMailboxCommand.java │ │ │ │ │ ├── MailboxACLAggregate.java │ │ │ │ │ ├── SetACLCommand.java │ │ │ │ │ ├── UpdateACLCommand.java │ │ │ │ │ └── UserRightsDAOSubscriber.java │ │ │ ├── task │ │ │ │ ├── CassandraMailboxCounterCorrector.java │ │ │ │ ├── ConflictingEntry.java │ │ │ │ ├── MailboxMergingTask.java │ │ │ │ ├── MailboxMergingTaskAdditionalInformationDTO.java │ │ │ │ ├── MailboxMergingTaskDTO.java │ │ │ │ ├── MailboxMergingTaskRunner.java │ │ │ │ ├── MessageInconsistenciesEntry.java │ │ │ │ ├── RecomputeMailboxCountersService.java │ │ │ │ ├── RecomputeMailboxCountersTask.java │ │ │ │ ├── RecomputeMailboxCountersTaskAdditionalInformationDTO.java │ │ │ │ ├── RecomputeMailboxCountersTaskDTO.java │ │ │ │ ├── RunningOptionsDTO.java │ │ │ │ ├── SolveMailboxFlagInconsistenciesService.java │ │ │ │ ├── SolveMailboxFlagInconsistenciesTaskAdditionalInformationDTO.java │ │ │ │ ├── SolveMailboxFlagInconsistenciesTaskDTO.java │ │ │ │ ├── SolveMailboxFlagInconsistencyTask.java │ │ │ │ ├── SolveMailboxInconsistenciesService.java │ │ │ │ ├── SolveMailboxInconsistenciesTask.java │ │ │ │ ├── SolveMailboxInconsistenciesTaskAdditionalInformationDTO.java │ │ │ │ ├── SolveMailboxInconsistenciesTaskDTO.java │ │ │ │ ├── SolveMessageInconsistenciesService.java │ │ │ │ ├── SolveMessageInconsistenciesTask.java │ │ │ │ ├── SolveMessageInconsistenciesTaskAdditionalInformationDTO.java │ │ │ │ └── SolveMessageInconsistenciesTaskDTO.java │ │ │ └── utils │ │ │ │ ├── FlagsUpdateStageResult.java │ │ │ │ └── MailboxBaseTupleUtil.java │ │ │ ├── modules │ │ │ ├── CassandraAclDataDefinition.java │ │ │ ├── CassandraAnnotationDataDefinition.java │ │ │ ├── CassandraApplicableFlagsDataDefinition.java │ │ │ ├── CassandraAttachmentDataDefinition.java │ │ │ ├── CassandraDeletedMessageDataDefinition.java │ │ │ ├── CassandraFirstUnseenDataDefinition.java │ │ │ ├── CassandraMailboxCounterDataDefinition.java │ │ │ ├── CassandraMailboxDataDefinition.java │ │ │ ├── CassandraMailboxQuotaDataDefinition.java │ │ │ ├── CassandraMailboxRecentsDataDefinition.java │ │ │ ├── CassandraMessageDataDefinition.java │ │ │ ├── CassandraModSeqDataDefinition.java │ │ │ ├── CassandraSubscriptionDataDefinition.java │ │ │ ├── CassandraThreadDataDefinition.java │ │ │ └── CassandraUidDataDefinition.java │ │ │ ├── quota │ │ │ ├── CassandraCurrentQuotaManagerV1.java │ │ │ ├── CassandraCurrentQuotaManagerV2.java │ │ │ ├── CassandraGlobalMaxQuotaDao.java │ │ │ ├── CassandraPerDomainMaxQuotaDao.java │ │ │ ├── CassandraPerUserMaxQuotaDao.java │ │ │ ├── CassandraPerUserMaxQuotaManagerV1.java │ │ │ ├── CassandraPerUserMaxQuotaManagerV2.java │ │ │ ├── FakeCassandraCurrentQuotaManager.java │ │ │ ├── FakeMaxQuotaManager.java │ │ │ └── migration │ │ │ │ ├── CassandraCurrentQuotaManagerMigration.java │ │ │ │ └── CassandraPerUserMaxQuotaManagerMigration.java │ │ │ ├── search │ │ │ ├── AllSearchOverride.java │ │ │ ├── DeletedSearchOverride.java │ │ │ ├── DeletedWithRangeSearchOverride.java │ │ │ ├── NotDeletedWithRangeSearchOverride.java │ │ │ ├── UidSearchOverride.java │ │ │ └── UnseenSearchOverride.java │ │ │ ├── table │ │ │ ├── CassandraACLTable.java │ │ │ ├── CassandraACLV2Table.java │ │ │ ├── CassandraAnnotationTable.java │ │ │ ├── CassandraApplicableFlagTable.java │ │ │ ├── CassandraAttachmentV2Table.java │ │ │ ├── CassandraCurrentQuota.java │ │ │ ├── CassandraDeletedMessageTable.java │ │ │ ├── CassandraDomainMaxQuota.java │ │ │ ├── CassandraFirstUnseenTable.java │ │ │ ├── CassandraGlobalMaxQuota.java │ │ │ ├── CassandraMailboxCountersTable.java │ │ │ ├── CassandraMailboxPathV3Table.java │ │ │ ├── CassandraMailboxRecentsTable.java │ │ │ ├── CassandraMailboxTable.java │ │ │ ├── CassandraMaxQuota.java │ │ │ ├── CassandraMessageIdTable.java │ │ │ ├── CassandraMessageIds.java │ │ │ ├── CassandraMessageModseqTable.java │ │ │ ├── CassandraMessageUidTable.java │ │ │ ├── CassandraMessageV3Table.java │ │ │ ├── CassandraSubscriptionTable.java │ │ │ ├── CassandraThreadLookupTable.java │ │ │ ├── CassandraThreadTable.java │ │ │ ├── CassandraUserMailboxRightsTable.java │ │ │ ├── Flag.java │ │ │ └── MessageIdToImapUid.java │ │ │ └── user │ │ │ └── CassandraSubscriptionMapper.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── cassandra │ │ │ ├── CassandraCombinationManagerTest.java │ │ │ ├── CassandraCombinationManagerTestSystem.java │ │ │ ├── CassandraMailboxManagerConsistencyTest.java │ │ │ ├── CassandraMailboxManagerProvider.java │ │ │ ├── CassandraMailboxManagerStressTest.java │ │ │ ├── CassandraMailboxManagerTest.java │ │ │ ├── CassandraMailboxManagerWithoutAclTest.java │ │ │ ├── CassandraMessageIdManagerQuotaTest.java │ │ │ ├── CassandraMessageIdManagerSideEffectTest.java │ │ │ ├── CassandraMessageIdManagerStorageTest.java │ │ │ ├── CassandraMessageIdManagerTestSystem.java │ │ │ ├── CassandraSubscriptionManagerTest.java │ │ │ ├── CassandraTestSystemFixture.java │ │ │ ├── CassandraThreadIdGuessingAlgorithmTest.java │ │ │ ├── MailboxOperationLoggingListenerTest.java │ │ │ ├── TestCassandraMailboxSessionMapperFactory.java │ │ │ ├── ids │ │ │ ├── CassandraIdTest.java │ │ │ └── CassandraMessageIdTest.java │ │ │ ├── json │ │ │ └── MailboxACLJsonConverterTest.java │ │ │ ├── mail │ │ │ ├── AttachmentLoaderTest.java │ │ │ ├── CassandraACLMapperContract.java │ │ │ ├── CassandraACLMapperNoACLTest.java │ │ │ ├── CassandraACLMapperV2Test.java │ │ │ ├── CassandraAnnotationMapperTest.java │ │ │ ├── CassandraApplicableFlagDAOTest.java │ │ │ ├── CassandraAttachmentDAOV2Test.java │ │ │ ├── CassandraAttachmentMapperTest.java │ │ │ ├── CassandraDeletedMessageDAOTest.java │ │ │ ├── CassandraFirstUnseenDAOTest.java │ │ │ ├── CassandraIndexTableHandlerTest.java │ │ │ ├── CassandraMailboxCounterDAOTest.java │ │ │ ├── CassandraMailboxDAOTest.java │ │ │ ├── CassandraMailboxManagerAttachmentTest.java │ │ │ ├── CassandraMailboxMapperAclTest.java │ │ │ ├── CassandraMailboxMapperConcurrencyTest.java │ │ │ ├── CassandraMailboxMapperGenericTest.java │ │ │ ├── CassandraMailboxMapperTest.java │ │ │ ├── CassandraMailboxPathV3DAOTest.java │ │ │ ├── CassandraMailboxRecentDAOTest.java │ │ │ ├── CassandraMapperProvider.java │ │ │ ├── CassandraMessageDAOV3Test.java │ │ │ ├── CassandraMessageIdDAOTest.java │ │ │ ├── CassandraMessageIdMapperRelaxedConsistencyTest.java │ │ │ ├── CassandraMessageIdMapperTest.java │ │ │ ├── CassandraMessageIdToImapUidDAOTest.java │ │ │ ├── CassandraMessageMapperRelaxedConsistencyTest.java │ │ │ ├── CassandraMessageMapperTest.java │ │ │ ├── CassandraMessageMoveTest.java │ │ │ ├── CassandraMessageWithAttachmentMapperTest.java │ │ │ ├── CassandraModSeqProviderTest.java │ │ │ ├── CassandraThreadDAOTest.java │ │ │ ├── CassandraThreadLookupDAOTest.java │ │ │ ├── CassandraUidProviderTest.java │ │ │ ├── CassandraUserMailboxRightsDAOTest.java │ │ │ ├── MailboxAggregateModule.java │ │ │ ├── MailboxFixture.java │ │ │ ├── MessageAttachmentRepresentationByIdTest.java │ │ │ ├── eventsourcing │ │ │ │ └── acl │ │ │ │ │ └── ACLUpdatedDTOTest.java │ │ │ ├── task │ │ │ │ ├── CassandraRecomputeCurrentQuotasServiceTest.java │ │ │ │ ├── MailboxInconsistenciesPOJOTest.java │ │ │ │ ├── MailboxMergingTaskTest.java │ │ │ │ ├── RecomputeMailboxCountersServiceTest.java │ │ │ │ ├── RecomputeMailboxCountersTaskSerializationTest.java │ │ │ │ ├── SolveMailboxFlagInconsistenciesServiceTest.java │ │ │ │ ├── SolveMailboxFlagInconsistencyTaskSerializationTest.java │ │ │ │ ├── SolveMailboxInconsistenciesServiceTest.java │ │ │ │ ├── SolveMailboxInconsistenciesTaskSerializationTest.java │ │ │ │ ├── SolveMessageInconsistenciesServiceTest.java │ │ │ │ └── SolveMessageInconsistenciesTaskSerializationTest.java │ │ │ └── utils │ │ │ │ ├── FlagsUpdateStageResultTest.java │ │ │ │ └── GuiceUtils.java │ │ │ ├── quota │ │ │ ├── CassandraCurrentQuotaManagerV1Test.java │ │ │ ├── CassandraCurrentQuotaManagerV2Test.java │ │ │ ├── CassandraPerUserMaxQuotaManagerMigrationTest.java │ │ │ ├── CassandraPerUserMaxQuotaManagerV1Test.java │ │ │ ├── CassandraPerUserMaxQuotaManagerV2Test.java │ │ │ └── migration │ │ │ │ └── CassandraCurrentQuotaManagerMigrationTest.java │ │ │ ├── search │ │ │ ├── AllSearchOverrideTest.java │ │ │ ├── DeletedSearchOverrideTest.java │ │ │ ├── DeletedWithRangeSearchOverrideTest.java │ │ │ ├── NotDeletedWithRangeSearchOverrideTest.java │ │ │ ├── UidSearchOverrideTest.java │ │ │ └── UnseenSearchOverrideTest.java │ │ │ └── user │ │ │ └── CassandraSubscriptionMapperTest.java │ │ └── resources │ │ ├── cassandra-driver.conf │ │ ├── json │ │ ├── solveMessageInconsistencies.additionalInformation.json │ │ ├── solveMessageInconsistencies.additionalInformation.legacy.json │ │ ├── solveMessageInconsistencies.task.json │ │ └── solveMessageInconsistencies.task.legacy.json │ │ ├── shattered-1.pdf │ │ └── shattered-2.pdf ├── event │ └── json │ │ ├── pom.xml │ │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── event │ │ │ │ ├── MailboxAggregateId.java │ │ │ │ └── acl │ │ │ │ ├── ACLDTO.java │ │ │ │ ├── ACLDiffDTO.java │ │ │ │ ├── ACLUpdated.java │ │ │ │ └── ACLUpdatedDTO.java │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── event │ │ │ └── json │ │ │ ├── DTOs.scala │ │ │ └── MailboxEventSerializer.scala │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── event │ │ └── json │ │ ├── AddedSerializationTest.java │ │ ├── ExpungedSerializationTest.java │ │ ├── FlagsUpdatedSerializationTest.java │ │ ├── MailboxACLUpdatedEventSerializationTest.java │ │ ├── MailboxAddedSerializationTest.java │ │ ├── MailboxDeletionSerializationTest.java │ │ ├── MailboxRenamedSerializationTest.java │ │ ├── MessageMoveEventSerializationTest.java │ │ ├── QuotaUsageUpdatedEventSerializationTest.java │ │ ├── SerializerFixture.java │ │ └── dtos │ │ ├── ACLDiffTest.java │ │ ├── EventIdTest.java │ │ ├── FlagsTest.java │ │ ├── MailboxIdTest.java │ │ ├── MailboxPathTest.java │ │ ├── MessageIdTest.java │ │ ├── MessageMetaDataTest.java │ │ ├── MessageUidTest.java │ │ ├── ModSeqTest.java │ │ ├── QuotaCountTest.java │ │ ├── QuotaRootTest.java │ │ ├── QuotaSizeTest.java │ │ ├── SessionIdTest.java │ │ ├── UpdatedFlagsTest.java │ │ └── UserTest.java ├── jpa │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mailbox │ │ │ │ └── jpa │ │ │ │ ├── JPAAttachmentContentLoader.java │ │ │ │ ├── JPAId.java │ │ │ │ ├── JPAMailboxSessionMapperFactory.java │ │ │ │ ├── JPATransactionalMapper.java │ │ │ │ ├── mail │ │ │ │ ├── JPAAnnotationMapper.java │ │ │ │ ├── JPAAttachmentMapper.java │ │ │ │ ├── JPAMailboxMapper.java │ │ │ │ ├── JPAMessageMapper.java │ │ │ │ ├── JPAModSeqProvider.java │ │ │ │ ├── JPAUidProvider.java │ │ │ │ ├── MessageUtils.java │ │ │ │ └── model │ │ │ │ │ ├── JPAAttachment.java │ │ │ │ │ ├── JPAMailbox.java │ │ │ │ │ ├── JPAMailboxAnnotation.java │ │ │ │ │ ├── JPAMailboxAnnotationId.java │ │ │ │ │ ├── JPAProperty.java │ │ │ │ │ ├── JPAUserFlag.java │ │ │ │ │ └── openjpa │ │ │ │ │ ├── AbstractJPAMailboxMessage.java │ │ │ │ │ ├── EncryptDecryptHelper.java │ │ │ │ │ ├── JPAMailboxMessage.java │ │ │ │ │ └── JPAMailboxMessageWithAttachmentStorage.java │ │ │ │ ├── openjpa │ │ │ │ ├── OpenJPAMailboxManager.java │ │ │ │ ├── OpenJPAMessageFactory.java │ │ │ │ └── OpenJPAMessageManager.java │ │ │ │ ├── quota │ │ │ │ ├── JPAPerUserMaxQuotaDAO.java │ │ │ │ ├── JPAPerUserMaxQuotaManager.java │ │ │ │ ├── JpaCurrentQuotaManager.java │ │ │ │ └── model │ │ │ │ │ ├── JpaCurrentQuota.java │ │ │ │ │ ├── MaxDomainMessageCount.java │ │ │ │ │ ├── MaxDomainStorage.java │ │ │ │ │ ├── MaxGlobalMessageCount.java │ │ │ │ │ ├── MaxGlobalStorage.java │ │ │ │ │ ├── MaxUserMessageCount.java │ │ │ │ │ └── MaxUserStorage.java │ │ │ │ └── user │ │ │ │ ├── JPASubscriptionMapper.java │ │ │ │ └── model │ │ │ │ └── JPASubscription.java │ │ └── resources │ │ │ ├── META-INF │ │ │ └── spring │ │ │ │ └── mailbox-jpa.xml │ │ │ └── james-database.properties │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── jpa │ │ │ ├── JPAMailboxFixture.java │ │ │ ├── JPAMailboxManagerTest.java │ │ │ ├── JPASubscriptionManagerTest.java │ │ │ ├── JpaMailboxManagerProvider.java │ │ │ ├── JpaMailboxManagerStressTest.java │ │ │ ├── mail │ │ │ ├── JPAAttachmentMapperTest.java │ │ │ ├── JPAMapperProvider.java │ │ │ ├── JPAMessageWithAttachmentMapperTest.java │ │ │ ├── JpaAnnotationMapperTest.java │ │ │ ├── JpaMailboxMapperTest.java │ │ │ ├── JpaMessageMapperTest.java │ │ │ ├── JpaMessageMoveTest.java │ │ │ ├── MessageUtilsTest.java │ │ │ ├── TransactionalAnnotationMapper.java │ │ │ ├── TransactionalAttachmentMapper.java │ │ │ ├── TransactionalMailboxMapper.java │ │ │ ├── TransactionalMessageMapper.java │ │ │ ├── model │ │ │ │ └── openjpa │ │ │ │ │ └── JPAMailboxMessageTest.java │ │ │ └── task │ │ │ │ └── JPARecomputeCurrentQuotasServiceTest.java │ │ │ └── quota │ │ │ ├── JPACurrentQuotaManagerTest.java │ │ │ └── JPAPerUserMaxQuotaTest.java │ │ └── resources │ │ └── persistence.xml ├── lucene │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mailbox │ │ │ │ └── lucene │ │ │ │ └── search │ │ │ │ ├── DocumentFieldConstants.java │ │ │ │ ├── LenientImapSearchAnalyzer.java │ │ │ │ ├── LuceneIndexableDocument.java │ │ │ │ ├── LuceneMessageSearchIndex.java │ │ │ │ ├── LuceneSearchHighlighter.java │ │ │ │ └── UpperCaseFilter.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── spring │ │ │ └── mailbox-index-lucene.xml │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── mailbox │ │ └── lucene │ │ └── search │ │ ├── LuceneFSSearchHighLighterTest.java │ │ ├── LuceneGenericTests.java │ │ ├── LuceneMailboxMessageFlagSearchTest.java │ │ ├── LuceneMailboxMessageSearchIndexTest.java │ │ ├── LuceneMemorySearchHighLighterTest.java │ │ ├── LuceneMessageSearchIndexTest.java │ │ └── LuceneTestsUtils.java ├── memory │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mailbox │ │ │ │ └── inmemory │ │ │ │ ├── InMemoryId.java │ │ │ │ ├── InMemoryMailboxManager.java │ │ │ │ ├── InMemoryMailboxSessionMapperFactory.java │ │ │ │ ├── InMemoryMessageId.java │ │ │ │ ├── InMemoryMessageManager.java │ │ │ │ ├── mail │ │ │ │ ├── InMemoryAnnotationMapper.java │ │ │ │ ├── InMemoryAttachmentMapper.java │ │ │ │ ├── InMemoryMailboxMapper.java │ │ │ │ ├── InMemoryMessageIdMapper.java │ │ │ │ ├── InMemoryMessageMapper.java │ │ │ │ ├── InMemoryModSeqProvider.java │ │ │ │ └── InMemoryUidProvider.java │ │ │ │ ├── quota │ │ │ │ ├── InMemoryCurrentQuotaManager.java │ │ │ │ └── InMemoryPerUserMaxQuotaManager.java │ │ │ │ └── user │ │ │ │ └── InMemorySubscriptionMapper.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── spring │ │ │ └── mailbox-memory.xml │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── inmemory │ │ │ ├── InMemoryCombinationManagerTest.java │ │ │ ├── InMemoryCombinationManagerTestSystem.java │ │ │ ├── InMemoryMessageIdManagerStorageTest.java │ │ │ ├── InMemoryMessageIdTest.java │ │ │ ├── InMemoryMessageManagerTest.java │ │ │ ├── InMemoryMessageManagerTestSystem.java │ │ │ ├── MemoryMailboxManagerProvider.java │ │ │ ├── MemoryMailboxManagerStressTest.java │ │ │ ├── MemoryMailboxManagerTest.java │ │ │ ├── listener │ │ │ └── MailboxSubscriptionListenerTest.java │ │ │ ├── mail │ │ │ ├── InMemoryMailboxManagerAttachmentTest.java │ │ │ ├── InMemoryMapperProvider.java │ │ │ ├── InMemoryMessageIdMapperTest.java │ │ │ ├── MemoryAnnotationMapperTest.java │ │ │ ├── MemoryAttachmentMapperTest.java │ │ │ ├── MemoryMailboxMapperAclTest.java │ │ │ ├── MemoryMailboxMapperTest.java │ │ │ ├── MemoryMessageMapperTest.java │ │ │ ├── MemoryMessageMoveTest.java │ │ │ ├── MemoryMessageWithAttachmentMapperTest.java │ │ │ └── task │ │ │ │ └── MemoryRecomputeCurrentQuotasServiceTest.java │ │ │ ├── manager │ │ │ ├── InMemoryIntegrationResources.java │ │ │ ├── InMemoryMessageIdManagerSideEffectTest.java │ │ │ └── InMemoryQuotaMailboxMessageManagerTest.java │ │ │ ├── quota │ │ │ ├── InMemoryCurrentQuotaCalculatorTest.java │ │ │ ├── InMemoryCurrentQuotaManagerTest.java │ │ │ └── InMemoryPerUserMaxQuotaManagerTest.java │ │ │ └── user │ │ │ └── InMemorySubscriptionMapperTest.java │ │ └── resources │ │ └── test.eml ├── opensearch │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── opensearch │ │ │ ├── IndexAttachments.java │ │ │ ├── IndexBody.java │ │ │ ├── IndexHeaders.java │ │ │ ├── MailboxIdRoutingKeyFactory.java │ │ │ ├── MailboxIndexCreationUtil.java │ │ │ ├── MailboxMappingFactory.java │ │ │ ├── MailboxOpenSearchConstants.java │ │ │ ├── OpenSearchMailboxConfiguration.java │ │ │ ├── events │ │ │ ├── DisabledListeningMessageSearchIndex.java │ │ │ └── OpenSearchListeningMessageSearchIndex.java │ │ │ ├── json │ │ │ ├── EMailerDto.java │ │ │ ├── EMailersDto.java │ │ │ ├── HeaderDto.java │ │ │ ├── IndexableMessage.java │ │ │ ├── JsonMessageConstants.java │ │ │ ├── MessageToOpenSearchJson.java │ │ │ ├── MessageUpdateJson.java │ │ │ ├── MimePartDto.java │ │ │ └── SubjectsDto.java │ │ │ ├── query │ │ │ ├── CriterionConverter.java │ │ │ ├── DateResolutionFormatter.java │ │ │ ├── QueryConverter.java │ │ │ └── SortConverter.java │ │ │ └── search │ │ │ ├── OpenSearchSearchHighlighter.java │ │ │ └── OpenSearchSearcher.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── opensearch │ │ │ ├── MailboxIdRoutingKeyFactoryTest.java │ │ │ ├── OpenSearchIntegrationTest.java │ │ │ ├── OpenSearchMailboxConfigurationTest.java │ │ │ ├── OpenSearchNoIndexBodyIntegrationTest.java │ │ │ ├── OpenSearchOptimizeMoveAndFuzzySearchIntegrationTest.java │ │ │ ├── OpenSearchQueryStringTest.java │ │ │ ├── events │ │ │ └── OpenSearchListeningMessageSearchIndexTest.java │ │ │ ├── json │ │ │ ├── IndexableMessageTest.java │ │ │ └── MessageToOpenSearchJsonTest.java │ │ │ ├── query │ │ │ ├── DateResolutionFormatterTest.java │ │ │ └── SearchQueryTest.java │ │ │ └── search │ │ │ ├── OpenSearchSearchHighlighterTest.java │ │ │ └── OpenSearchSearcherTest.java │ │ └── resources │ │ └── eml │ │ ├── alternative.eml │ │ ├── alternative.json │ │ ├── alternative_simple.eml │ │ ├── alternative_simple.json │ │ ├── attachments-filename-in-content-type.eml │ │ ├── bodyMakeTikaToFail.eml │ │ ├── emailWith3Attachments.eml │ │ ├── htmlContent.txt │ │ ├── inlined-mixed.eml │ │ ├── inlined-mixed.json │ │ ├── mailCustomDateHeader.eml │ │ ├── mailCustomStringHeader.eml │ │ └── mailWithHeaders.eml ├── plugin │ ├── deleted-messages-vault-cassandra │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── vault │ │ │ │ └── metadata │ │ │ │ ├── CassandraDeletedMessageMetadataVault.java │ │ │ │ ├── DeletedMessageIdentifier.java │ │ │ │ ├── DeletedMessageMetadataDataDefinition.java │ │ │ │ ├── DeletedMessageVaultDeletionCallback.java │ │ │ │ ├── MetadataDAO.java │ │ │ │ ├── StorageInformationDAO.java │ │ │ │ └── UserPerBucketDAO.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── vault │ │ │ └── metadata │ │ │ ├── CassandraDeletedMessageMetadataVaultTest.java │ │ │ ├── DeletedMessageIdentifierTest.java │ │ │ ├── MetadataDAOTest.java │ │ │ ├── StorageInformationDAOTest.java │ │ │ └── UserPerBucketDAOTest.java │ ├── deleted-messages-vault-postgres │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── vault │ │ │ │ └── metadata │ │ │ │ ├── PostgresDeletedMessageMetadataDataDefinition.java │ │ │ │ ├── PostgresDeletedMessageMetadataVault.java │ │ │ │ └── PostgresDeletedMessageVaultDeletionCallback.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── vault │ │ │ └── metadata │ │ │ └── PostgresDeletedMessageMetadataVaultTest.java │ ├── deleted-messages-vault │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── vault │ │ │ │ ├── DeletedMessage.java │ │ │ │ ├── DeletedMessageContentNotFoundException.java │ │ │ │ ├── DeletedMessageConverter.java │ │ │ │ ├── DeletedMessageVault.java │ │ │ │ ├── DeletedMessageVaultHook.java │ │ │ │ ├── DeletedMessageZipper.java │ │ │ │ ├── VaultConfiguration.java │ │ │ │ ├── blob │ │ │ │ ├── BlobStoreDeletedMessageVault.java │ │ │ │ ├── BlobStoreVaultGarbageCollectionTask.java │ │ │ │ ├── BlobStoreVaultGarbageCollectionTaskAdditionalInformationDTO.java │ │ │ │ ├── BlobStoreVaultGarbageCollectionTaskDTO.java │ │ │ │ └── BucketNameGenerator.java │ │ │ │ ├── dto │ │ │ │ ├── DeletedMessageWithStorageInformationConverter.java │ │ │ │ ├── DeletedMessageWithStorageInformationDTO.java │ │ │ │ └── query │ │ │ │ │ ├── CriterionDTO.java │ │ │ │ │ ├── QueryDTO.java │ │ │ │ │ ├── QueryElement.java │ │ │ │ │ ├── QueryElementDeserializer.java │ │ │ │ │ ├── QueryElementSerializer.java │ │ │ │ │ └── QueryTranslator.java │ │ │ │ ├── memory │ │ │ │ └── metadata │ │ │ │ │ └── MemoryDeletedMessageMetadataVault.java │ │ │ │ ├── metadata │ │ │ │ ├── DeletedMessageMetadataVault.java │ │ │ │ ├── DeletedMessageWithStorageInformation.java │ │ │ │ ├── MetadataSerializer.java │ │ │ │ └── StorageInformation.java │ │ │ │ └── search │ │ │ │ ├── Combinator.java │ │ │ │ ├── Criterion.java │ │ │ │ ├── CriterionFactory.java │ │ │ │ ├── DeletedMessageField.java │ │ │ │ ├── FieldName.java │ │ │ │ ├── Operator.java │ │ │ │ └── Query.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── vault │ │ │ │ ├── DeletedMessageConverterTest.java │ │ │ │ ├── DeletedMessageFixture.java │ │ │ │ ├── DeletedMessageMailboxContextTest.java │ │ │ │ ├── DeletedMessageTest.java │ │ │ │ ├── DeletedMessageVaultContract.java │ │ │ │ ├── DeletedMessageVaultHookTest.java │ │ │ │ ├── DeletedMessageVaultSearchContract.java │ │ │ │ ├── DeletedMessageZipperTest.java │ │ │ │ ├── VaultConfigurationTest.java │ │ │ │ ├── blob │ │ │ │ ├── BlobStoreDeletedMessageVaultTest.java │ │ │ │ ├── BlobStoreVaultGarbageCollectionTaskSerializationTest.java │ │ │ │ └── BucketNameGeneratorTest.java │ │ │ │ ├── dto │ │ │ │ ├── DeletedMessageWithStorageInformationDTOTest.java │ │ │ │ └── query │ │ │ │ │ ├── QueryElementDeserializerTest.java │ │ │ │ │ ├── QueryElementSerializerTest.java │ │ │ │ │ ├── QueryElementTest.java │ │ │ │ │ └── QueryTranslatorTest.java │ │ │ │ ├── memory │ │ │ │ └── metadata │ │ │ │ │ └── MemoryDeletedMessageMetadataVaultTest.java │ │ │ │ └── metadata │ │ │ │ ├── DeletedMessageMetadataVaultContract.java │ │ │ │ ├── DeletedMessageVaultMetadataFixture.java │ │ │ │ ├── DeletedMessageWithStorageInformationTest.java │ │ │ │ └── StorageInformationTest.java │ │ │ └── resources │ │ │ └── json │ │ │ ├── deleted_message.json │ │ │ ├── deleted_message_with_storage_information.json │ │ │ ├── deleted_message_with_storage_information_invalid.json │ │ │ ├── deleted_message_with_subject.json │ │ │ └── storage_information.json │ ├── quota-mailing-cassandra │ │ ├── pom.xml │ │ └── src │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mailbox │ │ │ │ └── quota │ │ │ │ └── cassandra │ │ │ │ ├── dto │ │ │ │ └── DTOTest.java │ │ │ │ └── listeners │ │ │ │ └── CassandraQuotaMailingListenersIntegrationTest.java │ │ │ └── resources │ │ │ └── json │ │ │ ├── event.json │ │ │ ├── event2.json │ │ │ ├── event3.json │ │ │ └── event4.json │ ├── quota-mailing-memory │ │ ├── pom.xml │ │ └── src │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── quota │ │ │ └── memory │ │ │ └── listeners │ │ │ ├── InMemoryQuotaMailingListenersIntegrationTest.java │ │ │ └── InMemoryQuotaThresholdConfigurationChangesTest.java │ ├── quota-mailing │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── mailbox │ │ │ │ │ └── quota │ │ │ │ │ ├── mailing │ │ │ │ │ ├── QuotaMailingListenerConfiguration.java │ │ │ │ │ ├── aggregates │ │ │ │ │ │ └── UserQuotaThresholds.java │ │ │ │ │ ├── commands │ │ │ │ │ │ ├── DetectThresholdCrossing.java │ │ │ │ │ │ └── DetectThresholdCrossingHandler.java │ │ │ │ │ ├── events │ │ │ │ │ │ ├── HistoryEvolutionDTO.java │ │ │ │ │ │ ├── QuotaDTO.java │ │ │ │ │ │ ├── QuotaEventDTOModules.java │ │ │ │ │ │ ├── QuotaThresholdChangedEvent.java │ │ │ │ │ │ └── QuotaThresholdChangedEventDTO.java │ │ │ │ │ ├── listeners │ │ │ │ │ │ └── QuotaThresholdCrossingListener.java │ │ │ │ │ └── subscribers │ │ │ │ │ │ ├── QuotaThresholdMailer.java │ │ │ │ │ │ └── QuotaThresholdNotice.java │ │ │ │ │ └── model │ │ │ │ │ ├── HistoryEvolution.java │ │ │ │ │ ├── QuotaThreshold.java │ │ │ │ │ ├── QuotaThresholdChange.java │ │ │ │ │ ├── QuotaThresholdHistory.java │ │ │ │ │ └── QuotaThresholds.java │ │ │ └── resources │ │ │ │ └── templates │ │ │ │ ├── QuotaThresholdMailBody.mustache │ │ │ │ └── QuotaThresholdMailSubject.mustache │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mailbox │ │ │ │ └── quota │ │ │ │ ├── mailing │ │ │ │ ├── QuotaMailingListenerConfigurationTest.java │ │ │ │ ├── aggregates │ │ │ │ │ └── UserQuotaThresholdsTest.java │ │ │ │ ├── commands │ │ │ │ │ └── DetectThresholdCrossingTest.java │ │ │ │ ├── listeners │ │ │ │ │ ├── QuotaThresholdConfigurationChangesTest.java │ │ │ │ │ ├── QuotaThresholdCrossingListenerTest.java │ │ │ │ │ ├── QuotaThresholdListenersTestSystem.java │ │ │ │ │ └── QuotaThresholdMailingIntegrationTest.java │ │ │ │ └── subscribers │ │ │ │ │ └── QuotaThresholdNoticeTest.java │ │ │ │ └── model │ │ │ │ ├── HistoryEvolutionTest.java │ │ │ │ ├── QuotaThresholdChangeTest.java │ │ │ │ ├── QuotaThresholdFixture.java │ │ │ │ ├── QuotaThresholdHistoryTest.java │ │ │ │ ├── QuotaThresholdTest.java │ │ │ │ └── QuotaThresholdsTest.java │ │ │ └── resources │ │ │ └── templates │ │ │ ├── body1.mustache │ │ │ ├── body2.mustache │ │ │ ├── subject1.mustache │ │ │ └── subject2.mustache │ ├── quota-search-opensearch │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── quota │ │ │ │ └── search │ │ │ │ └── opensearch │ │ │ │ ├── OpenSearchQuotaConfiguration.java │ │ │ │ ├── OpenSearchQuotaSearcher.java │ │ │ │ ├── QuotaQueryConverter.java │ │ │ │ ├── QuotaRatioMappingFactory.java │ │ │ │ ├── QuotaRatioOpenSearchConstants.java │ │ │ │ ├── QuotaSearchIndexCreationUtil.java │ │ │ │ ├── UserRoutingKeyFactory.java │ │ │ │ ├── events │ │ │ │ └── OpenSearchQuotaMailboxListener.java │ │ │ │ └── json │ │ │ │ ├── JsonMessageConstants.java │ │ │ │ ├── QuotaRatioAsJson.java │ │ │ │ └── QuotaRatioToOpenSearchJson.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── quota │ │ │ │ └── search │ │ │ │ └── opensearch │ │ │ │ ├── OpenSearchQuotaConfigurationTest.java │ │ │ │ ├── OpenSearchQuotaSearchTestSystemExtension.java │ │ │ │ ├── OpenSearchQuotaSearcherTest.java │ │ │ │ ├── QuotaQueryConverterTest.java │ │ │ │ ├── UserRoutingKeyFactoryTest.java │ │ │ │ ├── events │ │ │ │ └── OpenSearchQuotaMailboxListenerTest.java │ │ │ │ └── json │ │ │ │ ├── QuotaRatioAsJsonTest.java │ │ │ │ └── QuotaRatioToOpenSearchJsonTest.java │ │ │ └── resources │ │ │ ├── quotaRatio.json │ │ │ └── quotaRatioNoDomain.json │ ├── quota-search-scanning │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── quota │ │ │ │ └── search │ │ │ │ └── scanning │ │ │ │ ├── ClauseConverter.java │ │ │ │ └── ScanningQuotaSearcher.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── quota │ │ │ └── search │ │ │ └── scanning │ │ │ ├── MemoryQuotaSearchTestSystemExtension.java │ │ │ └── ScanningQuotaSearcherTest.java │ └── quota-search │ │ ├── pom.xml │ │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── quota │ │ │ └── search │ │ │ ├── Limit.java │ │ │ ├── Offset.java │ │ │ ├── QuotaBoundary.java │ │ │ ├── QuotaClause.java │ │ │ ├── QuotaQuery.java │ │ │ └── QuotaSearcher.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── quota │ │ └── search │ │ ├── LimitTest.java │ │ ├── OffsetTest.java │ │ ├── QuotaBoundaryFixture.java │ │ ├── QuotaClauseTest.java │ │ ├── QuotaQueryTest.java │ │ ├── QuotaSearchFixture.java │ │ ├── QuotaSearchTestSystem.java │ │ └── QuotaSearcherContract.java ├── pom.xml ├── postgres │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── postgres │ │ │ ├── DeleteMessageListener.java │ │ │ ├── PostgresMailboxAggregateDataDefinition.java │ │ │ ├── PostgresMailboxAnnotationDataDefinition.java │ │ │ ├── PostgresMailboxId.java │ │ │ ├── PostgresMailboxManager.java │ │ │ ├── PostgresMailboxSessionMapperFactory.java │ │ │ ├── PostgresMessageId.java │ │ │ ├── PostgresMessageManager.java │ │ │ ├── PostgresThreadIdGuessingAlgorithm.java │ │ │ ├── UnsupportAttachmentContentLoader.java │ │ │ ├── mail │ │ │ ├── MailboxDeleteDuringUpdateException.java │ │ │ ├── MessageRepresentation.java │ │ │ ├── PostgresACLUpsertException.java │ │ │ ├── PostgresAnnotationMapper.java │ │ │ ├── PostgresAttachmentBlobReferenceSource.java │ │ │ ├── PostgresAttachmentDataDefinition.java │ │ │ ├── PostgresAttachmentMapper.java │ │ │ ├── PostgresMailbox.java │ │ │ ├── PostgresMailboxDataDefinition.java │ │ │ ├── PostgresMailboxMapper.java │ │ │ ├── PostgresMailboxMemberDAO.java │ │ │ ├── PostgresMailboxMemberDataDefinition.java │ │ │ ├── PostgresMessageBlobReferenceSource.java │ │ │ ├── PostgresMessageDataDefinition.java │ │ │ ├── PostgresMessageIdMapper.java │ │ │ ├── PostgresMessageMapper.java │ │ │ ├── PostgresMessageRetriever.java │ │ │ ├── PostgresModSeqProvider.java │ │ │ ├── PostgresUidProvider.java │ │ │ ├── RLSSupportPostgresMailboxMapper.java │ │ │ ├── dao │ │ │ │ ├── PostgresAttachmentDAO.java │ │ │ │ ├── PostgresMailboxAnnotationDAO.java │ │ │ │ ├── PostgresMailboxDAO.java │ │ │ │ ├── PostgresMailboxMessageDAO.java │ │ │ │ ├── PostgresMailboxMessageDAOUtils.java │ │ │ │ ├── PostgresMailboxMessageFetchStrategy.java │ │ │ │ ├── PostgresMessageDAO.java │ │ │ │ ├── PostgresThreadDAO.java │ │ │ │ └── PostgresThreadDataDefinition.java │ │ │ ├── dto │ │ │ │ └── AttachmentsDTO.java │ │ │ └── eventsourcing │ │ │ │ └── acl │ │ │ │ └── ACLModule.java │ │ │ ├── quota │ │ │ ├── PostgresCurrentQuotaManager.java │ │ │ └── PostgresPerUserMaxQuotaManager.java │ │ │ ├── search │ │ │ ├── AllSearchOverride.java │ │ │ ├── DeletedSearchOverride.java │ │ │ ├── DeletedWithRangeSearchOverride.java │ │ │ ├── NotDeletedWithRangeSearchOverride.java │ │ │ ├── UidSearchOverride.java │ │ │ └── UnseenSearchOverride.java │ │ │ └── user │ │ │ ├── PostgresSubscriptionDAO.java │ │ │ ├── PostgresSubscriptionDataDefinition.java │ │ │ └── PostgresSubscriptionMapper.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── mailbox │ │ └── postgres │ │ ├── DeleteMessageListenerContract.java │ │ ├── DeleteMessageListenerTest.java │ │ ├── DeleteMessageListenerWithRLSTest.java │ │ ├── PostgresCombinationManagerTest.java │ │ ├── PostgresCombinationManagerTestSystem.java │ │ ├── PostgresMailboxManagerAttachmentTest.java │ │ ├── PostgresMailboxManagerProvider.java │ │ ├── PostgresMailboxManagerStressTest.java │ │ ├── PostgresMailboxManagerTest.java │ │ ├── PostgresMessageIdManagerQuotaTest.java │ │ ├── PostgresMessageIdManagerSideEffectTest.java │ │ ├── PostgresMessageIdManagerStorageTest.java │ │ ├── PostgresMessageIdManagerTestSystem.java │ │ ├── PostgresSubscriptionManagerTest.java │ │ ├── PostgresTestSystemFixture.java │ │ ├── PostgresThreadIdGuessingAlgorithmTest.java │ │ ├── mail │ │ ├── PostgresAnnotationMapperRowLevelSecurityTest.java │ │ ├── PostgresAnnotationMapperTest.java │ │ ├── PostgresAttachmentBlobReferenceSourceTest.java │ │ ├── PostgresAttachmentMapperTest.java │ │ ├── PostgresMailboxMapperACLTest.java │ │ ├── PostgresMailboxMapperRowLevelSecurityTest.java │ │ ├── PostgresMailboxMapperTest.java │ │ ├── PostgresMapperProvider.java │ │ ├── PostgresMessageBlobReferenceSourceTest.java │ │ ├── PostgresMessageIdMapperTest.java │ │ ├── PostgresMessageMapperRowLevelSecurityTest.java │ │ ├── PostgresMessageMapperTest.java │ │ ├── PostgresMessageMoveTest.java │ │ ├── PostgresModSeqProviderTest.java │ │ ├── PostgresUidProviderTest.java │ │ ├── RLSSupportPostgresMailboxMapperACLTest.java │ │ ├── dao │ │ │ └── PostgresMailboxMessageDAOTest.java │ │ └── task │ │ │ └── PostgresRecomputeCurrentQuotasServiceTest.java │ │ ├── quota │ │ ├── PostgresCurrentQuotaManagerTest.java │ │ └── PostgresPerUserMaxQuotaManagerTest.java │ │ ├── search │ │ ├── AllSearchOverrideTest.java │ │ ├── DeletedSearchOverrideTest.java │ │ ├── DeletedWithRangeSearchOverrideTest.java │ │ ├── NotDeletedWithRangeSearchOverrideTest.java │ │ ├── SearchOverrideFixture.java │ │ ├── UidSearchOverrideTest.java │ │ └── UnseenSearchOverrideTest.java │ │ └── user │ │ ├── PostgresSubscriptionMapperRowLevelSecurityTest.java │ │ └── PostgresSubscriptionMapperTest.java ├── scanning-search │ ├── pom.xml │ └── src │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── store │ │ │ └── search │ │ │ ├── PDFTextExtractor.java │ │ │ ├── PDFTextExtractorTest.java │ │ │ ├── SearchThreadIdGuessingAlgorithmTest.java │ │ │ └── SimpleMessageSearchIndexTest.java │ │ └── resources │ │ └── pdf.pdf ├── spring │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mailbox │ │ │ │ └── spring │ │ │ │ ├── AnonymousAuthenticator.java │ │ │ │ ├── MailboxInitializer.java │ │ │ │ ├── NoAuthorizator.java │ │ │ │ └── SpringMailbox.java │ │ └── resources │ │ │ ├── META-INF │ │ │ └── spring │ │ │ │ ├── event-system.xml │ │ │ │ ├── mailbox-authenticator-anonymous.xml │ │ │ │ ├── mailbox-locker.xml │ │ │ │ ├── mailbox-no-authorizator.xml │ │ │ │ ├── quota.xml │ │ │ │ └── spring-mailbox.xml │ │ │ └── log4j.properties │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ ├── README.md │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── spring │ │ │ └── SpringMailboxTest.java │ │ └── resources │ │ └── META-INF │ │ ├── org │ │ └── apache │ │ │ └── james │ │ │ └── database.properties │ │ ├── persistence.xml │ │ └── spring │ │ ├── mailbox-index-lucene-test.xml │ │ ├── metrics.xml │ │ └── quota-alias.xml ├── src │ └── reporting-site │ │ └── site.xml ├── store │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── store │ │ │ ├── AbstractMailboxSessionIdGenerator.java │ │ │ ├── BatchSizes.java │ │ │ ├── FakeAuthenticator.java │ │ │ ├── FakeAuthorizator.java │ │ │ ├── FlagsUpdateCalculator.java │ │ │ ├── JVMMailboxPathLocker.java │ │ │ ├── LazyMimeDescriptor.java │ │ │ ├── MailboxExpressionBackwardCompatibility.java │ │ │ ├── MailboxManagerConfiguration.java │ │ │ ├── MailboxReactorUtils.java │ │ │ ├── MailboxSessionMapperFactory.java │ │ │ ├── MessageFactory.java │ │ │ ├── MessageMovesWithMailbox.java │ │ │ ├── MessageResultImpl.java │ │ │ ├── MessageStorer.java │ │ │ ├── MimeDescriptorImpl.java │ │ │ ├── MoveResult.java │ │ │ ├── NoMailboxPathLocker.java │ │ │ ├── PreDeletionHooks.java │ │ │ ├── RandomMailboxSessionIdGenerator.java │ │ │ ├── ResultUtils.java │ │ │ ├── SessionProviderImpl.java │ │ │ ├── StoreAttachmentManager.java │ │ │ ├── StoreMailboxAnnotationManager.java │ │ │ ├── StoreMailboxManager.java │ │ │ ├── StoreMessageIdManager.java │ │ │ ├── StoreMessageManager.java │ │ │ ├── StoreMessageResultIterator.java │ │ │ ├── StoreRightManager.java │ │ │ ├── StoreSubscriptionManager.java │ │ │ ├── SystemMailboxesProviderImpl.java │ │ │ ├── event │ │ │ ├── EventFactory.java │ │ │ ├── MailboxAnnotationListener.java │ │ │ ├── MailboxSubscriptionListener.java │ │ │ └── SpamEventListener.java │ │ │ ├── extractor │ │ │ ├── DefaultTextExtractor.java │ │ │ └── JsoupTextExtractor.java │ │ │ ├── mail │ │ │ ├── AbstractMessageMapper.java │ │ │ ├── AnnotationMapper.java │ │ │ ├── AttachmentIdAssignationStrategy.java │ │ │ ├── AttachmentMapper.java │ │ │ ├── AttachmentMapperFactory.java │ │ │ ├── FetchGroupConverter.java │ │ │ ├── MailboxMapper.java │ │ │ ├── MailboxMapperFactory.java │ │ │ ├── MessageIdMapper.java │ │ │ ├── MessageMapper.java │ │ │ ├── MessageMapperFactory.java │ │ │ ├── ModSeqProvider.java │ │ │ ├── NaiveThreadIdGuessingAlgorithm.java │ │ │ ├── SearchThreadIdGuessingAlgorithm.java │ │ │ ├── ThreadIdGuessingAlgorithm.java │ │ │ ├── UidProvider.java │ │ │ ├── model │ │ │ │ ├── DefaultMessageId.java │ │ │ │ ├── DelegatingMailboxMessage.java │ │ │ │ ├── FlagsFactory.java │ │ │ │ ├── FlagsFilter.java │ │ │ │ ├── MailboxIdDeserialisationException.java │ │ │ │ ├── MailboxMessage.java │ │ │ │ ├── Message.java │ │ │ │ ├── MimeMessageId.java │ │ │ │ ├── Property.java │ │ │ │ ├── StandardNames.java │ │ │ │ ├── Subject.java │ │ │ │ └── impl │ │ │ │ │ ├── FileBufferedBodyFactory.java │ │ │ │ │ ├── MessageParser.java │ │ │ │ │ ├── MessageParserImpl.java │ │ │ │ │ ├── Properties.java │ │ │ │ │ ├── PropertyBuilder.java │ │ │ │ │ ├── SimpleMailboxMessage.java │ │ │ │ │ └── SimpleMessage.java │ │ │ └── utils │ │ │ │ ├── ApplicableFlagCalculator.java │ │ │ │ └── MimeMessageHeadersUtil.java │ │ │ ├── quota │ │ │ ├── CurrentQuotaCalculator.java │ │ │ ├── DefaultQuotaChangeNotifier.java │ │ │ ├── DefaultUserQuotaRootResolver.java │ │ │ ├── FixedMaxQuotaManager.java │ │ │ ├── ListeningCurrentQuotaUpdater.java │ │ │ ├── NoMaxQuotaManager.java │ │ │ ├── NoQuotaManager.java │ │ │ ├── NoQuotaUpdater.java │ │ │ ├── QuotaChecker.java │ │ │ ├── QuotaComponents.java │ │ │ ├── QuotaUpdater.java │ │ │ └── StoreQuotaManager.java │ │ │ ├── search │ │ │ ├── LazyMessageSearchIndex.java │ │ │ ├── ListeningMessageSearchIndex.java │ │ │ ├── MessageSearchIndex.java │ │ │ ├── MessageSearches.java │ │ │ ├── SearchUtil.java │ │ │ ├── SimpleMessageSearchIndex.java │ │ │ ├── comparator │ │ │ │ ├── AbstractHeaderComparator.java │ │ │ │ ├── BaseSubjectComparator.java │ │ │ │ ├── CombinedComparator.java │ │ │ │ ├── HeaderDisplayComparator.java │ │ │ │ ├── HeaderMailboxComparator.java │ │ │ │ ├── MessageComparators.java │ │ │ │ └── SentDateComparator.java │ │ │ └── mime │ │ │ │ ├── EMailer.java │ │ │ │ ├── EMailers.java │ │ │ │ ├── HeaderCollection.java │ │ │ │ ├── MimePart.java │ │ │ │ ├── MimePartContainerBuilder.java │ │ │ │ ├── MimePartParser.java │ │ │ │ ├── RootMimePartContainerBuilder.java │ │ │ │ ├── SerializableMessage.java │ │ │ │ └── Subjects.java │ │ │ ├── streaming │ │ │ ├── CountingInputStream.java │ │ │ ├── FullByteContent.java │ │ │ ├── InputStreamContent.java │ │ │ └── PartContentBuilder.java │ │ │ ├── transaction │ │ │ ├── Mapper.java │ │ │ ├── NonTransactionalMapper.java │ │ │ └── TransactionalMapper.java │ │ │ └── user │ │ │ ├── SubscriptionMapper.java │ │ │ ├── SubscriptionMapperFactory.java │ │ │ └── model │ │ │ └── Subscription.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── store │ │ │ ├── AbstractCombinationManagerTest.java │ │ │ ├── AbstractMailboxManagerAttachmentTest.java │ │ │ ├── AbstractMessageIdManagerQuotaTest.java │ │ │ ├── AbstractMessageIdManagerSideEffectTest.java │ │ │ ├── AbstractMessageIdManagerStorageTest.java │ │ │ ├── AbstractMessageManagerTest.java │ │ │ ├── BatchSizesTest.java │ │ │ ├── CombinationManagerTestSystem.java │ │ │ ├── FlagsUpdateCalculatorTest.java │ │ │ ├── JVMMailboxPathLockerTest.java │ │ │ ├── MailboxMessageResultImplTest.java │ │ │ ├── MailboxReactorUtilsTest.java │ │ │ ├── MessageBuilder.java │ │ │ ├── MessageIdManagerTestSystem.java │ │ │ ├── MessageManagerTestSystem.java │ │ │ ├── PartContentBuilderComplexMultipartTest.java │ │ │ ├── PartContentBuilderMultipartAlternativeTest.java │ │ │ ├── PreDeletionHooksTest.java │ │ │ ├── ResultUtilsTest.java │ │ │ ├── StoreAttachmentManagerTest.java │ │ │ ├── StoreMailboxManagerAnnotationTest.java │ │ │ ├── StoreMailboxManagerTest.java │ │ │ ├── StoreMailboxMessageResultIteratorTest.java │ │ │ ├── StoreRightManagerTest.java │ │ │ ├── SystemMailboxesProviderImplTest.java │ │ │ ├── ThreadIdGuessingAlgorithmContract.java │ │ │ ├── event │ │ │ └── MailboxAnnotationListenerTest.java │ │ │ ├── extractor │ │ │ ├── DefaultTextExtractorTest.java │ │ │ └── JsoupTextExtractorTest.java │ │ │ ├── mail │ │ │ ├── FetchGroupConverterTest.java │ │ │ ├── model │ │ │ │ ├── AnnotationMapperTest.java │ │ │ │ ├── AttachmentMapperTest.java │ │ │ │ ├── DefaultMessageIdTest.java │ │ │ │ ├── DelegatingMailboxMessageTest.java │ │ │ │ ├── FlagsFactoryTest.java │ │ │ │ ├── FlagsFilterTest.java │ │ │ │ ├── ListMailboxAssert.java │ │ │ │ ├── ListMailboxAssertTest.java │ │ │ │ ├── ListMessageAssert.java │ │ │ │ ├── ListMessageAssertTest.java │ │ │ │ ├── ListMessagePropertiesAssert.java │ │ │ │ ├── ListMessagePropertiesAssertTest.java │ │ │ │ ├── MailboxMapperACLTest.java │ │ │ │ ├── MailboxMapperTest.java │ │ │ │ ├── MailboxMessageAssertTest.java │ │ │ │ ├── MapperProvider.java │ │ │ │ ├── MessageAssert.java │ │ │ │ ├── MessageIdMapperTest.java │ │ │ │ ├── MessageMapperTest.java │ │ │ │ ├── MessageMoveTest.java │ │ │ │ ├── MessageUidProvider.java │ │ │ │ ├── MessageUidProviderTest.java │ │ │ │ ├── MessageWithAttachmentMapperTest.java │ │ │ │ ├── MetadataMapAssert.java │ │ │ │ ├── MetadataMapAssertTest.java │ │ │ │ ├── MimeMessageIdTest.java │ │ │ │ ├── PropertyTest.java │ │ │ │ ├── SubjectTest.java │ │ │ │ └── impl │ │ │ │ │ ├── MessageParserImplTest.java │ │ │ │ │ ├── PropertyBuilderTest.java │ │ │ │ │ └── SimpleMailboxMessageTest.java │ │ │ └── utils │ │ │ │ └── ApplicableFlagCalculatorTest.java │ │ │ ├── quota │ │ │ ├── CurrentQuotaManagerContract.java │ │ │ ├── DefaultUserQuotaRootResolverTest.java │ │ │ ├── GenericMaxQuotaManagerTest.java │ │ │ ├── ListeningCurrentQuotaUpdaterTest.java │ │ │ ├── QuotaCheckerTest.java │ │ │ └── StoreQuotaManagerTest.java │ │ │ ├── search │ │ │ ├── AbstractMessageSearchIndexTest.java │ │ │ ├── CombinedComparatorTest.java │ │ │ ├── LazyMessageSearchIndexTest.java │ │ │ ├── ListeningMessageSearchIndexContract.java │ │ │ ├── SearchUtilTest.java │ │ │ ├── SearchUtilsMultipartMixedTest.java │ │ │ ├── SearchUtilsRFC822Test.java │ │ │ ├── SearchUtilsTest.java │ │ │ ├── comparator │ │ │ │ └── SentDateComparatorTest.java │ │ │ └── mime │ │ │ │ ├── EMailerTest.java │ │ │ │ ├── EMailersTest.java │ │ │ │ ├── FieldImpl.java │ │ │ │ ├── HeaderCollectionTest.java │ │ │ │ ├── MimePartTest.java │ │ │ │ └── SubjectsTest.java │ │ │ ├── streaming │ │ │ └── CountingInputStreamTest.java │ │ │ └── user │ │ │ └── SubscriptionMapperTest.java │ │ └── resources │ │ ├── documents │ │ ├── Text.txt │ │ ├── html-iso-8859-1.html │ │ ├── html.txt │ │ ├── simple-text-iso-8859-1.txt │ │ └── writter.docx │ │ └── eml │ │ ├── 4037_014.jpg │ │ ├── 4037_015.jpg │ │ ├── attachment.pdf │ │ ├── calendar.eml │ │ ├── calendar2.eml │ │ ├── charset.eml │ │ ├── charset2.eml │ │ ├── emailWithNonIndexableAttachment.eml │ │ ├── emailWithNonIndexableAttachmentWithoutAttachment.json │ │ ├── emailWithOnlyAttachment.eml │ │ ├── emailWithTextAttachment.eml │ │ ├── embeddedAttachmentWithAttachment.eml │ │ ├── embeddedAttachmentWithInline.eml │ │ ├── filenameAndName.eml │ │ ├── filenameOnly.eml │ │ ├── frnog.eml │ │ ├── gimp.png │ │ ├── headerWithDot.eml │ │ ├── htmlMail.eml │ │ ├── htmlMail.json │ │ ├── inlined-mixed.eml │ │ ├── invalidCharset.eml │ │ ├── invalidCharset.json │ │ ├── invitationEmailFromOP.eml │ │ ├── james-3901.eml │ │ ├── james-3901.json │ │ ├── mail.eml │ │ ├── mail.json │ │ ├── mail1.eml │ │ ├── mail2.eml │ │ ├── mail3.eml │ │ ├── mail4.eml │ │ ├── mail5.eml │ │ ├── mailWithLongHeaders.eml │ │ ├── mailWithManyHeaders.eml │ │ ├── messageWithNonASCIIFilenameAttachment.eml │ │ ├── multiAttachmentsWithOneWrongContentDisposition.eml │ │ ├── noAttachment.eml │ │ ├── noContentDispositionWithCID.eml │ │ ├── nonTextual.eml │ │ ├── nonTextual.json │ │ ├── nonTextualWithoutAttachmentTextContent.json │ │ ├── oneAttachmentAndSomeTextInlined.eml │ │ ├── oneAttachmentWithEmptyContentType.eml │ │ ├── oneAttachmentWithSimpleContentType.eml │ │ ├── oneAttachmentWithoutContentType.eml │ │ ├── oneAttachmentWithoutName.eml │ │ ├── oneHtmlAttachmentAndSomeTextInlined.eml │ │ ├── oneInlinedAttachment.eml │ │ ├── oneInlinedAttachmentWithBlankCid.eml │ │ ├── oneInlinedAttachmentWithEmptyCid.eml │ │ ├── oneInlinedAttachmentWithNoCid.eml │ │ ├── pgpSignedMail.eml │ │ ├── pgpSignedMail.json │ │ ├── recursiveMail.eml │ │ ├── recursiveMail.json │ │ ├── recursiveMailWithoutAttachments.json │ │ ├── signedMessage.eml │ │ ├── spamMail.eml │ │ ├── spamMail.json │ │ ├── spamMailNoHeaders.json │ │ ├── twoAttachments.eml │ │ ├── unknownDisposition.eml │ │ └── ديناصور.odt ├── tika │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── tika │ │ │ ├── CachingTextExtractor.java │ │ │ ├── ContentTypeFilteringTextExtractor.java │ │ │ ├── TikaConfiguration.java │ │ │ ├── TikaHttpClient.java │ │ │ ├── TikaHttpClientImpl.java │ │ │ └── TikaTextExtractor.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── tika │ │ │ ├── CachingTextExtractorTest.java │ │ │ ├── ContentTypeFilteringTextExtractorTest.java │ │ │ ├── TikaConfigurationTest.java │ │ │ ├── TikaContainer.java │ │ │ ├── TikaContainerSingleton.java │ │ │ ├── TikaExtension.java │ │ │ └── TikaTextExtractorTest.java │ │ └── resources │ │ └── documents │ │ ├── PDF.pdf │ │ ├── Text.txt │ │ ├── calc.ods │ │ ├── calc.xlsx │ │ ├── fake.txt │ │ ├── slides.odp │ │ ├── slides.pptx │ │ ├── writter.docx │ │ └── writter.odt └── tools │ ├── copier │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── tools │ │ │ └── copier │ │ │ └── MailboxCopierImpl.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── mailbox │ │ └── tools │ │ └── copier │ │ └── MailboxCopierTest.java │ ├── indexer │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── mailbox │ │ │ │ └── tools │ │ │ │ └── indexer │ │ │ │ ├── ErrorRecoveryIndexationTask.java │ │ │ │ ├── ErrorRecoveryIndexationTaskDTO.java │ │ │ │ ├── FullReindexingTask.java │ │ │ │ ├── FullReindexingTaskDTO.java │ │ │ │ ├── MessageIdReIndexerImpl.java │ │ │ │ ├── MessageIdReIndexingTask.java │ │ │ │ ├── MessageIdReindexingTaskAdditionalInformationDTO.java │ │ │ │ ├── MessageIdReindexingTaskDTO.java │ │ │ │ ├── ReIndexerImpl.java │ │ │ │ ├── ReIndexerPerformer.java │ │ │ │ ├── ReIndexingContext.java │ │ │ │ ├── ReIndexingContextInformation.java │ │ │ │ ├── ReIndexingContextInformationDTO.java │ │ │ │ ├── RunningOptionsDTO.java │ │ │ │ ├── SingleMailboxReindexingTask.java │ │ │ │ ├── SingleMailboxReindexingTaskAdditionalInformationDTO.java │ │ │ │ ├── SingleMailboxReindexingTaskDTO.java │ │ │ │ ├── SingleMessageReindexingTask.java │ │ │ │ ├── SingleMessageReindexingTaskAdditionalInformationDTO.java │ │ │ │ ├── SingleMessageReindexingTaskDTO.java │ │ │ │ ├── ThrowsReIndexer.java │ │ │ │ ├── UserReindexingTask.java │ │ │ │ ├── UserReindexingTaskAdditionalInformationDTO.java │ │ │ │ ├── UserReindexingTaskDTO.java │ │ │ │ └── events │ │ │ │ ├── ImpactingEvent.java │ │ │ │ └── ImpactingEventType.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── spring │ │ │ └── mailbox-tools.xml │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── mailbox │ │ └── tools │ │ └── indexer │ │ ├── CassandraReIndexerImplTest.java │ │ ├── ErrorRecoveryIndexationTaskSerializationTest.java │ │ ├── FullReindexingTaskSerializationTest.java │ │ ├── MessageIdReIndexerImplTest.java │ │ ├── MessageIdReindexingTaskSerializationTest.java │ │ ├── ReIndexerImplTest.java │ │ ├── SingleMailboxReindexingTaskSerializationTest.java │ │ ├── SingleMessageReindexingTaskSerializationTest.java │ │ └── UserReindexingTaskSerializationTest.java │ ├── jpa-migrator │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailbox │ │ │ └── tools │ │ │ └── jpa │ │ │ └── migrator │ │ │ ├── JpaMigrator.java │ │ │ ├── command │ │ │ ├── IMAP165JpaMigrateCommand.java │ │ │ ├── IMAP168JpaMigrateCommand.java │ │ │ ├── IMAP172JpaMigrateCommand.java │ │ │ ├── IMAP176JpaMigrateCommand.java │ │ │ ├── IMAP180JpaMigrateCommand.java │ │ │ ├── IMAP184JpaMigrateCommand.java │ │ │ ├── JpaMigrateCommand.java │ │ │ └── JpaMigrateQuery.java │ │ │ └── exception │ │ │ └── JpaMigrateException.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── mailbox │ │ └── tools │ │ └── jpa │ │ └── migrator │ │ └── JpaMigratorTest.java │ └── quota-recompute │ ├── pom.xml │ └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── mailbox │ │ └── quota │ │ └── task │ │ ├── RecomputeCurrentQuotasService.java │ │ ├── RecomputeCurrentQuotasTask.java │ │ ├── RecomputeCurrentQuotasTaskAdditionalInformationDTO.java │ │ ├── RecomputeCurrentQuotasTaskDTO.java │ │ ├── RecomputeMailboxCurrentQuotasService.java │ │ ├── RecomputeSieveUploadCurrentQuotasService.java │ │ ├── RecomputeSingleComponentCurrentQuotasService.java │ │ ├── RecomputeSingleQuotaComponentResult.java │ │ └── RunningOptionsDTO.java │ └── test │ └── java │ └── org │ └── apache │ └── james │ └── mailbox │ └── quota │ └── task │ ├── RecomputeCurrentQuotasServiceContract.java │ └── RecomputeCurrentQuotasTaskSerializationTest.java ├── mailet ├── .gitignore ├── ai │ ├── BUILDING.txt │ ├── LICENSE.txt │ ├── NOTICE.txt │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── ai │ │ └── classic │ │ ├── BayesianAnalysis.java │ │ ├── BayesianAnalysisFeeder.java │ │ ├── BayesianAnalyzer.java │ │ ├── CorpusLoaderThread.java │ │ ├── JDBCBayesianAnalyzer.java │ │ ├── JDBCUtil.java │ │ ├── SqlResources.java │ │ ├── SystemContext.java │ │ ├── TokenCollector.java │ │ ├── TokenCounter.java │ │ ├── TokenProbabilityStrength.java │ │ └── Tokenizer.java ├── amqp │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── transport │ │ │ └── mailets │ │ │ └── AmqpForwardAttribute.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── transport │ │ └── mailets │ │ └── AmqpForwardAttributeTest.java ├── api │ ├── LICENSE │ ├── NOTICE │ ├── RELEASE_NOTES.txt │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── mailet │ │ │ ├── ArbitrarySerializable.java │ │ │ ├── Attribute.java │ │ │ ├── AttributeName.java │ │ │ ├── AttributeUtils.java │ │ │ ├── AttributeValue.java │ │ │ ├── DsnParameters.java │ │ │ ├── ExcludeFromDocumentation.java │ │ │ ├── Experimental.java │ │ │ ├── HostAddress.java │ │ │ ├── LookupException.java │ │ │ ├── LoopPrevention.java │ │ │ ├── Mail.java │ │ │ ├── MailAddress.java │ │ │ ├── Mailet.java │ │ │ ├── MailetConfig.java │ │ │ ├── MailetContext.java │ │ │ ├── MailetException.java │ │ │ ├── Matcher.java │ │ │ ├── MatcherConfig.java │ │ │ ├── PerRecipientHeaders.java │ │ │ ├── ProcessingState.java │ │ │ ├── Serializer.java │ │ │ ├── StorageDirective.java │ │ │ ├── TemporaryLookupException.java │ │ │ └── package.html │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── mailet │ │ ├── AttributeNameTest.java │ │ ├── AttributeTest.java │ │ ├── AttributeValueTest.java │ │ ├── ContractMailTest.java │ │ ├── DsnParametersTest.java │ │ └── LoopPreventionTest.java ├── base │ ├── LICENSE │ ├── NOTICE │ ├── RELEASE_NOTES.txt │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── appended-resources │ │ │ └── supplemental-models.xml │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── mailet │ │ │ └── base │ │ │ ├── AutomaticallySentMailDetector.java │ │ │ ├── Converter7Bit.java │ │ │ ├── DateFormats.java │ │ │ ├── FlowedMessageUtils.java │ │ │ ├── GenericMailet.java │ │ │ ├── GenericMatcher.java │ │ │ ├── GenericRecipientMatcher.java │ │ │ ├── MailetPipelineLogging.java │ │ │ ├── MailetUtil.java │ │ │ ├── MatcherInverter.java │ │ │ ├── RFC2822Headers.java │ │ │ ├── StringUtils.java │ │ │ └── package.html │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── mailet │ │ │ └── base │ │ │ ├── Converter7BitTest.java │ │ │ ├── FlowedMessageUtilsTest.java │ │ │ ├── GenericMailetTest.java │ │ │ ├── MailetPipelineLoggingTest.java │ │ │ ├── MailetUtilTest.java │ │ │ ├── MatcherInverterTest.java │ │ │ └── StringUtilsTest.java │ │ └── resources │ │ └── eml │ │ ├── multipart-7bit-attachment-content.txt │ │ ├── multipart-7bit.eml │ │ ├── multipart-8bit-attachment-content.txt │ │ ├── multipart-8bit.eml │ │ ├── text-only-7bit.eml │ │ └── text-only-8bit.eml ├── crypto │ ├── LICENSE │ ├── NOTICE │ ├── README.txt │ ├── RELEASE_NOTES.txt │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── appended-resources │ │ │ └── supplemental-models.xml │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── transport │ │ │ │ ├── InitJCE.java │ │ │ │ ├── KeyFileType.java │ │ │ │ ├── KeyHolder.java │ │ │ │ ├── KeyStoreHolder.java │ │ │ │ ├── KeyStoreHolderConfiguration.java │ │ │ │ ├── KeyStoreHolderFactory.java │ │ │ │ ├── PemReader.java │ │ │ │ ├── SMIMEAttributeNames.java │ │ │ │ ├── SMIMEKeyHolder.java │ │ │ │ ├── SMIMESignerInfo.java │ │ │ │ ├── mailets │ │ │ │ ├── AbstractSign.java │ │ │ │ ├── SMIMECheckSignature.java │ │ │ │ ├── SMIMEDecrypt.java │ │ │ │ ├── SMIMESign.java │ │ │ │ ├── Sign.java │ │ │ │ └── package.html │ │ │ │ ├── matcher │ │ │ │ ├── IsSMIMEEncrypted.java │ │ │ │ ├── IsSMIMESigned.java │ │ │ │ ├── IsX509CertificateSubject.java │ │ │ │ └── package.html │ │ │ │ └── package.html │ │ └── resources │ │ │ └── META-INF │ │ │ └── README.txt │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── transport │ │ └── matcher │ │ └── IsSMIMESignedTest.java ├── icalendar │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── transport │ │ │ └── mailets │ │ │ ├── ICALToHeader.java │ │ │ ├── ICALToJsonAttribute.java │ │ │ ├── ICSSanitizer.java │ │ │ ├── ICal4JConfigurator.java │ │ │ ├── ICalendarParser.java │ │ │ └── model │ │ │ └── ICALAttributeDTO.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── transport │ │ │ └── mailets │ │ │ ├── ICALToHeadersTest.java │ │ │ ├── ICALToJsonAttributeTest.java │ │ │ ├── ICSSanitizerTest.java │ │ │ ├── ICalendarParserTest.java │ │ │ └── model │ │ │ └── ICALAttributeDTOTest.java │ │ └── resources │ │ ├── ics │ │ ├── ics_with_error.ics │ │ ├── meeting.ics │ │ ├── meeting_2.ics │ │ ├── meeting_without_dtstamp.ics │ │ ├── meeting_without_method.ics │ │ ├── meeting_without_sequence.ics │ │ ├── meeting_without_uid.ics │ │ └── no_event.ics │ │ └── ics_in_header.eml ├── mailetdocs-maven-plugin │ ├── LICENSE.txt │ ├── NOTICE.txt │ ├── RELEASE_NOTES.txt │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── appended-resources │ │ │ └── supplemental-models.xml │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailet │ │ │ ├── AbstractMailetdocsReport.java │ │ │ ├── AggregateMailetdocsReport.java │ │ │ ├── DefaultDescriptorsExtractor.java │ │ │ ├── MailetMatcherDescriptor.java │ │ │ └── MailetdocsReport.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── mailet │ │ ├── DefaultDescriptorsExtractorTest.java │ │ ├── MailetMatcherDescriptorTest.java │ │ ├── constructor │ │ ├── excluded │ │ ├── ExcludedFromDocumentationMailet.java │ │ └── NotExcludedFromDocumentationMailet.java │ │ └── experimental │ │ ├── ExperimentalMailet.java │ │ └── NonExperimentalMailet.java ├── pom.xml ├── src │ └── reporting-site │ │ ├── site-base.xml │ │ ├── site-crypto.xml │ │ ├── site-mailetdoc.xml │ │ ├── site-standard.xml │ │ ├── site.xml │ │ └── site │ │ └── site.xml ├── standard │ ├── LICENSE.activation │ ├── LICENSE.apache │ ├── LICENSE.mail │ ├── LICENSE.txt │ ├── NOTICE.txt │ ├── RELEASE_NOTES.txt │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── appended-resources │ │ │ └── supplemental-models.xml │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── transport │ │ │ ├── mailets │ │ │ ├── AddDeliveredToHeader.java │ │ │ ├── AddFooter.java │ │ │ ├── AddSubjectPrefix.java │ │ │ ├── ClassifyBounce.java │ │ │ ├── ContactExtractor.java │ │ │ ├── ContentReplacer.java │ │ │ ├── Expires.java │ │ │ ├── FoldLongLines.java │ │ │ ├── HeadersToHTTP.java │ │ │ ├── LogMessage.java │ │ │ ├── MailAttributesListToMimeHeaders.java │ │ │ ├── MailAttributesToMimeHeaders.java │ │ │ ├── MappingArgument.java │ │ │ ├── MimeDecodingMailet.java │ │ │ ├── MimeUtil.java │ │ │ ├── Null.java │ │ │ ├── OnlyText.java │ │ │ ├── PatternExtractor.java │ │ │ ├── PostmasterAlias.java │ │ │ ├── PropagateError.java │ │ │ ├── RecipientToLowerCase.java │ │ │ ├── RecoverAttachment.java │ │ │ ├── RemoveAllMailAttributes.java │ │ │ ├── RemoveMailAttribute.java │ │ │ ├── RemoveMimeHeader.java │ │ │ ├── RemoveMimeHeaderByPrefix.java │ │ │ ├── ReplaceConfig.java │ │ │ ├── ReplaceContent.java │ │ │ ├── ReplacingPattern.java │ │ │ ├── SanitizeMimeMessageId.java │ │ │ ├── SerialiseToHTTP.java │ │ │ ├── ServerTime.java │ │ │ ├── SetErrorMessage.java │ │ │ ├── SetMailAttribute.java │ │ │ ├── SetMimeHeader.java │ │ │ ├── StripAttachment.java │ │ │ ├── ToProcessor.java │ │ │ ├── UnwrapText.java │ │ │ ├── UseHeaderRecipients.java │ │ │ ├── WrapText.java │ │ │ ├── debug │ │ │ │ ├── Counter.java │ │ │ │ ├── DumpSystemErr.java │ │ │ │ ├── ExceptionThrowingMailet.java │ │ │ │ ├── Identity.java │ │ │ │ └── package.html │ │ │ ├── package.html │ │ │ └── utils │ │ │ │ ├── MimeMessageModifier.java │ │ │ │ └── MimeMessageUtils.java │ │ │ └── matchers │ │ │ ├── All.java │ │ │ ├── AtMost.java │ │ │ ├── AttachmentFileNameIs.java │ │ │ ├── CommandForListserv.java │ │ │ ├── CommandListservMatcher.java │ │ │ ├── CompareNumericHeaderValue.java │ │ │ ├── FetchedFrom.java │ │ │ ├── FileRegexMatcher.java │ │ │ ├── GenericRegexMatcher.java │ │ │ ├── HasAttachment.java │ │ │ ├── HasException.java │ │ │ ├── HasHeader.java │ │ │ ├── HasHeaderWithPrefix.java │ │ │ ├── HasMailAttribute.java │ │ │ ├── HasMailAttributeWithValue.java │ │ │ ├── HasMailAttributeWithValueRegex.java │ │ │ ├── HasMimeType.java │ │ │ ├── HasMimeTypeAnySubPart.java │ │ │ ├── HasMimeTypeParameter.java │ │ │ ├── HostIs.java │ │ │ ├── HostIsLocal.java │ │ │ ├── IsFromMailingList.java │ │ │ ├── IsSingleRecipient.java │ │ │ ├── NESSpamCheck.java │ │ │ ├── PartHasContentType.java │ │ │ ├── RecipientCountExceeds.java │ │ │ ├── RecipientDomainIs.java │ │ │ ├── RecipientIs.java │ │ │ ├── RecipientIsLocal.java │ │ │ ├── RecipientIsRegex.java │ │ │ ├── RelayLimit.java │ │ │ ├── SMTPAuthSuccessful.java │ │ │ ├── SMTPAuthUserIs.java │ │ │ ├── SMTPIsAuthNetwork.java │ │ │ ├── SenderDomainIs.java │ │ │ ├── SenderHostIs.java │ │ │ ├── SenderHostIsLocal.java │ │ │ ├── SenderIs.java │ │ │ ├── SenderIsLocal.java │ │ │ ├── SenderIsNull.java │ │ │ ├── SenderIsRegex.java │ │ │ ├── SentByMailet.java │ │ │ ├── SizeGreaterThan.java │ │ │ ├── SubjectIs.java │ │ │ ├── SubjectStartsWith.java │ │ │ ├── TooManyLines.java │ │ │ ├── TooManyRecipients.java │ │ │ ├── UserIs.java │ │ │ ├── package.html │ │ │ └── utils │ │ │ ├── MailAddressCollectionReader.java │ │ │ └── MimeWalk.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── transport │ │ │ ├── mailets │ │ │ ├── AddDeliveredToHeaderTest.java │ │ │ ├── AddFooterTest.java │ │ │ ├── AddSubjectPrefixTest.java │ │ │ ├── ContactExtractorTest.java │ │ │ ├── ContentReplacerTest.java │ │ │ ├── ExpiresTest.java │ │ │ ├── FoldLongLinesTest.java │ │ │ ├── HeadersToHTTPTest.java │ │ │ ├── LogMessageTest.java │ │ │ ├── MailAttributesListToMimeHeadersTest.java │ │ │ ├── MailAttributesToMimeHeadersTest.java │ │ │ ├── MappingArgumentTest.java │ │ │ ├── MimeDecodingMailetTest.java │ │ │ ├── NullTest.java │ │ │ ├── OnlyTextTest.java │ │ │ ├── PatternExtractorTest.java │ │ │ ├── PostmasterAliasTest.java │ │ │ ├── PropagateErrorTest.java │ │ │ ├── RecipientToLowerCaseTest.java │ │ │ ├── RemoveAllMailAttributesTest.java │ │ │ ├── RemoveMailAttributeTest.java │ │ │ ├── RemoveMimeHeaderByPrefixTest.java │ │ │ ├── RemoveMimeHeaderTest.java │ │ │ ├── ReplaceContentTest.java │ │ │ ├── SanitizeMimeMessageIdTest.java │ │ │ ├── SerialiseToHTTPTest.java │ │ │ ├── SetErrorMessageTest.java │ │ │ ├── SetMailAttributeTest.java │ │ │ ├── SetMimeHeaderTest.java │ │ │ ├── StripAttachmentTest.java │ │ │ ├── ToProcessorTest.java │ │ │ ├── UnwrapTextTest.java │ │ │ ├── UseHeaderRecipientsTest.java │ │ │ └── utils │ │ │ │ ├── MimeMessageModifierTest.java │ │ │ │ └── MimeMessageUtilsTest.java │ │ │ └── matchers │ │ │ ├── AbstractHasMailAttributeTest.java │ │ │ ├── AllTest.java │ │ │ ├── AtMostTest.java │ │ │ ├── AttachmentFileNameIsTest.java │ │ │ ├── FetchedFromTest.java │ │ │ ├── HasAttachmentTest.java │ │ │ ├── HasExceptionTest.java │ │ │ ├── HasHeaderTest.java │ │ │ ├── HasHeaderWithPrefixTest.java │ │ │ ├── HasMailAttributeTest.java │ │ │ ├── HasMailAttributeWithValueRegexTest.java │ │ │ ├── HasMailAttributeWithValueTest.java │ │ │ ├── HasMimeTypeAnySubPartTest.java │ │ │ ├── HasMimeTypeParameterTest.java │ │ │ ├── HasMimeTypeTest.java │ │ │ ├── HostIsLocalTest.java │ │ │ ├── HostIsTest.java │ │ │ ├── IsFromMailingListTest.java │ │ │ ├── IsSingleRecipientTest.java │ │ │ ├── NESSpamCheckTest.java │ │ │ ├── PartHasContentTypeTest.java │ │ │ ├── RecipientCountExceedsTest.java │ │ │ ├── RecipientDomainIsTest.java │ │ │ ├── RecipientIsLocalTest.java │ │ │ ├── RecipientIsRegexTest.java │ │ │ ├── RecipientIsTest.java │ │ │ ├── RelayLimitTest.java │ │ │ ├── SMTPAuthSuccessfulTest.java │ │ │ ├── SMTPAuthUserIsTest.java │ │ │ ├── SMTPIsAuthNetworkTest.java │ │ │ ├── SenderDomainIsTest.java │ │ │ ├── SenderHostIsLocalTest.java │ │ │ ├── SenderHostIsTest.java │ │ │ ├── SenderIsLocalTest.java │ │ │ ├── SenderIsNullTest.java │ │ │ ├── SenderIsRegexTest.java │ │ │ ├── SenderIsTest.java │ │ │ ├── SentByMailetTest.java │ │ │ ├── SizeGreaterThanTest.java │ │ │ ├── SubjectIsTest.java │ │ │ ├── SubjectStartsWithTest.java │ │ │ ├── TooManyLinesTest.java │ │ │ ├── TooManyRecipientsTest.java │ │ │ ├── UserIsTest.java │ │ │ ├── util │ │ │ └── MailAddressCollectionReaderTest.java │ │ │ └── utils │ │ │ └── MimeWalkTest.java │ │ └── resources │ │ ├── mime │ │ ├── gmail.mime │ │ ├── headerFolded.mime │ │ ├── incorrect-headers.mime │ │ ├── sendToRemoteHttp.mime │ │ └── space.eml │ │ ├── nested.zip │ │ ├── org │ │ └── apache │ │ │ └── james │ │ │ └── mailet │ │ │ └── standard │ │ │ └── mailets │ │ │ └── replaceSubject.patterns │ │ └── sonde.zip └── test │ ├── pom.xml │ └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── mailet │ │ └── base │ │ ├── MailAddressFixture.java │ │ └── test │ │ ├── FakeMail.java │ │ ├── FakeMailContext.java │ │ ├── FakeMailetConfig.java │ │ ├── FakeMatcherConfig.java │ │ └── MailUtil.java │ └── test │ └── java │ └── org │ └── apache │ └── mailet │ └── base │ └── test │ └── FakeMailTest.java ├── mdn ├── pom.xml └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mdn │ │ │ ├── MDN.java │ │ │ ├── MDNReport.java │ │ │ ├── action │ │ │ └── mode │ │ │ │ └── DispositionActionMode.java │ │ │ ├── fields │ │ │ ├── AddressType.java │ │ │ ├── Disposition.java │ │ │ ├── Error.java │ │ │ ├── ExtensionField.java │ │ │ ├── Field.java │ │ │ ├── FinalRecipient.java │ │ │ ├── Gateway.java │ │ │ ├── OriginalMessageId.java │ │ │ ├── OriginalRecipient.java │ │ │ ├── ReportingUserAgent.java │ │ │ └── Text.java │ │ │ ├── modifier │ │ │ └── DispositionModifier.java │ │ │ ├── sending │ │ │ └── mode │ │ │ │ └── DispositionSendingMode.java │ │ │ └── type │ │ │ └── DispositionType.java │ └── scala │ │ └── org │ │ └── apache │ │ └── james │ │ └── mdn │ │ └── MDNReportParser.scala │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── james │ │ └── mdn │ │ ├── MDNReportFormattingTest.java │ │ ├── MDNReportTest.java │ │ ├── MDNTest.java │ │ ├── action │ │ └── mode │ │ │ └── DispositionActionModeTest.java │ │ ├── fields │ │ ├── AddressTypeTest.java │ │ ├── DispositionTest.java │ │ ├── ErrorTest.java │ │ ├── ExtensionFieldTest.java │ │ ├── FinalRecipientTest.java │ │ ├── GatewayTest.java │ │ ├── OriginalMessageIdTest.java │ │ ├── OriginalRecipientTest.java │ │ ├── ReportingUserAgentTest.java │ │ └── TextTest.java │ │ ├── modifier │ │ └── DispositionModifierTest.java │ │ ├── sending │ │ └── mode │ │ │ └── DispositionSendingModeTest.java │ │ └── type │ │ └── DispositionTypeTest.java │ └── scala │ └── org │ └── apache │ └── james │ └── mdn │ └── MDNReportParserTest.scala ├── metrics ├── metrics-api │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── metrics │ │ │ └── api │ │ │ ├── Gauge.java │ │ │ ├── GaugeRegistry.java │ │ │ ├── Metric.java │ │ │ ├── MetricFactory.java │ │ │ ├── NoopGaugeRegistry.java │ │ │ └── TimeMetric.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── metrics │ │ └── api │ │ ├── MetricContract.java │ │ └── MetricFactoryContract.java ├── metrics-dropwizard │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── metrics │ │ │ └── dropwizard │ │ │ ├── DropWizardGaugeRegistry.java │ │ │ ├── DropWizardJVMMetrics.java │ │ │ ├── DropWizardMetric.java │ │ │ ├── DropWizardMetricFactory.java │ │ │ └── DropWizardTimeMetric.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── metrics │ │ └── dropwizard │ │ ├── DropWizardMetricFactoryTest.java │ │ └── DropWizardMetricTest.java ├── metrics-logger │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── metrics │ │ │ └── logger │ │ │ ├── DefaultMetric.java │ │ │ ├── DefaultMetricFactory.java │ │ │ └── DefaultTimeMetric.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── metrics │ │ └── logger │ │ ├── DefaultMetricFactoryTest.java │ │ └── DefaultMetricTest.java ├── metrics-tests │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── metrics │ │ │ └── tests │ │ │ ├── RecordingMetric.java │ │ │ ├── RecordingMetricFactory.java │ │ │ └── RecordingTimeMetric.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── metrics │ │ └── tests │ │ ├── RecordingMetricFactoryTest.java │ │ └── RecordingMetricTest.java └── pom.xml ├── mpt ├── .gitignore ├── all │ ├── pom.xml │ └── src │ │ ├── assemble │ │ ├── bin.xml │ │ └── src.xml │ │ ├── reporting-site │ │ └── site.xml │ │ └── site │ │ └── site.xml ├── app │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mpt │ │ │ └── app │ │ │ ├── Main.java │ │ │ └── RunScript.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── site │ │ ├── resources │ │ └── images │ │ │ ├── asf-logo-reduced.gif │ │ │ └── james-mpt-logo.gif │ │ ├── site.xml │ │ └── xdoc │ │ └── index.xml ├── core │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mpt │ │ │ ├── Runner.java │ │ │ ├── api │ │ │ ├── Continuation.java │ │ │ ├── DomainAdder.java │ │ │ ├── HostSystem.java │ │ │ ├── ImapFeatures.java │ │ │ ├── ImapHostSystem.java │ │ │ ├── Monitor.java │ │ │ ├── ProtocolInteractor.java │ │ │ ├── Session.java │ │ │ ├── SessionFactory.java │ │ │ └── UserAdder.java │ │ │ ├── exception │ │ │ └── InvalidServerResponseException.java │ │ │ ├── helper │ │ │ ├── ByteBufferInputStream.java │ │ │ ├── ByteBufferOutputStream.java │ │ │ ├── CreateScript.java │ │ │ └── ScriptBuilder.java │ │ │ ├── host │ │ │ └── ExternalHostSystem.java │ │ │ ├── monitor │ │ │ ├── NullMonitor.java │ │ │ └── SystemLoggingMonitor.java │ │ │ ├── protocol │ │ │ ├── FileProtocolSessionBuilder.java │ │ │ ├── ProtocolSession.java │ │ │ └── ProtocolSessionBuilder.java │ │ │ ├── script │ │ │ ├── GenericSimpleScriptedTestProtocol.java │ │ │ ├── ImapScriptedTestProtocol.java │ │ │ └── SimpleScriptedTestProtocol.java │ │ │ ├── session │ │ │ ├── ExternalSession.java │ │ │ └── ExternalSessionFactory.java │ │ │ └── user │ │ │ └── ScriptedUserAdder.java │ │ ├── reporting-site │ │ └── site.xml │ │ ├── site │ │ ├── resources │ │ │ └── images │ │ │ │ ├── asf-logo-reduced.gif │ │ │ │ └── james-mpt-logo.gif │ │ ├── site.xml │ │ └── xdoc │ │ │ └── index.xml │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── mpt │ │ ├── DiscardProtocol.java │ │ ├── DiscardProtocolTest.java │ │ ├── TestExternalHostSystem.java │ │ ├── TestFileProtocolSessionBuilder.java │ │ ├── TestScriptedUserAdder.java │ │ └── api │ │ └── ImapFeaturesTest.java ├── impl │ ├── imap-mailbox │ │ ├── LICENSE.txt │ │ ├── NOTICE.txt │ │ ├── cassandra │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── reporting-site │ │ │ │ └── site.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── mpt │ │ │ │ │ └── imapmailbox │ │ │ │ │ └── cassandra │ │ │ │ │ ├── CassandraAuthenticatePlainTest.java │ │ │ │ │ ├── CassandraAuthenticatedStateTest.java │ │ │ │ │ ├── CassandraConcurrentSessionsTest.java │ │ │ │ │ ├── CassandraCondstoreTest.java │ │ │ │ │ ├── CassandraCopyTest.java │ │ │ │ │ ├── CassandraEventsTest.java │ │ │ │ │ ├── CassandraExpungeTest.java │ │ │ │ │ ├── CassandraFetchBodySectionTest.java │ │ │ │ │ ├── CassandraFetchBodyStructureTest.java │ │ │ │ │ ├── CassandraFetchHeadersTest.java │ │ │ │ │ ├── CassandraFetchTest.java │ │ │ │ │ ├── CassandraListingTest.java │ │ │ │ │ ├── CassandraListingWithSharingTest.java │ │ │ │ │ ├── CassandraMailboxAnnotationTest.java │ │ │ │ │ ├── CassandraMailboxWithLongNameErrorTest.java │ │ │ │ │ ├── CassandraMoveTest.java │ │ │ │ │ ├── CassandraNonAuthenticatedStateTest.java │ │ │ │ │ ├── CassandraObjectIdTest.java │ │ │ │ │ ├── CassandraPartialFetchTest.java │ │ │ │ │ ├── CassandraQuotaTest.java │ │ │ │ │ ├── CassandraRenameTest.java │ │ │ │ │ ├── CassandraSearchTest.java │ │ │ │ │ ├── CassandraSecurityTest.java │ │ │ │ │ ├── CassandraSelectTest.java │ │ │ │ │ ├── CassandraSelectedInboxTest.java │ │ │ │ │ ├── CassandraSelectedStateTest.java │ │ │ │ │ ├── CassandraUidSearchOnIndexTest.java │ │ │ │ │ ├── CassandraUidSearchTest.java │ │ │ │ │ ├── CassandraUserFlagsSupportTest.java │ │ │ │ │ └── host │ │ │ │ │ ├── CassandraHostSystem.java │ │ │ │ │ └── CassandraHostSystemExtension.java │ │ │ │ └── resources │ │ │ │ └── cassandra-driver.conf │ │ ├── core │ │ │ ├── LICENSE.txt │ │ │ ├── NOTICE.txt │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── org │ │ │ │ │ │ └── apache │ │ │ │ │ │ └── james │ │ │ │ │ │ └── mpt │ │ │ │ │ │ ├── host │ │ │ │ │ │ └── JamesImapHostSystem.java │ │ │ │ │ │ └── imapmailbox │ │ │ │ │ │ ├── GrantRightsOnHost.java │ │ │ │ │ │ ├── ImapTestConstants.java │ │ │ │ │ │ ├── MailboxMessageAppender.java │ │ │ │ │ │ └── suite │ │ │ │ │ │ ├── ACLCommands.java │ │ │ │ │ │ ├── ACLIntegration.java │ │ │ │ │ │ ├── ACLScriptedTestProtocol.java │ │ │ │ │ │ ├── AuthenticatePlain.java │ │ │ │ │ │ ├── AuthenticatedState.java │ │ │ │ │ │ ├── ConcurrentSessions.java │ │ │ │ │ │ ├── Condstore.java │ │ │ │ │ │ ├── Copy.java │ │ │ │ │ │ ├── Events.java │ │ │ │ │ │ ├── Expunge.java │ │ │ │ │ │ ├── Fetch.java │ │ │ │ │ │ ├── FetchBodySection.java │ │ │ │ │ │ ├── FetchBodyStructure.java │ │ │ │ │ │ ├── FetchHeaders.java │ │ │ │ │ │ ├── IMAPSharingAccessTest.java │ │ │ │ │ │ ├── Listing.java │ │ │ │ │ │ ├── ListingWithRelaxedMailboxName.java │ │ │ │ │ │ ├── ListingWithSharingTest.java │ │ │ │ │ │ ├── MailboxAnnotation.java │ │ │ │ │ │ ├── MailboxWithLongNameError.java │ │ │ │ │ │ ├── Move.java │ │ │ │ │ │ ├── NonAuthenticatedState.java │ │ │ │ │ │ ├── ObjectId.java │ │ │ │ │ │ ├── PartialFetch.java │ │ │ │ │ │ ├── QuotaTest.java │ │ │ │ │ │ ├── Recent.java │ │ │ │ │ │ ├── Rename.java │ │ │ │ │ │ ├── Search.java │ │ │ │ │ │ ├── Security.java │ │ │ │ │ │ ├── Select.java │ │ │ │ │ │ ├── SelectedInbox.java │ │ │ │ │ │ ├── SelectedState.java │ │ │ │ │ │ ├── UidSearch.java │ │ │ │ │ │ ├── UidSearchOnIndex.java │ │ │ │ │ │ ├── UserFlagsSupport.java │ │ │ │ │ │ └── base │ │ │ │ │ │ └── BasicImapCommands.java │ │ │ │ └── resources │ │ │ │ │ ├── log4j.properties │ │ │ │ │ ├── logback.xml │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── imap │ │ │ │ │ ├── samples │ │ │ │ │ │ ├── mime-plain-text.mail │ │ │ │ │ │ ├── multipart-alt-translation.mail │ │ │ │ │ │ ├── multipart-alt.mail │ │ │ │ │ │ ├── multipart-binary.mail │ │ │ │ │ │ ├── multipart-mixed-complex.mail │ │ │ │ │ │ ├── multipart-mixed.mail │ │ │ │ │ │ ├── rfc822-group-addresses.mail │ │ │ │ │ │ ├── rfc822-hello-world.mail │ │ │ │ │ │ ├── rfc822-multiple-addresses.mail │ │ │ │ │ │ ├── rfc822-reply.mail │ │ │ │ │ │ ├── rfc822-resent.mail │ │ │ │ │ │ ├── rfc822-sender.mail │ │ │ │ │ │ ├── rfc822-trace.mail │ │ │ │ │ │ ├── rfc822.mail │ │ │ │ │ │ ├── wild-alt-another-reply.mail │ │ │ │ │ │ ├── wild-alt-reply.mail │ │ │ │ │ │ ├── wild-alt-reply3.mail │ │ │ │ │ │ ├── wild-alt-reply4.mail │ │ │ │ │ │ ├── wild-example.mail │ │ │ │ │ │ ├── wild-mixed-alt.mail │ │ │ │ │ │ └── wild-mixed.mail │ │ │ │ │ └── scripts │ │ │ │ │ │ ├── ACLCommandsOnOtherUser.test │ │ │ │ │ │ ├── ACLCommandsOnOwner.test │ │ │ │ │ │ ├── Append.test │ │ │ │ │ │ ├── AppendExamineInbox.test │ │ │ │ │ │ ├── AppendExpunge.test │ │ │ │ │ │ ├── AppendSelectInbox.test │ │ │ │ │ │ ├── AppendToSelected.test │ │ │ │ │ │ ├── Authenticate.test │ │ │ │ │ │ ├── AuthenticatePlain.test │ │ │ │ │ │ ├── BadTag.test │ │ │ │ │ │ ├── BodyPartialFetch.test │ │ │ │ │ │ ├── BogusCommand.test │ │ │ │ │ │ ├── Capability.test │ │ │ │ │ │ ├── Check.test │ │ │ │ │ │ ├── ComplexMail.test │ │ │ │ │ │ ├── Concurrent.todo.txt │ │ │ │ │ │ ├── ConcurrentAppendUIDToMSNMapping.test │ │ │ │ │ │ ├── ConcurrentCrossExpunge.test │ │ │ │ │ │ ├── ConcurrentDeleteSelected.test │ │ │ │ │ │ ├── ConcurrentExistsResponse.test │ │ │ │ │ │ ├── ConcurrentExpungeResponse.test │ │ │ │ │ │ ├── ConcurrentExpungeUIDToMSNMapping.test │ │ │ │ │ │ ├── ConcurrentFetchResponse.test │ │ │ │ │ │ ├── ConcurrentRenameSelected.test │ │ │ │ │ │ ├── ConcurrentRenameSelectedSub.test │ │ │ │ │ │ ├── CondstoreDisable.test │ │ │ │ │ │ ├── CondstoreEnable.test │ │ │ │ │ │ ├── Copy.test │ │ │ │ │ │ ├── Create.test │ │ │ │ │ │ ├── CreateErrorWithLongName.test │ │ │ │ │ │ ├── Delete.test │ │ │ │ │ │ ├── DeleteInbox.test │ │ │ │ │ │ ├── ExamineEmpty.test │ │ │ │ │ │ ├── Expunge.test │ │ │ │ │ │ ├── ExpungeBasics.test │ │ │ │ │ │ ├── FetchAllEmptyMailbox.test │ │ │ │ │ │ ├── FetchBodyNoSection.test │ │ │ │ │ │ ├── FetchEnvelope.test │ │ │ │ │ │ ├── FetchHeaderFields.test │ │ │ │ │ │ ├── FetchHeaderFieldsNot.test │ │ │ │ │ │ ├── FetchInternalDate.test │ │ │ │ │ │ ├── FetchMultipartAlternative.test │ │ │ │ │ │ ├── FetchMultipartBodyStructure.test │ │ │ │ │ │ ├── FetchMultipartMixed.test │ │ │ │ │ │ ├── FetchMultipartMixedComplex.test │ │ │ │ │ │ ├── FetchMultipleMessages.test │ │ │ │ │ │ ├── FetchNILSaveDate.test │ │ │ │ │ │ ├── FetchPartial.test │ │ │ │ │ │ ├── FetchPeek.test │ │ │ │ │ │ ├── FetchRFC822.test │ │ │ │ │ │ ├── FetchRFC822Header.test │ │ │ │ │ │ ├── FetchRFC822Mixed.test │ │ │ │ │ │ ├── FetchRFC822Text.test │ │ │ │ │ │ ├── FetchSaveDate.test │ │ │ │ │ │ ├── FetchSimpleBodyStructure.test │ │ │ │ │ │ ├── FetchSingleMessage.test │ │ │ │ │ │ ├── FetchStructureComplex.test │ │ │ │ │ │ ├── FetchStructureEmbedded.test │ │ │ │ │ │ ├── FetchText.test │ │ │ │ │ │ ├── HeaderPartialFetch.test │ │ │ │ │ │ ├── Id.test │ │ │ │ │ │ ├── IllegalTag.test │ │ │ │ │ │ ├── InboxAddMessages.test │ │ │ │ │ │ ├── InboxDeleteMessages.test │ │ │ │ │ │ ├── JustTag.test │ │ │ │ │ │ ├── ListMailboxes.test │ │ │ │ │ │ ├── ListNamespace.test │ │ │ │ │ │ ├── ListOnly.test │ │ │ │ │ │ ├── ListPercentWildcard.test │ │ │ │ │ │ ├── ListPlus.test │ │ │ │ │ │ ├── ListSpecialChar.test │ │ │ │ │ │ ├── ListSubscribed.test │ │ │ │ │ │ ├── ListWithPercentWildcardInMailboxName.test │ │ │ │ │ │ ├── ListWithSharedMailbox.test │ │ │ │ │ │ ├── Login.test │ │ │ │ │ │ ├── LoginThreeStrikes.test │ │ │ │ │ │ ├── Logout.test │ │ │ │ │ │ ├── Metadata.test │ │ │ │ │ │ ├── MetadataWithBinaryData.test │ │ │ │ │ │ ├── MetadataWithLimitation.test │ │ │ │ │ │ ├── MimePartialFetch.test │ │ │ │ │ │ ├── Move.test │ │ │ │ │ │ ├── MoveNoMSG.test │ │ │ │ │ │ ├── Namespace.test │ │ │ │ │ │ ├── NoCommand.test │ │ │ │ │ │ ├── NoTag.test │ │ │ │ │ │ ├── Noop.test │ │ │ │ │ │ ├── ObjectId.test │ │ │ │ │ │ ├── PeekMultipartAlternative.test │ │ │ │ │ │ ├── PeekMultipartMixed.test │ │ │ │ │ │ ├── PeekMultipartMixedComplex.test │ │ │ │ │ │ ├── Quota.test │ │ │ │ │ │ ├── Recent.test │ │ │ │ │ │ ├── Rename.test │ │ │ │ │ │ ├── RenameHierarchy.test │ │ │ │ │ │ ├── RenameInbox.test │ │ │ │ │ │ ├── RenameSelected.test │ │ │ │ │ │ ├── RenameSharedMailbox.test │ │ │ │ │ │ ├── Replace.test │ │ │ │ │ │ ├── Rights.test │ │ │ │ │ │ ├── Search.test │ │ │ │ │ │ ├── SearchAtoms.test │ │ │ │ │ │ ├── SearchCombinations.test │ │ │ │ │ │ ├── SearchOptionAggregations.test │ │ │ │ │ │ ├── SearchOptionSave.test │ │ │ │ │ │ ├── SearchSaveDate.test │ │ │ │ │ │ ├── SelectAppend.test │ │ │ │ │ │ ├── SelectEmpty.test │ │ │ │ │ │ ├── SelectInbox.test │ │ │ │ │ │ ├── SelectUnseen.test │ │ │ │ │ │ ├── SelectedStateCleanup.test │ │ │ │ │ │ ├── SelectedStateSetup.test │ │ │ │ │ │ ├── SharedMailbox.test │ │ │ │ │ │ ├── SharingAccessL.test │ │ │ │ │ │ ├── SharingAccessLR.test │ │ │ │ │ │ ├── SharingAccessLRA.test │ │ │ │ │ │ ├── SharingAccessLRI.test │ │ │ │ │ │ ├── SharingAccessLRK.test │ │ │ │ │ │ ├── SharingAccessLRS.test │ │ │ │ │ │ ├── SharingAccessLRT.test │ │ │ │ │ │ ├── SharingAccessLRTE.test │ │ │ │ │ │ ├── SharingAccessLRW.test │ │ │ │ │ │ ├── SharingAccessLRX.test │ │ │ │ │ │ ├── Status.test │ │ │ │ │ │ ├── Store.test │ │ │ │ │ │ ├── StringArgs.test │ │ │ │ │ │ ├── Subscribe.test │ │ │ │ │ │ ├── TextPartialFetch.test │ │ │ │ │ │ ├── Uid.test │ │ │ │ │ │ ├── UidSearchAtoms.test │ │ │ │ │ │ ├── UidSearchAtomsIndexer.test │ │ │ │ │ │ ├── UidSearchCombinations.test │ │ │ │ │ │ ├── UserFlagsSupport.test │ │ │ │ │ │ ├── ValidAuthenticated.test │ │ │ │ │ │ ├── ValidNonAuthenticated.test │ │ │ │ │ │ ├── ValidSelected.test │ │ │ │ │ │ ├── Welcome.test │ │ │ │ │ │ ├── XList.test │ │ │ │ │ │ └── aclIntegration │ │ │ │ │ │ ├── ACLIntegrationCopyI.test │ │ │ │ │ │ ├── ACLIntegrationCopyIS.test │ │ │ │ │ │ ├── ACLIntegrationCopyIT.test │ │ │ │ │ │ ├── ACLIntegrationCopyIW.test │ │ │ │ │ │ ├── ACLIntegrationCopyWithoutI.test │ │ │ │ │ │ ├── ACLIntegrationCopyWithoutS.test │ │ │ │ │ │ ├── ACLIntegrationCopyWithoutT.test │ │ │ │ │ │ ├── ACLIntegrationCopyWithoutW.test │ │ │ │ │ │ ├── ACLIntegrationRightA.test │ │ │ │ │ │ ├── ACLIntegrationRightI.test │ │ │ │ │ │ ├── ACLIntegrationRightIS.test │ │ │ │ │ │ ├── ACLIntegrationRightIT.test │ │ │ │ │ │ ├── ACLIntegrationRightIW.test │ │ │ │ │ │ ├── ACLIntegrationRightK.test │ │ │ │ │ │ ├── ACLIntegrationRightL.test │ │ │ │ │ │ ├── ACLIntegrationRightR.test │ │ │ │ │ │ ├── ACLIntegrationRightRE.test │ │ │ │ │ │ ├── ACLIntegrationRightRS.test │ │ │ │ │ │ ├── ACLIntegrationRightRT.test │ │ │ │ │ │ ├── ACLIntegrationRightRW.test │ │ │ │ │ │ ├── ACLIntegrationRightX.test │ │ │ │ │ │ ├── ACLIntegrationWithoutRightA.test │ │ │ │ │ │ ├── ACLIntegrationWithoutRightE.test │ │ │ │ │ │ ├── ACLIntegrationWithoutRightI.test │ │ │ │ │ │ ├── ACLIntegrationWithoutRightK.test │ │ │ │ │ │ ├── ACLIntegrationWithoutRightL.test │ │ │ │ │ │ ├── ACLIntegrationWithoutRightR.test │ │ │ │ │ │ ├── ACLIntegrationWithoutRightS.test │ │ │ │ │ │ ├── ACLIntegrationWithoutRightT.test │ │ │ │ │ │ ├── ACLIntegrationWithoutRightW.test │ │ │ │ │ │ └── ACLIntegrationWithoutRightX.test │ │ │ │ │ └── mailboxmanager │ │ │ │ │ └── testdata │ │ │ │ │ ├── DefaultMailboxManagerConf.xml │ │ │ │ │ ├── MixedMailstores.xml │ │ │ │ │ └── VirtualRepositoryMix.xml │ │ │ │ └── reporting-site │ │ │ │ └── site.xml │ │ ├── cyrus │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── reporting-site │ │ │ │ └── site.xml │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── imapmailbox │ │ │ │ └── cyrus │ │ │ │ ├── CyrusACLCommands.java │ │ │ │ ├── CyrusACLIntegration.java │ │ │ │ ├── CyrusMailboxTestModule.java │ │ │ │ └── host │ │ │ │ ├── CyrusHostSystem.java │ │ │ │ ├── CyrusUserAdder.java │ │ │ │ ├── Docker.java │ │ │ │ ├── GrantRightsOnCyrusHost.java │ │ │ │ └── MailboxMessageAppenderOnCyrusHost.java │ │ ├── external-james │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── reporting-site │ │ │ │ └── site.xml │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── mpt │ │ │ │ │ └── imapmailbox │ │ │ │ │ └── external │ │ │ │ │ └── james │ │ │ │ │ ├── DeploymentValidation.java │ │ │ │ │ ├── DockerDeploymentValidationGuiceJPATest.java │ │ │ │ │ ├── DockerDeploymentValidationSpringJPATest.java │ │ │ │ │ ├── DockerJamesRule.java │ │ │ │ │ ├── ExternalJamesModule.java │ │ │ │ │ ├── JamesDeploymentValidationTest.java │ │ │ │ │ ├── ProvisioningException.java │ │ │ │ │ └── host │ │ │ │ │ ├── ProvisioningAPI.java │ │ │ │ │ ├── SmtpHostSystem.java │ │ │ │ │ ├── StaticJamesConfiguration.java │ │ │ │ │ ├── docker │ │ │ │ │ └── CliProvisioningAPI.java │ │ │ │ │ └── external │ │ │ │ │ ├── ExternalJamesConfiguration.java │ │ │ │ │ ├── ExternalJamesConfigurationEnvironnementVariables.java │ │ │ │ │ ├── ExternalJamesImapHostSystem.java │ │ │ │ │ ├── ExternalJamesSmtpHostSystem.java │ │ │ │ │ └── NoopDomainsAndUserAdder.java │ │ │ │ └── resources │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── imap │ │ │ │ └── scripts │ │ │ │ ├── SelectThenFetchWithExistingMessages.test │ │ │ │ └── ValidateDeployment.test │ │ ├── inmemory │ │ │ ├── LICENSE.txt │ │ │ ├── NOTICE.txt │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── reporting-site │ │ │ │ └── site.xml │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── imapmailbox │ │ │ │ └── inmemory │ │ │ │ ├── InMemoryAuthenticatePlainTest.java │ │ │ │ ├── InMemoryAuthenticatedStateTest.java │ │ │ │ ├── InMemoryConcurrentSessionsTest.java │ │ │ │ ├── InMemoryCondstoreTest.java │ │ │ │ ├── InMemoryCopyTest.java │ │ │ │ ├── InMemoryEventsTest.java │ │ │ │ ├── InMemoryExpungeTest.java │ │ │ │ ├── InMemoryFetchBodySectionTest.java │ │ │ │ ├── InMemoryFetchBodyStructureTest.java │ │ │ │ ├── InMemoryFetchHeadersTest.java │ │ │ │ ├── InMemoryFetchTest.java │ │ │ │ ├── InMemoryIMAPSharingAccessTest.java │ │ │ │ ├── InMemoryListingTest.java │ │ │ │ ├── InMemoryListingWithRelaxedMailboxNameTest.java │ │ │ │ ├── InMemoryListingWithSharingTest.java │ │ │ │ ├── InMemoryMailboxAnnotationTest.java │ │ │ │ ├── InMemoryMailboxWithLongNameErrorTest.java │ │ │ │ ├── InMemoryMoveTest.java │ │ │ │ ├── InMemoryNonAuthenticatedStateTest.java │ │ │ │ ├── InMemoryObjectIdTest.java │ │ │ │ ├── InMemoryPartialFetchTest.java │ │ │ │ ├── InMemoryQuotaTest.java │ │ │ │ ├── InMemoryRecentTest.java │ │ │ │ ├── InMemoryRenameTest.java │ │ │ │ ├── InMemorySearchTest.java │ │ │ │ ├── InMemorySecurityTest.java │ │ │ │ ├── InMemorySelectTest.java │ │ │ │ ├── InMemorySelectedInboxTest.java │ │ │ │ ├── InMemorySelectedStateTest.java │ │ │ │ ├── InMemoryUidSearchOnIndexTest.java │ │ │ │ ├── InMemoryUidSearchTest.java │ │ │ │ ├── InMemoryUserFlagsSupportTest.java │ │ │ │ └── host │ │ │ │ └── InMemoryHostSystem.java │ │ ├── jpa │ │ │ ├── LICENSE.txt │ │ │ ├── NOTICE.txt │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── reporting-site │ │ │ │ └── site.xml │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── imapmailbox │ │ │ │ └── jpa │ │ │ │ ├── JpaAuthenticatePlainTest.java │ │ │ │ ├── JpaAuthenticatedStateTest.java │ │ │ │ ├── JpaConcurrentSessionsTest.java │ │ │ │ ├── JpaCondstoreTest.java │ │ │ │ ├── JpaCopyTest.java │ │ │ │ ├── JpaEventsTest.java │ │ │ │ ├── JpaExpungeTest.java │ │ │ │ ├── JpaFetchBodySectionTest.java │ │ │ │ ├── JpaFetchBodyStructureTest.java │ │ │ │ ├── JpaFetchHeadersTest.java │ │ │ │ ├── JpaFetchTest.java │ │ │ │ ├── JpaListingTest.java │ │ │ │ ├── JpaMailboxAnnotationTest.java │ │ │ │ ├── JpaMailboxWithLongNameErrorTest.java │ │ │ │ ├── JpaMoveTest.java │ │ │ │ ├── JpaNonAuthenticatedStateTest.java │ │ │ │ ├── JpaPartialFetchTest.java │ │ │ │ ├── JpaQuotaTest.java │ │ │ │ ├── JpaRenameTest.java │ │ │ │ ├── JpaSearchTest.java │ │ │ │ ├── JpaSecurityTest.java │ │ │ │ ├── JpaSelectTest.java │ │ │ │ ├── JpaSelectedInboxTest.java │ │ │ │ ├── JpaSelectedStateTest.java │ │ │ │ ├── JpaUidSearchOnIndexTest.java │ │ │ │ ├── JpaUidSearchTest.java │ │ │ │ ├── JpaUserFlagsSupportTest.java │ │ │ │ └── host │ │ │ │ ├── JPAHostSystem.java │ │ │ │ └── JPAHostSystemExtension.java │ │ ├── lucenesearch │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── imapmailbox │ │ │ │ └── lucenesearch │ │ │ │ ├── LuceneAuthenticatePlainTest.java │ │ │ │ ├── LuceneAuthenticatedStateTest.java │ │ │ │ ├── LuceneConcurrentSessionsTest.java │ │ │ │ ├── LuceneCondstoreTest.java │ │ │ │ ├── LuceneCopyTest.java │ │ │ │ ├── LuceneEventsTest.java │ │ │ │ ├── LuceneExpungeTest.java │ │ │ │ ├── LuceneFetchBodySectionTest.java │ │ │ │ ├── LuceneFetchBodyStructureTest.java │ │ │ │ ├── LuceneFetchHeadersTest.java │ │ │ │ ├── LuceneFetchTest.java │ │ │ │ ├── LuceneListingTest.java │ │ │ │ ├── LuceneMailboxAnnotationTest.java │ │ │ │ ├── LuceneMailboxWithLongNameErrorTest.java │ │ │ │ ├── LuceneMoveTest.java │ │ │ │ ├── LuceneNonAuthenticatedStateTest.java │ │ │ │ ├── LuceneObjectIdTest.java │ │ │ │ ├── LucenePartialFetchTest.java │ │ │ │ ├── LuceneQuotaTest.java │ │ │ │ ├── LuceneRecentTest.java │ │ │ │ ├── LuceneRenameTest.java │ │ │ │ ├── LuceneSecurityTest.java │ │ │ │ ├── LuceneSelectTest.java │ │ │ │ ├── LuceneSelectedInboxTest.java │ │ │ │ ├── LuceneSelectedStateTest.java │ │ │ │ ├── LuceneUidSearchOnIndexTest.java │ │ │ │ ├── LuceneUserFlagsSupportTest.java │ │ │ │ └── host │ │ │ │ └── LuceneSearchHostSystem.java │ │ ├── opensearch │ │ │ ├── .gitignore │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── imapmailbox │ │ │ │ └── elasticsearch │ │ │ │ ├── OpenSearchRecentTest.java │ │ │ │ ├── OpenSearchUidSearchOnIndexTest.java │ │ │ │ └── host │ │ │ │ ├── OpenSearchHostSystem.java │ │ │ │ └── PublicTemporaryFolder.java │ │ ├── pom.xml │ │ ├── postgres │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── imapmailbox │ │ │ │ └── postgres │ │ │ │ ├── PostgresAuthenticatePlainTest.java │ │ │ │ ├── PostgresAuthenticatedStateTest.java │ │ │ │ ├── PostgresConcurrentSessionsTest.java │ │ │ │ ├── PostgresCondstoreTest.java │ │ │ │ ├── PostgresCopyTest.java │ │ │ │ ├── PostgresEventsTest.java │ │ │ │ ├── PostgresExpungeTest.java │ │ │ │ ├── PostgresFetchBodySectionTest.java │ │ │ │ ├── PostgresFetchBodyStructureTest.java │ │ │ │ ├── PostgresFetchHeadersTest.java │ │ │ │ ├── PostgresFetchTest.java │ │ │ │ ├── PostgresListingTest.java │ │ │ │ ├── PostgresMailboxAnnotationTest.java │ │ │ │ ├── PostgresMailboxWithLongNameErrorTest.java │ │ │ │ ├── PostgresMoveTest.java │ │ │ │ ├── PostgresNonAuthenticatedStateTest.java │ │ │ │ ├── PostgresPartialFetchTest.java │ │ │ │ ├── PostgresQuotaTest.java │ │ │ │ ├── PostgresRenameTest.java │ │ │ │ ├── PostgresSearchTest.java │ │ │ │ ├── PostgresSecurityTest.java │ │ │ │ ├── PostgresSelectTest.java │ │ │ │ ├── PostgresSelectedInboxTest.java │ │ │ │ ├── PostgresSelectedStateTest.java │ │ │ │ ├── PostgresUidSearchOnIndexTest.java │ │ │ │ ├── PostgresUidSearchTest.java │ │ │ │ ├── PostgresUserFlagsSupportTest.java │ │ │ │ └── host │ │ │ │ ├── PostgresHostSystem.java │ │ │ │ └── PostgresHostSystemExtension.java │ │ └── rabbitmq │ │ │ ├── pom.xml │ │ │ └── src │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mpt │ │ │ └── imapmailbox │ │ │ └── rabbitmq │ │ │ ├── RabbitMQAuthenticatePlainTest.java │ │ │ ├── RabbitMQAuthenticatedStateTest.java │ │ │ ├── RabbitMQConcurrentSessionsTest.java │ │ │ ├── RabbitMQCondstoreTest.java │ │ │ ├── RabbitMQCopyTest.java │ │ │ ├── RabbitMQEventsTest.java │ │ │ ├── RabbitMQFetchBodySectionTest.java │ │ │ ├── RabbitMQFetchBodyStructureTest.java │ │ │ ├── RabbitMQFetchHeadersTest.java │ │ │ ├── RabbitMQFetchTest.java │ │ │ ├── RabbitMQListingTest.java │ │ │ ├── RabbitMQListingWithSharingTest.java │ │ │ ├── RabbitMQMailboxAnnotationTest.java │ │ │ ├── RabbitMQMailboxWithLongNameErrorTest.java │ │ │ ├── RabbitMQMoveTest.java │ │ │ ├── RabbitMQNonAuthenticatedStateTest.java │ │ │ ├── RabbitMQObjectIdeTest.java │ │ │ ├── RabbitMQPartialFetchTest.java │ │ │ ├── RabbitMQQuotaTest.java │ │ │ ├── RabbitMQRenameTest.java │ │ │ ├── RabbitMQSearchTest.java │ │ │ ├── RabbitMQSecurityTest.java │ │ │ ├── RabbitMQSelectTest.java │ │ │ ├── RabbitMQSelectedInboxTest.java │ │ │ ├── RabbitMQSelectedStateTest.java │ │ │ ├── RabbitMQUidSearchTest.java │ │ │ ├── RabbitMQUserFlagsSupportTest.java │ │ │ └── host │ │ │ ├── RabbitMQEventBusHostSystem.java │ │ │ └── RabbitMQEventBusHostSystemExtension.java │ ├── managesieve │ │ ├── cassandra │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── managesieve │ │ │ │ └── cassandra │ │ │ │ ├── CassandraManageSieveMPTTest.java │ │ │ │ └── host │ │ │ │ └── CassandraHostSystem.java │ │ ├── core │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── mpt │ │ │ │ │ ├── HostSystemProvider.java │ │ │ │ │ ├── ManageSieveMPTContract.java │ │ │ │ │ ├── host │ │ │ │ │ ├── JamesManageSieveHostSystem.java │ │ │ │ │ ├── ManageSieveHostSystem.java │ │ │ │ │ └── ManageSieveSession.java │ │ │ │ │ └── testsuite │ │ │ │ │ ├── AuthenticateContract.java │ │ │ │ │ ├── CapabilityContract.java │ │ │ │ │ ├── CheckScriptContract.java │ │ │ │ │ ├── DeleteScriptContract.java │ │ │ │ │ ├── GetScriptContract.java │ │ │ │ │ ├── HaveSpaceContract.java │ │ │ │ │ ├── ListScriptsContract.java │ │ │ │ │ ├── LogoutContract.java │ │ │ │ │ ├── NoopContract.java │ │ │ │ │ ├── PutScriptContract.java │ │ │ │ │ ├── RenameScriptContract.java │ │ │ │ │ ├── SetActiveContract.java │ │ │ │ │ ├── StartTlsContract.java │ │ │ │ │ └── UnauthenticatedContract.java │ │ │ │ └── resources │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── managesieve │ │ │ │ └── scripts │ │ │ │ ├── authenticate.test │ │ │ │ ├── authenticateBase64.test │ │ │ │ ├── capability.test │ │ │ │ ├── checkscript.test │ │ │ │ ├── deletescript.test │ │ │ │ ├── getscript.test │ │ │ │ ├── havespace.test │ │ │ │ ├── listscripts.test │ │ │ │ ├── logout.test │ │ │ │ ├── noop.test │ │ │ │ ├── putscript.test │ │ │ │ ├── renamescript.test │ │ │ │ ├── setactive.test │ │ │ │ ├── starttls.test │ │ │ │ └── unauthenticate.test │ │ ├── file │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── managesieve │ │ │ │ └── file │ │ │ │ ├── FileManageSieveMPTTest.java │ │ │ │ └── host │ │ │ │ └── FileHostSystem.java │ │ └── pom.xml │ └── smtp │ │ ├── cassandra-rabbitmq-object-storage │ │ ├── pom.xml │ │ └── src │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── smtp │ │ │ │ ├── AwsS3RabbitMQForwardSmtpTest.java │ │ │ │ └── AwsS3RabbitMQSmtpStarttlsCommandTest.java │ │ │ └── resources │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── imapserver.xml │ │ │ ├── keystore │ │ │ ├── lmtpserver.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── recipientrewritetable.xml │ │ │ └── smtpserver.xml │ │ ├── cassandra │ │ ├── pom.xml │ │ └── src │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── smtp │ │ │ │ ├── CassandraForwardSmtpTest.java │ │ │ │ └── CassandraSmtpStarttlsCommandTest.java │ │ │ └── resources │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── imapserver.xml │ │ │ ├── keystore │ │ │ ├── lmtpserver.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── recipientrewritetable.xml │ │ │ └── smtpserver.xml │ │ ├── core │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── smtp │ │ │ │ ├── ForwardSmtpTest.java │ │ │ │ ├── InMemoryDnsExtension.java │ │ │ │ ├── SmtpAuthCommandTest.java │ │ │ │ ├── SmtpHostSystem.java │ │ │ │ ├── SmtpStarttlsCommandTest.java │ │ │ │ └── SmtpTestExtension.java │ │ │ └── resources │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── smtp │ │ │ └── scripts │ │ │ ├── authplain.test │ │ │ ├── data_starts_with_starttls.test │ │ │ ├── data_with_starttls.test │ │ │ ├── helo.test │ │ │ ├── rcpt_with_starttls.test │ │ │ ├── starttls.test │ │ │ ├── starttls_session_fixation.test │ │ │ └── starttls_with_injection.test │ │ ├── jpa-pulsar │ │ ├── pom.xml │ │ └── src │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mpt │ │ │ │ └── smtp │ │ │ │ ├── JpaPulsarForwardSmtpTest.java │ │ │ │ └── JpaPulsarSmtpStarttlsCommandTest.java │ │ │ └── resources │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── keystore │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── recipientrewritetable.xml │ │ │ ├── smtpserver.xml │ │ │ └── usersrepository.xml │ │ └── pom.xml ├── mavenplugin │ ├── LICENSE.txt │ ├── NOTICE.txt │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mpt │ │ │ └── maven │ │ │ ├── AddUser.java │ │ │ ├── MailProtocolTest.java │ │ │ └── MailProtocolTestMojo.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── site │ │ ├── apt │ │ ├── index.apt │ │ └── usage.apt.vm │ │ ├── fml │ │ └── faq.fml │ │ └── site.xml ├── pom.xml └── src │ └── reporting-site │ └── site.xml ├── pom.xml ├── protocols ├── .gitignore ├── api │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── protocols │ │ │ └── api │ │ │ ├── AbstractProtocolTransport.java │ │ │ ├── AbstractResponse.java │ │ │ ├── BaseRequest.java │ │ │ ├── ClientAuth.java │ │ │ ├── CommandDetectionSession.java │ │ │ ├── OIDCSASLParser.java │ │ │ ├── OidcSASLConfiguration.java │ │ │ ├── Protocol.java │ │ │ ├── ProtocolConfiguration.java │ │ │ ├── ProtocolConfigurationImpl.java │ │ │ ├── ProtocolImpl.java │ │ │ ├── ProtocolServer.java │ │ │ ├── ProtocolSession.java │ │ │ ├── ProtocolSessionImpl.java │ │ │ ├── ProtocolTransport.java │ │ │ ├── ProxyInformation.java │ │ │ ├── Request.java │ │ │ ├── Response.java │ │ │ ├── StartTlsResponse.java │ │ │ ├── StreamResponse.java │ │ │ └── handler │ │ │ ├── AbstractProtocolHandlerChain.java │ │ │ ├── CommandDispatcher.java │ │ │ ├── CommandHandler.java │ │ │ ├── CommandHandlerResultLogger.java │ │ │ ├── ConnectHandler.java │ │ │ ├── DisconnectHandler.java │ │ │ ├── ExtensibleHandler.java │ │ │ ├── LineHandler.java │ │ │ ├── ProtocolHandler.java │ │ │ ├── ProtocolHandlerChain.java │ │ │ ├── ProtocolHandlerChainImpl.java │ │ │ ├── ProtocolHandlerResultHandler.java │ │ │ ├── UnknownCommandHandler.java │ │ │ └── WiringException.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── protocols │ │ │ └── api │ │ │ ├── AbstractProtocolTransportTest.java │ │ │ ├── OIDCSASLHelper.java │ │ │ ├── OIDCSASLParserTest.java │ │ │ ├── ProtocolSessionTest.java │ │ │ ├── ProxyInformationTest.java │ │ │ └── utils │ │ │ ├── BogusKeyStore.java │ │ │ ├── BogusSSLSocketFactory.java │ │ │ ├── BogusSslContextFactory.java │ │ │ ├── BogusTrustManagerFactory.java │ │ │ └── ProtocolServerUtils.java │ │ └── resources │ │ └── boguskeystore ├── imap │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ ├── imap │ │ │ ├── ImapSuite.java │ │ │ ├── api │ │ │ │ ├── ConnectionCheck.java │ │ │ │ ├── ConnectionCheckFactory.java │ │ │ │ ├── DefaultConnectionCheckFactory.java │ │ │ │ ├── ImapCommand.java │ │ │ │ ├── ImapConfiguration.java │ │ │ │ ├── ImapConstants.java │ │ │ │ ├── ImapMessage.java │ │ │ │ ├── ImapSessionState.java │ │ │ │ ├── Tag.java │ │ │ │ ├── display │ │ │ │ │ ├── HumanReadableText.java │ │ │ │ │ ├── Locales.java │ │ │ │ │ ├── Localizer.java │ │ │ │ │ └── ModifiedUtf7.java │ │ │ │ ├── message │ │ │ │ │ ├── BodyFetchElement.java │ │ │ │ │ ├── Capability.java │ │ │ │ │ ├── FetchData.java │ │ │ │ │ ├── IdRange.java │ │ │ │ │ ├── MessageFlags.java │ │ │ │ │ ├── PartialRange.java │ │ │ │ │ ├── SectionType.java │ │ │ │ │ ├── StatusDataItems.java │ │ │ │ │ ├── UidRange.java │ │ │ │ │ ├── request │ │ │ │ │ │ ├── DayMonthYear.java │ │ │ │ │ │ ├── ImapRequest.java │ │ │ │ │ │ ├── SearchKey.java │ │ │ │ │ │ ├── SearchOperation.java │ │ │ │ │ │ └── SearchResultOption.java │ │ │ │ │ └── response │ │ │ │ │ │ ├── ImapResponseMessage.java │ │ │ │ │ │ ├── StatusResponse.java │ │ │ │ │ │ └── StatusResponseFactory.java │ │ │ │ └── process │ │ │ │ │ ├── DefaultMailboxTyper.java │ │ │ │ │ ├── ImapLineHandler.java │ │ │ │ │ ├── ImapProcessor.java │ │ │ │ │ ├── ImapSession.java │ │ │ │ │ ├── MailboxType.java │ │ │ │ │ ├── MailboxTyper.java │ │ │ │ │ ├── SearchResUtil.java │ │ │ │ │ └── SelectedMailbox.java │ │ │ ├── decode │ │ │ │ ├── DecoderUtils.java │ │ │ │ ├── DecodingException.java │ │ │ │ ├── FetchPartPathDecoder.java │ │ │ │ ├── ImapCommandParser.java │ │ │ │ ├── ImapCommandParserFactory.java │ │ │ │ ├── ImapDecoder.java │ │ │ │ ├── ImapDecoderFactory.java │ │ │ │ ├── ImapRequestLineReader.java │ │ │ │ ├── ImapRequestStreamLineReader.java │ │ │ │ ├── base │ │ │ │ │ └── AbstractImapCommandParser.java │ │ │ │ ├── main │ │ │ │ │ ├── DefaultImapDecoder.java │ │ │ │ │ ├── ImapRequestStreamHandler.java │ │ │ │ │ └── OutputStreamImapResponseWriter.java │ │ │ │ └── parser │ │ │ │ │ ├── AbstractMessageRangeCommandParser.java │ │ │ │ │ ├── AbstractSelectionCommandParser.java │ │ │ │ │ ├── AbstractUidCommandParser.java │ │ │ │ │ ├── AppendCommandParser.java │ │ │ │ │ ├── AuthenticateCommandParser.java │ │ │ │ │ ├── CapabilityCommandParser.java │ │ │ │ │ ├── CheckCommandParser.java │ │ │ │ │ ├── CloseCommandParser.java │ │ │ │ │ ├── CompressCommandParser.java │ │ │ │ │ ├── CopyCommandParser.java │ │ │ │ │ ├── CreateCommandParser.java │ │ │ │ │ ├── DeleteACLCommandParser.java │ │ │ │ │ ├── DeleteCommandParser.java │ │ │ │ │ ├── EnableCommandParser.java │ │ │ │ │ ├── ExamineCommandParser.java │ │ │ │ │ ├── ExpungeCommandParser.java │ │ │ │ │ ├── FetchCommandParser.java │ │ │ │ │ ├── GetACLCommandParser.java │ │ │ │ │ ├── GetMetadataCommandParser.java │ │ │ │ │ ├── GetQuotaCommandParser.java │ │ │ │ │ ├── GetQuotaRootCommandParser.java │ │ │ │ │ ├── IDCommandParser.java │ │ │ │ │ ├── IdleCommandParser.java │ │ │ │ │ ├── ImapParserFactory.java │ │ │ │ │ ├── ListCommandParser.java │ │ │ │ │ ├── ListRightsCommandParser.java │ │ │ │ │ ├── LoginCommandParser.java │ │ │ │ │ ├── LogoutCommandParser.java │ │ │ │ │ ├── LsubCommandParser.java │ │ │ │ │ ├── MoveCommandParser.java │ │ │ │ │ ├── MyRightsCommandParser.java │ │ │ │ │ ├── NamespaceCommandParser.java │ │ │ │ │ ├── NoopCommandParser.java │ │ │ │ │ ├── RenameCommandParser.java │ │ │ │ │ ├── ReplaceCommandParser.java │ │ │ │ │ ├── SearchCommandParser.java │ │ │ │ │ ├── SelectCommandParser.java │ │ │ │ │ ├── SetACLCommandParser.java │ │ │ │ │ ├── SetAnnotationCommandParser.java │ │ │ │ │ ├── SetQuotaCommandParser.java │ │ │ │ │ ├── StartTLSCommandParser.java │ │ │ │ │ ├── StatusCommandParser.java │ │ │ │ │ ├── StoreCommandParser.java │ │ │ │ │ ├── SubscribeCommandParser.java │ │ │ │ │ ├── UidCommandParser.java │ │ │ │ │ ├── UnselectCommandParser.java │ │ │ │ │ ├── UnsubscribeCommandParser.java │ │ │ │ │ └── XListCommandParser.java │ │ │ ├── encode │ │ │ │ ├── ACLResponseEncoder.java │ │ │ │ ├── AuthenticateResponseEncoder.java │ │ │ │ ├── CapabilityResponseEncoder.java │ │ │ │ ├── ContinuationResponseEncoder.java │ │ │ │ ├── ESearchResponseEncoder.java │ │ │ │ ├── EnableResponseEncoder.java │ │ │ │ ├── EncoderUtils.java │ │ │ │ ├── ExistsResponseEncoder.java │ │ │ │ ├── ExpungeResponseEncoder.java │ │ │ │ ├── FakeImapSession.java │ │ │ │ ├── FetchResponseEncoder.java │ │ │ │ ├── FlagsResponseEncoder.java │ │ │ │ ├── IdResponseEncoder.java │ │ │ │ ├── ImapEncoder.java │ │ │ │ ├── ImapEncoderFactory.java │ │ │ │ ├── ImapResponseComposer.java │ │ │ │ ├── ImapResponseEncoder.java │ │ │ │ ├── ImapResponseWriter.java │ │ │ │ ├── LSubResponseEncoder.java │ │ │ │ ├── ListResponseEncoder.java │ │ │ │ ├── ListRightsResponseEncoder.java │ │ │ │ ├── ListingEncodingUtils.java │ │ │ │ ├── MailboxStatusResponseEncoder.java │ │ │ │ ├── MetadataResponseEncoder.java │ │ │ │ ├── MyRightsResponseEncoder.java │ │ │ │ ├── NamespaceResponseEncoder.java │ │ │ │ ├── QuotaResponseEncoder.java │ │ │ │ ├── QuotaRootResponseEncoder.java │ │ │ │ ├── RecentResponseEncoder.java │ │ │ │ ├── SearchResponseEncoder.java │ │ │ │ ├── StatusResponseEncoder.java │ │ │ │ ├── VanishedResponseEncoder.java │ │ │ │ ├── XListResponseEncoder.java │ │ │ │ ├── base │ │ │ │ │ ├── EndImapEncoder.java │ │ │ │ │ └── ImapResponseComposerImpl.java │ │ │ │ └── main │ │ │ │ │ ├── DefaultImapEncoderFactory.java │ │ │ │ │ └── DefaultLocalizer.java │ │ │ ├── main │ │ │ │ ├── AbstractImapRequestHandler.java │ │ │ │ ├── DefaultImapDecoderFactory.java │ │ │ │ ├── DeniedAccessOnSharedMailboxException.java │ │ │ │ ├── PathConverter.java │ │ │ │ └── ResponseEncoder.java │ │ │ ├── message │ │ │ │ ├── BytesBackedLiteral.java │ │ │ │ ├── Literal.java │ │ │ │ ├── MailboxName.java │ │ │ │ ├── request │ │ │ │ │ ├── AbstractImapRequest.java │ │ │ │ │ ├── AbstractMailboxSelectionRequest.java │ │ │ │ │ ├── AbstractMessageRangeRequest.java │ │ │ │ │ ├── AppendRequest.java │ │ │ │ │ ├── AuthenticateRequest.java │ │ │ │ │ ├── CapabilityRequest.java │ │ │ │ │ ├── CheckRequest.java │ │ │ │ │ ├── CloseRequest.java │ │ │ │ │ ├── CompressRequest.java │ │ │ │ │ ├── CopyRequest.java │ │ │ │ │ ├── CreateRequest.java │ │ │ │ │ ├── DeleteACLRequest.java │ │ │ │ │ ├── DeleteRequest.java │ │ │ │ │ ├── EnableRequest.java │ │ │ │ │ ├── ExamineRequest.java │ │ │ │ │ ├── ExpungeRequest.java │ │ │ │ │ ├── FetchRequest.java │ │ │ │ │ ├── GetACLRequest.java │ │ │ │ │ ├── GetMetadataRequest.java │ │ │ │ │ ├── GetQuotaRequest.java │ │ │ │ │ ├── GetQuotaRootRequest.java │ │ │ │ │ ├── IDRequest.java │ │ │ │ │ ├── IRAuthenticateRequest.java │ │ │ │ │ ├── IdleRequest.java │ │ │ │ │ ├── ListRequest.java │ │ │ │ │ ├── ListRightsRequest.java │ │ │ │ │ ├── LoginRequest.java │ │ │ │ │ ├── LogoutRequest.java │ │ │ │ │ ├── LsubRequest.java │ │ │ │ │ ├── MoveRequest.java │ │ │ │ │ ├── MyRightsRequest.java │ │ │ │ │ ├── NamespaceRequest.java │ │ │ │ │ ├── NoopRequest.java │ │ │ │ │ ├── RenameRequest.java │ │ │ │ │ ├── ReplaceRequest.java │ │ │ │ │ ├── SearchRequest.java │ │ │ │ │ ├── SelectRequest.java │ │ │ │ │ ├── SetACLRequest.java │ │ │ │ │ ├── SetMetadataRequest.java │ │ │ │ │ ├── SetQuotaRequest.java │ │ │ │ │ ├── StartTLSRequest.java │ │ │ │ │ ├── StatusRequest.java │ │ │ │ │ ├── StoreRequest.java │ │ │ │ │ ├── SubscribeRequest.java │ │ │ │ │ ├── SystemMessage.java │ │ │ │ │ ├── UnselectRequest.java │ │ │ │ │ ├── UnsubscribeRequest.java │ │ │ │ │ └── XListRequest.java │ │ │ │ └── response │ │ │ │ │ ├── ACLResponse.java │ │ │ │ │ ├── AbstractListingResponse.java │ │ │ │ │ ├── AbstractStatusResponseFactory.java │ │ │ │ │ ├── AuthenticateResponse.java │ │ │ │ │ ├── CapabilityResponse.java │ │ │ │ │ ├── ContinuationResponse.java │ │ │ │ │ ├── ESearchResponse.java │ │ │ │ │ ├── EnableResponse.java │ │ │ │ │ ├── ExistsResponse.java │ │ │ │ │ ├── ExpungeResponse.java │ │ │ │ │ ├── FetchResponse.java │ │ │ │ │ ├── FlagsResponse.java │ │ │ │ │ ├── IdResponse.java │ │ │ │ │ ├── ImmutableStatusResponse.java │ │ │ │ │ ├── LSubResponse.java │ │ │ │ │ ├── ListResponse.java │ │ │ │ │ ├── ListRightsResponse.java │ │ │ │ │ ├── MailboxStatusResponse.java │ │ │ │ │ ├── MetadataResponse.java │ │ │ │ │ ├── MyRightsResponse.java │ │ │ │ │ ├── NamespaceResponse.java │ │ │ │ │ ├── QuotaResponse.java │ │ │ │ │ ├── QuotaRootResponse.java │ │ │ │ │ ├── RecentResponse.java │ │ │ │ │ ├── SearchResponse.java │ │ │ │ │ ├── UnpooledStatusResponseFactory.java │ │ │ │ │ ├── VanishedResponse.java │ │ │ │ │ └── XListResponse.java │ │ │ ├── processor │ │ │ │ ├── AbstractAuthProcessor.java │ │ │ │ ├── AbstractMailboxProcessor.java │ │ │ │ ├── AbstractMessageRangeProcessor.java │ │ │ │ ├── AbstractSelectionProcessor.java │ │ │ │ ├── AbstractSubscriptionProcessor.java │ │ │ │ ├── AppendProcessor.java │ │ │ │ ├── AuthenticateProcessor.java │ │ │ │ ├── CapabilityImplementingProcessor.java │ │ │ │ ├── CapabilityProcessor.java │ │ │ │ ├── CheckProcessor.java │ │ │ │ ├── CloseProcessor.java │ │ │ │ ├── CompressProcessor.java │ │ │ │ ├── CopyProcessor.java │ │ │ │ ├── CreateProcessor.java │ │ │ │ ├── DefaultProcessor.java │ │ │ │ ├── DeleteACLProcessor.java │ │ │ │ ├── DeleteProcessor.java │ │ │ │ ├── EnableProcessor.java │ │ │ │ ├── ExamineProcessor.java │ │ │ │ ├── ExpungeProcessor.java │ │ │ │ ├── GetACLProcessor.java │ │ │ │ ├── GetMetadataProcessor.java │ │ │ │ ├── GetQuotaProcessor.java │ │ │ │ ├── GetQuotaRootProcessor.java │ │ │ │ ├── IdProcessor.java │ │ │ │ ├── IdleProcessor.java │ │ │ │ ├── LSubProcessor.java │ │ │ │ ├── ListProcessor.java │ │ │ │ ├── ListRightsProcessor.java │ │ │ │ ├── LoginProcessor.java │ │ │ │ ├── LogoutProcessor.java │ │ │ │ ├── MoveProcessor.java │ │ │ │ ├── MyRightsProcessor.java │ │ │ │ ├── NamespaceProcessor.java │ │ │ │ ├── NamespaceSupplier.java │ │ │ │ ├── NoopProcessor.java │ │ │ │ ├── PermitEnableCapabilityProcessor.java │ │ │ │ ├── RenameProcessor.java │ │ │ │ ├── ReplaceProcessor.java │ │ │ │ ├── SearchProcessor.java │ │ │ │ ├── SelectProcessor.java │ │ │ │ ├── SetACLProcessor.java │ │ │ │ ├── SetMetadataProcessor.java │ │ │ │ ├── SetQuotaProcessor.java │ │ │ │ ├── StartTLSProcessor.java │ │ │ │ ├── StatusProcessor.java │ │ │ │ ├── StoreProcessor.java │ │ │ │ ├── SubscribeProcessor.java │ │ │ │ ├── SystemMessageProcessor.java │ │ │ │ ├── UnselectProcessor.java │ │ │ │ ├── UnsubscribeProcessor.java │ │ │ │ ├── XListProcessor.java │ │ │ │ ├── base │ │ │ │ │ ├── AbstractProcessor.java │ │ │ │ │ ├── ImapResponseMessageProcessor.java │ │ │ │ │ ├── SelectedMailboxImpl.java │ │ │ │ │ ├── UidMsnConverter.java │ │ │ │ │ └── UnknownRequestProcessor.java │ │ │ │ ├── fetch │ │ │ │ │ ├── AddressImpl.java │ │ │ │ │ ├── ContentBodyElement.java │ │ │ │ │ ├── EmptyContent.java │ │ │ │ │ ├── EnvelopeBuilder.java │ │ │ │ │ ├── EnvelopeImpl.java │ │ │ │ │ ├── FetchDataConverter.java │ │ │ │ │ ├── FetchProcessor.java │ │ │ │ │ ├── FetchResponseBuilder.java │ │ │ │ │ ├── HeaderBodyElement.java │ │ │ │ │ ├── HeadersBodyElement.java │ │ │ │ │ ├── MessageResultUtils.java │ │ │ │ │ ├── MimeBodyElement.java │ │ │ │ │ ├── MimeDescriptorStructure.java │ │ │ │ │ └── PartialFetchBodyElement.java │ │ │ │ └── main │ │ │ │ │ └── DefaultImapProcessorFactory.java │ │ │ └── utils │ │ │ │ ├── EolInputStream.java │ │ │ │ └── FastByteArrayOutputStream.java │ │ │ └── mailbox │ │ │ ├── MessageSequenceNumber.java │ │ │ └── NullableMessageSequenceNumber.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ ├── imap │ │ ├── ImapFixture.java │ │ ├── api │ │ │ ├── IdRangeTest.java │ │ │ ├── ImapCommandTest.java │ │ │ ├── ImapConfigurationTest.java │ │ │ ├── ImapSessionTest.java │ │ │ ├── TagTest.java │ │ │ └── message │ │ │ │ ├── BodyFetchElementTest.java │ │ │ │ ├── CapabilityTest.java │ │ │ │ ├── UidRangeTest.java │ │ │ │ ├── request │ │ │ │ └── SearchKeyTest.java │ │ │ │ └── response │ │ │ │ ├── AbstractStatusResponseFactoryTest.java │ │ │ │ └── StatusResponseTest.java │ │ ├── decode │ │ │ ├── DecoderUtilsLocaleDateTest.java │ │ │ ├── DecoderUtilsTest.java │ │ │ ├── FetchPartPathDecoderTest.java │ │ │ ├── ImapRequestLineReaderTest.java │ │ │ ├── StringMatcherCharacterValidatorTest.java │ │ │ ├── main │ │ │ │ └── IdRangeParseTest.java │ │ │ └── parser │ │ │ │ ├── AppendCommandParserTest.java │ │ │ │ ├── CopyParserTest.java │ │ │ │ ├── CreateCommandParserTest.java │ │ │ │ ├── FetchCommandParserPartialFetchTest.java │ │ │ │ ├── GetMetadataCommandParserTest.java │ │ │ │ ├── GetQuotaParserTest.java │ │ │ │ ├── GetQuotaRootParserTest.java │ │ │ │ ├── MoveParserTest.java │ │ │ │ ├── NioUtils.java │ │ │ │ ├── SearchCommandParserAndParenthesesTest.java │ │ │ │ ├── SearchCommandParserCharsetTest.java │ │ │ │ ├── SearchCommandParserNotTest.java │ │ │ │ ├── SearchCommandParserOrTest.java │ │ │ │ ├── SearchCommandParserQuotedCharsetTest.java │ │ │ │ ├── SearchCommandParserSearchKeySequenceSetTest.java │ │ │ │ ├── SearchCommandParserSearchKeyTest.java │ │ │ │ ├── SearchCommandParserTopLevelAndTest.java │ │ │ │ ├── SelectCommandParserTest.java │ │ │ │ ├── SelectParserTest.java │ │ │ │ ├── SetAnnotationCommandParserTest.java │ │ │ │ ├── SetQuotaCommandParserTest.java │ │ │ │ ├── StatusCommandParserTest.java │ │ │ │ └── StoreCommandParserTest.java │ │ ├── encode │ │ │ ├── EncoderUtilsDateTimeLocaleTest.java │ │ │ ├── EncoderUtilsTest.java │ │ │ ├── FetchResponseEncoderEnvelopeTest.java │ │ │ ├── FetchResponseEncoderNoExtensionsTest.java │ │ │ ├── FetchResponseEncoderTest.java │ │ │ ├── ImapResponseComposerImplTest.java │ │ │ ├── LSubResponseEncoderTest.java │ │ │ ├── ListResponseEncoderTest.java │ │ │ ├── ListingEncodingUtilsTest.java │ │ │ ├── MailboxStatusResponseEncoderTest.java │ │ │ ├── MetadataResponseEncoderTest.java │ │ │ ├── NamespaceResponseEncoderTest.java │ │ │ ├── QuotaResponseEncoderTest.java │ │ │ ├── QuotaRootResponseEncoderTest.java │ │ │ ├── SearchResponseEncoderTest.java │ │ │ ├── XListResponseEncoderTest.java │ │ │ ├── base │ │ │ │ └── ByteImapResponseWriter.java │ │ │ └── main │ │ │ │ └── DefaultImapEncoderFactoryTest.java │ │ ├── main │ │ │ ├── DefaultImapDecoderFactoryTest.java │ │ │ ├── DefaultPathConverterTest.java │ │ │ ├── ImapRequestHandlerAdandonConnectionTest.java │ │ │ └── PathConverterBasicContract.java │ │ ├── message │ │ │ ├── request │ │ │ │ └── AbstractMailboxSelectionRequestTest.java │ │ │ └── response │ │ │ │ ├── ACLResponseTest.java │ │ │ │ ├── FlagsResponseTest.java │ │ │ │ ├── ListRightsResponseTest.java │ │ │ │ ├── MyRightsResponseTest.java │ │ │ │ ├── NamespaceResponseTest.java │ │ │ │ ├── QuotaResponseTest.java │ │ │ │ ├── QuotaRootResponseTest.java │ │ │ │ ├── SearchResponseTest.java │ │ │ │ └── UnpooledStatusResponseFactoryTest.java │ │ └── processor │ │ │ ├── AbstractSelectionProcessorTest.java │ │ │ ├── CapabilityProcessorTest.java │ │ │ ├── CopyProcessorTest.java │ │ │ ├── DeleteACLProcessorTest.java │ │ │ ├── GetACLProcessorTest.java │ │ │ ├── GetAnnotationProcessorTest.java │ │ │ ├── GetQuotaProcessorTest.java │ │ │ ├── GetQuotaRootProcessorTest.java │ │ │ ├── LSubProcessorTest.java │ │ │ ├── ListRightsProcessorTest.java │ │ │ ├── MoveProcessorTest.java │ │ │ ├── SearchProcessorTest.java │ │ │ ├── SelectProcessorTest.java │ │ │ ├── SetACLProcessorTest.java │ │ │ ├── SetMetadataProcessorTest.java │ │ │ ├── SetQuotaProcessorTest.java │ │ │ ├── StatusResponseTypeMatcher.java │ │ │ ├── base │ │ │ ├── MailboxEventAnalyserTest.java │ │ │ ├── SelectedMailboxImplTest.java │ │ │ └── UidMsnConverterTest.java │ │ │ └── fetch │ │ │ ├── FetchDataConverterTest.java │ │ │ ├── MailboxMessageResultUtilsTest.java │ │ │ └── PartialFetchBodyElementTest.java │ │ └── mailbox │ │ ├── MessageSequenceNumberTest.java │ │ └── NullableMessageSequenceNumberTest.java ├── lmtp │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── protocols │ │ │ │ └── lmtp │ │ │ │ ├── LMTPConfiguration.java │ │ │ │ ├── LMTPMultiResponse.java │ │ │ │ ├── core │ │ │ │ ├── DataLineMessageHookHandler.java │ │ │ │ ├── LhloCmdHandler.java │ │ │ │ ├── ReceivedDataLineFilter.java │ │ │ │ └── WelcomeMessageHandler.java │ │ │ │ └── hook │ │ │ │ └── DeliverToRecipientHook.java │ │ └── reporting-site │ │ │ └── site.xml │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── protocols │ │ └── lmtp │ │ ├── AbstractLMTPSServerTest.java │ │ ├── AbstractLMTPServerTest.java │ │ ├── LMTPClient.java │ │ ├── LMTPConfigurationImpl.java │ │ ├── LMTPProtocolHandlerChain.java │ │ └── netty │ │ ├── NettyLMTPSServerTest.java │ │ └── NettyLMTPServerTest.java ├── managesieve │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── managesieve │ │ │ ├── api │ │ │ ├── ArgumentException.java │ │ │ ├── AuthenticationException.java │ │ │ ├── AuthenticationProcessor.java │ │ │ ├── AuthenticationRequiredException.java │ │ │ ├── CapabilityAdvertiser.java │ │ │ ├── ManageSieveException.java │ │ │ ├── Session.java │ │ │ ├── SessionTerminatedException.java │ │ │ ├── SieveParser.java │ │ │ ├── SyntaxException.java │ │ │ ├── UnknownSaslMechanism.java │ │ │ └── commands │ │ │ │ ├── Authenticate.java │ │ │ │ ├── Capability.java │ │ │ │ ├── CheckScript.java │ │ │ │ ├── CoreCommands.java │ │ │ │ ├── DeleteScript.java │ │ │ │ ├── GetScript.java │ │ │ │ ├── HaveSpace.java │ │ │ │ ├── LineCommands.java │ │ │ │ ├── ListScripts.java │ │ │ │ ├── Logout.java │ │ │ │ ├── Noop.java │ │ │ │ ├── PutScript.java │ │ │ │ ├── RenameScript.java │ │ │ │ ├── SetActive.java │ │ │ │ ├── StartTLS.java │ │ │ │ └── Unauthenticate.java │ │ │ ├── core │ │ │ ├── CoreProcessor.java │ │ │ └── PlainAuthenticationProcessor.java │ │ │ ├── jsieve │ │ │ └── Parser.java │ │ │ ├── transcode │ │ │ ├── ArgumentParser.java │ │ │ ├── ManageSieveProcessor.java │ │ │ └── NotEnoughDataException.java │ │ │ └── util │ │ │ ├── ParserUtils.java │ │ │ └── SettableSession.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── managesieve │ │ └── util │ │ └── ParserUtilsTest.java ├── netty │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── protocols │ │ │ └── netty │ │ │ ├── AbstractAsyncServer.java │ │ │ ├── AbstractChannelPipelineFactory.java │ │ │ ├── AbstractSSLAwareChannelPipelineFactory.java │ │ │ ├── AllButStartTlsLineBasedChannelHandler.java │ │ │ ├── AllButStartTlsLineChannelHandlerFactory.java │ │ │ ├── BasicChannelInboundHandler.java │ │ │ ├── ChannelHandlerFactory.java │ │ │ ├── CommandInjectionDetectedException.java │ │ │ ├── ConnectionLimitUpstreamHandler.java │ │ │ ├── ConnectionPerIpLimitUpstreamHandler.java │ │ │ ├── Encryption.java │ │ │ ├── HandlerConstants.java │ │ │ ├── LineDelimiterBasedChannelHandlerFactory.java │ │ │ ├── LineHandlerAware.java │ │ │ ├── LineHandlerUpstreamHandler.java │ │ │ ├── NettyProtocolTransport.java │ │ │ ├── NettyServer.java │ │ │ ├── ProtocolMDCContextFactory.java │ │ │ └── TimeoutHandler.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── protocols │ │ └── netty │ │ └── NettyServerTest.java ├── pom.xml ├── pop3 │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── protocols │ │ │ └── pop3 │ │ │ ├── POP3Configuration.java │ │ │ ├── POP3Protocol.java │ │ │ ├── POP3Response.java │ │ │ ├── POP3Session.java │ │ │ ├── POP3SessionImpl.java │ │ │ ├── POP3StartTlsResponse.java │ │ │ ├── POP3StreamResponse.java │ │ │ ├── core │ │ │ ├── AbstractApopCmdHandler.java │ │ │ ├── AbstractPOP3CommandHandler.java │ │ │ ├── AbstractPassCmdHandler.java │ │ │ ├── CRLFTerminatedInputStream.java │ │ │ ├── CapaCapability.java │ │ │ ├── CapaCmdHandler.java │ │ │ ├── DeleCmdHandler.java │ │ │ ├── ExtraDotInputStream.java │ │ │ ├── ListCmdHandler.java │ │ │ ├── MDCConstants.java │ │ │ ├── NoopCmdHandler.java │ │ │ ├── POP3MessageCommandArguments.java │ │ │ ├── POP3MessageCommandDelegate.java │ │ │ ├── QuitCmdHandler.java │ │ │ ├── RetrCmdHandler.java │ │ │ ├── RsetCmdHandler.java │ │ │ ├── StatCmdHandler.java │ │ │ ├── StlsCmdHandler.java │ │ │ ├── TopCmdHandler.java │ │ │ ├── UidlCmdHandler.java │ │ │ ├── UnknownCmdHandler.java │ │ │ ├── UserCmdHandler.java │ │ │ └── WelcomeMessageHandler.java │ │ │ └── mailbox │ │ │ ├── ImapMailbox.java │ │ │ ├── ImapMessageMetaData.java │ │ │ ├── Mailbox.java │ │ │ └── MessageMetaData.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── protocols │ │ └── pop3 │ │ ├── AbstractPOP3SServerTest.java │ │ ├── AbstractPOP3ServerTest.java │ │ ├── AbstractStartTlsPOP3ServerTest.java │ │ ├── POP3ProtocolHandlerChain.java │ │ ├── POP3StartTlsResponseTest.java │ │ ├── core │ │ ├── AbstractInputStreamTest.java │ │ ├── CRLFTerminatedInputStreamTest.java │ │ ├── DeleCmdHandlerTest.java │ │ ├── ExtraDotInputStreamTest.java │ │ ├── ListCmdHandlerTest.java │ │ ├── POP3MessageCommandArgumentsTest.java │ │ ├── POP3MessageCommandDelegateTest.java │ │ ├── RetrCmdHandlerTest.java │ │ ├── TopCmdHandlerTest.java │ │ └── UidlCmdHandlerTest.java │ │ ├── netty │ │ ├── NettyPOP3SServerTest.java │ │ ├── NettyPOP3ServerTest.java │ │ └── NettyStartTlsPOP3ServerTest.java │ │ └── utils │ │ ├── MockMailbox.java │ │ └── TestPassCmdHandler.java ├── smtp │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── protocols │ │ │ └── smtp │ │ │ ├── MailAddress.java │ │ │ ├── MailAddressException.java │ │ │ ├── MailEnvelope.java │ │ │ ├── MailEnvelopeImpl.java │ │ │ ├── SMTPConfiguration.java │ │ │ ├── SMTPConfigurationImpl.java │ │ │ ├── SMTPProtocol.java │ │ │ ├── SMTPProtocolHandlerChain.java │ │ │ ├── SMTPResponse.java │ │ │ ├── SMTPRetCode.java │ │ │ ├── SMTPServerMBean.java │ │ │ ├── SMTPSession.java │ │ │ ├── SMTPSessionImpl.java │ │ │ ├── SMTPStartTlsResponse.java │ │ │ ├── core │ │ │ ├── AbstractAuthRequiredToRelayRcptHook.java │ │ │ ├── AbstractHookableCmdHandler.java │ │ │ ├── AbstractSenderAuthIdentifyVerificationHook.java │ │ │ ├── AcceptRecipientIfRelayingIsAllowed.java │ │ │ ├── DataCmdHandler.java │ │ │ ├── DataLineFilter.java │ │ │ ├── DataLineMessageHookHandler.java │ │ │ ├── ExpnCmdHandler.java │ │ │ ├── HeloCmdHandler.java │ │ │ ├── HelpCmdHandler.java │ │ │ ├── MailCmdHandler.java │ │ │ ├── NoopCmdHandler.java │ │ │ ├── PostmasterAbuseRcptHook.java │ │ │ ├── QuitCmdHandler.java │ │ │ ├── RcptCmdHandler.java │ │ │ ├── ReceivedDataLineFilter.java │ │ │ ├── ReceivedHeaderGenerator.java │ │ │ ├── RsetCmdHandler.java │ │ │ ├── SMTPMDCContextFactory.java │ │ │ ├── SeparatingDataLineFilter.java │ │ │ ├── UnknownCmdHandler.java │ │ │ ├── VrfyCmdHandler.java │ │ │ ├── WelcomeMessageHandler.java │ │ │ ├── esmtp │ │ │ │ ├── AuthCmdHandler.java │ │ │ │ ├── EhloCmdHandler.java │ │ │ │ ├── EhloExtension.java │ │ │ │ ├── MailSizeEsmtpExtension.java │ │ │ │ └── StartTlsCmdHandler.java │ │ │ ├── fastfail │ │ │ │ ├── AbstractGreylistHandler.java │ │ │ │ ├── AbstractValidRcptHandler.java │ │ │ │ ├── DNSRBLHandler.java │ │ │ │ ├── MaxRcptHandler.java │ │ │ │ ├── MaxUnknownCmdHandler.java │ │ │ │ ├── ResolvableEhloHeloHandler.java │ │ │ │ ├── ReverseEqualsEhloHeloHandler.java │ │ │ │ ├── SpamTrapHandler.java │ │ │ │ ├── SupressDuplicateRcptHandler.java │ │ │ │ └── ValidSenderDomainHandler.java │ │ │ └── log │ │ │ │ └── HookResultLogger.java │ │ │ ├── dsn │ │ │ └── DSNStatus.java │ │ │ └── hook │ │ │ ├── AuthHook.java │ │ │ ├── HeloHook.java │ │ │ ├── Hook.java │ │ │ ├── HookResult.java │ │ │ ├── HookResultHook.java │ │ │ ├── HookReturnCode.java │ │ │ ├── MailHook.java │ │ │ ├── MailParametersHook.java │ │ │ ├── MessageHook.java │ │ │ ├── QuitHook.java │ │ │ ├── RcptHook.java │ │ │ ├── SimpleHook.java │ │ │ └── UnknownHook.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── protocols │ │ │ └── smtp │ │ │ ├── AbstractSMTPSServerTest.java │ │ │ ├── AbstractSMTPServerTest.java │ │ │ ├── SMTPStartTlsResponseTest.java │ │ │ ├── core │ │ │ └── fastfail │ │ │ │ ├── DNSRBLHandlerTest.java │ │ │ │ ├── MaxRcptHandlerTest.java │ │ │ │ ├── MaxUnknownCmdHandlerTest.java │ │ │ │ ├── ResolvableEhloHeloHandlerTest.java │ │ │ │ ├── SpamTrapHandlerTest.java │ │ │ │ └── ValidSenderDomainHandlerTest.java │ │ │ ├── hook │ │ │ └── HookResultTest.java │ │ │ ├── netty │ │ │ ├── NettyProxySMTPServerTest.java │ │ │ ├── NettySMTPSServerTest.java │ │ │ ├── NettySMTPServerTest.java │ │ │ └── NettyStartTlsSMTPServerTest.java │ │ │ └── utils │ │ │ ├── BaseFakeSMTPSession.java │ │ │ └── TestMessageHook.java │ │ └── resources │ │ └── a50.eml └── src │ ├── reporting-site │ └── site.xml │ └── site │ └── site.xml ├── server ├── .gitignore ├── Overview.md ├── README.crypto ├── apps │ ├── cassandra-app │ │ ├── README.adoc │ │ ├── docker-compose.yml │ │ ├── docker-configuration │ │ │ ├── jvm.properties │ │ │ ├── logback-cli.xml │ │ │ └── webadmin.properties │ │ ├── pom.xml │ │ ├── sample-configuration │ │ │ ├── activemq.properties │ │ │ ├── batchsizes.properties │ │ │ ├── blob.properties │ │ │ ├── cassandra-driver.conf │ │ │ ├── cassandra.properties │ │ │ ├── deletedMessageVault.properties │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── extensions.properties │ │ │ ├── healthcheck.properties │ │ │ ├── imapserver.xml │ │ │ ├── jmap.properties │ │ │ ├── jmx.properties │ │ │ ├── jvm.properties │ │ │ ├── listeners.xml │ │ │ ├── lmtpserver.xml │ │ │ ├── logback.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── opensearch.properties │ │ │ ├── pop3server.xml │ │ │ ├── recipientrewritetable.xml │ │ │ ├── smtpserver.xml │ │ │ ├── tika.properties │ │ │ ├── usersrepository.xml │ │ │ └── webadmin.properties │ │ └── src │ │ │ ├── assemble │ │ │ ├── app.xml │ │ │ ├── extensions-jars.txt │ │ │ └── license-for-binary.txt │ │ │ ├── main │ │ │ ├── extensions-jars │ │ │ │ └── README.md │ │ │ ├── glowroot │ │ │ │ ├── admin.json │ │ │ │ └── plugins │ │ │ │ │ ├── blobstore.json │ │ │ │ │ ├── imap.json │ │ │ │ │ ├── jmap.json │ │ │ │ │ ├── mailboxListener.json │ │ │ │ │ ├── pop3.json │ │ │ │ │ ├── smtp.json │ │ │ │ │ ├── spooler.json │ │ │ │ │ └── task.json │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── BlobStoreConfiguration.java │ │ │ │ │ ├── BlobStoreModulesChooser.java │ │ │ │ │ ├── CassandraBlobStoreModule.java │ │ │ │ │ ├── CassandraJamesServerConfiguration.java │ │ │ │ │ └── CassandraJamesServerMain.java │ │ │ └── scripts │ │ │ │ └── james-cli │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── AuthenticatedCassandraJamesServerTest.java │ │ │ │ ├── CacheSessionTest.java │ │ │ │ ├── CassandraDuplicatingJamesServerTest.java │ │ │ │ ├── CassandraExtension.java │ │ │ │ ├── CassandraJamesServerTest.java │ │ │ │ ├── CassandraJmapTestRule.java │ │ │ │ ├── CassandraLdapJamesServerTest.java │ │ │ │ ├── CassandraLdapJmapJamesServerTest.java │ │ │ │ ├── CassandraLegacyQuotaJamesServerTest.java │ │ │ │ ├── CassandraMailRepositoryIntegrationTest.java │ │ │ │ ├── CassandraNodeConfTest.java │ │ │ │ ├── CassandraWithOpenSearchDisabled.java │ │ │ │ ├── CassandraWithTikaTest.java │ │ │ │ ├── DefaultCassandraJamesServerTest.java │ │ │ │ ├── DockerCassandraRule.java │ │ │ │ ├── JamesCapabilitiesServerTest.java │ │ │ │ ├── JamesServerConcreteContract.java │ │ │ │ ├── JamesServerWithRetryConnectionTest.java │ │ │ │ ├── JamesWithNonCompatibleElasticSearchServerTest.java │ │ │ │ ├── KeyspaceCreationTest.java │ │ │ │ ├── MailsShouldBeWellReceivedConcreteContract.java │ │ │ │ ├── TestingDistributedJamesServerBuilder.java │ │ │ │ ├── WithCassandraBlobStoreImmutableTest.java │ │ │ │ ├── WithCassandraBlobStoreTest.java │ │ │ │ └── modules │ │ │ │ └── mailbox │ │ │ │ └── CassandraSchemaVersionStartUpCheckTest.java │ │ │ └── resources │ │ │ ├── batchsizes.properties │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── eml │ │ │ └── htmlMail.eml │ │ │ ├── fakemailrepositorystore.xml │ │ │ ├── imapserver.xml │ │ │ ├── keystore │ │ │ ├── ldif-files │ │ │ └── populate.ldif │ │ │ ├── listeners.xml │ │ │ ├── lmtpserver.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ └── smtpserver.xml │ ├── cli-integration-tests │ │ ├── pom.xml │ │ └── src │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── cli │ │ │ │ ├── DataCommandsIntegrationTest.java │ │ │ │ ├── DropListCommandsIntegrationTest.java │ │ │ │ ├── JmxSecurityServerIntegrationTest.java │ │ │ │ ├── MailboxCommandsIntegrationTest.java │ │ │ │ ├── QuotaCommandsIntegrationTest.java │ │ │ │ ├── ReindexCommandIntegrationTest.java │ │ │ │ ├── SieveQuotaCommandsIntegrationTest.java │ │ │ │ └── util │ │ │ │ ├── OutputCapture.java │ │ │ │ └── OutputCaptureTest.java │ │ │ └── resources │ │ │ ├── conf │ │ │ └── jmx.properties │ │ │ ├── dnsservice.xml │ │ │ ├── imapserver.xml │ │ │ ├── jwt_publickey │ │ │ ├── lmtpserver.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── smtpserver.xml │ │ │ └── usersrepository.xml │ ├── cli │ │ ├── README.adoc │ │ ├── pom.xml │ │ └── src │ │ │ ├── assemble │ │ │ ├── app.xml │ │ │ └── license-for-binary.txt │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── cli │ │ │ │ ├── ServerCmd.java │ │ │ │ ├── exceptions │ │ │ │ ├── InvalidArgumentNumberException.java │ │ │ │ ├── JamesCliException.java │ │ │ │ ├── MissingCommandException.java │ │ │ │ └── UnrecognizedCommandException.java │ │ │ │ ├── probe │ │ │ │ └── impl │ │ │ │ │ ├── JmxConnection.java │ │ │ │ │ ├── JmxDataProbe.java │ │ │ │ │ ├── JmxDropListProbe.java │ │ │ │ │ ├── JmxMailboxProbe.java │ │ │ │ │ ├── JmxProbe.java │ │ │ │ │ ├── JmxQuotaProbe.java │ │ │ │ │ └── JmxSieveProbe.java │ │ │ │ └── type │ │ │ │ └── CmdType.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── cli │ │ │ ├── ServerCmdTest.java │ │ │ └── type │ │ │ └── CmdTypeTest.java │ ├── demo │ │ ├── Dockerfile │ │ ├── imapserver.xml │ │ ├── initialdata.sh │ │ ├── pop3server.xml │ │ ├── smtpserver.xml │ │ └── startup.sh │ ├── distributed-app │ │ ├── README.adoc │ │ ├── docker-compose-with-pulsar.yml │ │ ├── docker-compose.yml │ │ ├── docker-configuration │ │ │ ├── jvm.properties │ │ │ ├── logback-cli.xml │ │ │ └── webadmin.properties │ │ ├── docs │ │ │ ├── Dockerfile │ │ │ ├── README.md │ │ │ ├── antora-playbook-local.yml │ │ │ ├── antora.yml │ │ │ ├── modules │ │ │ │ └── ROOT │ │ │ │ │ ├── nav.adoc │ │ │ │ │ └── pages │ │ │ │ │ └── index.adoc │ │ │ └── ui-overrides │ │ │ │ ├── img │ │ │ │ └── james.svg │ │ │ │ └── partials │ │ │ │ └── header-content.hbs │ │ ├── helm-chart │ │ │ ├── README.md │ │ │ └── james │ │ │ │ ├── .helmignore │ │ │ │ ├── Chart.yaml │ │ │ │ ├── configs │ │ │ │ ├── batchsizes.properties │ │ │ │ ├── blob.properties │ │ │ │ ├── cassandra.properties │ │ │ │ ├── dnsservice.xml │ │ │ │ ├── domainlist.xml │ │ │ │ ├── imapserver.xml │ │ │ │ ├── jmap.properties │ │ │ │ ├── jmx.properties │ │ │ │ ├── listeners.xml │ │ │ │ ├── logback.xml │ │ │ │ ├── mailrepositorystore.xml │ │ │ │ ├── opensearch.properties │ │ │ │ ├── rabbitmq.properties │ │ │ │ ├── recipientrewritetable.xml │ │ │ │ ├── smtpserver.xml │ │ │ │ ├── usersrepository.xml │ │ │ │ └── webadmin.properties │ │ │ │ ├── secrets.sample.yaml │ │ │ │ ├── templates │ │ │ │ ├── _docker-secrets.tpl │ │ │ │ ├── _helpers.tpl │ │ │ │ ├── _urls.tpl │ │ │ │ ├── configmaps.yaml │ │ │ │ ├── deployment.yaml │ │ │ │ ├── james-admin-ingress.yaml │ │ │ │ ├── jmap-ingress.yaml │ │ │ │ ├── secrets.yaml │ │ │ │ ├── service.yaml │ │ │ │ └── servicemonitor.yaml │ │ │ │ ├── values.schema.json │ │ │ │ └── values.yaml │ │ ├── pom.xml │ │ ├── sample-configuration │ │ │ ├── batchsizes.properties │ │ │ ├── blob.properties │ │ │ ├── cassandra-driver.conf │ │ │ ├── cassandra.properties │ │ │ ├── deletedMessageVault.properties │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── droplists.properties │ │ │ ├── extensions.properties │ │ │ ├── healthcheck.properties │ │ │ ├── imapserver.xml │ │ │ ├── jmap.properties │ │ │ ├── jmx.properties │ │ │ ├── jvm.properties │ │ │ ├── listeners.xml │ │ │ ├── lmtpserver.xml │ │ │ ├── logback.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── opensearch.properties │ │ │ ├── pop3server.xml │ │ │ ├── pulsar.properties │ │ │ ├── queue-pulsar.properties │ │ │ ├── queue.properties │ │ │ ├── rabbitmq.properties │ │ │ ├── recipientrewritetable.xml │ │ │ ├── smtpserver.xml │ │ │ ├── tika.properties │ │ │ ├── usersrepository.xml │ │ │ └── webadmin.properties │ │ └── src │ │ │ ├── assemble │ │ │ ├── app.xml │ │ │ ├── extensions-jars.txt │ │ │ └── license-for-binary.txt │ │ │ ├── main │ │ │ ├── extensions-jars │ │ │ │ └── README.md │ │ │ ├── glowroot │ │ │ │ ├── admin.json │ │ │ │ └── plugins │ │ │ │ │ ├── blobstore.json │ │ │ │ │ ├── imap.json │ │ │ │ │ ├── jmap.json │ │ │ │ │ ├── mailboxListener.json │ │ │ │ │ ├── pop3.json │ │ │ │ │ ├── smtp.json │ │ │ │ │ ├── spooler.json │ │ │ │ │ └── task.json │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── CassandraRabbitMQJamesConfiguration.java │ │ │ │ │ ├── CassandraRabbitMQJamesServerMain.java │ │ │ │ │ └── MailQueueChoice.java │ │ │ └── scripts │ │ │ │ └── james-cli │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── CassandraCacheQueryTest.java │ │ │ │ ├── CassandraMessageOperationsContract.java │ │ │ │ ├── CassandraPulsarJamesServerTest.java │ │ │ │ ├── CassandraRabbitMQAwsS3JmapTestRule.java │ │ │ │ ├── CassandraRabbitMQJamesConfigurationTest.java │ │ │ │ ├── CassandraRabbitMQJamesServerFixture.java │ │ │ │ ├── CassandraRabbitMQLdapJmapJamesServerTest.java │ │ │ │ ├── CassandraRabbitMQLegacyQuotaJamesServerTest.java │ │ │ │ ├── DistributedJamesWithTikaTest.java │ │ │ │ ├── NamespaceConfigurationTest.java │ │ │ │ ├── RabbitMQDisabledTasksTest.java │ │ │ │ ├── RabbitMQJamesServerReprocessingTest.java │ │ │ │ ├── RabbitMQJamesServerWithRetryConnectionTest.java │ │ │ │ ├── WithCacheImmutableTest.java │ │ │ │ ├── WithCacheMutableTest.java │ │ │ │ ├── WithCassandraDeduplicationBlobStoreImmutableTest.java │ │ │ │ ├── WithCassandraDeduplicationBlobStoreMutableTest.java │ │ │ │ ├── WithCassandraPassThroughBlobStoreImmutableTest.java │ │ │ │ ├── WithCassandraPassThroughBlobStoreMutableTest.java │ │ │ │ ├── WithDefaultAwsS3ImmutableTest.java │ │ │ │ ├── WithDefaultAwsS3MutableTest.java │ │ │ │ ├── WithEncryptedBlobStoreImmutableTest.java │ │ │ │ ├── WithEncryptedBlobStoreMutableTest.java │ │ │ │ ├── WithS3SSECTest.java │ │ │ │ ├── WithScanningSearchImmutableTest.java │ │ │ │ ├── WithScanningSearchMutableTest.java │ │ │ │ ├── WithoutMailQueueViewImmutableTest.java │ │ │ │ └── modules │ │ │ │ ├── S3SSECBlobStoreExtension.java │ │ │ │ └── blobstore │ │ │ │ └── BlobStoreConfigurationValidationStartUpCheckTest.java │ │ │ └── resources │ │ │ ├── batchsizes.properties │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── imapserver.xml │ │ │ ├── keystore │ │ │ ├── listeners.xml │ │ │ ├── lmtpserver.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── rabbitmq.properties │ │ │ └── smtpserver.xml │ ├── distributed-pop3-app │ │ ├── README.adoc │ │ ├── docker-compose.yml │ │ ├── docker-configuration │ │ │ ├── jvm.properties │ │ │ ├── logback-cli.xml │ │ │ └── webadmin.properties │ │ ├── pom.xml │ │ ├── sample-configuration │ │ │ ├── batchsizes.properties │ │ │ ├── blob.properties │ │ │ ├── cassandra-driver.conf │ │ │ ├── cassandra.properties │ │ │ ├── deletedMessageVault.properties │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── extensions.properties │ │ │ ├── healthcheck.properties │ │ │ ├── jmx.properties │ │ │ ├── jvm.properties │ │ │ ├── listeners.xml │ │ │ ├── lmtpserver.xml │ │ │ ├── logback.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── opensearch.properties │ │ │ ├── pop3server.xml │ │ │ ├── rabbitmq.properties │ │ │ ├── recipientrewritetable.xml │ │ │ ├── smtpserver.xml │ │ │ ├── tika.properties │ │ │ ├── usersrepository.xml │ │ │ └── webadmin.properties │ │ └── src │ │ │ ├── main │ │ │ ├── extensions-jars │ │ │ │ └── README.md │ │ │ ├── glowroot │ │ │ │ ├── admin.json │ │ │ │ └── plugins │ │ │ │ │ ├── blobstore.json │ │ │ │ │ ├── mailboxListener.json │ │ │ │ │ ├── pop3.json │ │ │ │ │ ├── smtp.json │ │ │ │ │ ├── spooler.json │ │ │ │ │ └── task.json │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── DistributedPOP3JamesConfiguration.java │ │ │ │ │ ├── DistributedPOP3JamesServerMain.java │ │ │ │ │ ├── mailbox │ │ │ │ │ ├── NoACLMapper.java │ │ │ │ │ ├── RandomModSeqProvider.java │ │ │ │ │ └── RandomUidProvider.java │ │ │ │ │ └── modules │ │ │ │ │ ├── DistributedPop3Module.java │ │ │ │ │ ├── Pop3FixInconsistenciesTaskSerializationModule.java │ │ │ │ │ └── Pop3FixInconsistenciesWebAdminModule.java │ │ │ └── scripts │ │ │ │ └── james-cli │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── DistributedPOP3ServerTest.java │ │ │ │ └── Pop3ServerContract.java │ │ │ └── resources │ │ │ ├── attachment.eml │ │ │ ├── batchsizes.properties │ │ │ ├── big.eml │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── keystore │ │ │ ├── listeners.xml │ │ │ ├── lmtpserver.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── pop3server.xml │ │ │ ├── rabbitmq.properties │ │ │ └── smtpserver.xml │ ├── jpa-app │ │ ├── README.adoc │ │ ├── docker-compose.yml │ │ ├── docker-configuration │ │ │ ├── logback-cli.xml │ │ │ └── webadmin.properties │ │ ├── pom.xml │ │ ├── sample-configuration │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── droplists.properties │ │ │ ├── extensions.properties │ │ │ ├── healthcheck.properties │ │ │ ├── imapserver.xml │ │ │ ├── james-database-mariadb.properties │ │ │ ├── james-database.properties │ │ │ ├── jmx.properties │ │ │ ├── jvm.properties │ │ │ ├── jwt_publickey │ │ │ ├── listeners.xml │ │ │ ├── lmtpserver.xml │ │ │ ├── logback.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── recipientrewritetable.xml │ │ │ ├── smtpserver.xml │ │ │ ├── usersrepository.xml │ │ │ └── webadmin.properties │ │ └── src │ │ │ ├── assemble │ │ │ ├── app.xml │ │ │ ├── extensions-jars.txt │ │ │ └── license-for-binary.txt │ │ │ ├── main │ │ │ ├── extensions-jars │ │ │ │ └── README.md │ │ │ ├── glowroot │ │ │ │ ├── admin.json │ │ │ │ └── plugins │ │ │ │ │ ├── imap.json │ │ │ │ │ ├── jmap.json │ │ │ │ │ ├── mailboxListener.json │ │ │ │ │ ├── pop3.json │ │ │ │ │ ├── smtp.json │ │ │ │ │ ├── spooler.json │ │ │ │ │ └── task.json │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── JPAJamesConfiguration.java │ │ │ │ │ └── JPAJamesServerMain.java │ │ │ ├── resources │ │ │ │ ├── META-INF │ │ │ │ │ └── persistence.xml │ │ │ │ └── defaultMailetContainer.xml │ │ │ └── scripts │ │ │ │ └── james-cli │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── JPAJamesServerTest.java │ │ │ │ ├── JPAJamesServerWithAuthenticatedDatabaseSqlValidationTest.java │ │ │ │ ├── JPAJamesServerWithNoDatabaseAuthenticaticationSqlValidationTest.java │ │ │ │ ├── JPAJamesServerWithSqlValidationTest.java │ │ │ │ ├── JPAWithLDAPJamesServerTest.java │ │ │ │ ├── JamesCapabilitiesServerTest.java │ │ │ │ └── JamesServerConcreteContract.java │ │ │ └── resources │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── fakemailrepositorystore.xml │ │ │ ├── imapserver.xml │ │ │ ├── keystore │ │ │ ├── lmtpserver.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ └── smtpserver.xml │ ├── jpa-smtp-app │ │ ├── README.adoc │ │ ├── docker-compose.yml │ │ ├── docker-configuration │ │ │ ├── logback-cli.xml │ │ │ └── webadmin.properties │ │ ├── pom.xml │ │ ├── sample-configuration │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── extensions.properties │ │ │ ├── healthcheck.properties │ │ │ ├── james-database-mariadb.properties │ │ │ ├── james-database.properties │ │ │ ├── jmx.properties │ │ │ ├── jvm.properties │ │ │ ├── logback.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── recipientrewritetable.xml │ │ │ ├── smtpserver.xml │ │ │ ├── usersrepository.xml │ │ │ └── webadmin.properties │ │ └── src │ │ │ ├── assemble │ │ │ ├── app.xml │ │ │ ├── extensions-jars.txt │ │ │ └── license-for-binary.txt │ │ │ ├── main │ │ │ ├── extensions-jars │ │ │ │ └── README.md │ │ │ ├── glowroot │ │ │ │ ├── admin.json │ │ │ │ └── plugins │ │ │ │ │ ├── imap.json │ │ │ │ │ ├── jmap.json │ │ │ │ │ ├── mailboxListener.json │ │ │ │ │ ├── pop3.json │ │ │ │ │ ├── smtp.json │ │ │ │ │ ├── spooler.json │ │ │ │ │ └── task.json │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── JPAJamesConfiguration.java │ │ │ │ │ └── JPAJamesServerMain.java │ │ │ ├── resources │ │ │ │ ├── .gitkeep │ │ │ │ ├── META-INF │ │ │ │ │ └── persistence.xml │ │ │ │ └── defaultMailetContainer.xml │ │ │ └── scripts │ │ │ │ └── james-cli │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── JPAJamesServerTest.java │ │ │ │ └── mariadb │ │ │ │ ├── JPAMariaDBJamesServerTest.java │ │ │ │ └── TestJPAMariaDBConfigurationModule.java │ │ │ └── resources │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── fakemailrepositorystore.xml │ │ │ ├── keystore │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ └── smtpserver.xml │ ├── memory-app │ │ ├── README.md │ │ ├── docker-configuration │ │ │ ├── logback-cli.xml │ │ │ └── webadmin.properties │ │ ├── pom.xml │ │ ├── sample-configuration │ │ │ ├── deletedMessageVault.properties │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── droplists.properties │ │ │ ├── extensions.properties │ │ │ ├── healthcheck.properties │ │ │ ├── imapserver.xml │ │ │ ├── jmap.properties │ │ │ ├── jmx.properties │ │ │ ├── jvm.properties │ │ │ ├── listeners.xml │ │ │ ├── logback.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── recipientrewritetable.xml │ │ │ ├── smtpserver.xml │ │ │ ├── usersrepository.xml │ │ │ └── webadmin.properties │ │ └── src │ │ │ ├── assemble │ │ │ ├── README.adoc │ │ │ ├── app.xml │ │ │ ├── extensions-jars.txt │ │ │ └── license-for-binary.txt │ │ │ ├── main │ │ │ ├── extensions-jars │ │ │ │ └── README.md │ │ │ ├── glowroot │ │ │ │ ├── admin.json │ │ │ │ └── plugins │ │ │ │ │ ├── imap.json │ │ │ │ │ ├── jmap.json │ │ │ │ │ ├── mailboxListener.json │ │ │ │ │ ├── pop3.json │ │ │ │ │ ├── smtp.json │ │ │ │ │ ├── spooler.json │ │ │ │ │ └── task.json │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── MemoryJamesConfiguration.java │ │ │ │ │ └── MemoryJamesServerMain.java │ │ │ └── scripts │ │ │ │ └── james-cli │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── CertificateReloadTest.java │ │ │ │ ├── DKIMHookIntegrationTest.java │ │ │ │ ├── DefaultMemoryJamesServerTest.java │ │ │ │ ├── DisabledGroupExecutionTest.java │ │ │ │ ├── DisabledSpoolerTest.java │ │ │ │ ├── DomainAutodetectionTest.java │ │ │ │ ├── ErrorMailet.java │ │ │ │ ├── GuiceJamesServerStartUpCheckTest.java │ │ │ │ ├── GuiceJamesServerTest.java │ │ │ │ ├── GuiceLifecycleHeathCheckTest.java │ │ │ │ ├── HealthCheckExtensionTest.java │ │ │ │ ├── IMAPIntegrationTest.java │ │ │ │ ├── LmtpIntegrationTest.java │ │ │ │ ├── MemoryJamesServerTest.java │ │ │ │ ├── MemoryJmapJamesServerTest.java │ │ │ │ ├── MemoryJmapTestRule.java │ │ │ │ ├── MemoryLdapLocalPartLoginIntegrationTest.java │ │ │ │ ├── MyHealthCheck.java │ │ │ │ ├── MyRoute.java │ │ │ │ ├── MyStartable.java │ │ │ │ ├── RCPTCaseSensitivityTest.java │ │ │ │ ├── StartSequenceTest.java │ │ │ │ ├── UserStartableExtensionTest.java │ │ │ │ └── WebAdminRoutesExtensionTest.java │ │ │ └── resources │ │ │ ├── badAliasKeystore │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── eml │ │ │ ├── badDkim.eml │ │ │ ├── goodDkim.eml │ │ │ ├── otherDomainDkim.eml │ │ │ └── otherDomainDkimLocalFrom.eml │ │ │ ├── imapserver.xml │ │ │ ├── imapserver2.xml │ │ │ ├── jwt_publickey │ │ │ ├── keystore │ │ │ ├── keystore2 │ │ │ ├── listeners.xml │ │ │ ├── lmtpserver.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── smtpserver.xml │ │ │ ├── smtpserver2.xml │ │ │ └── usersrepository.xml │ ├── migration │ │ └── core-data-jpa-to-pg │ │ │ ├── README.adoc │ │ │ ├── pom.xml │ │ │ ├── sample-configuration │ │ │ ├── blob.properties │ │ │ ├── james-database.properties │ │ │ ├── logback.xml │ │ │ └── postgres.properties │ │ │ └── src │ │ │ ├── assemble │ │ │ ├── README.adoc │ │ │ ├── app.xml │ │ │ ├── extensions-jars.txt │ │ │ └── license-for-binary.txt │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── JpaToPgCoreDataMigration.java │ │ │ │ │ └── MigrationConfiguration.java │ │ │ ├── resources │ │ │ │ └── META-INF │ │ │ │ │ └── persistence.xml │ │ │ └── scripts │ │ │ │ └── james-migration │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ ├── JpaToPgCoreDataMigrationTest.java │ │ │ └── MariaDBExtension.java │ ├── postgres-app │ │ ├── README.adoc │ │ ├── clean_up.sql │ │ ├── docker-compose-distributed.yml │ │ ├── docker-compose.yml │ │ ├── docker-configuration │ │ │ └── webadmin.properties │ │ ├── imap-provision-conf │ │ │ └── provisioning.properties │ │ ├── performance-test.md │ │ ├── pom.xml │ │ ├── provision.sh │ │ ├── sample-configuration-distributed │ │ │ ├── blob.properties │ │ │ ├── opensearch.properties │ │ │ └── rabbitmq.properties │ │ ├── sample-configuration-single │ │ │ └── search.properties │ │ ├── sample-configuration │ │ │ ├── blob.properties │ │ │ ├── deletedMessageVault.properties │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── droplists.properties │ │ │ ├── extensions.properties │ │ │ ├── healthcheck.properties │ │ │ ├── imapserver.xml │ │ │ ├── jmap.properties │ │ │ ├── jmx.properties │ │ │ ├── jvm.properties │ │ │ ├── jwt_publickey │ │ │ ├── listeners.xml │ │ │ ├── lmtpserver.xml │ │ │ ├── logback.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── postgres.properties │ │ │ ├── recipientrewritetable.xml │ │ │ ├── smtpserver.xml │ │ │ ├── usersrepository.xml │ │ │ └── webadmin.properties │ │ └── src │ │ │ ├── assemble │ │ │ ├── app.xml │ │ │ ├── extensions-jars.txt │ │ │ └── license-for-binary.txt │ │ │ ├── main │ │ │ ├── extensions-jars │ │ │ │ └── README.md │ │ │ ├── glowroot │ │ │ │ ├── admin.json │ │ │ │ └── plugins │ │ │ │ │ ├── imap.json │ │ │ │ │ ├── jmap.json │ │ │ │ │ ├── mailboxListener.json │ │ │ │ │ ├── pop3.json │ │ │ │ │ ├── smtp.json │ │ │ │ │ ├── spooler.json │ │ │ │ │ └── task.json │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── PostgresJamesConfiguration.java │ │ │ │ │ ├── PostgresJamesServerMain.java │ │ │ │ │ └── PostgresJmapModule.java │ │ │ ├── resources │ │ │ │ └── defaultMailetContainer.xml │ │ │ └── scripts │ │ │ │ └── james-cli │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── BodyDeduplicationIntegrationTest.java │ │ │ │ ├── DistributedPostgresJamesServerTest.java │ │ │ │ ├── JamesCapabilitiesServerTest.java │ │ │ │ ├── JamesServerConcreteContract.java │ │ │ │ ├── PostgresBlobStoreIntegrationTest.java │ │ │ │ ├── PostgresJamesServerTest.java │ │ │ │ ├── PostgresJmapJamesServerTest.java │ │ │ │ ├── PostgresWithLDAPJamesServerTest.java │ │ │ │ ├── PostgresWithOpenSearchDisabledTest.java │ │ │ │ ├── PostgresWithTikaTest.java │ │ │ │ ├── WithScanningSearchImmutableTest.java │ │ │ │ └── WithScanningSearchMutableTest.java │ │ │ └── resources │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── eml │ │ │ └── htmlMail.eml │ │ │ ├── fakemailrepositorystore.xml │ │ │ ├── imapserver.xml │ │ │ ├── keystore │ │ │ ├── lmtpserver.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── smtpserver.xml │ │ │ ├── usersrepository.xml │ │ │ └── webadmin.properties │ ├── scaling-pulsar-smtp │ │ ├── README.adoc │ │ ├── docker-compose.yml │ │ ├── pom.xml │ │ ├── sample-configuration │ │ │ ├── blob.properties │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── extensions.properties │ │ │ ├── healthcheck.properties │ │ │ ├── jmx.properties │ │ │ ├── jvm.properties │ │ │ ├── keystore │ │ │ ├── logback.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── postgres.properties │ │ │ ├── pulsar.properties │ │ │ ├── recipientrewritetable.xml │ │ │ ├── scriptFile.scala │ │ │ ├── smtpserver.xml │ │ │ ├── usersrepository.xml │ │ │ └── webadmin.properties │ │ └── src │ │ │ ├── main │ │ │ ├── extensions-jars │ │ │ │ └── .gitkeep │ │ │ ├── glowroot │ │ │ │ └── .gitkeep │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── MailStoreRepositoryModule.java │ │ │ │ │ ├── Main.java │ │ │ │ │ └── SMTPRelayConfiguration.java │ │ │ ├── resources │ │ │ │ └── META-INF │ │ │ │ │ └── persistence.xml │ │ │ └── scripts │ │ │ │ └── james-cli │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── AwsS3BlobStoreExtension.java │ │ │ │ ├── PulsarExtension.java │ │ │ │ ├── SMTPJamesServerTest.java │ │ │ │ └── TestingSmtpRelayJamesServerBuilder.java │ │ │ └── resources │ │ │ ├── backmailrepositorystore.xml │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── fakemailrepositorystore.xml │ │ │ ├── keystore │ │ │ ├── listeners.xml │ │ │ ├── mailetcontainer.xml │ │ │ └── smtpserver.xml │ ├── spring-app │ │ ├── .dummy │ │ ├── LICENSE │ │ ├── NOTICE │ │ ├── README.crypto │ │ ├── pom.xml │ │ └── src │ │ │ ├── assemble │ │ │ └── app.xml │ │ │ ├── debian │ │ │ └── control │ │ │ │ ├── control │ │ │ │ └── copyright │ │ │ ├── main │ │ │ ├── app │ │ │ │ ├── bin │ │ │ │ │ ├── setenv.bat │ │ │ │ │ └── setenv.sh │ │ │ │ ├── sieve │ │ │ │ │ └── README.txt │ │ │ │ └── var │ │ │ │ │ ├── README.txt │ │ │ │ │ ├── mail │ │ │ │ │ └── README.txt │ │ │ │ │ └── store │ │ │ │ │ └── README.txt │ │ │ ├── appended-resources │ │ │ │ └── supplemental-models.xml │ │ │ ├── config │ │ │ │ └── war │ │ │ │ │ └── .gitignore │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── app │ │ │ │ │ └── spring │ │ │ │ │ └── JamesAppSpringMain.java │ │ │ ├── licensing │ │ │ │ ├── app │ │ │ │ │ ├── license-for-binary.txt │ │ │ │ │ ├── licensing.xml │ │ │ │ │ └── notice-for-binary.txt │ │ │ │ └── war │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── NOTICE │ │ │ │ │ └── licensing.xml │ │ │ ├── resources │ │ │ │ ├── META-INF │ │ │ │ │ ├── jpa-mappings-template.xml │ │ │ │ │ ├── persistence-template.xml │ │ │ │ │ └── persistence.xml │ │ │ │ ├── dnsservice.xml │ │ │ │ ├── domainlist.xml │ │ │ │ ├── fetchmail.xml │ │ │ │ ├── imapserver.xml │ │ │ │ ├── indexer.xml │ │ │ │ ├── james-database.properties │ │ │ │ ├── jmx.properties │ │ │ │ ├── jmxremote.access │ │ │ │ ├── jmxremote.password │ │ │ │ ├── lib │ │ │ │ │ └── README.txt │ │ │ │ ├── lmtpserver.xml │ │ │ │ ├── log4j2.xml │ │ │ │ ├── mailbox.xml │ │ │ │ ├── mailetcontainer.xml │ │ │ │ ├── mailrepositorystore.xml │ │ │ │ ├── managesieveserver.xml │ │ │ │ ├── pop3server.xml │ │ │ │ ├── quota.xml │ │ │ │ ├── recipientrewritetable.xml │ │ │ │ ├── setenv.sh │ │ │ │ ├── sieverepository.xml │ │ │ │ ├── smtpserver.xml │ │ │ │ ├── sqlResources.xml │ │ │ │ └── usersrepository.xml │ │ │ └── webapp │ │ │ │ └── WEB-INF │ │ │ │ └── web.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── app │ │ │ │ └── spring │ │ │ │ ├── JamesAppSpringMainTest.java │ │ │ │ └── JamesSpringContextTest.java │ │ │ └── resources │ │ │ ├── imapserver.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── quota.xml │ │ │ └── smtpserver.xml │ └── webadmin-cli │ │ ├── README.md │ │ ├── james-cli │ │ ├── pom.xml │ │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── cli │ │ │ ├── WebAdminCli.java │ │ │ ├── WebAdminHTTPClientUtil.java │ │ │ ├── domain │ │ │ ├── AddDomainAliasCommand.java │ │ │ ├── DomainCommand.java │ │ │ ├── DomainCreateCommand.java │ │ │ ├── DomainDeleteCommand.java │ │ │ ├── DomainExistCommand.java │ │ │ ├── DomainListCommand.java │ │ │ ├── ListDomainAliasCommand.java │ │ │ └── RemoveDomainAliasCommand.java │ │ │ ├── mailbox │ │ │ ├── MailboxCommand.java │ │ │ ├── MailboxCreateCommand.java │ │ │ ├── MailboxDeleteAllCommand.java │ │ │ ├── MailboxDeleteCommand.java │ │ │ ├── MailboxExistCommand.java │ │ │ └── MailboxListCommand.java │ │ │ ├── quota │ │ │ ├── DeleteGlobalQuotaCountCommand.java │ │ │ ├── DeleteGlobalQuotaSizeCommand.java │ │ │ ├── GetGlobalQuotaCountCommand.java │ │ │ ├── GetGlobalQuotaSizeCommand.java │ │ │ ├── GlobalQuotaCommand.java │ │ │ ├── GlobalQuotaCountCommand.java │ │ │ ├── GlobalQuotaSizeCommand.java │ │ │ ├── QuotaCommand.java │ │ │ ├── SetGlobalQuotaCountCommand.java │ │ │ └── SetGlobalQuotaSizeCommand.java │ │ │ └── user │ │ │ ├── UserCommand.java │ │ │ ├── UserCreateCommand.java │ │ │ ├── UserDeleteCommand.java │ │ │ ├── UserExistCommand.java │ │ │ └── UserListCommand.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── cli │ │ │ ├── DomainManageTest.java │ │ │ ├── HelpVersionCommandTest.java │ │ │ ├── JwtOptionTest.java │ │ │ ├── MailboxManageTest.java │ │ │ ├── QuotaManageTest.java │ │ │ └── UserManageTest.java │ │ └── resources │ │ ├── dnsservice.xml │ │ ├── domainlist.xml │ │ ├── imapserver.xml │ │ ├── jwt_publickey │ │ ├── keystore │ │ ├── listeners.xml │ │ ├── lmtpserver.xml │ │ ├── mailetcontainer.xml │ │ ├── mailrepositorystore.xml │ │ ├── managesieveserver.xml │ │ ├── pop3server.xml │ │ ├── smtpserver.xml │ │ ├── usersrepository.xml │ │ ├── valid_token_admin_false.jwt │ │ ├── valid_token_admin_true.jwt │ │ └── webadmin.properties ├── blob │ ├── blob-aes │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── aes │ │ │ │ ├── AESBlobStoreDAO.java │ │ │ │ ├── CryptoConfig.java │ │ │ │ ├── CryptoConfigBuilder.java │ │ │ │ ├── CryptoException.java │ │ │ │ └── PBKDF2StreamingAeadFactory.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── blob │ │ │ └── aes │ │ │ └── AESBlobStoreDAOTest.java │ ├── blob-api │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── api │ │ │ │ ├── BlobId.java │ │ │ │ ├── BlobPartsId.java │ │ │ │ ├── BlobReferenceSource.java │ │ │ │ ├── BlobStore.java │ │ │ │ ├── BlobStoreDAO.java │ │ │ │ ├── BlobType.java │ │ │ │ ├── BucketName.java │ │ │ │ ├── MetricableBlobStore.java │ │ │ │ ├── ObjectNotFoundException.java │ │ │ │ ├── ObjectStorageHealthCheck.java │ │ │ │ ├── ObjectStoreException.java │ │ │ │ ├── ObjectStoreIOException.java │ │ │ │ └── PlainBlobId.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── api │ │ │ │ ├── BlobStoreContract.java │ │ │ │ ├── BlobStoreDAOContract.java │ │ │ │ ├── BlobStoreDAOFixture.java │ │ │ │ ├── BlobTypeTest.java │ │ │ │ ├── BucketBlobStoreContract.java │ │ │ │ ├── BucketBlobStoreDAOContract.java │ │ │ │ ├── BucketNameTest.java │ │ │ │ ├── DeduplicationBlobStoreContract.java │ │ │ │ ├── DeleteBlobStoreContract.java │ │ │ │ ├── DeleteBlobStoreDAOContract.java │ │ │ │ ├── MetricableBlobStoreContract.java │ │ │ │ ├── PlainBlobIdTest.java │ │ │ │ ├── ReadSaveBlobStoreDAOContract.java │ │ │ │ └── TestBlobId.java │ │ │ └── resources │ │ │ ├── shattered-1.pdf │ │ │ └── shattered-2.pdf │ ├── blob-cassandra │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── cassandra │ │ │ │ ├── BlobTables.java │ │ │ │ ├── CassandraBlobDataDefinition.java │ │ │ │ ├── CassandraBlobStoreDAO.java │ │ │ │ ├── CassandraBlobStoreFactory.java │ │ │ │ ├── CassandraBucketDAO.java │ │ │ │ ├── CassandraDefaultBucketDAO.java │ │ │ │ └── cache │ │ │ │ ├── BlobStoreCache.java │ │ │ │ ├── CachedBlobStore.java │ │ │ │ ├── CassandraBlobCacheDataDefinition.java │ │ │ │ ├── CassandraBlobStoreCache.java │ │ │ │ └── CassandraCacheConfiguration.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── cassandra │ │ │ │ ├── CassandraBlobStoreClOneTest.java │ │ │ │ ├── CassandraBlobStoreContract.java │ │ │ │ ├── CassandraBlobStoreDAOTest.java │ │ │ │ ├── CassandraBlobStoreFixture.java │ │ │ │ ├── CassandraBlobStoreTest.java │ │ │ │ ├── CassandraBucketDAOTest.java │ │ │ │ ├── CassandraDefaultBucketDAOTest.java │ │ │ │ ├── CassandraPassTroughBlobStoreTest.java │ │ │ │ └── cache │ │ │ │ ├── BlobStoreCacheContract.java │ │ │ │ ├── CachedBlobStoreTest.java │ │ │ │ ├── CassandraBlobStoreCacheTest.java │ │ │ │ └── CassandraCacheConfigurationTest.java │ │ │ └── resources │ │ │ └── cassandra-driver.conf │ ├── blob-common │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── blob │ │ │ └── api │ │ │ └── Store.java │ ├── blob-export-api │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── export │ │ │ │ └── api │ │ │ │ ├── BlobExportMechanism.java │ │ │ │ ├── ExportedFileNamesGenerator.java │ │ │ │ └── FileExtension.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── blob │ │ │ └── export │ │ │ └── api │ │ │ ├── ExportedFileNamesGeneratorTest.java │ │ │ └── FileExtensionTest.java │ ├── blob-export-file │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── export │ │ │ │ └── file │ │ │ │ └── LocalFileBlobExportMechanism.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── blob │ │ │ └── export │ │ │ └── file │ │ │ ├── FileSystemExtension.java │ │ │ ├── FileSystemExtensionTest.java │ │ │ └── LocalFileBlobExportMechanismTest.java │ ├── blob-file │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── file │ │ │ │ ├── FileBlobStoreDAO.java │ │ │ │ └── FileBlobStoreFactory.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── blob │ │ │ └── file │ │ │ ├── FileBlobStoreDAOTest.java │ │ │ ├── FileBlobStoreGCAlgorithmTest.java │ │ │ ├── FileBlobStorePassThroughTest.java │ │ │ └── FileBlobStoreTest.java │ ├── blob-memory │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── memory │ │ │ │ ├── MemoryBlobStoreDAO.java │ │ │ │ └── MemoryBlobStoreFactory.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── blob │ │ │ └── memory │ │ │ ├── MemoryBlobStoreDAOTest.java │ │ │ ├── MemoryBlobStoreGCAlgorithmTest.java │ │ │ ├── MemoryBlobStorePassThroughTest.java │ │ │ └── MemoryBlobStoreTest.java │ ├── blob-postgres │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── postgres │ │ │ │ ├── PostgresBlobStorageDataDefinition.java │ │ │ │ └── PostgresBlobStoreDAO.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── blob │ │ │ └── postgres │ │ │ ├── PostgresBlobStoreDAOTest.java │ │ │ └── PostgresBlobStoreGCAlgorithmTest.java │ ├── blob-s3 │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── objectstorage │ │ │ │ └── aws │ │ │ │ ├── AwsS3AuthConfiguration.java │ │ │ │ ├── BucketNameResolver.java │ │ │ │ ├── JamesS3MetricPublisher.java │ │ │ │ ├── MinimalCopyBytesResponseTransformer.java │ │ │ │ ├── Region.java │ │ │ │ ├── S3BlobStoreConfiguration.java │ │ │ │ ├── S3BlobStoreDAO.java │ │ │ │ ├── S3ClientFactory.java │ │ │ │ ├── S3RequestOption.java │ │ │ │ └── sse │ │ │ │ ├── S3SSECConfiguration.java │ │ │ │ ├── S3SSECustomerKeyFactory.java │ │ │ │ └── S3SSECustomerKeyGenerator.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── objectstorage │ │ │ │ └── aws │ │ │ │ ├── AwsS3AuthConfigurationTest.java │ │ │ │ ├── BucketNameResolverTest.java │ │ │ │ ├── DockerAwsS3.java │ │ │ │ ├── DockerAwsS3Container.java │ │ │ │ ├── DockerAwsS3Extension.java │ │ │ │ ├── DockerAwsS3Singleton.java │ │ │ │ ├── RegionTest.java │ │ │ │ ├── S3BlobStoreConfigurationTest.java │ │ │ │ ├── S3BlobStoreDAOTest.java │ │ │ │ ├── S3DeDuplicationBlobStoreTest.java │ │ │ │ ├── S3HealthCheckTest.java │ │ │ │ ├── S3MinioBlobStoreGCAlgorithmTest.java │ │ │ │ ├── S3MinioDocker.java │ │ │ │ ├── S3MinioExtension.java │ │ │ │ ├── S3MinioTest.java │ │ │ │ ├── S3NamespaceTest.java │ │ │ │ ├── S3PassThroughBlobStoreTest.java │ │ │ │ ├── S3PrefixAndNamespaceTest.java │ │ │ │ ├── S3PrefixTest.java │ │ │ │ ├── S3WithMinIOGenerationAwareBlobIdTest.java │ │ │ │ └── sse │ │ │ │ ├── S3BlobStoreDAOWithSSECTest.java │ │ │ │ ├── S3SSECContract.java │ │ │ │ ├── S3SSECustomerKeyGeneratorTest.java │ │ │ │ └── SingleCustomerKeyFactoryTest.java │ │ │ └── resources │ │ │ └── minio │ │ │ ├── private.key │ │ │ └── public.crt │ ├── blob-storage-strategy │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── server │ │ │ │ │ └── blob │ │ │ │ │ └── deduplication │ │ │ │ │ ├── BlobGCTask.java │ │ │ │ │ ├── BlobGCTaskAdditionalInformationDTO.java │ │ │ │ │ ├── BlobGCTaskDTO.java │ │ │ │ │ ├── BlobReferenceAggregate.java │ │ │ │ │ ├── BlobStoreFactory.java │ │ │ │ │ ├── BloomFilterGCAlgorithm.java │ │ │ │ │ ├── GenerationAware.java │ │ │ │ │ ├── GenerationAwareBlobId.java │ │ │ │ │ ├── MinIOGenerationAwareBlobId.java │ │ │ │ │ └── StorageStrategy.java │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── server │ │ │ │ └── blob │ │ │ │ └── deduplication │ │ │ │ ├── DeDuplicationBlobStore.scala │ │ │ │ └── PassThroughBlobStore.scala │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── server │ │ │ │ └── blob │ │ │ │ └── deduplication │ │ │ │ ├── BlobGCTaskAdditionalInformationDTOTest.java │ │ │ │ ├── BlobGCTaskSerializationTest.java │ │ │ │ ├── BloomFilterGCAlgorithmContract.java │ │ │ │ ├── GenerationAwareBlobIdTest.java │ │ │ │ └── MinIOGenerationAwareBlobIdTest.java │ │ │ └── resources │ │ │ └── json │ │ │ ├── blobGC-legacy.additionalInformation.json │ │ │ ├── blobGC-legacy.task.json │ │ │ ├── blobGC.additionalInformation.json │ │ │ └── blobGC.task.json │ ├── mail-store │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── blob │ │ │ │ └── mail │ │ │ │ ├── MimeMessagePartsId.java │ │ │ │ └── MimeMessageStore.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── blob │ │ │ └── mail │ │ │ ├── MimeMessagePartsIdTest.java │ │ │ └── MimeMessageStoreTest.java │ └── pom.xml ├── container │ ├── core │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── server │ │ │ │ │ └── core │ │ │ │ │ ├── BufferedDeferredFileOutputStream.java │ │ │ │ │ ├── ContentTypeCleaner.java │ │ │ │ │ ├── Envelope.java │ │ │ │ │ ├── InternetHeadersInputStream.java │ │ │ │ │ ├── JamesServerResourceLoader.java │ │ │ │ │ ├── MailHeaders.java │ │ │ │ │ ├── MailImpl.java │ │ │ │ │ ├── MimeMessageInputStream.java │ │ │ │ │ ├── MimeMessageInputStreamSource.java │ │ │ │ │ ├── MimeMessageSource.java │ │ │ │ │ ├── MimeMessageUtil.java │ │ │ │ │ ├── MimeMessageWrapper.java │ │ │ │ │ ├── MissingArgumentException.java │ │ │ │ │ ├── configuration │ │ │ │ │ ├── Configuration.java │ │ │ │ │ ├── ConfigurationProvider.java │ │ │ │ │ └── FileConfigurationProvider.java │ │ │ │ │ ├── filesystem │ │ │ │ │ ├── ClassPathResource.java │ │ │ │ │ ├── FileSystemImpl.java │ │ │ │ │ ├── FileSystemResource.java │ │ │ │ │ ├── Resource.java │ │ │ │ │ ├── ResourceFactory.java │ │ │ │ │ ├── ResourceUtils.java │ │ │ │ │ ├── SimpleUrl.java │ │ │ │ │ └── UrlResource.java │ │ │ │ │ └── package.html │ │ │ └── resources │ │ │ │ └── jmx.properties │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── server │ │ │ │ └── core │ │ │ │ ├── BufferedDeferredFileOutputStreamTest.java │ │ │ │ ├── ContentTypeCleanerTest.java │ │ │ │ ├── EnvelopeTest.java │ │ │ │ ├── MailHeadersTest.java │ │ │ │ ├── MailImplTest.java │ │ │ │ ├── MimeMessageFromMimeMessageTest.java │ │ │ │ ├── MimeMessageFromSharedStreamTest.java │ │ │ │ ├── MimeMessageFromStreamTest.java │ │ │ │ ├── MimeMessageInputStreamSourceTest.java │ │ │ │ ├── MimeMessageTest.java │ │ │ │ ├── MimeMessageUtilTest.java │ │ │ │ ├── MimeMessageWrapperTest.java │ │ │ │ ├── configuration │ │ │ │ └── BasicConfigurationTest.java │ │ │ │ └── filesystem │ │ │ │ ├── FileSystemImplTest.java │ │ │ │ └── SimpleUrlTest.java │ │ │ └── resources │ │ │ ├── JAMES-1593.eml │ │ │ ├── invalid.eml │ │ │ └── mail-containing-unicode-characters.eml │ ├── feature-checks │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── healthcheck │ │ │ └── MailReceptionCheck.java │ ├── filesystem-api │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── filesystem │ │ │ │ └── api │ │ │ │ ├── FileSystem.java │ │ │ │ └── JamesDirectoriesProvider.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── filesystem │ │ │ │ └── api │ │ │ │ ├── AbstractFileSystemTest.java │ │ │ │ ├── FileSystemFixture.java │ │ │ │ └── mock │ │ │ │ └── MockFileSystem.java │ │ │ └── resources │ │ │ ├── class path Test.txt │ │ │ └── classpathTest.txt │ ├── guice │ │ ├── blob │ │ │ ├── api │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── mailbox │ │ │ │ │ ├── BlobStoreAPIModule.java │ │ │ │ │ └── ConfigurationComponent.java │ │ │ ├── deduplication-gc │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ ├── main │ │ │ │ │ └── java │ │ │ │ │ │ └── org │ │ │ │ │ │ └── apache │ │ │ │ │ │ └── james │ │ │ │ │ │ └── modules │ │ │ │ │ │ └── blobstore │ │ │ │ │ │ ├── BlobDeduplicationGCModule.java │ │ │ │ │ │ └── validation │ │ │ │ │ │ ├── BlobStoreConfigurationValidationStartUpCheck.java │ │ │ │ │ │ ├── EventsourcingStorageStrategy.java │ │ │ │ │ │ ├── RegisterStorageStrategy.java │ │ │ │ │ │ ├── RegisterStorageStrategyCommandHandler.java │ │ │ │ │ │ ├── StoragePolicyConfigurationSanityEnforcementModule.java │ │ │ │ │ │ ├── StorageStrategyAggregate.java │ │ │ │ │ │ ├── StorageStrategyChanged.java │ │ │ │ │ │ ├── StorageStrategyChangedDTO.java │ │ │ │ │ │ ├── StorageStrategyModule.java │ │ │ │ │ │ └── StorageStrategyValidationEventSourcingSystem.java │ │ │ │ │ └── test │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── blobstore │ │ │ │ │ └── validation │ │ │ │ │ ├── StorageStrategyChangedDTOTest.java │ │ │ │ │ └── StorageStrategyValidationEventSourcingSystemTest.java │ │ │ ├── export │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ ├── main │ │ │ │ │ └── java │ │ │ │ │ │ └── org │ │ │ │ │ │ └── apache │ │ │ │ │ │ └── james │ │ │ │ │ │ └── modules │ │ │ │ │ │ ├── BlobExportImplChoice.java │ │ │ │ │ │ ├── BlobExportMechanismModule.java │ │ │ │ │ │ └── LocalFileBlobExportMechanismModule.java │ │ │ │ │ └── test │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ ├── BlobExportImplChoiceTest.java │ │ │ │ │ └── BlobExportMechanismModuleTest.java │ │ │ ├── memory │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── BlobMemoryModule.java │ │ │ ├── postgres │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── modules │ │ │ │ │ └── BlobPostgresModule.java │ │ │ └── s3 │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── objectstorage │ │ │ │ │ ├── S3BlobStoreConfigurationReader.java │ │ │ │ │ ├── S3BlobStoreModule.java │ │ │ │ │ ├── S3BucketModule.java │ │ │ │ │ └── aws │ │ │ │ │ └── s3 │ │ │ │ │ └── AwsS3ConfigurationReader.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ ├── AwsS3BlobStoreExtension.java │ │ │ │ └── objectstorage │ │ │ │ └── aws │ │ │ │ └── s3 │ │ │ │ ├── AwsS3ConfigurationReaderTest.java │ │ │ │ └── DockerAwsS3TestRule.java │ │ ├── cassandra │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── modules │ │ │ │ │ ├── CassandraConsistencyTaskSerializationModule.java │ │ │ │ │ ├── TasksCleanupTaskSerializationModule.java │ │ │ │ │ ├── data │ │ │ │ │ │ ├── CassandraDLPConfigurationStoreModule.java │ │ │ │ │ │ ├── CassandraDropListsModule.java │ │ │ │ │ │ ├── CassandraJmapModule.java │ │ │ │ │ │ ├── CassandraSieveQuotaLegacyModule.java │ │ │ │ │ │ ├── CassandraSieveQuotaModule.java │ │ │ │ │ │ ├── CassandraSieveRepositoryModule.java │ │ │ │ │ │ └── CassandraVacationModule.java │ │ │ │ │ ├── eventstore │ │ │ │ │ │ └── CassandraEventStoreModule.java │ │ │ │ │ ├── mailbox │ │ │ │ │ │ ├── CassandraBlobStoreDependenciesModule.java │ │ │ │ │ │ ├── CassandraCacheSessionModule.java │ │ │ │ │ │ ├── CassandraDeadLetterModule.java │ │ │ │ │ │ ├── CassandraDeletedMessageVaultModule.java │ │ │ │ │ │ ├── CassandraMailboxModule.java │ │ │ │ │ │ ├── CassandraMailboxQuotaLegacyModule.java │ │ │ │ │ │ ├── CassandraMailboxQuotaModule.java │ │ │ │ │ │ ├── CassandraQuotaMailingModule.java │ │ │ │ │ │ ├── CassandraQuotaModule.java │ │ │ │ │ │ ├── CassandraSchemaVersionStartUpCheck.java │ │ │ │ │ │ ├── CassandraSessionModule.java │ │ │ │ │ │ ├── CassandraThreadIdGuessingModule.java │ │ │ │ │ │ ├── DefaultBucketModule.java │ │ │ │ │ │ └── KeyspacesConfiguration.java │ │ │ │ │ ├── metrics │ │ │ │ │ │ └── CassandraMetricsModule.java │ │ │ │ │ └── webadmin │ │ │ │ │ │ ├── CassandraRoutesModule.java │ │ │ │ │ │ ├── InconsistencySolvingRoutesModule.java │ │ │ │ │ │ └── TasksCleanupRoutesModule.java │ │ │ │ │ └── server │ │ │ │ │ ├── CassandraProbe.java │ │ │ │ │ └── CassandraTruncateTableTask.java │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── mailbox │ │ │ │ │ └── KeyspacesConfigurationTest.java │ │ │ │ └── resources │ │ │ │ └── modules │ │ │ │ └── mailbox │ │ │ │ └── cassandra.properties │ │ ├── common │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── CleanupTasksPerformer.java │ │ │ │ │ ├── ConfigurationSanitizingPerformer.java │ │ │ │ │ ├── CoreDataModule.java │ │ │ │ │ ├── ExtraProperties.java │ │ │ │ │ ├── GuiceJamesServer.java │ │ │ │ │ ├── GuiceLifecycleHealthCheck.java │ │ │ │ │ ├── IsStartedProbe.java │ │ │ │ │ ├── JamesServerMain.java │ │ │ │ │ ├── NaiveDelegationStoreModule.java │ │ │ │ │ ├── PeriodicalHealthChecks.java │ │ │ │ │ ├── PeriodicalHealthChecksConfiguration.java │ │ │ │ │ ├── ProtocolConfigurationSanitizer.java │ │ │ │ │ ├── RunArguments.java │ │ │ │ │ ├── StartUpChecksPerformer.java │ │ │ │ │ ├── TemporaryJamesServer.java │ │ │ │ │ ├── modules │ │ │ │ │ ├── CleanupTaskModule.java │ │ │ │ │ ├── ClockModule.java │ │ │ │ │ ├── CommonServicesModule.java │ │ │ │ │ ├── ErrorMailRepositoryEmptyHealthCheckModule.java │ │ │ │ │ ├── IsStartedProbeModule.java │ │ │ │ │ ├── MailetProcessingModule.java │ │ │ │ │ ├── MimeMessageModule.java │ │ │ │ │ ├── PeriodicalHealthChecksModule.java │ │ │ │ │ ├── RunArgumentsModule.java │ │ │ │ │ ├── StartUpChecksModule.java │ │ │ │ │ ├── StartablesModule.java │ │ │ │ │ ├── protocols │ │ │ │ │ │ └── ProtocolHandlerModule.java │ │ │ │ │ └── server │ │ │ │ │ │ ├── DNSServiceModule.java │ │ │ │ │ │ ├── DefaultProcessorsConfigurationProviderModule.java │ │ │ │ │ │ ├── DropWizardMetricsModule.java │ │ │ │ │ │ ├── HostnameModule.java │ │ │ │ │ │ ├── LoggingMetricsModule.java │ │ │ │ │ │ ├── MailStoreRepositoryModule.java │ │ │ │ │ │ ├── RawPostDequeueDecoratorModule.java │ │ │ │ │ │ ├── TaskManagerModule.java │ │ │ │ │ │ └── TaskSerializationModule.java │ │ │ │ │ └── utils │ │ │ │ │ ├── DataProbeImpl.java │ │ │ │ │ ├── DropListProbeImpl.java │ │ │ │ │ ├── FilteringManagementProbeImpl.java │ │ │ │ │ ├── GuiceProbeProvider.java │ │ │ │ │ ├── GuiceProtocolHandlerLoader.java │ │ │ │ │ ├── InitializationOperations.java │ │ │ │ │ ├── MailRepositoryProbeImpl.java │ │ │ │ │ ├── MailboxManagerDefinition.java │ │ │ │ │ └── Startables.java │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── AggregateGuiceModuleTestRule.java │ │ │ │ │ ├── AggregateJunitExtension.java │ │ │ │ │ ├── ClockExtension.java │ │ │ │ │ ├── FakePropertiesProvider.java │ │ │ │ │ ├── GuiceModuleTestExtension.java │ │ │ │ │ ├── GuiceModuleTestRule.java │ │ │ │ │ ├── JamesServerBuilder.java │ │ │ │ │ ├── JamesServerContract.java │ │ │ │ │ ├── JamesServerExtension.java │ │ │ │ │ ├── MailsShouldBeWellReceived.java │ │ │ │ │ ├── PeriodicalHealthChecksConfigurationTest.java │ │ │ │ │ ├── PeriodicalHealthChecksTest.java │ │ │ │ │ ├── RegistrableExtension.java │ │ │ │ │ ├── StartUpChecksPerformerTest.java │ │ │ │ │ ├── TempFilesystemTestRule.java │ │ │ │ │ ├── TemporaryFolderRegistrableExtension.java │ │ │ │ │ ├── modules │ │ │ │ │ └── InitializationOperationsTest.java │ │ │ │ │ └── utils │ │ │ │ │ ├── ConfigurablesTest.java │ │ │ │ │ ├── FailingPropertiesProvider.java │ │ │ │ │ ├── FileConfigurationProviderTest.java │ │ │ │ │ └── GuiceProbeProviderTest.java │ │ │ │ └── resources │ │ │ │ ├── eml │ │ │ │ └── mail-containing-unicode-characters.eml │ │ │ │ ├── test.properties │ │ │ │ └── test.xml │ │ ├── configuration │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── utils │ │ │ │ │ ├── DelegatedPropertiesConfiguration.java │ │ │ │ │ ├── GuiceProbe.java │ │ │ │ │ ├── InitializationOperation.java │ │ │ │ │ ├── InitilizationOperationBuilder.java │ │ │ │ │ ├── KeystoreCreator.java │ │ │ │ │ ├── PropertiesProvider.java │ │ │ │ │ └── UserDefinedStartable.java │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── utils │ │ │ │ │ ├── PropertiesProviderFromEnvVariablesTest.java │ │ │ │ │ └── PropertiesProviderTest.java │ │ │ │ └── resources │ │ │ │ ├── a.properties │ │ │ │ ├── b.properties │ │ │ │ └── env.properties │ │ ├── data-cassandra │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── data │ │ │ │ ├── CassandraDelegationStoreModule.java │ │ │ │ ├── CassandraDomainListModule.java │ │ │ │ ├── CassandraRecipientRewriteTableModule.java │ │ │ │ └── CassandraUsersRepositoryModule.java │ │ ├── data-ldap │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── data │ │ │ │ │ ├── LdapUsersRepositoryModule.java │ │ │ │ │ └── UsersRepositoryModuleChooser.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── data │ │ │ │ ├── DockerLdapRule.java │ │ │ │ └── LdapTestExtension.java │ │ ├── distributed │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ ├── DistributedTaskManagerModule.java │ │ │ │ │ ├── DistributedTaskSerializationModule.java │ │ │ │ │ ├── blobstore │ │ │ │ │ ├── BlobStoreCacheModulesChooser.java │ │ │ │ │ ├── BlobStoreChoosingModule.java │ │ │ │ │ ├── BlobStoreConfiguration.java │ │ │ │ │ └── BlobStoreModulesChooser.java │ │ │ │ │ ├── event │ │ │ │ │ ├── JMAPEventBusModule.java │ │ │ │ │ └── MailboxEventBusModule.java │ │ │ │ │ ├── mailbox │ │ │ │ │ ├── DeletedMessageVaultWorkQueueReconnectionHandler.java │ │ │ │ │ ├── DistributedDeletedMessageVaultDeletionCallback.java │ │ │ │ │ └── DistributedDeletedMessageVaultModule.java │ │ │ │ │ └── plugins │ │ │ │ │ └── QuotaMailingModule.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── blobstore │ │ │ │ ├── BlobStoreCacheModulesChooserTest.java │ │ │ │ ├── BlobStoreConfigurationTest.java │ │ │ │ └── BlobStoreModulesChooserTest.java │ │ ├── jmx │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── modules │ │ │ │ │ └── server │ │ │ │ │ │ ├── JMXServer.java │ │ │ │ │ │ ├── JMXServerModule.java │ │ │ │ │ │ └── JmxConfiguration.java │ │ │ │ │ └── utils │ │ │ │ │ └── GuiceMailboxManagerResolver.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── server │ │ │ │ └── JmxConfigurationTest.java │ │ ├── jpa-common │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── data │ │ │ │ │ ├── JPAAuthorizatorModule.java │ │ │ │ │ ├── JPADataModule.java │ │ │ │ │ ├── JPADomainListModule.java │ │ │ │ │ ├── JPADropListsModule.java │ │ │ │ │ ├── JPAEntityManagerModule.java │ │ │ │ │ ├── JPAMailRepositoryModule.java │ │ │ │ │ ├── JPARecipientRewriteTableModule.java │ │ │ │ │ └── JPAUsersRepositoryModule.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── TestJPAConfigurationModule.java │ │ │ │ └── TestJPAConfigurationModuleWithSqlValidation.java │ │ ├── lucene │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── mailbox │ │ │ │ ├── LuceneMemorySearchMailboxModule.java │ │ │ │ └── LuceneSearchMailboxModule.java │ │ ├── mailbox-jpa │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── mailbox │ │ │ │ ├── JPAMailboxModule.java │ │ │ │ ├── JPAQuotaSearchModule.java │ │ │ │ └── JpaQuotaModule.java │ │ ├── mailbox-plugin-deleted-messages-vault │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── vault │ │ │ │ │ ├── DeletedMessageVaultConfigurationModule.java │ │ │ │ │ ├── DeletedMessageVaultModule.java │ │ │ │ │ ├── DeletedMessageVaultRoutesModule.java │ │ │ │ │ └── VaultTaskSerializationModule.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── vault │ │ │ │ └── TestDeleteMessageVaultPreDeletionHookModule.java │ │ ├── mailbox-postgres │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── mailbox │ │ │ │ ├── PostgresDeletedMessageVaultModule.java │ │ │ │ ├── PostgresMailboxModule.java │ │ │ │ ├── PostgresMailboxQuotaModule.java │ │ │ │ └── RLSSupportPostgresMailboxModule.java │ │ ├── mailbox │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ ├── ACLProbeImpl.java │ │ │ │ │ ├── ConfigurationProbe.java │ │ │ │ │ ├── EventDeadLettersProbe.java │ │ │ │ │ ├── MailboxModule.java │ │ │ │ │ ├── MailboxProbeImpl.java │ │ │ │ │ ├── Names.java │ │ │ │ │ ├── QuotaProbesImpl.java │ │ │ │ │ └── mailbox │ │ │ │ │ ├── DefaultEventModule.java │ │ │ │ │ ├── FastRetryBackoffModule.java │ │ │ │ │ ├── ListenerConfiguration.java │ │ │ │ │ ├── ListenersConfiguration.java │ │ │ │ │ ├── MailReceptionHealthCheckModule.java │ │ │ │ │ ├── MailboxListenerFactory.java │ │ │ │ │ ├── MailboxListenersLoader.java │ │ │ │ │ ├── MailboxListenersLoaderImpl.java │ │ │ │ │ ├── MemoryDeadLetterModule.java │ │ │ │ │ ├── PreDeletionHookConfiguration.java │ │ │ │ │ ├── PreDeletionHookLoader.java │ │ │ │ │ ├── PreDeletionHookLoaderImpl.java │ │ │ │ │ ├── PreDeletionHookModule.java │ │ │ │ │ ├── PreDeletionHooksConfiguration.java │ │ │ │ │ └── ReIndexingTaskSerializationModule.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── mailbox │ │ │ │ ├── ConfiguredListener.java │ │ │ │ ├── ListenerConfigurationTest.java │ │ │ │ ├── MailboxListenersLoaderImplTest.java │ │ │ │ ├── NoopMailboxListener.java │ │ │ │ ├── NoopPreDeletionHook.java │ │ │ │ ├── PreDeletionHookConfigurationTest.java │ │ │ │ ├── PreDeletionHookLoaderImplTest.java │ │ │ │ ├── PreDeletionHooksConfigurationTest.java │ │ │ │ └── ReactiveNoopMailboxListener.java │ │ ├── mailet │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── modules │ │ │ │ │ └── server │ │ │ │ │ │ ├── DKIMMailetModule.java │ │ │ │ │ │ └── MailetContainerModule.java │ │ │ │ │ └── utils │ │ │ │ │ ├── GuiceMailetLoader.java │ │ │ │ │ ├── GuiceMatcherLoader.java │ │ │ │ │ ├── MailetConfigurationOverride.java │ │ │ │ │ └── SpoolerProbe.java │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── modules │ │ │ │ │ └── server │ │ │ │ │ │ └── MailetContainerModuleTest.java │ │ │ │ │ ├── transport │ │ │ │ │ ├── mailets │ │ │ │ │ │ └── sub │ │ │ │ │ │ │ ├── ConstructorBoundTestMailet.java │ │ │ │ │ │ │ └── TestMailet.java │ │ │ │ │ └── matchers │ │ │ │ │ │ └── sub │ │ │ │ │ │ └── TestMatcher.java │ │ │ │ │ └── utils │ │ │ │ │ ├── GuiceMailetLoaderTest.java │ │ │ │ │ └── GuiceMatcherLoaderTest.java │ │ │ │ └── resources │ │ │ │ └── recursive │ │ │ │ └── extensions-jars │ │ │ │ ├── custom-mailets-implementation-3.9.0-SNAPSHOT.jar │ │ │ │ └── james-server-guice-custom-mailets-3.9.0-SNAPSHOT-jar-with-dependencies.jar │ │ ├── mailrepository-blob │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── mailrepository │ │ │ │ └── BlobstoreMailRepositoryModule.java │ │ ├── mailrepository-cassandra │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── mailrepository │ │ │ │ └── CassandraMailRepositoryModule.java │ │ ├── mailrepository-loaders │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── mailrepository │ │ │ │ └── guice │ │ │ │ ├── GuiceMailRepositoryLoader.java │ │ │ │ └── MultiBoundGuiceRepositoryLoader.java │ │ ├── memory │ │ │ ├── README.md │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── FakeMessageSearchIndex.java │ │ │ │ ├── FakeSearchMailboxModule.java │ │ │ │ └── modules │ │ │ │ ├── data │ │ │ │ ├── MemoryDataJmapModule.java │ │ │ │ ├── MemoryDataModule.java │ │ │ │ ├── MemoryDelegationStoreModule.java │ │ │ │ ├── MemoryDropListsModule.java │ │ │ │ └── MemoryUsersRepositoryModule.java │ │ │ │ ├── eventstore │ │ │ │ └── MemoryEventStoreModule.java │ │ │ │ └── mailbox │ │ │ │ ├── MemoryMailboxModule.java │ │ │ │ ├── MemoryQuotaModule.java │ │ │ │ └── MemoryQuotaSearchModule.java │ │ ├── onami │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── onami │ │ │ │ │ └── lifecycle │ │ │ │ │ ├── AbstractBasicStageable.java │ │ │ │ │ ├── AbstractMethodTypeListener.java │ │ │ │ │ ├── AbstractStageable.java │ │ │ │ │ ├── DefaultStager.java │ │ │ │ │ ├── DisposingStager.java │ │ │ │ │ ├── LifeCycleModule.java │ │ │ │ │ ├── LifeCycleStageModule.java │ │ │ │ │ ├── NoOpStageHandler.java │ │ │ │ │ ├── NoOpStageableTypeMapper.java │ │ │ │ │ ├── PreDestroyModule.java │ │ │ │ │ ├── StageHandler.java │ │ │ │ │ ├── Stageable.java │ │ │ │ │ ├── StageableMethod.java │ │ │ │ │ ├── StageableTypeMapper.java │ │ │ │ │ └── Stager.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── onami │ │ │ │ └── lifecycle │ │ │ │ ├── DefaultStagerTestCase.java │ │ │ │ ├── MultiLifeCycleObject.java │ │ │ │ ├── MultiLifeCycleTestCase.java │ │ │ │ ├── StageObject1.java │ │ │ │ ├── StageObject2.java │ │ │ │ ├── StagingOrderTestCase.java │ │ │ │ ├── TestAnnotationA.java │ │ │ │ ├── TestAnnotationB.java │ │ │ │ └── TestAnnotationC.java │ │ ├── opensearch │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── OpenSearchHighlightModule.java │ │ │ │ │ ├── SearchConfiguration.java │ │ │ │ │ ├── SearchModuleChooser.java │ │ │ │ │ └── modules │ │ │ │ │ └── mailbox │ │ │ │ │ ├── OpenSearchClientModule.java │ │ │ │ │ ├── OpenSearchDisabledModule.java │ │ │ │ │ ├── OpenSearchMailboxConfigurationModule.java │ │ │ │ │ ├── OpenSearchMailboxModule.java │ │ │ │ │ ├── OpenSearchQuotaSearcherModule.java │ │ │ │ │ ├── OpenSearchStartUpCheck.java │ │ │ │ │ ├── TikaConfigurationReader.java │ │ │ │ │ └── TikaMailboxModule.java │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── DockerOpenSearchExtension.java │ │ │ │ │ ├── DockerOpenSearchRule.java │ │ │ │ │ ├── SearchConfigurationTest.java │ │ │ │ │ ├── TikaExtension.java │ │ │ │ │ └── modules │ │ │ │ │ ├── TestTikaModule.java │ │ │ │ │ └── mailbox │ │ │ │ │ ├── OpenSearchMailboxModuleTest.java │ │ │ │ │ ├── SearchOverrideA.java │ │ │ │ │ ├── SearchOverrideB.java │ │ │ │ │ ├── TestDockerOpenSearchModule.java │ │ │ │ │ └── TikaConfigurationReaderTest.java │ │ │ │ └── resources │ │ │ │ └── recursive │ │ │ │ └── .keep │ │ ├── pom.xml │ │ ├── postgres-common │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ ├── data │ │ │ │ ├── PostgresCommonModule.java │ │ │ │ ├── PostgresDLPConfigurationStoreModule.java │ │ │ │ ├── PostgresDataJmapModule.java │ │ │ │ ├── PostgresDataModule.java │ │ │ │ ├── PostgresDelegationStoreModule.java │ │ │ │ ├── PostgresDomainListModule.java │ │ │ │ ├── PostgresDropListsModule.java │ │ │ │ ├── PostgresEventStoreModule.java │ │ │ │ ├── PostgresMailRepositoryModule.java │ │ │ │ ├── PostgresQuotaGuiceModule.java │ │ │ │ ├── PostgresRecipientRewriteTableModule.java │ │ │ │ ├── PostgresUsersRepositoryModule.java │ │ │ │ └── PostgresVacationModule.java │ │ │ │ ├── events │ │ │ │ └── PostgresDeadLetterModule.java │ │ │ │ └── task │ │ │ │ ├── DistributedTaskManagerModule.java │ │ │ │ └── PostgresTaskExecutionDetailsProjectionGuiceModule.java │ │ ├── protocols │ │ │ ├── imap │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── protocols │ │ │ │ │ ├── ConnectionCheckFactoryImpl.java │ │ │ │ │ ├── DefaultImapPackage.java │ │ │ │ │ ├── IMAPServerModule.java │ │ │ │ │ ├── ImapGuiceProbe.java │ │ │ │ │ └── ImapPackage.java │ │ │ ├── jmap │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ ├── main │ │ │ │ │ ├── java │ │ │ │ │ │ └── org │ │ │ │ │ │ │ └── apache │ │ │ │ │ │ │ └── james │ │ │ │ │ │ │ ├── jmap │ │ │ │ │ │ │ ├── JMAPListenerModule.java │ │ │ │ │ │ │ ├── JMAPModule.java │ │ │ │ │ │ │ ├── JmapGuiceProbe.java │ │ │ │ │ │ │ ├── MessageIdProbe.java │ │ │ │ │ │ │ └── rfc8621 │ │ │ │ │ │ │ │ └── RFC8621MethodsModule.java │ │ │ │ │ │ │ └── modules │ │ │ │ │ │ │ └── protocols │ │ │ │ │ │ │ ├── JMAPServerModule.java │ │ │ │ │ │ │ └── JmapEventBusModule.java │ │ │ │ │ └── resources │ │ │ │ │ │ └── defaultJmapMailetContainer.xml │ │ │ │ │ └── test │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── jmap │ │ │ │ │ ├── JMAPModuleTest.java │ │ │ │ │ ├── JmapJamesServerContract.java │ │ │ │ │ └── MailetPreconditionTest.java │ │ │ │ │ └── modules │ │ │ │ │ └── TestJMAPServerModule.java │ │ │ ├── lmtp │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── protocols │ │ │ │ │ ├── LMTPServerModule.java │ │ │ │ │ └── LmtpGuiceProbe.java │ │ │ ├── managedsieve │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── protocols │ │ │ │ │ ├── ManageSieveServerModule.java │ │ │ │ │ ├── SieveModule.java │ │ │ │ │ └── SieveProbeImpl.java │ │ │ ├── netty │ │ │ │ └── pom.xml │ │ │ ├── pop │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── protocols │ │ │ │ │ ├── POP3ServerModule.java │ │ │ │ │ └── Pop3GuiceProbe.java │ │ │ ├── smtp │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── protocols │ │ │ │ │ ├── JSPFModule.java │ │ │ │ │ ├── SMTPServerModule.java │ │ │ │ │ └── SmtpGuiceProbe.java │ │ │ ├── webadmin-data │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ ├── blobstore │ │ │ │ │ └── server │ │ │ │ │ │ └── BlobRoutesModules.java │ │ │ │ │ └── server │ │ │ │ │ ├── DLPRoutesModule.java │ │ │ │ │ ├── DataRoutesModules.java │ │ │ │ │ ├── DropListsRoutesModule.java │ │ │ │ │ ├── SieveRoutesModule.java │ │ │ │ │ └── VacationRoutesModule.java │ │ │ ├── webadmin-jmap │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── server │ │ │ │ │ ├── JmapTaskSerializationModule.java │ │ │ │ │ ├── JmapTasksModule.java │ │ │ │ │ ├── JmapUploadCleanupModule.java │ │ │ │ │ └── UserIdentityModule.java │ │ │ ├── webadmin-mail-over-web │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── server │ │ │ │ │ └── WebAdminMailOverWebModule.java │ │ │ ├── webadmin-mailbox │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── server │ │ │ │ │ ├── InconsistencyQuotasSolvingRoutesModule.java │ │ │ │ │ ├── MailboxRoutesModule.java │ │ │ │ │ ├── MailboxesBackupModule.java │ │ │ │ │ ├── MailboxesExportRoutesModule.java │ │ │ │ │ ├── MailboxesRoutesModule.java │ │ │ │ │ ├── MessagesRoutesModule.java │ │ │ │ │ ├── ReIndexingModule.java │ │ │ │ │ ├── WebAdminReIndexingTaskSerializationModule.java │ │ │ │ │ ├── WebadminMailboxExportTaskSerializationModule.java │ │ │ │ │ └── WebadminMailboxTaskSerializationModule.java │ │ │ ├── webadmin-mailqueue │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── server │ │ │ │ │ ├── MailQueueRoutesModule.java │ │ │ │ │ └── MailQueueTaskSerializationModule.java │ │ │ ├── webadmin-mailrepository │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── server │ │ │ │ │ ├── MailRepositoriesRoutesModule.java │ │ │ │ │ └── MailRepositoryTaskSerializationModule.java │ │ │ ├── webadmin-rabbitmq-mailqueue │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── server │ │ │ │ │ ├── BrowseStartTaskModule.java │ │ │ │ │ ├── RabbitMailQueueRoutesModule.java │ │ │ │ │ └── RabbitMailQueueTaskSerializationModule.java │ │ │ └── webadmin │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── WebAdminServer.java │ │ │ │ │ ├── modules │ │ │ │ │ └── server │ │ │ │ │ │ ├── HealthCheckRoutesModule.java │ │ │ │ │ │ ├── NoJwtModule.java │ │ │ │ │ │ ├── ServerRouteModule.java │ │ │ │ │ │ ├── TaskRoutesModule.java │ │ │ │ │ │ └── WebAdminServerModule.java │ │ │ │ │ └── utils │ │ │ │ │ └── WebAdminGuiceProbe.java │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── server │ │ │ │ │ └── WebAdminServerModuleTest.java │ │ │ │ └── resources │ │ │ │ ├── webadmin-empty.properties │ │ │ │ ├── webadmin-none.properties │ │ │ │ ├── webadmin-one.properties │ │ │ │ └── webadmin-two.properties │ │ ├── queue │ │ │ ├── activemq │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── queue │ │ │ │ │ └── activemq │ │ │ │ │ └── ActiveMQQueueModule.java │ │ │ ├── memory │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── queue │ │ │ │ │ └── memory │ │ │ │ │ └── MemoryMailQueueModule.java │ │ │ ├── pulsar │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── queue │ │ │ │ │ └── pulsar │ │ │ │ │ └── module │ │ │ │ │ ├── PulsarMailQueueViewModule.java │ │ │ │ │ └── PulsarQueueModule.java │ │ │ └── rabbitmq │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ ├── main │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── modules │ │ │ │ │ └── queue │ │ │ │ │ └── rabbitmq │ │ │ │ │ ├── CassandraMailQueueViewModule.java │ │ │ │ │ ├── FakeMailQueueViewModule.java │ │ │ │ │ ├── MailQueueViewChoice.java │ │ │ │ │ ├── RabbitMQMailQueueModule.java │ │ │ │ │ ├── RabbitMQModule.java │ │ │ │ │ └── SpoolerReconnectionHandler.java │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ ├── DockerRabbitMQRule.java │ │ │ │ ├── RabbitMQExtension.java │ │ │ │ └── TestRabbitMQModule.java │ │ ├── sieve-file │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── data │ │ │ │ └── SieveFileRepositoryModule.java │ │ ├── sieve-jpa │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── data │ │ │ │ └── SieveJPARepositoryModules.java │ │ ├── sieve-postgres │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── modules │ │ │ │ └── data │ │ │ │ └── SievePostgresRepositoryModules.java │ │ ├── testing │ │ │ ├── custom-mailets-implementation │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── transport │ │ │ │ │ └── mailets │ │ │ │ │ ├── MyExtensionModule.java │ │ │ │ │ └── MyInterfaceImplementation.java │ │ │ ├── custom-mailets │ │ │ │ ├── README.md │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ ├── com │ │ │ │ │ └── custom │ │ │ │ │ │ ├── mailets │ │ │ │ │ │ └── AnotherMailet.java │ │ │ │ │ │ └── matchers │ │ │ │ │ │ └── AnotherMatcher.java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── transport │ │ │ │ │ ├── mailets │ │ │ │ │ ├── CustomMailet.java │ │ │ │ │ ├── CustomMailetWithCustomDependencyInConstructor.java │ │ │ │ │ ├── CustomMailetWithCustomDependencyInService.java │ │ │ │ │ ├── MyGenericMailet.java │ │ │ │ │ └── MyInterface.java │ │ │ │ │ └── matchers │ │ │ │ │ └── CustomMatcher.java │ │ │ ├── dependency │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── dependency │ │ │ │ │ └── MyDependency.java │ │ │ └── pom.xml │ │ └── utils │ │ │ ├── pom.xml │ │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── utils │ │ │ │ ├── ClassName.java │ │ │ │ ├── ExtendedClassLoader.java │ │ │ │ ├── ExtensionConfiguration.java │ │ │ │ ├── ExtensionModule.java │ │ │ │ ├── FullyQualifiedClassName.java │ │ │ │ ├── GuiceGenericLoader.java │ │ │ │ ├── GuiceLoader.java │ │ │ │ ├── NamingScheme.java │ │ │ │ ├── PackageName.java │ │ │ │ └── UserStartables.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── utils │ │ │ │ ├── ClassNameTest.java │ │ │ │ ├── ExtensionConfigurationTest.java │ │ │ │ ├── FullyQualifiedClassNameTest.java │ │ │ │ ├── NamingSchemeTest.java │ │ │ │ └── PackageNameTest.java │ │ │ └── resources │ │ │ ├── extensions-empty.properties │ │ │ ├── extensions-none.properties │ │ │ ├── extensions-one.properties │ │ │ └── extensions-two.properties │ ├── lifecycle-api │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── lifecycle │ │ │ │ └── api │ │ │ │ ├── Configurable.java │ │ │ │ ├── ConfigurationSanitizer.java │ │ │ │ ├── Disposable.java │ │ │ │ ├── LifecycleUtil.java │ │ │ │ ├── StartUpCheck.java │ │ │ │ └── Startable.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── lifecycle │ │ │ └── api │ │ │ ├── LeakAwareTest.java │ │ │ └── StartUpCheckTest.java │ ├── mailbox-adapter │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── adapter │ │ │ │ │ └── mailbox │ │ │ │ │ ├── ACLUsernameChangeTaskStep.java │ │ │ │ │ ├── DelegationStoreAuthorizator.java │ │ │ │ │ ├── MailboxUserDeletionTaskStep.java │ │ │ │ │ ├── MailboxUsernameChangeTaskStep.java │ │ │ │ │ ├── QuotaUsernameChangeTaskStep.java │ │ │ │ │ ├── UserRepositoryAuthenticator.java │ │ │ │ │ ├── UserRepositoryAuthorizator.java │ │ │ │ │ └── UsersRepositoryUsernameSupplier.java │ │ │ └── resources │ │ │ │ └── mailbox.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── adapter │ │ │ └── mailbox │ │ │ ├── ACLUsernameChangeTaskStepTest.java │ │ │ ├── DelegationStoreAuthorizatorTest.java │ │ │ ├── MailboxUserDeletionTaskStepTest.java │ │ │ ├── MailboxUsernameChangeTaskStepTest.java │ │ │ ├── QuotaUsernameChangeTaskStepTest.java │ │ │ ├── UserRepositoryAuthenticatorTest.java │ │ │ └── UserRepositoryAuthorizatorTest.java │ ├── mailbox-jmx │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── adapter │ │ │ │ └── mailbox │ │ │ │ ├── MailboxCopierManagement.java │ │ │ │ ├── MailboxCopierManagementMBean.java │ │ │ │ ├── MailboxManagerManagement.java │ │ │ │ ├── MailboxManagerManagementMBean.java │ │ │ │ ├── MailboxManagerResolver.java │ │ │ │ ├── MailboxManagerResolverException.java │ │ │ │ ├── QuotaManagement.java │ │ │ │ ├── QuotaManagementMBean.java │ │ │ │ ├── ReIndexerManagement.java │ │ │ │ └── ReIndexerManagementMBean.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── adapter │ │ │ │ └── mailbox │ │ │ │ ├── MailboxManagementTest.java │ │ │ │ └── ReIndexerManagementTest.java │ │ │ └── resources │ │ │ └── eml │ │ │ └── frnog.eml │ ├── spring │ │ ├── .dummy │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── appended-resources │ │ │ │ └── supplemental-models.xml │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── container │ │ │ │ │ └── spring │ │ │ │ │ ├── bean │ │ │ │ │ ├── AbstractBeanFactory.java │ │ │ │ │ ├── factory │ │ │ │ │ │ ├── AbstractBeanFactory.java │ │ │ │ │ │ ├── mailetcontainer │ │ │ │ │ │ │ ├── AbstractLoaderBeanFactory.java │ │ │ │ │ │ │ ├── MailetLoaderBeanFactory.java │ │ │ │ │ │ │ └── MatcherLoaderBeanFactory.java │ │ │ │ │ │ ├── mailrepositorystore │ │ │ │ │ │ │ └── MailRepositoryStoreBeanFactory.java │ │ │ │ │ │ └── protocols │ │ │ │ │ │ │ └── ProtocolHandlerLoaderBeanFactory.java │ │ │ │ │ └── factorypostprocessor │ │ │ │ │ │ ├── ConfigurationBeanFactoryPostProcessor.java │ │ │ │ │ │ ├── FileSystemBeanFactoryPostProcessor.java │ │ │ │ │ │ ├── IndexerConfigurationBeanFactoryPostProcessor.java │ │ │ │ │ │ ├── MailboxConfigurationBeanFactoryPostProcessor.java │ │ │ │ │ │ └── QuotaBeanFactoryPostProcessor.java │ │ │ │ │ ├── context │ │ │ │ │ ├── JamesServerApplicationContext.java │ │ │ │ │ └── web │ │ │ │ │ │ └── JamesServerWebApplicationContext.java │ │ │ │ │ ├── filesystem │ │ │ │ │ ├── FileSystemImpl.java │ │ │ │ │ └── ResourceLoaderFileSystem.java │ │ │ │ │ ├── lifecycle │ │ │ │ │ ├── AbstractLifecycleBeanPostProcessor.java │ │ │ │ │ ├── ConfigurableBeanPostProcessor.java │ │ │ │ │ ├── ConfigurationProvider.java │ │ │ │ │ └── ConfigurationProviderImpl.java │ │ │ │ │ ├── mailbox │ │ │ │ │ ├── MaxQuotaConfigurationReader.java │ │ │ │ │ └── SpringResolver.java │ │ │ │ │ ├── resource │ │ │ │ │ ├── DefaultJamesResourceLoader.java │ │ │ │ │ ├── JamesResourceLoader.java │ │ │ │ │ └── SpringUserEntityValidator.java │ │ │ │ │ └── rmi │ │ │ │ │ └── RmiRegistryFactoryBean.java │ │ │ └── resources │ │ │ │ └── META-INF │ │ │ │ ├── org │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── README │ │ │ │ │ ├── spring-mailbox-authenticator.xml │ │ │ │ │ ├── spring-mailbox-authorizator.xml │ │ │ │ │ └── spring-server.xml │ │ │ │ └── spring │ │ │ │ └── loaders-context.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── container │ │ │ └── spring │ │ │ └── filesystem │ │ │ └── FileSystemImplTest.java │ └── util │ │ ├── pom.xml │ │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── util │ │ │ ├── AuditTrail.java │ │ │ ├── ClassLoaderUtils.java │ │ │ ├── DataChunker.java │ │ │ ├── DurationParser.java │ │ │ ├── FunctionalUtils.java │ │ │ ├── GuavaUtils.java │ │ │ ├── IteratorWrapper.java │ │ │ ├── LoggingLevel.java │ │ │ ├── MDCBuilder.java │ │ │ ├── MDCStructuredLogger.java │ │ │ ├── MemoizedSupplier.java │ │ │ ├── MimeMessageUtil.java │ │ │ ├── OptionalUtils.java │ │ │ ├── ReactorUtils.java │ │ │ ├── RestrictingRMISocketFactory.java │ │ │ ├── Runnables.java │ │ │ ├── Size.java │ │ │ ├── SizeFormat.java │ │ │ ├── StreamUtils.java │ │ │ ├── StructuredLogger.java │ │ │ ├── UnitParser.java │ │ │ ├── ValuePatch.java │ │ │ ├── concurrency │ │ │ └── ConcurrentTestRunner.java │ │ │ ├── concurrent │ │ │ ├── JMXEnabledScheduledThreadPoolExecutor.java │ │ │ ├── JMXEnabledScheduledThreadPoolExecutorMBean.java │ │ │ ├── JMXEnabledThreadPoolExecutorMBean.java │ │ │ └── NamedThreadFactory.java │ │ │ ├── date │ │ │ ├── DefaultZonedDateTimeProvider.java │ │ │ ├── ImapDateTimeFormatter.java │ │ │ └── ZonedDateTimeProvider.java │ │ │ ├── html │ │ │ └── HtmlTextExtractor.java │ │ │ ├── io │ │ │ ├── BodyOffsetInputStream.java │ │ │ ├── CountDownConsumeInputStream.java │ │ │ ├── CurrentPositionInputStream.java │ │ │ ├── InputStreamConsummer.java │ │ │ ├── InputStreamUtils.java │ │ │ └── ZeroedInputStream.java │ │ │ ├── mime │ │ │ └── MessageContentExtractor.java │ │ │ ├── reactor │ │ │ └── Constants.java │ │ │ ├── sql │ │ │ ├── JDBCUtil.java │ │ │ └── SqlResources.java │ │ │ └── streams │ │ │ ├── Iterables.java │ │ │ ├── Iterators.java │ │ │ ├── Limit.java │ │ │ └── Offset.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── util │ │ ├── AuditTrailTest.java │ │ ├── BodyOffsetInputStreamTest.java │ │ ├── CommutativityChecker.java │ │ ├── CommutativityCheckerTest.java │ │ ├── DataChunkerTest.java │ │ ├── DurationParserTest.java │ │ ├── FunctionalUtilsTest.java │ │ ├── GuavaUtilsTest.java │ │ ├── InputStreamUtilsTest.java │ │ ├── IteratorWrapperTest.java │ │ ├── LoggingLevelTest.java │ │ ├── MDCBuilderTest.java │ │ ├── MemoizedSupplierTest.java │ │ ├── OptionalUtilsTest.java │ │ ├── ReactorUtilsTest.java │ │ ├── RunnablesTest.java │ │ ├── SizeFormatTest.java │ │ ├── SizeTest.java │ │ ├── StreamUtilsTest.java │ │ ├── ValuePatchTest.java │ │ ├── concurrency │ │ └── ConcurrentTestRunnerTest.java │ │ ├── date │ │ └── ImapDateTimeFormatterTest.java │ │ ├── io │ │ └── CurrentPositionInputStreamTest.java │ │ ├── mime │ │ └── MessageContentExtractorTest.java │ │ └── streams │ │ ├── ImmutableCollectorsTest.java │ │ ├── IteratorsTest.java │ │ ├── LimitTest.java │ │ └── OffsetTest.java ├── data │ ├── data-api │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── DisconnectorNotifier.java │ │ │ │ ├── dlp │ │ │ │ └── api │ │ │ │ │ ├── DLPConfigurationItem.java │ │ │ │ │ ├── DLPConfigurationLoader.java │ │ │ │ │ ├── DLPConfigurationStore.java │ │ │ │ │ ├── DLPRules.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── domainlist │ │ │ │ └── api │ │ │ │ │ ├── AutoDetectedDomainRemovalException.java │ │ │ │ │ ├── DomainList.java │ │ │ │ │ ├── DomainListException.java │ │ │ │ │ └── DomainListManagementMBean.java │ │ │ │ ├── droplists │ │ │ │ └── api │ │ │ │ │ ├── DeniedEntityType.java │ │ │ │ │ ├── DropList.java │ │ │ │ │ ├── DropListEntry.java │ │ │ │ │ ├── DropListManagementMBean.java │ │ │ │ │ └── OwnerScope.java │ │ │ │ ├── probe │ │ │ │ ├── DataProbe.java │ │ │ │ ├── DropListProbe.java │ │ │ │ └── SieveProbe.java │ │ │ │ ├── rrt │ │ │ │ ├── ForwardUsernameChangeTaskStep.java │ │ │ │ ├── RecipientRewriteTableUserDeletionTaskStep.java │ │ │ │ ├── api │ │ │ │ │ ├── AliasReverseResolver.java │ │ │ │ │ ├── CanSendFrom.java │ │ │ │ │ ├── InvalidRegexException.java │ │ │ │ │ ├── LoopDetectedException.java │ │ │ │ │ ├── MappingAlreadyExistsException.java │ │ │ │ │ ├── MappingConflictException.java │ │ │ │ │ ├── RecipientRewriteTable.java │ │ │ │ │ ├── RecipientRewriteTableConfiguration.java │ │ │ │ │ ├── RecipientRewriteTableException.java │ │ │ │ │ ├── RecipientRewriteTableManagementMBean.java │ │ │ │ │ ├── SameSourceAndDestinationException.java │ │ │ │ │ └── SourceDomainIsNotInDomainListException.java │ │ │ │ └── lib │ │ │ │ │ ├── Mapping.java │ │ │ │ │ ├── MappingSource.java │ │ │ │ │ ├── Mappings.java │ │ │ │ │ ├── MappingsImpl.java │ │ │ │ │ ├── SeparatorUtil.java │ │ │ │ │ ├── SkipMappingProcessingException.java │ │ │ │ │ └── UserRewritter.java │ │ │ │ ├── sieverepository │ │ │ │ └── api │ │ │ │ │ ├── ScriptContent.java │ │ │ │ │ ├── ScriptName.java │ │ │ │ │ ├── ScriptSummary.java │ │ │ │ │ ├── SieveCurrentUploadUsageCalculator.java │ │ │ │ │ ├── SieveQuotaRepository.java │ │ │ │ │ ├── SieveRepository.java │ │ │ │ │ ├── SieveRepositoryManagementMBean.java │ │ │ │ │ └── exception │ │ │ │ │ ├── DuplicateException.java │ │ │ │ │ ├── IsActiveException.java │ │ │ │ │ ├── QuotaExceededException.java │ │ │ │ │ ├── QuotaNotFoundException.java │ │ │ │ │ ├── ScriptNotFoundException.java │ │ │ │ │ ├── SieveRepositoryException.java │ │ │ │ │ └── StorageException.java │ │ │ │ ├── user │ │ │ │ └── api │ │ │ │ │ ├── AlreadyExistInUsersRepositoryException.java │ │ │ │ │ ├── DelegationStore.java │ │ │ │ │ ├── DelegationUserDeletionTaskStep.java │ │ │ │ │ ├── DelegationUsernameChangeTaskStep.java │ │ │ │ │ ├── DeleteUserDataTaskStep.java │ │ │ │ │ ├── InvalidUsernameException.java │ │ │ │ │ ├── UsernameChangeTaskStep.java │ │ │ │ │ ├── UsersRepository.java │ │ │ │ │ ├── UsersRepositoryException.java │ │ │ │ │ ├── UsersRepositoryManagementMBean.java │ │ │ │ │ └── model │ │ │ │ │ └── User.java │ │ │ │ └── vacation │ │ │ │ └── api │ │ │ │ ├── AccountId.java │ │ │ │ ├── NotificationRegistry.java │ │ │ │ ├── RecipientId.java │ │ │ │ ├── Vacation.java │ │ │ │ ├── VacationDeleteUserTaskStep.java │ │ │ │ ├── VacationPatch.java │ │ │ │ ├── VacationRepository.java │ │ │ │ └── VacationService.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── dlp │ │ │ │ └── api │ │ │ │ │ ├── DLPConfigurationItemTest.java │ │ │ │ │ ├── DLPConfigurationStoreContract.java │ │ │ │ │ └── DLPFixture.java │ │ │ │ ├── droplists │ │ │ │ └── api │ │ │ │ │ ├── DropListContract.java │ │ │ │ │ └── DropListEntryTest.java │ │ │ │ ├── rrt │ │ │ │ ├── api │ │ │ │ │ └── RecipientRewriteTableConfigurationTest.java │ │ │ │ └── lib │ │ │ │ │ ├── AliasReverseResolverContract.java │ │ │ │ │ ├── CanSendFromContract.java │ │ │ │ │ ├── DomainRewriterTest.java │ │ │ │ │ ├── MappingSourceTest.java │ │ │ │ │ ├── MappingTest.java │ │ │ │ │ ├── RegexRewriterTest.java │ │ │ │ │ ├── ReplaceRewriterTest.java │ │ │ │ │ ├── SeparatorUtilTest.java │ │ │ │ │ └── ThrowingRewriterTest.java │ │ │ │ ├── sieverepository │ │ │ │ └── api │ │ │ │ │ ├── ScriptNameTest.java │ │ │ │ │ ├── ScriptSummaryTest.java │ │ │ │ │ └── SieveCurrentUploadUsageCalculatorContract.java │ │ │ │ ├── user │ │ │ │ └── api │ │ │ │ │ └── DelegationStoreContract.java │ │ │ │ └── vacation │ │ │ │ └── api │ │ │ │ ├── AccountIdTest.java │ │ │ │ ├── NotificationRegistryContract.java │ │ │ │ ├── VacationPatchTest.java │ │ │ │ ├── VacationRepositoryContract.java │ │ │ │ └── VacationTest.java │ │ │ └── resources │ │ │ ├── domainlist.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── recipientrewritetable.xml │ │ │ ├── sieverepository.xml │ │ │ └── usersrepository.xml │ ├── data-cassandra │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── dlp │ │ │ │ └── eventsourcing │ │ │ │ │ └── cassandra │ │ │ │ │ ├── DLPConfigurationItemAddedDTO.java │ │ │ │ │ ├── DLPConfigurationItemDTO.java │ │ │ │ │ ├── DLPConfigurationItemsRemovedDTO.java │ │ │ │ │ └── DLPConfigurationModules.java │ │ │ │ ├── domainlist │ │ │ │ └── cassandra │ │ │ │ │ ├── CassandraDomainList.java │ │ │ │ │ ├── CassandraDomainListDataDefinition.java │ │ │ │ │ └── tables │ │ │ │ │ └── CassandraDomainsTable.java │ │ │ │ ├── droplists │ │ │ │ └── cassandra │ │ │ │ │ ├── CassandraDropList.java │ │ │ │ │ ├── CassandraDropListDAO.java │ │ │ │ │ ├── CassandraDropListDataDefinition.java │ │ │ │ │ └── tables │ │ │ │ │ └── CassandraDropListTable.java │ │ │ │ ├── rrt │ │ │ │ └── cassandra │ │ │ │ │ ├── CassandraMappingsSourcesDAO.java │ │ │ │ │ ├── CassandraRRTDataDefinition.java │ │ │ │ │ ├── CassandraRecipientRewriteTable.java │ │ │ │ │ ├── CassandraRecipientRewriteTableDAO.java │ │ │ │ │ ├── migration │ │ │ │ │ ├── MappingsSourcesMigration.java │ │ │ │ │ ├── MappingsSourcesMigrationTaskAdditionalInformationDTO.java │ │ │ │ │ └── MappingsSourcesMigrationTaskDTO.java │ │ │ │ │ └── tables │ │ │ │ │ ├── CassandraMappingsSourcesTable.java │ │ │ │ │ └── CassandraRecipientRewriteTableTable.java │ │ │ │ ├── sieve │ │ │ │ └── cassandra │ │ │ │ │ ├── CassandraActiveScriptDAO.java │ │ │ │ │ ├── CassandraSieveDAO.java │ │ │ │ │ ├── CassandraSieveQuotaDAO.java │ │ │ │ │ ├── CassandraSieveQuotaDAOV1.java │ │ │ │ │ ├── CassandraSieveQuotaDAOV2.java │ │ │ │ │ ├── CassandraSieveQuotaDataDefinition.java │ │ │ │ │ ├── CassandraSieveRepository.java │ │ │ │ │ ├── CassandraSieveRepositoryDataDefinition.java │ │ │ │ │ ├── FakeSieveQuotaDAO.java │ │ │ │ │ ├── migration │ │ │ │ │ └── SieveQuotaMigration.java │ │ │ │ │ ├── model │ │ │ │ │ ├── ActiveScriptInfo.java │ │ │ │ │ ├── Script.java │ │ │ │ │ └── SieveQuota.java │ │ │ │ │ └── tables │ │ │ │ │ ├── CassandraSieveActiveTable.java │ │ │ │ │ ├── CassandraSieveClusterQuotaTable.java │ │ │ │ │ ├── CassandraSieveQuotaTable.java │ │ │ │ │ ├── CassandraSieveSpaceTable.java │ │ │ │ │ └── CassandraSieveTable.java │ │ │ │ ├── user │ │ │ │ └── cassandra │ │ │ │ │ ├── CassandraDelegationStore.java │ │ │ │ │ ├── CassandraRepositoryConfiguration.java │ │ │ │ │ ├── CassandraUsersDAO.java │ │ │ │ │ ├── CassandraUsersRepositoryDataDefinition.java │ │ │ │ │ └── tables │ │ │ │ │ └── CassandraUserTable.java │ │ │ │ └── vacation │ │ │ │ └── cassandra │ │ │ │ ├── CassandraNotificationRegistry.java │ │ │ │ ├── CassandraNotificationRegistryDAO.java │ │ │ │ ├── CassandraNotificationRegistryDataDefinition.java │ │ │ │ ├── CassandraVacationDAO.java │ │ │ │ ├── CassandraVacationDataDefinition.java │ │ │ │ ├── CassandraVacationRepository.java │ │ │ │ └── tables │ │ │ │ ├── CassandraNotificationTable.java │ │ │ │ └── CassandraVacationTable.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── dlp │ │ │ │ └── eventsourcing │ │ │ │ │ └── cassandra │ │ │ │ │ ├── CassandraEventSourcingDLPConfigurationStoreExtension.java │ │ │ │ │ ├── CassandraEventSourcingDLPConfigurationStoreTest.java │ │ │ │ │ └── DTOTest.java │ │ │ │ ├── domainlist │ │ │ │ └── cassandra │ │ │ │ │ ├── CacheDomainListTest.java │ │ │ │ │ └── CassandraDomainListTest.java │ │ │ │ ├── droplists │ │ │ │ └── cassandra │ │ │ │ │ └── CassandraDropListTest.java │ │ │ │ ├── rrt │ │ │ │ └── cassandra │ │ │ │ │ ├── CassandraMappingsSourcesDAOTest.java │ │ │ │ │ ├── CassandraRecipientRewriteTableDAOTest.java │ │ │ │ │ ├── CassandraRecipientRewriteTableTest.java │ │ │ │ │ ├── CassandraStepdefs.java │ │ │ │ │ ├── RewriteTablesTest.java │ │ │ │ │ └── migration │ │ │ │ │ ├── MappingsSourcesMigrationTaskSerializationTest.java │ │ │ │ │ └── MappingsSourcesMigrationTest.java │ │ │ │ ├── sieve │ │ │ │ └── cassandra │ │ │ │ │ ├── CassandraActiveScriptDAOTest.java │ │ │ │ │ ├── CassandraSieveCurrentUploadUsageCalculatorTest.java │ │ │ │ │ ├── CassandraSieveDAOTest.java │ │ │ │ │ ├── CassandraSieveQuotaDAOContract.java │ │ │ │ │ ├── CassandraSieveQuotaDAOV1Test.java │ │ │ │ │ ├── CassandraSieveQuotaDAOV2Test.java │ │ │ │ │ ├── CassandraSieveRepositoryTest.java │ │ │ │ │ ├── migration │ │ │ │ │ └── SieveQuotaMigrationTest.java │ │ │ │ │ └── model │ │ │ │ │ ├── ScriptTest.java │ │ │ │ │ └── SieveQuotaTest.java │ │ │ │ ├── user │ │ │ │ └── cassandra │ │ │ │ │ ├── CassandraDelegationStoreTest.java │ │ │ │ │ └── CassandraUsersRepositoryTest.java │ │ │ │ └── vacation │ │ │ │ └── cassandra │ │ │ │ ├── CassandraNotificationRegistryTest.java │ │ │ │ └── CassandraVacationRepositoryTest.java │ │ │ └── resources │ │ │ └── json │ │ │ └── dlp │ │ │ └── eventsourcing │ │ │ ├── configuration_item_1.json │ │ │ ├── items_added_event_1.json │ │ │ ├── items_added_event_2.json │ │ │ ├── items_removed_event_1.json │ │ │ └── items_removed_event_2.json │ ├── data-file │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── domainlist │ │ │ │ └── xml │ │ │ │ │ └── XMLDomainList.java │ │ │ │ ├── mailrepository │ │ │ │ └── file │ │ │ │ │ ├── FileMailRepository.java │ │ │ │ │ ├── Lock.java │ │ │ │ │ └── MimeMessageStreamRepositorySource.java │ │ │ │ ├── rrt │ │ │ │ └── file │ │ │ │ │ └── XMLRecipientRewriteTable.java │ │ │ │ └── sieverepository │ │ │ │ └── file │ │ │ │ └── SieveFileRepository.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── domainlist │ │ │ │ └── xml │ │ │ │ │ └── XMLDomainListTest.java │ │ │ │ ├── mailrepository │ │ │ │ └── FileMailRepositoryTest.java │ │ │ │ ├── rrt │ │ │ │ └── file │ │ │ │ │ ├── RewriteTablesTest.java │ │ │ │ │ ├── XMLRecipientRewriteTableTest.java │ │ │ │ │ └── XMLStepdefs.java │ │ │ │ └── sieverepository │ │ │ │ └── file │ │ │ │ └── SieveFileRepositoryTest.java │ │ │ └── resources │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailrepository │ │ │ └── testdata │ │ │ └── Inbox │ ├── data-jmap-cassandra │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── jmap │ │ │ │ │ └── cassandra │ │ │ │ │ ├── change │ │ │ │ │ ├── CassandraChangesConfiguration.java │ │ │ │ │ ├── CassandraEmailChangeDataDefinition.java │ │ │ │ │ ├── CassandraEmailChangeRepository.java │ │ │ │ │ ├── CassandraMailboxChangeDataDefinition.java │ │ │ │ │ ├── CassandraMailboxChangeRepository.java │ │ │ │ │ ├── CassandraStateFactory.java │ │ │ │ │ ├── EmailChangeRepositoryDAO.java │ │ │ │ │ ├── MailboxChangeRepositoryDAO.java │ │ │ │ │ └── tables │ │ │ │ │ │ ├── CassandraEmailChangeTable.java │ │ │ │ │ │ └── CassandraMailboxChangeTable.java │ │ │ │ │ ├── filtering │ │ │ │ │ ├── CassandraFilteringProjection.java │ │ │ │ │ └── CassandraFilteringProjectionDataDefinition.java │ │ │ │ │ ├── projections │ │ │ │ │ ├── CassandraEmailQueryView.java │ │ │ │ │ ├── CassandraEmailQueryViewDataDefinition.java │ │ │ │ │ ├── CassandraMessageFastViewProjection.java │ │ │ │ │ ├── CassandraMessageFastViewProjectionDataDefinition.java │ │ │ │ │ ├── CassandraMessageFastViewProjectionDeletionCallback.java │ │ │ │ │ └── table │ │ │ │ │ │ ├── CassandraEmailQueryViewTable.java │ │ │ │ │ │ └── CassandraMessageFastViewProjectionTable.java │ │ │ │ │ ├── pushsubscription │ │ │ │ │ ├── CassandraPushSubscriptionDAO.java │ │ │ │ │ ├── CassandraPushSubscriptionDataDefinition.java │ │ │ │ │ ├── CassandraPushSubscriptionRepository.java │ │ │ │ │ └── tables │ │ │ │ │ │ └── CassandraPushSubscriptionTable.java │ │ │ │ │ └── upload │ │ │ │ │ ├── CassandraUploadRepository.java │ │ │ │ │ ├── CassandraUploadUsageRepository.java │ │ │ │ │ ├── UploadBucketName.java │ │ │ │ │ ├── UploadDAO.java │ │ │ │ │ └── UploadDataDefinition.java │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ └── cassandra │ │ │ │ ├── identity │ │ │ │ ├── CassandraCustomIdentityDAO.scala │ │ │ │ ├── CassandraCustomIdentityDataDefinition.scala │ │ │ │ └── tables │ │ │ │ │ └── CassandraCustomIdentityTable.scala │ │ │ │ └── utils │ │ │ │ └── EmailAddressTupleUtil.scala │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ └── cassandra │ │ │ │ ├── change │ │ │ │ ├── CassandraChangesConfigurationTest.java │ │ │ │ ├── CassandraEmailChangeRepositoryTest.java │ │ │ │ └── CassandraMailboxChangeRepositoryTest.java │ │ │ │ ├── filtering │ │ │ │ ├── CassandraEventSourcingFilteringManagementNoProjectionTest.java │ │ │ │ ├── CassandraEventSourcingFilteringManagementTest.java │ │ │ │ └── DTOTest.java │ │ │ │ ├── identity │ │ │ │ └── CassandraCustomIdentityTest.java │ │ │ │ ├── projections │ │ │ │ ├── CassandraEmailQueryViewTest.java │ │ │ │ └── CassandraMessageFastViewProjectionTest.java │ │ │ │ ├── pushsubscription │ │ │ │ └── CassandraPushSubscriptionRepositoryTest.java │ │ │ │ └── upload │ │ │ │ ├── CassandraJMAPCurrentUploadUsageCalculatorTest.java │ │ │ │ ├── CassandraUploadRepositoryTest.java │ │ │ │ ├── CassandraUploadServiceTest.java │ │ │ │ ├── CassandraUploadUsageRepositoryTest.java │ │ │ │ └── UploadBucketNameTest.java │ │ │ └── resources │ │ │ └── json │ │ │ ├── event-v2.json │ │ │ ├── event-v3.json │ │ │ ├── event-v4.json │ │ │ ├── event.json │ │ │ ├── eventComplex-v2.json │ │ │ ├── eventComplex-v3.json │ │ │ ├── eventComplex-v4.json │ │ │ ├── eventComplex.json │ │ │ ├── eventEmpty.json │ │ │ ├── increment-v2.json │ │ │ ├── increment-v3.json │ │ │ ├── increment-v4.json │ │ │ └── increment.json │ ├── data-jmap-postgres │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ └── postgres │ │ │ │ ├── PostgresDataJMapAggregateDataDefinition.java │ │ │ │ ├── change │ │ │ │ ├── PostgresEmailChangeDAO.java │ │ │ │ ├── PostgresEmailChangeDataDefinition.java │ │ │ │ ├── PostgresEmailChangeRepository.java │ │ │ │ ├── PostgresMailboxChangeDAO.java │ │ │ │ ├── PostgresMailboxChangeDataDefinition.java │ │ │ │ ├── PostgresMailboxChangeRepository.java │ │ │ │ └── PostgresStateFactory.java │ │ │ │ ├── filtering │ │ │ │ ├── PostgresFilteringProjection.java │ │ │ │ ├── PostgresFilteringProjectionDAO.java │ │ │ │ └── PostgresFilteringProjectionDataDefinition.java │ │ │ │ ├── identity │ │ │ │ ├── PostgresCustomIdentityDAO.java │ │ │ │ └── PostgresCustomIdentityDataDefinition.java │ │ │ │ ├── projections │ │ │ │ ├── PostgresEmailQueryView.java │ │ │ │ ├── PostgresEmailQueryViewDAO.java │ │ │ │ ├── PostgresEmailQueryViewDataDefinition.java │ │ │ │ ├── PostgresEmailQueryViewManager.java │ │ │ │ ├── PostgresMessageFastViewProjection.java │ │ │ │ ├── PostgresMessageFastViewProjectionDataDefinition.java │ │ │ │ └── PostgresMessageFastViewProjectionDeletionCallback.java │ │ │ │ ├── pushsubscription │ │ │ │ ├── PostgresPushSubscriptionDAO.java │ │ │ │ ├── PostgresPushSubscriptionDataDefinition.java │ │ │ │ └── PostgresPushSubscriptionRepository.java │ │ │ │ └── upload │ │ │ │ ├── PostgresUploadDAO.java │ │ │ │ ├── PostgresUploadDataDefinition.java │ │ │ │ ├── PostgresUploadRepository.java │ │ │ │ └── PostgresUploadUsageRepository.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── jmap │ │ │ └── postgres │ │ │ ├── change │ │ │ ├── PostgresEmailChangeRepositoryTest.java │ │ │ └── PostgresMailboxChangeRepositoryTest.java │ │ │ ├── filtering │ │ │ ├── PostgresEventSourcingFilteringManagementNoProjectionTest.java │ │ │ └── PostgresEventSourcingFilteringManagementTest.java │ │ │ ├── identity │ │ │ └── PostgresCustomIdentityDAOTest.java │ │ │ ├── projections │ │ │ ├── PostgresEmailQueryViewManagerRLSTest.java │ │ │ ├── PostgresEmailQueryViewTest.java │ │ │ └── PostgresMessageFastViewProjectionTest.java │ │ │ ├── pushsubscription │ │ │ └── PostgresPushSubscriptionRepositoryTest.java │ │ │ └── upload │ │ │ ├── PostgresUploadRepositoryTest.java │ │ │ ├── PostgresUploadServiceTest.java │ │ │ └── PostgresUploadUsageRepositoryTest.java │ ├── data-jmap │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── jmap │ │ │ │ │ ├── api │ │ │ │ │ ├── change │ │ │ │ │ │ ├── CanNotCalculateChangesException.java │ │ │ │ │ │ ├── EmailChange.java │ │ │ │ │ │ ├── EmailChangeRepository.java │ │ │ │ │ │ ├── EmailChanges.java │ │ │ │ │ │ ├── JmapChange.java │ │ │ │ │ │ ├── Limit.java │ │ │ │ │ │ ├── MailboxAndEmailChange.java │ │ │ │ │ │ ├── MailboxChange.java │ │ │ │ │ │ ├── MailboxChangeRepository.java │ │ │ │ │ │ ├── MailboxChanges.java │ │ │ │ │ │ └── State.java │ │ │ │ │ ├── exception │ │ │ │ │ │ ├── ChangeNotFoundException.java │ │ │ │ │ │ └── StateMismatchException.java │ │ │ │ │ ├── filtering │ │ │ │ │ │ ├── FilteringIncrementalRuleChangeDTO.java │ │ │ │ │ │ ├── FilteringManagement.java │ │ │ │ │ │ ├── FilteringRuleSetDefineDTOModules.java │ │ │ │ │ │ ├── FilteringRuleSetDefinedDTO.java │ │ │ │ │ │ ├── FiltersDeleteUserDataTaskStep.java │ │ │ │ │ │ ├── Rule.java │ │ │ │ │ │ ├── RuleDTO.java │ │ │ │ │ │ ├── Rules.java │ │ │ │ │ │ ├── Version.java │ │ │ │ │ │ └── impl │ │ │ │ │ │ │ ├── DefineRulesCommand.java │ │ │ │ │ │ │ ├── DefineRulesCommandHandler.java │ │ │ │ │ │ │ ├── EventSourcingFilteringManagement.java │ │ │ │ │ │ │ ├── FilterUsernameChangeTaskStep.java │ │ │ │ │ │ │ ├── FilteringAggregate.java │ │ │ │ │ │ │ ├── FilteringAggregateId.java │ │ │ │ │ │ │ ├── IncrementalRuleChange.java │ │ │ │ │ │ │ └── RuleSetDefined.java │ │ │ │ │ ├── model │ │ │ │ │ │ ├── AccountId.java │ │ │ │ │ │ ├── Preview.java │ │ │ │ │ │ ├── Size.scala │ │ │ │ │ │ ├── Upload.scala │ │ │ │ │ │ └── UploadId.java │ │ │ │ │ ├── projections │ │ │ │ │ │ ├── DefaultEmailQueryViewManager.java │ │ │ │ │ │ ├── EmailQueryView.java │ │ │ │ │ │ ├── EmailQueryViewManager.java │ │ │ │ │ │ ├── MessageFastViewPrecomputedProperties.java │ │ │ │ │ │ ├── MessageFastViewProjection.java │ │ │ │ │ │ └── MessageFastViewProjectionHealthCheck.java │ │ │ │ │ ├── pushsubscription │ │ │ │ │ │ ├── PushDeleteUserDataTaskStep.java │ │ │ │ │ │ ├── PushSubscriptionDisconnector.java │ │ │ │ │ │ ├── PushSubscriptionHelpers.java │ │ │ │ │ │ └── PushSubscriptionRepository.java │ │ │ │ │ └── upload │ │ │ │ │ │ ├── JMAPCurrentUploadUsageCalculator.java │ │ │ │ │ │ ├── JmapUploadQuotaConfiguration.java │ │ │ │ │ │ ├── RecomputeJMAPUploadCurrentQuotasService.java │ │ │ │ │ │ ├── UploadRepository.java │ │ │ │ │ │ ├── UploadService.java │ │ │ │ │ │ ├── UploadServiceDefaultImpl.java │ │ │ │ │ │ └── UploadUsageRepository.java │ │ │ │ │ ├── memory │ │ │ │ │ ├── change │ │ │ │ │ │ ├── MemoryEmailChangeRepository.java │ │ │ │ │ │ └── MemoryMailboxChangeRepository.java │ │ │ │ │ ├── projections │ │ │ │ │ │ ├── MemoryEmailQueryView.java │ │ │ │ │ │ └── MemoryMessageFastViewProjection.java │ │ │ │ │ ├── pushsubscription │ │ │ │ │ │ ├── MemoryPushSubscriptionModule.java │ │ │ │ │ │ └── MemoryPushSubscriptionRepository.java │ │ │ │ │ └── upload │ │ │ │ │ │ ├── InMemoryUploadRepository.java │ │ │ │ │ │ └── InMemoryUploadUsageRepository.java │ │ │ │ │ └── mime4j │ │ │ │ │ ├── AvoidBinaryBodyBufferingBodyFactory.java │ │ │ │ │ ├── AvoidBinaryBodyReadingBodyFactory.java │ │ │ │ │ ├── FakeBinaryBody.java │ │ │ │ │ └── SizeUtils.java │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ ├── api │ │ │ │ ├── change │ │ │ │ │ └── TypeStateFactory.scala │ │ │ │ ├── identity │ │ │ │ │ ├── CustomIdentityDAO.scala │ │ │ │ │ └── IdentityUserDeletionTaskStep.scala │ │ │ │ └── model │ │ │ │ │ ├── EmailAddress.scala │ │ │ │ │ ├── Identity.scala │ │ │ │ │ ├── PushSubscription.scala │ │ │ │ │ ├── State.scala │ │ │ │ │ └── TypeName.scala │ │ │ │ └── memory │ │ │ │ └── identity │ │ │ │ └── MemoryCustomIdentityDAO.scala │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ ├── api │ │ │ │ ├── change │ │ │ │ │ ├── EmailChangeRepositoryContract.java │ │ │ │ │ ├── EmailChangeTest.java │ │ │ │ │ ├── LimitTest.java │ │ │ │ │ ├── MailboxChangeRepositoryContract.java │ │ │ │ │ ├── MailboxChangeTest.java │ │ │ │ │ └── StateTest.java │ │ │ │ ├── filtering │ │ │ │ │ ├── FilteringAggregateIdTest.java │ │ │ │ │ ├── FilteringManagementContract.java │ │ │ │ │ ├── RuleFixture.java │ │ │ │ │ ├── RuleTest.java │ │ │ │ │ ├── RulesTest.java │ │ │ │ │ ├── VersionTest.java │ │ │ │ │ └── impl │ │ │ │ │ │ ├── DefineRulesCommandTest.java │ │ │ │ │ │ ├── FilterUsernameChangeTaskStepTest.java │ │ │ │ │ │ ├── FiltersDeleteUserDataTaskStepTest.java │ │ │ │ │ │ ├── InMemoryEventSourcingFilteringManagementTest.java │ │ │ │ │ │ └── IncrementalRuleChangeTest.java │ │ │ │ ├── model │ │ │ │ │ └── PreviewTest.java │ │ │ │ ├── projections │ │ │ │ │ ├── EmailQueryViewContract.java │ │ │ │ │ ├── MessageFastViewPrecomputedPropertiesTest.java │ │ │ │ │ ├── MessageFastViewProjectionContract.java │ │ │ │ │ └── MessageFastViewProjectionHealthCheckTest.java │ │ │ │ └── upload │ │ │ │ │ ├── JMAPCurrentUploadUsageCalculatorContract.scala │ │ │ │ │ ├── UploadRepositoryContract.scala │ │ │ │ │ └── UploadUsageRepositoryContract.scala │ │ │ │ └── memory │ │ │ │ ├── change │ │ │ │ ├── MemoryEmailChangeRepositoryTest.java │ │ │ │ └── MemoryMailboxChangeRepositoryTest.java │ │ │ │ ├── projections │ │ │ │ ├── MemoryEmailQueryViewTest.java │ │ │ │ └── MemoryMessageFastViewProjectionTest.java │ │ │ │ ├── pushsubscription │ │ │ │ └── MemoryPushSubscriptionRepositoryTest.java │ │ │ │ └── upload │ │ │ │ ├── InMemoryJMAPCurrentUploadUsageCalculatorTest.java │ │ │ │ ├── InMemoryUploadRepositoryTest.java │ │ │ │ ├── InMemoryUploadServiceTest.java │ │ │ │ └── InMemoryUploadUsageRepositoryTest.java │ │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── jmap │ │ │ ├── api │ │ │ ├── identity │ │ │ │ ├── CustomIdentityDAOContract.scala │ │ │ │ └── IdentityRepositoryTest.scala │ │ │ ├── pushsubscription │ │ │ │ ├── PushDeleteUserDataTaskStepTest.scala │ │ │ │ └── PushSubscriptionRepositoryContract.scala │ │ │ └── upload │ │ │ │ └── UploadServiceContract.scala │ │ │ └── memory │ │ │ └── identity │ │ │ ├── IdentityUserDeletionTaskStepTest.scala │ │ │ └── MemoryCustomIdentityTest.scala │ ├── data-jpa │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── domainlist │ │ │ │ └── jpa │ │ │ │ │ ├── JPADomainList.java │ │ │ │ │ └── model │ │ │ │ │ └── JPADomain.java │ │ │ │ ├── droplists │ │ │ │ └── jpa │ │ │ │ │ ├── JPADropList.java │ │ │ │ │ └── model │ │ │ │ │ └── JPADropListEntry.java │ │ │ │ ├── jpa │ │ │ │ └── healthcheck │ │ │ │ │ └── JPAHealthCheck.java │ │ │ │ ├── mailrepository │ │ │ │ └── jpa │ │ │ │ │ ├── JPAMailRepository.java │ │ │ │ │ ├── JPAMailRepositoryFactory.java │ │ │ │ │ ├── JPAMailRepositoryUrlStore.java │ │ │ │ │ ├── MimeMessageJPASource.java │ │ │ │ │ └── model │ │ │ │ │ ├── JPAMail.java │ │ │ │ │ └── JPAUrl.java │ │ │ │ ├── rrt │ │ │ │ └── jpa │ │ │ │ │ ├── JPARecipientRewriteTable.java │ │ │ │ │ └── model │ │ │ │ │ └── JPARecipientRewrite.java │ │ │ │ ├── sieve │ │ │ │ └── jpa │ │ │ │ │ ├── JPASieveRepository.java │ │ │ │ │ └── model │ │ │ │ │ ├── JPASieveQuota.java │ │ │ │ │ └── JPASieveScript.java │ │ │ │ └── user │ │ │ │ └── jpa │ │ │ │ ├── JPAUsersDAO.java │ │ │ │ ├── JPAUsersRepository.java │ │ │ │ └── model │ │ │ │ └── JPAUser.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── domainlist │ │ │ │ └── jpa │ │ │ │ │ └── JPADomainListTest.java │ │ │ │ ├── droplists │ │ │ │ └── jpa │ │ │ │ │ └── JPADropListTest.java │ │ │ │ ├── jpa │ │ │ │ └── healthcheck │ │ │ │ │ └── JPAHealthCheckTest.java │ │ │ │ ├── mailrepository │ │ │ │ └── jpa │ │ │ │ │ ├── JPAMailRepositoryTest.java │ │ │ │ │ ├── JPAMailRepositoryUrlStoreExtension.java │ │ │ │ │ └── JPAMailRepositoryUrlStoreTest.java │ │ │ │ ├── rrt │ │ │ │ └── jpa │ │ │ │ │ ├── JPARecipientRewriteTableTest.java │ │ │ │ │ ├── JPAStepdefs.java │ │ │ │ │ └── RewriteTablesTest.java │ │ │ │ ├── sieve │ │ │ │ └── jpa │ │ │ │ │ └── JpaSieveRepositoryTest.java │ │ │ │ └── user │ │ │ │ └── jpa │ │ │ │ ├── JpaUsersRepositoryTest.java │ │ │ │ └── model │ │ │ │ └── JPAUserTest.java │ │ │ └── resources │ │ │ ├── log4j.properties │ │ │ └── persistence.xml │ ├── data-ldap │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── user │ │ │ │ └── ldap │ │ │ │ ├── LDAPConnectionFactory.java │ │ │ │ ├── LdapHealthCheck.java │ │ │ │ ├── LdapRepositoryConfiguration.java │ │ │ │ ├── ReadOnlyLDAPGroupRestriction.java │ │ │ │ ├── ReadOnlyLDAPUser.java │ │ │ │ ├── ReadOnlyLDAPUsersDAO.java │ │ │ │ └── ReadOnlyUsersLDAPRepository.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── user │ │ │ │ └── ldap │ │ │ │ ├── DockerLdapSingleton.java │ │ │ │ ├── LdapGenericContainer.java │ │ │ │ ├── LdapHealthCheckTest.java │ │ │ │ ├── LdapRepositoryConfigurationTest.java │ │ │ │ ├── ReadOnlyUsersLDAPRepositoryEmptyListTest.java │ │ │ │ ├── ReadOnlyUsersLDAPRepositoryInvalidDnTest.java │ │ │ │ ├── ReadOnlyUsersLDAPRepositoryTest.java │ │ │ │ ├── ReadOnlyUsersLDAPRepositoryWithLDAPFailoverTest.java │ │ │ │ └── ReadOnlyUsersLDAPRepositoryWithLocalPartAsLoginNameTest.java │ │ │ └── resources │ │ │ ├── invalid │ │ │ └── ldif-files │ │ │ │ └── populate.ldif │ │ │ ├── ldif-files │ │ │ └── populate.ldif │ │ │ ├── localpartLogin │ │ │ └── ldif-files │ │ │ │ └── populate.ldif │ │ │ ├── usersrepository-default.xml │ │ │ ├── usersrepository-enableVirtualHosting.xml │ │ │ └── usersrepository-supportsVirtualHosting.xml │ ├── data-library │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ ├── AggregateUserEntityValidator.java │ │ │ │ │ ├── DefaultUserEntityValidator.java │ │ │ │ │ ├── DefaultVacationService.java │ │ │ │ │ ├── RecipientRewriteTableUserEntityValidator.java │ │ │ │ │ ├── UserEntityValidator.java │ │ │ │ │ ├── dlp │ │ │ │ │ └── eventsourcing │ │ │ │ │ │ ├── EventSourcingDLPConfigurationStore.java │ │ │ │ │ │ ├── aggregates │ │ │ │ │ │ ├── DLPAggregateId.java │ │ │ │ │ │ └── DLPDomainConfiguration.java │ │ │ │ │ │ ├── commands │ │ │ │ │ │ ├── ClearCommand.java │ │ │ │ │ │ ├── ClearCommandHandler.java │ │ │ │ │ │ ├── StoreCommand.java │ │ │ │ │ │ └── StoreCommandHandler.java │ │ │ │ │ │ └── events │ │ │ │ │ │ ├── ConfigurationItemsAdded.java │ │ │ │ │ │ └── ConfigurationItemsRemoved.java │ │ │ │ │ ├── domainlist │ │ │ │ │ └── lib │ │ │ │ │ │ ├── AbstractDomainList.java │ │ │ │ │ │ ├── DomainListConfiguration.java │ │ │ │ │ │ ├── DomainListManagement.java │ │ │ │ │ │ └── EnvDetector.java │ │ │ │ │ ├── droplist │ │ │ │ │ └── lib │ │ │ │ │ │ └── DropListManagement.java │ │ │ │ │ ├── repository │ │ │ │ │ ├── api │ │ │ │ │ │ ├── ObjectRepository.java │ │ │ │ │ │ └── StreamRepository.java │ │ │ │ │ └── file │ │ │ │ │ │ ├── AbstractFileRepository.java │ │ │ │ │ │ ├── ClassLoaderObjectInputStream.java │ │ │ │ │ │ ├── ExtensionFileFilter.java │ │ │ │ │ │ ├── FilePersistentObjectRepository.java │ │ │ │ │ │ ├── FilePersistentStreamRepository.java │ │ │ │ │ │ └── NumberedRepositoryFileFilter.java │ │ │ │ │ ├── rrt │ │ │ │ │ └── lib │ │ │ │ │ │ ├── AbstractRecipientRewriteTable.java │ │ │ │ │ │ ├── AliasReverseResolverImpl.java │ │ │ │ │ │ ├── CanSendFromImpl.java │ │ │ │ │ │ ├── RecipientRewriteTableManagement.java │ │ │ │ │ │ └── RecipientRewriteTableUtil.java │ │ │ │ │ ├── sieverepository │ │ │ │ │ └── lib │ │ │ │ │ │ └── SieveRepositoryManagement.java │ │ │ │ │ └── user │ │ │ │ │ └── lib │ │ │ │ │ ├── UsersDAO.java │ │ │ │ │ ├── UsersRepositoryImpl.java │ │ │ │ │ ├── UsersRepositoryManagement.java │ │ │ │ │ ├── model │ │ │ │ │ ├── Algorithm.java │ │ │ │ │ └── DefaultUser.java │ │ │ │ │ └── package.html │ │ │ └── resources │ │ │ │ └── META-INF │ │ │ │ └── spring │ │ │ │ └── data-context.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── DefaultVacationServiceTest.java │ │ │ │ ├── dlp │ │ │ │ └── eventsourcing │ │ │ │ │ ├── aggregates │ │ │ │ │ └── DLPAggregateIdTest.java │ │ │ │ │ ├── commands │ │ │ │ │ ├── ClearCommandTest.java │ │ │ │ │ └── StoreCommandTest.java │ │ │ │ │ └── events │ │ │ │ │ ├── ConfigurationItemsAddedTest.java │ │ │ │ │ └── ConfigurationItemsRemovedTest.java │ │ │ │ ├── domainlist │ │ │ │ ├── api │ │ │ │ │ └── mock │ │ │ │ │ │ └── SimpleDomainList.java │ │ │ │ └── lib │ │ │ │ │ ├── AbstractDomainListPrivateMethodsTest.java │ │ │ │ │ ├── DomainListConfigurationTest.java │ │ │ │ │ └── DomainListContract.java │ │ │ │ ├── rrt │ │ │ │ └── lib │ │ │ │ │ ├── MappingsImplTest.java │ │ │ │ │ ├── RecipientRewriteTableContract.java │ │ │ │ │ ├── RecipientRewriteTableFixture.java │ │ │ │ │ └── RewriteTablesStepdefs.java │ │ │ │ ├── sieverepository │ │ │ │ └── lib │ │ │ │ │ ├── SieveRepositoryContract.java │ │ │ │ │ └── SieveRepositoryManagementTest.java │ │ │ │ └── user │ │ │ │ └── lib │ │ │ │ ├── UsersRepositoryContract.java │ │ │ │ └── model │ │ │ │ ├── AlgorithmTest.java │ │ │ │ └── DefaultUserTest.java │ │ │ └── resources │ │ │ ├── cucumber │ │ │ └── rewrite_tables.feature │ │ │ └── sieve │ │ │ └── my_sieve │ ├── data-memory │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── domainlist │ │ │ │ └── memory │ │ │ │ │ └── MemoryDomainList.java │ │ │ │ ├── droplists │ │ │ │ └── memory │ │ │ │ │ └── MemoryDropList.java │ │ │ │ ├── rrt │ │ │ │ └── memory │ │ │ │ │ └── MemoryRecipientRewriteTable.java │ │ │ │ ├── sieverepository │ │ │ │ └── memory │ │ │ │ │ └── InMemorySieveQuotaRepository.java │ │ │ │ ├── user │ │ │ │ └── memory │ │ │ │ │ ├── MemoryDelegationStore.java │ │ │ │ │ ├── MemoryUsersDAO.java │ │ │ │ │ ├── MemoryUsersRepository.java │ │ │ │ │ └── NaiveDelegationStore.java │ │ │ │ └── vacation │ │ │ │ └── memory │ │ │ │ ├── MemoryNotificationRegistry.java │ │ │ │ └── MemoryVacationRepository.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── dlp │ │ │ │ └── memory │ │ │ │ │ ├── EventSourcingDLPConfigurationStoreTest.java │ │ │ │ │ └── InMemoryEventSourcingDLPConfigurationStoreExtension.java │ │ │ │ ├── domainlist │ │ │ │ └── memory │ │ │ │ │ └── MemoryDomainListTest.java │ │ │ │ ├── droplists │ │ │ │ └── memory │ │ │ │ │ └── MemoryDropListTest.java │ │ │ │ ├── rrt │ │ │ │ ├── lib │ │ │ │ │ ├── AliasReverseResolverImplTest.java │ │ │ │ │ └── CanSendFromImplTest.java │ │ │ │ └── memory │ │ │ │ │ ├── ForwardUsernameChangeTaskStepTest.java │ │ │ │ │ ├── InMemoryStepdefs.java │ │ │ │ │ ├── MemoryRecipientRewriteTableTest.java │ │ │ │ │ ├── RecipientRewriteTableUserDeletionTaskStepTest.java │ │ │ │ │ └── RewriteTablesTest.java │ │ │ │ ├── user │ │ │ │ └── memory │ │ │ │ │ ├── DelegationUserDeletionTaskStepTest.java │ │ │ │ │ ├── DelegationUsernameChangeTaskStepTest.java │ │ │ │ │ ├── MemoryDelegationStoreTest.java │ │ │ │ │ ├── MemoryUsersRepositoryTest.java │ │ │ │ │ └── UsersRepositoryManagementTest.java │ │ │ │ └── vacation │ │ │ │ └── memory │ │ │ │ ├── MemoryNotificationRegistryTest.java │ │ │ │ ├── MemoryVacationRepositoryTest.java │ │ │ │ └── VacationDeleteUserTaskStepTest.java │ │ │ └── resources │ │ │ └── fakemailrepositorystore.xml │ └── data-postgres │ │ ├── pom.xml │ │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ ├── domainlist │ │ │ └── postgres │ │ │ │ ├── PostgresDomainDataDefinition.java │ │ │ │ └── PostgresDomainList.java │ │ │ ├── droplists │ │ │ └── postgres │ │ │ │ ├── PostgresDropList.java │ │ │ │ └── PostgresDropListDataDefinition.java │ │ │ ├── mailrepository │ │ │ └── postgres │ │ │ │ ├── PostgresMailRepository.java │ │ │ │ ├── PostgresMailRepositoryBlobReferenceSource.java │ │ │ │ ├── PostgresMailRepositoryContentDAO.java │ │ │ │ ├── PostgresMailRepositoryDataDefinition.java │ │ │ │ ├── PostgresMailRepositoryFactory.java │ │ │ │ └── PostgresMailRepositoryUrlStore.java │ │ │ ├── rrt │ │ │ └── postgres │ │ │ │ ├── PostgresRecipientRewriteTable.java │ │ │ │ ├── PostgresRecipientRewriteTableDAO.java │ │ │ │ └── PostgresRecipientRewriteTableDataDefinition.java │ │ │ ├── sieve │ │ │ └── postgres │ │ │ │ ├── PostgresSieveDataDefinition.java │ │ │ │ ├── PostgresSieveQuotaDAO.java │ │ │ │ ├── PostgresSieveRepository.java │ │ │ │ ├── PostgresSieveScriptDAO.java │ │ │ │ └── model │ │ │ │ ├── PostgresSieveScript.java │ │ │ │ └── PostgresSieveScriptId.java │ │ │ ├── user │ │ │ └── postgres │ │ │ │ ├── PostgresDelegationStore.java │ │ │ │ ├── PostgresUserDataDefinition.java │ │ │ │ ├── PostgresUsersDAO.java │ │ │ │ ├── PostgresUsersRepository.java │ │ │ │ └── PostgresUsersRepositoryConfiguration.java │ │ │ └── vacation │ │ │ └── postgres │ │ │ ├── PostgresNotificationRegistry.java │ │ │ ├── PostgresNotificationRegistryDAO.java │ │ │ ├── PostgresVacationDataDefinition.java │ │ │ ├── PostgresVacationRepository.java │ │ │ └── PostgresVacationResponseDAO.java │ │ ├── reporting-site │ │ └── site.xml │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ ├── domainlist │ │ │ └── postgres │ │ │ │ └── PostgresDomainListTest.java │ │ │ ├── droplists │ │ │ └── postgres │ │ │ │ └── PostgresDropListsTest.java │ │ │ ├── mailrepository │ │ │ └── postgres │ │ │ │ ├── PostgresMailRepositoryBlobReferenceSourceTest.java │ │ │ │ ├── PostgresMailRepositoryTest.java │ │ │ │ ├── PostgresMailRepositoryUrlStoreExtension.java │ │ │ │ └── PostgresMailRepositoryUrlStoreTest.java │ │ │ ├── rrt │ │ │ └── postgres │ │ │ │ ├── PostgresRecipientRewriteTableTest.java │ │ │ │ ├── PostgresStepdefs.java │ │ │ │ └── RewriteTablesTest.java │ │ │ ├── sieve │ │ │ └── postgres │ │ │ │ ├── PostgresSieveQuotaDAOTest.java │ │ │ │ └── PostgresSieveRepositoryTest.java │ │ │ ├── user │ │ │ └── postgres │ │ │ │ ├── PostgresDelegationStoreTest.java │ │ │ │ └── PostgresUsersRepositoryTest.java │ │ │ └── vacation │ │ │ └── postgres │ │ │ ├── PostgresNotificationRegistryTest.java │ │ │ └── PostgresVacationRepositoryTest.java │ │ └── resources │ │ └── log4j.properties ├── dns-service │ ├── dnsservice-api │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── dnsservice │ │ │ │ │ └── api │ │ │ │ │ ├── DNSService.java │ │ │ │ │ ├── DNSServiceMBean.java │ │ │ │ │ └── TemporaryResolutionException.java │ │ │ └── resources │ │ │ │ └── dnsservice.xml │ │ │ └── reporting-site │ │ │ └── site.xml │ ├── dnsservice-dnsjava │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── dnsservice │ │ │ │ │ └── dnsjava │ │ │ │ │ └── DNSJavaService.java │ │ │ └── resources │ │ │ │ └── META-INF │ │ │ │ └── spring │ │ │ │ └── dns-context.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── dnsservice │ │ │ │ └── dnsjava │ │ │ │ ├── DNSJavaServiceTest.java │ │ │ │ └── ZoneCacheLookupRecordsAnswer.java │ │ │ └── resources │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── dnsservice │ │ │ └── dnsjava │ │ │ ├── brandilyncollins.com.zone │ │ │ ├── dnstest.com.zone │ │ │ ├── one-mx.bar.zone │ │ │ ├── pippo.com.zone │ │ │ ├── test-zone.com.zone │ │ │ ├── three-mx.bar.zone │ │ │ ├── two-mx.differentprio.zone │ │ │ └── two-mx.sameprio.zone │ ├── dnsservice-library │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── dnsservice │ │ │ │ └── library │ │ │ │ ├── MXHostAddressIterator.java │ │ │ │ ├── inetnetwork │ │ │ │ ├── InetNetworkBuilder.java │ │ │ │ └── model │ │ │ │ │ ├── Inet4Network.java │ │ │ │ │ ├── Inet6Network.java │ │ │ │ │ └── InetNetwork.java │ │ │ │ └── netmatcher │ │ │ │ └── NetMatcher.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── dnsservice │ │ │ └── library │ │ │ ├── MXHostAddressIteratorTest.java │ │ │ ├── inetnetwork │ │ │ ├── InetNetworkBuilderTest.java │ │ │ └── model │ │ │ │ └── InetNetworkTest.java │ │ │ └── netmatcher │ │ │ └── NetMatcherTest.java │ └── dnsservice-test │ │ ├── pom.xml │ │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── dnsservice │ │ └── api │ │ ├── AbstractDNSServiceTest.java │ │ ├── InMemoryDNSService.java │ │ └── mock │ │ ├── DNSFixture.java │ │ └── MockDNSService.java ├── grafana-reporting │ ├── es-datasource │ │ ├── BlobStore-1543222647953-dashboard.json │ │ ├── CacheBlobStore-15911761170000-dashboard.json │ │ ├── Cassandra_driver-1504068385404-dashboard.json │ │ ├── DeletedMessagesVault-1563771591074-dashboard.json │ │ ├── IMAP_board-1488774825351-dashboard.json │ │ ├── IMAP_count_board-1488774815587-dashboard.json │ │ ├── JAMES_DNS_dashboard-1491268903944-dashboard.json │ │ ├── JMAP_board-1488774804236-dashboard.json │ │ ├── JMAP_count_board-1488774795514-dashboard.json │ │ ├── James_JVM-1504068360629-dashboard.json │ │ ├── MAILET-1490071694187-dashboard.json │ │ ├── MATCHER-1490071813409-dashboard.json │ │ ├── MailQueue-1490071879988-dashboard.json │ │ ├── MailboxListeners rate-1552903378376.json │ │ ├── MailboxListeners-1528958667486-dashboard.json │ │ ├── MessageFastViewProjection-1575520507952.json │ │ ├── Miscalleneous-1490072265151-dashboard.json │ │ ├── PreDeletionHooks-1553684324244-dashboard.json │ │ ├── README.md │ │ ├── SMTP_board-1488774774172-dashboard.json │ │ ├── SMTP_count_board-1488774761350-dashboard.json │ │ ├── SpamAssassin-1522226824255-dashboard.json │ │ └── Tika-1522226794419-dashboard.json │ └── prometheus-datasource │ │ ├── James_BlobStore.json │ │ ├── James_DNS_Dashboard.json │ │ ├── James_IMAP_Board.json │ │ ├── James_IMAP_CountBoard.json │ │ ├── James_JMAP_Board.json │ │ ├── James_JMAP_CountBoard.json │ │ ├── James_JVM.json │ │ ├── James_MAILET.json │ │ ├── James_MATCHER.json │ │ ├── James_MailQueue.json │ │ ├── James_SMTP_Board.json │ │ ├── James_SMTP_CountBoard.json │ │ ├── James_webAdmin.json │ │ └── README.md ├── mailet │ ├── dkim │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jdkim │ │ │ │ └── mailets │ │ │ │ ├── CRLFOutputStream.java │ │ │ │ ├── ConvertTo7Bit.java │ │ │ │ ├── DKIMSign.java │ │ │ │ ├── DKIMVerifier.java │ │ │ │ ├── DKIMVerify.java │ │ │ │ ├── HeaderSkippingOutputStream.java │ │ │ │ ├── MimeMessageHeaders.java │ │ │ │ └── MockPublicKeyRecordRetriever.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jdkim │ │ │ │ └── mailets │ │ │ │ ├── DKIMSignTest.java │ │ │ │ └── DKIMVerifyTest.java │ │ │ └── resources │ │ │ ├── test-dkim-pkcs1.pem │ │ │ └── test-dkim-pkcs8.pem │ ├── integration-testing │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── mailets │ │ │ │ │ ├── TemporaryJamesServer.java │ │ │ │ │ └── configuration │ │ │ │ │ ├── CommonProcessors.java │ │ │ │ │ ├── Constants.java │ │ │ │ │ ├── MailetConfiguration.java │ │ │ │ │ ├── MailetContainer.java │ │ │ │ │ ├── ProcessorConfiguration.java │ │ │ │ │ ├── SerializableAsXml.java │ │ │ │ │ └── SmtpConfiguration.java │ │ │ └── resources │ │ │ │ ├── dnsservice.xml │ │ │ │ ├── domainlist.xml │ │ │ │ ├── eml │ │ │ │ ├── bad_crypted.eml │ │ │ │ ├── calendar.eml │ │ │ │ ├── crypted.eml │ │ │ │ ├── crypted_with_attachment.eml │ │ │ │ ├── dlp_read_mail_with_attachment.eml │ │ │ │ ├── mail_with_bad_signature.eml │ │ │ │ ├── mail_with_no_signature.eml │ │ │ │ ├── message-multipart-7bit.eml │ │ │ │ ├── message-multipart-8bit.eml │ │ │ │ ├── message-text-only-7bit.eml │ │ │ │ ├── message-text-only-8bit.eml │ │ │ │ ├── non_smime_mail.eml │ │ │ │ └── yahooInvitation.eml │ │ │ │ ├── imapserver.xml │ │ │ │ ├── keystore │ │ │ │ ├── lmtpserver.xml │ │ │ │ ├── mailrepositorystore.xml │ │ │ │ ├── managesieveserver.xml │ │ │ │ ├── pop3server.xml │ │ │ │ ├── recipientrewritetable.xml │ │ │ │ ├── smime-test-resource-set │ │ │ │ ├── certificate.crt │ │ │ │ ├── instruction.md │ │ │ │ ├── mail-with-signature-and-multi-certs.eml │ │ │ │ ├── mail_with_signature.eml │ │ │ │ ├── mail_with_signature_and_content_type_xpkcs7mime.eml │ │ │ │ ├── private.key │ │ │ │ ├── request.csr │ │ │ │ ├── rootCA.crt │ │ │ │ ├── rootCA.private.key │ │ │ │ └── rootCA.srl │ │ │ │ ├── smime.p12 │ │ │ │ ├── smtpserver.xml │ │ │ │ ├── trusted_cert_keystore │ │ │ │ ├── trusted_certificate.pem │ │ │ │ └── usersrepository.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ ├── mailets │ │ │ ├── AddDeliveredToHeaderTest.java │ │ │ ├── BounceIntegrationTest.java │ │ │ ├── CommonMailetConfigurationTest.java │ │ │ ├── DKIMHookIntegrationTest.java │ │ │ ├── DKIMIntegrationTest.java │ │ │ ├── DirectResolutionRemoteDeliveryIntegrationTest.java │ │ │ ├── FilterForwardIntegrationTest.java │ │ │ ├── ForwardBounceLoopIntegrationTest.java │ │ │ ├── ForwardIntegrationTest.java │ │ │ ├── ForwardLoopIntegrationTest.java │ │ │ ├── GatewayRemoteDeliveryIntegrationTest.java │ │ │ ├── MailetErrorsTest.java │ │ │ ├── MissingProcessorTest.java │ │ │ ├── NetworkMatcherIntegrationTest.java │ │ │ ├── NoSuchMethodErrorMailet.java │ │ │ ├── RecipientRewriteTableIntegrationTest.java │ │ │ ├── SPFIntegrationTests.java │ │ │ ├── SenderIsLocalIntegrationTest.java │ │ │ ├── SieveDelivery.java │ │ │ ├── SizeGreaterThanIntegrationTest.java │ │ │ ├── SmtpAuthIntegrationTest.java │ │ │ ├── SubAddressingTest.java │ │ │ ├── WithStorageDirectiveIntegrationTest.java │ │ │ ├── configuration │ │ │ │ ├── MailetConfigurationTest.java │ │ │ │ └── SmtpConfigurationTest.java │ │ │ ├── crypto │ │ │ │ ├── SMIMECheckSignatureIntegrationTest.java │ │ │ │ ├── SMIMECheckSignatureWithKeyStoreFileIntegrationTest.java │ │ │ │ ├── SMIMECheckSignatureWithPemFileIntegrationTest.java │ │ │ │ ├── SMIMEDecryptIntegrationTest.java │ │ │ │ └── SMIMESignIntegrationTest.java │ │ │ └── flow │ │ │ │ ├── AddRecipient.java │ │ │ │ ├── ClearRecipientsMailet.java │ │ │ │ ├── CollectMailAttributeMailet.java │ │ │ │ ├── CollectingExecutionMailet.java │ │ │ │ ├── CollectingExecutionMailetBis.java │ │ │ │ ├── CountingExecutionMailet.java │ │ │ │ ├── CountingExecutionMailetBis.java │ │ │ │ ├── CountingExecutionTerminatingMailet.java │ │ │ │ ├── EnsureNotDisposed.java │ │ │ │ ├── ExecutionFlowTest.java │ │ │ │ ├── FirstRecipientCountingExecutions.java │ │ │ │ ├── None.java │ │ │ │ ├── NoneWithNull.java │ │ │ │ ├── PauseThenCountingExecutionMailet.java │ │ │ │ └── ShutDownIntegrationTest.java │ │ │ ├── smtp │ │ │ ├── SmtpAuthorizedAddressesTest.java │ │ │ ├── SmtpBracketEnforcementTest.java │ │ │ ├── SmtpContentTypeTest.java │ │ │ ├── SmtpIdentityVerificationTest.java │ │ │ ├── SmtpMaxRcptHandlerTest.java │ │ │ ├── SmtpNullSenderTest.java │ │ │ ├── SmtpRandomStoringTest.java │ │ │ ├── SmtpSizeLimitationTest.java │ │ │ └── extensions │ │ │ │ ├── SMTPHeloHooksTest.java │ │ │ │ ├── StaticInputChecker.java │ │ │ │ └── hooks │ │ │ │ ├── DeclinedHeloHook.java │ │ │ │ ├── DenyHeloHook.java │ │ │ │ ├── DenySoftHeloHook.java │ │ │ │ ├── OkHeloHook.java │ │ │ │ └── RecordingHeloHook.java │ │ │ └── transport │ │ │ └── mailets │ │ │ ├── AddFooterTest.java │ │ │ ├── AliasMappingTest.java │ │ │ ├── AmqpForwardAttachmentTest.java │ │ │ ├── AmqpForwardAttributeIntegrationTest.java │ │ │ ├── ContactExtractorTest.java │ │ │ ├── DlpIntegrationTest.java │ │ │ ├── DomainMappingTest.java │ │ │ ├── ErrorMailet.java │ │ │ ├── ErrorMatcher.java │ │ │ ├── ExtractAttributeStub.java │ │ │ ├── GlobalRateLimitIntegrationTest.java │ │ │ ├── GroupMappingRelayTest.java │ │ │ ├── GroupMappingTest.java │ │ │ ├── ICSAttachmentWorkflowTest.java │ │ │ ├── IsOverQuotaMatcherTest.java │ │ │ ├── MailReprocessingIntegrationTest.java │ │ │ ├── NoClassDefFoundErrorMailet.java │ │ │ ├── NoClassDefFoundErrorMatcher.java │ │ │ ├── NoopMailet.java │ │ │ ├── OneRuntimeErrorMailet.java │ │ │ ├── OneRuntimeExceptionMailet.java │ │ │ ├── OneRuntimeExceptionMatcher.java │ │ │ ├── OneThreadSuicideMailet.java │ │ │ ├── PerRecipientRateLimitMailetIntegrationTest.java │ │ │ ├── PerSenderRateLimitIntegrationTest.java │ │ │ ├── RequeueThrottlingIntegrationTest.java │ │ │ ├── RuntimeErrorMailet.java │ │ │ ├── RuntimeExceptionMailet.java │ │ │ ├── RuntimeExceptionMatcher.java │ │ │ ├── StripAttachmentTest.java │ │ │ ├── ToRepositoryIntegrationTest.java │ │ │ ├── ToSenderDomainRepositoryIntegrationTest.java │ │ │ └── amqp │ │ │ └── AmqpExtension.java │ ├── ldap │ │ ├── README.md │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── transport │ │ │ │ └── matchers │ │ │ │ ├── AttributeUtils.java │ │ │ │ ├── CacheSettings.java │ │ │ │ ├── HasLDAPAttribute.java │ │ │ │ ├── IsInLDAPGroup.java │ │ │ │ ├── SenderHasLDAPAttribute.java │ │ │ │ └── SenderIsInLDAPGroup.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── transport │ │ │ │ └── matchers │ │ │ │ ├── CacheSettingsTest.java │ │ │ │ ├── HasLDAPAttributeTest.java │ │ │ │ ├── IsInLDAPGroupTest.java │ │ │ │ ├── SenderHasLDAPAttributeTest.java │ │ │ │ └── SenderIsInLDAPGroupTest.java │ │ │ └── resources │ │ │ └── ldif-files │ │ │ └── populate.ldif │ ├── mailetcontainer-api │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── mailetcontainer │ │ │ │ │ └── api │ │ │ │ │ ├── LocalResources.java │ │ │ │ │ ├── MailProcessor.java │ │ │ │ │ ├── MailetLoader.java │ │ │ │ │ ├── MatcherLoader.java │ │ │ │ │ └── jmx │ │ │ │ │ ├── MailProcessorManagementMBean.java │ │ │ │ │ ├── MailSpoolerMBean.java │ │ │ │ │ ├── MailetManagementMBean.java │ │ │ │ │ └── MatcherManagementMBean.java │ │ │ └── resources │ │ │ │ └── mailetcontainer.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailetcontainer │ │ │ └── api │ │ │ └── mock │ │ │ ├── ExceptionThrowingMailet.java │ │ │ ├── ExceptionThrowingMatcher.java │ │ │ ├── MockMailProcessor.java │ │ │ ├── MockMailet.java │ │ │ ├── MockMailetLoader.java │ │ │ ├── MockMatcher.java │ │ │ └── MockMatcherLoader.java │ ├── mailetcontainer-impl │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── mailetcontainer │ │ │ │ │ ├── AutomaticallySentMailDetectorImpl.java │ │ │ │ │ ├── impl │ │ │ │ │ ├── CompositeProcessorImpl.java │ │ │ │ │ ├── JamesMailSpooler.java │ │ │ │ │ ├── JamesMailetContext.java │ │ │ │ │ ├── LocalResourcesImpl.java │ │ │ │ │ ├── MailetConfigImpl.java │ │ │ │ │ ├── MailetProcessorImpl.java │ │ │ │ │ ├── MatcherConfigImpl.java │ │ │ │ │ ├── MatcherMailetPair.java │ │ │ │ │ ├── MatcherSplitter.java │ │ │ │ │ ├── ProcessorImpl.java │ │ │ │ │ ├── ProcessorUtil.java │ │ │ │ │ ├── jmx │ │ │ │ │ │ ├── JMXStateCompositeProcessorListener.java │ │ │ │ │ │ ├── JMXStateMailetProcessorListener.java │ │ │ │ │ │ ├── MailProcessorManagement.java │ │ │ │ │ │ ├── MailetManagement.java │ │ │ │ │ │ └── MatcherManagement.java │ │ │ │ │ └── matchers │ │ │ │ │ │ ├── And.java │ │ │ │ │ │ ├── CompositeMatcher.java │ │ │ │ │ │ ├── GenericCompositeMatcher.java │ │ │ │ │ │ ├── Not.java │ │ │ │ │ │ ├── Or.java │ │ │ │ │ │ └── Xor.java │ │ │ │ │ └── lib │ │ │ │ │ ├── AbstractStateCompositeProcessor.java │ │ │ │ │ ├── AbstractStateMailetProcessor.java │ │ │ │ │ └── MailProcessingErrorHandlingConfiguration.java │ │ │ └── resources │ │ │ │ └── META-INF │ │ │ │ └── spring │ │ │ │ └── mailetcontainer-context.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailetcontainer │ │ │ ├── AutomaticallySentMailDetectorImplTest.java │ │ │ ├── impl │ │ │ ├── CompositeProcessorImplTest.java │ │ │ ├── JamesMailetContextContract.java │ │ │ ├── JamesMailetContextTest.java │ │ │ ├── MailetConfigImplTest.java │ │ │ ├── MailetProcessorImplTest.java │ │ │ └── matchers │ │ │ │ ├── AndTest.java │ │ │ │ ├── InvertMatcherWithCompositeMatcherTest.java │ │ │ │ ├── NotTest.java │ │ │ │ ├── OrTest.java │ │ │ │ └── XorTest.java │ │ │ └── lib │ │ │ ├── AbstractStateCompositeProcessorTest.java │ │ │ └── AbstractStateMailetProcessorTest.java │ ├── mailets │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── transport │ │ │ │ │ ├── mailets │ │ │ │ │ ├── Bounce.java │ │ │ │ │ ├── DSNBounce.java │ │ │ │ │ ├── DeconnectionRight.java │ │ │ │ │ ├── Forward.java │ │ │ │ │ ├── FromRepository.java │ │ │ │ │ ├── LocalDelivery.java │ │ │ │ │ ├── MailToAllUsers.java │ │ │ │ │ ├── MetricsMailet.java │ │ │ │ │ ├── NotifyPostmaster.java │ │ │ │ │ ├── NotifySender.java │ │ │ │ │ ├── RandomStoring.java │ │ │ │ │ ├── RecipientRewriteTable.java │ │ │ │ │ ├── RecipientRewriteTableProcessor.java │ │ │ │ │ ├── Redirect.java │ │ │ │ │ ├── RemoteDelivery.java │ │ │ │ │ ├── Requeue.java │ │ │ │ │ ├── Resend.java │ │ │ │ │ ├── SPF.java │ │ │ │ │ ├── Sieve.java │ │ │ │ │ ├── SplitMail.java │ │ │ │ │ ├── SubAddressing.java │ │ │ │ │ ├── ToPlainText.java │ │ │ │ │ ├── ToRepository.java │ │ │ │ │ ├── ToSenderDomainRepository.java │ │ │ │ │ ├── ToSenderFolder.java │ │ │ │ │ ├── VacationMailet.java │ │ │ │ │ ├── VacationReply.java │ │ │ │ │ ├── WithPriority.java │ │ │ │ │ ├── WithStorageDirective.java │ │ │ │ │ ├── delivery │ │ │ │ │ │ ├── MailDispatcher.java │ │ │ │ │ │ ├── MailStore.java │ │ │ │ │ │ ├── MailboxAppender.java │ │ │ │ │ │ ├── MailboxAppenderImpl.java │ │ │ │ │ │ └── SimpleMailStore.java │ │ │ │ │ ├── jsieve │ │ │ │ │ │ ├── ActionContext.java │ │ │ │ │ │ ├── ActionDispatcher.java │ │ │ │ │ │ ├── ActionUtils.java │ │ │ │ │ │ ├── DiscardAction.java │ │ │ │ │ │ ├── FileIntoAction.java │ │ │ │ │ │ ├── KeepAction.java │ │ │ │ │ │ ├── MailAction.java │ │ │ │ │ │ ├── Poster.java │ │ │ │ │ │ ├── RedirectAction.java │ │ │ │ │ │ ├── RejectAction.java │ │ │ │ │ │ ├── ResourceLocator.java │ │ │ │ │ │ ├── SieveMailAdapter.java │ │ │ │ │ │ ├── VacationAction.java │ │ │ │ │ │ ├── VacationReply.java │ │ │ │ │ │ └── delivery │ │ │ │ │ │ │ ├── SieveExecutor.java │ │ │ │ │ │ │ ├── SieveFailureMessageComposer.java │ │ │ │ │ │ │ └── SievePoster.java │ │ │ │ │ ├── managesieve │ │ │ │ │ │ ├── ManageSieveMailet.java │ │ │ │ │ │ └── transcode │ │ │ │ │ │ │ └── MessageToCoreToMessage.java │ │ │ │ │ ├── package.html │ │ │ │ │ ├── redirect │ │ │ │ │ │ ├── AddressExtractor.java │ │ │ │ │ │ ├── InitParameters.java │ │ │ │ │ │ ├── InitParametersSerializer.java │ │ │ │ │ │ ├── LoadedOnceInitParameters.java │ │ │ │ │ │ ├── MailModifier.java │ │ │ │ │ │ ├── MessageAlteringUtils.java │ │ │ │ │ │ ├── NotifyMailetInitParameters.java │ │ │ │ │ │ ├── NotifyMailetsMessage.java │ │ │ │ │ │ ├── ProcessRedirectNotify.java │ │ │ │ │ │ ├── RedirectMailetInitParameters.java │ │ │ │ │ │ ├── RedirectNotify.java │ │ │ │ │ │ ├── SpecialAddress.java │ │ │ │ │ │ ├── SpecialAddressKind.java │ │ │ │ │ │ └── TypeCode.java │ │ │ │ │ └── remote │ │ │ │ │ │ └── delivery │ │ │ │ │ │ ├── AddressesArrayToMailAddressListConverter.java │ │ │ │ │ │ ├── Bouncer.java │ │ │ │ │ │ ├── Delay.java │ │ │ │ │ │ ├── DelaysAndMaxRetry.java │ │ │ │ │ │ ├── DeliveryRetriesHelper.java │ │ │ │ │ │ ├── DeliveryRunnable.java │ │ │ │ │ │ ├── DnsHelper.java │ │ │ │ │ │ ├── EnhancedMessagingException.java │ │ │ │ │ │ ├── ExecutionResult.java │ │ │ │ │ │ ├── HeloNameProvider.java │ │ │ │ │ │ ├── InternetAddressConverter.java │ │ │ │ │ │ ├── MailDelivrer.java │ │ │ │ │ │ ├── MailDelivrerToHost.java │ │ │ │ │ │ ├── MessageComposer.java │ │ │ │ │ │ ├── RemoteDeliveryConfiguration.java │ │ │ │ │ │ └── Repeat.java │ │ │ │ │ ├── matchers │ │ │ │ │ ├── AbstractNetworkMatcher.java │ │ │ │ │ ├── AbstractPriorityMatcher.java │ │ │ │ │ ├── AtLeastPriority.java │ │ │ │ │ ├── AtMostPriority.java │ │ │ │ │ ├── DSNDelayRequested.java │ │ │ │ │ ├── DSNFailureRequested.java │ │ │ │ │ ├── DSNSuccessRequested.java │ │ │ │ │ ├── HasPriority.java │ │ │ │ │ ├── InSpammerBlacklist.java │ │ │ │ │ ├── IsInDropList.java │ │ │ │ │ ├── IsMarkedAsSpam.java │ │ │ │ │ ├── IsOverQuota.java │ │ │ │ │ ├── IsRemoteDeliveryPermanentError.java │ │ │ │ │ ├── IsRemoteDeliveryTemporaryError.java │ │ │ │ │ ├── IsSenderInRRTLoop.java │ │ │ │ │ ├── RemoteAddrInNetwork.java │ │ │ │ │ ├── RemoteAddrNotInNetwork.java │ │ │ │ │ ├── RemoteDeliveryFailedWithSMTPCode.java │ │ │ │ │ ├── SenderInFakeDomain.java │ │ │ │ │ ├── dlp │ │ │ │ │ │ ├── Dlp.java │ │ │ │ │ │ ├── DlpDomainRules.java │ │ │ │ │ │ └── DlpRulesLoader.java │ │ │ │ │ └── package.html │ │ │ │ │ └── util │ │ │ │ │ ├── MailAddressUtils.java │ │ │ │ │ ├── MimeMessageBodyGenerator.java │ │ │ │ │ ├── Patterns.java │ │ │ │ │ ├── RecipientsUtils.java │ │ │ │ │ ├── ReplyToUtils.java │ │ │ │ │ ├── SenderUtils.java │ │ │ │ │ ├── SizeUtils.java │ │ │ │ │ ├── SpecialAddressesUtils.java │ │ │ │ │ └── TosUtils.java │ │ │ ├── resources │ │ │ │ ├── managesieve.help.txt │ │ │ │ └── sieveConfig.xml │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── transport │ │ │ │ └── mailets │ │ │ │ └── XOriginatingIpInNetwork.scala │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── samples │ │ │ │ └── mailets │ │ │ │ │ ├── HelloWorldMailet.java │ │ │ │ │ └── InstrumentationMailet.java │ │ │ │ └── transport │ │ │ │ ├── mailets │ │ │ │ ├── BounceTest.java │ │ │ │ ├── DSNBounceTest.java │ │ │ │ ├── DeconnectionRightTest.java │ │ │ │ ├── ForwardTest.java │ │ │ │ ├── MailToAllUsersTest.java │ │ │ │ ├── MetricsMailetTest.java │ │ │ │ ├── NotifyPostmasterTest.java │ │ │ │ ├── NotifySenderTest.java │ │ │ │ ├── RecipientRewriteTableProcessorTest.java │ │ │ │ ├── RecipientRewriteTableTest.java │ │ │ │ ├── RedirectTest.java │ │ │ │ ├── RequeueTest.java │ │ │ │ ├── ResendTest.java │ │ │ │ ├── ResourceLocatorTest.java │ │ │ │ ├── SPFTest.java │ │ │ │ ├── SplitMailTest.java │ │ │ │ ├── SubAddressingTest.java │ │ │ │ ├── ToPlainTextTest.java │ │ │ │ ├── ToRepositoryTest.java │ │ │ │ ├── ToSenderDomainRepositoryTest.java │ │ │ │ ├── VacationMailetTest.java │ │ │ │ ├── VacationReplyTest.java │ │ │ │ ├── WithPriorityTest.java │ │ │ │ ├── WithStorageDirectiveTest.java │ │ │ │ ├── delivery │ │ │ │ │ ├── LocalDeliveryTest.java │ │ │ │ │ ├── MailDispatcherTest.java │ │ │ │ │ ├── MailboxAppenderImplTest.java │ │ │ │ │ ├── SieveIntegrationTest.java │ │ │ │ │ └── SimpleMailStoreTest.java │ │ │ │ ├── jsieve │ │ │ │ │ ├── DiscardActionTest.java │ │ │ │ │ └── delivery │ │ │ │ │ │ └── SieveExecutorTest.java │ │ │ │ ├── managesieve │ │ │ │ │ └── ManageSieveMailetTestCase.java │ │ │ │ ├── redirect │ │ │ │ │ ├── AddressExtractorTest.java │ │ │ │ │ ├── LoadedOnceInitParametersTest.java │ │ │ │ │ ├── MailModifierTest.java │ │ │ │ │ ├── MessageAlteringUtilsTest.java │ │ │ │ │ ├── NotifyMailetInitParametersTest.java │ │ │ │ │ ├── NotifyMailetsMessageTest.java │ │ │ │ │ ├── RedirectMailetInitParametersTest.java │ │ │ │ │ └── SpecialAddressTest.java │ │ │ │ └── remote │ │ │ │ │ └── delivery │ │ │ │ │ ├── AddressesArrayToMailAddressListConverterTest.java │ │ │ │ │ ├── BouncerTest.java │ │ │ │ │ ├── DelayTest.java │ │ │ │ │ ├── DelaysAndMaxRetryTest.java │ │ │ │ │ ├── DeliveryRetryHelperTest.java │ │ │ │ │ ├── DeliveryRunnableTest.java │ │ │ │ │ ├── HeloNameProviderTest.java │ │ │ │ │ ├── InternetAddressConverterTest.java │ │ │ │ │ ├── MailDelivrerTest.java │ │ │ │ │ ├── RemoteDeliveryConfigurationTest.java │ │ │ │ │ ├── RemoteDeliveryRunningTest.java │ │ │ │ │ ├── RemoteDeliveryTest.java │ │ │ │ │ └── RepeatTest.java │ │ │ │ ├── matchers │ │ │ │ ├── AtLeastPriorityTest.java │ │ │ │ ├── AtMostPriorityTest.java │ │ │ │ ├── DSNDelayRequestedTest.java │ │ │ │ ├── DSNFailureRequestedTest.java │ │ │ │ ├── DSNSuccessRequestedTest.java │ │ │ │ ├── HasPriorityTest.java │ │ │ │ ├── InSpammerBlacklistTest.java │ │ │ │ ├── IsInDropListTest.java │ │ │ │ ├── IsMarkedAsSpamTest.java │ │ │ │ ├── IsOverQuotaTest.java │ │ │ │ ├── IsRemoteDeliveryPermanentErrorTest.java │ │ │ │ ├── IsRemoteDeliveryTemporaryErrorTest.java │ │ │ │ ├── IsSenderInRRTLoopTest.java │ │ │ │ ├── RemoteAddrInNetworkTest.java │ │ │ │ ├── RemoteAddrNotInNetworkTest.java │ │ │ │ ├── RemoteDeliveryFailedWithSMTPCodeTest.java │ │ │ │ └── dlp │ │ │ │ │ ├── DlpDomainRulesTest.java │ │ │ │ │ └── DlpTest.java │ │ │ │ └── util │ │ │ │ ├── MailAddressUtilsTest.java │ │ │ │ ├── MimeMessageBodyGeneratorTest.java │ │ │ │ ├── RecipientsUtilsTest.java │ │ │ │ ├── ReplyToUtilsTest.java │ │ │ │ ├── SenderUtilsTest.java │ │ │ │ ├── SizeUtilsTest.java │ │ │ │ ├── SpecialAddressesUtilsTest.java │ │ │ │ └── TosUtilsTest.java │ │ │ ├── resources │ │ │ ├── brokenReplyTo.eml │ │ │ ├── eml │ │ │ │ └── gmail.eml │ │ │ ├── noReplyTo.eml │ │ │ ├── org │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── transport │ │ │ │ │ └── mailets │ │ │ │ │ └── delivery │ │ │ │ │ ├── addressAllBcc.script │ │ │ │ │ ├── addressAllCc.script │ │ │ │ │ ├── addressAllFrom.script │ │ │ │ │ ├── addressAllResend-From.script │ │ │ │ │ ├── addressAllResend-To.script │ │ │ │ │ ├── addressAllSender.script │ │ │ │ │ ├── addressAllTo.script │ │ │ │ │ ├── addressDomain.script │ │ │ │ │ ├── addressLocalPart.script │ │ │ │ │ ├── allofAllFalse.script │ │ │ │ │ ├── allofAllTrue.script │ │ │ │ │ ├── allofOneFalse.script │ │ │ │ │ ├── anyofAllFalse.script │ │ │ │ │ ├── anyofAllTrue.script │ │ │ │ │ ├── anyofOneFalse.script │ │ │ │ │ ├── bodyContentInvalid.script │ │ │ │ │ ├── bodyContentMatch.script │ │ │ │ │ ├── bodyContentWrongContentType.script │ │ │ │ │ ├── bodyRawInvalid.script │ │ │ │ │ ├── bodyRawMatch.script │ │ │ │ │ ├── bodyTextInvalid.script │ │ │ │ │ ├── bodyTextMatch.script │ │ │ │ │ ├── discard.script │ │ │ │ │ ├── doubleVacation.script │ │ │ │ │ ├── envelopeFrom.script │ │ │ │ │ ├── envelopeFromOtherSender.script │ │ │ │ │ ├── envelopeTo.script │ │ │ │ │ ├── envelopeToOtherReceiver.script │ │ │ │ │ ├── exists.script │ │ │ │ │ ├── false.script │ │ │ │ │ ├── fileinto.script │ │ │ │ │ ├── header.script │ │ │ │ │ ├── headerEncodedFolded.script │ │ │ │ │ ├── keep.script │ │ │ │ │ ├── notFalse.script │ │ │ │ │ ├── notTrue.script │ │ │ │ │ ├── redirect.script │ │ │ │ │ ├── reject.script │ │ │ │ │ ├── sizeOver.script │ │ │ │ │ ├── sizeUnder.script │ │ │ │ │ ├── stop.script │ │ │ │ │ ├── true.script │ │ │ │ │ ├── vacationDaysAddressesReason.script │ │ │ │ │ ├── vacationDaysReason.script │ │ │ │ │ ├── vacationMime.script │ │ │ │ │ ├── vacationReason.script │ │ │ │ │ ├── vacationReasonAndFileInto.script │ │ │ │ │ └── vacationSubjectFromReason.script │ │ │ └── spamMail.eml │ │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── transport │ │ │ └── mailets │ │ │ └── XOriginatingIpInNetworkSpec.scala │ ├── mock-smtp-server │ │ ├── README.adoc │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── mock │ │ │ │ │ └── smtp │ │ │ │ │ └── server │ │ │ │ │ ├── ConfigurationClient.java │ │ │ │ │ ├── ExtendedEhloCommand.java │ │ │ │ │ ├── ExtendedMailFromCommand.java │ │ │ │ │ ├── ExtendedRcptToCommand.java │ │ │ │ │ ├── HTTPConfigurationServer.java │ │ │ │ │ ├── MockMessageHandler.java │ │ │ │ │ ├── MockSMTPServer.java │ │ │ │ │ ├── MockSMTPServerMain.java │ │ │ │ │ ├── ReceivedMailRepository.java │ │ │ │ │ ├── SMTPBehaviorRepository.java │ │ │ │ │ ├── jackson │ │ │ │ │ ├── MailAddressDeserializer.java │ │ │ │ │ ├── MailAddressModule.java │ │ │ │ │ └── MailAddressSerializer.java │ │ │ │ │ ├── model │ │ │ │ │ ├── Condition.java │ │ │ │ │ ├── Mail.java │ │ │ │ │ ├── Mails.java │ │ │ │ │ ├── MockSMTPBehavior.java │ │ │ │ │ ├── MockSMTPBehaviorInformation.java │ │ │ │ │ ├── MockSmtpBehaviors.java │ │ │ │ │ ├── Operator.java │ │ │ │ │ ├── Response.java │ │ │ │ │ ├── SMTPCommand.java │ │ │ │ │ ├── SMTPExtension.java │ │ │ │ │ └── SMTPExtensions.java │ │ │ │ │ └── testing │ │ │ │ │ └── MockSmtpServerExtension.java │ │ │ └── jib │ │ │ │ └── logback.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mock │ │ │ └── smtp │ │ │ └── server │ │ │ ├── ConfigurationClientTest.java │ │ │ ├── Fixture.java │ │ │ ├── HTTPConfigurationServerTest.java │ │ │ ├── MockSMTPServerTest.java │ │ │ ├── ReceivedMailRepositoryTest.java │ │ │ ├── SMTPBehaviorRepositoryTest.java │ │ │ ├── SMTPCommandTest.java │ │ │ ├── jackson │ │ │ └── MailAddressModuleTest.java │ │ │ └── model │ │ │ ├── ConditionTest.java │ │ │ ├── MailTest.java │ │ │ ├── MailsTest.java │ │ │ ├── MockSMTPBehaviorInformationTest.java │ │ │ ├── MockSMTPBehaviorTest.java │ │ │ ├── MockSmtpBehaviorsTest.java │ │ │ ├── OperatorTest.java │ │ │ └── ResponseTest.java │ ├── rate-limiter-redis │ │ ├── README.adoc │ │ ├── docker-compose-sample │ │ │ ├── README.md │ │ │ ├── config-template │ │ │ │ ├── master │ │ │ │ │ ├── docker-entrypoint-master.sh │ │ │ │ │ └── redis.conf.template │ │ │ │ ├── replica │ │ │ │ │ ├── docker-entrypoint-replica.sh │ │ │ │ │ └── redis.conf.template │ │ │ │ └── sentinel │ │ │ │ │ ├── docker-entrypoint-sentinel.sh │ │ │ │ │ └── sentinel.conf.template │ │ │ ├── docker-compose-with-redis-sentinel.yml │ │ │ └── redis.properties │ │ ├── docker-compose.yml │ │ ├── extensions.properties │ │ ├── healthcheck.properties │ │ ├── mailetcontainer.xml │ │ ├── pom.xml │ │ ├── redis.properties │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── rate │ │ │ │ │ └── limiter │ │ │ │ │ └── redis │ │ │ │ │ └── RedisMasterReplicaRateLimiterFactory.java │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── rate │ │ │ │ └── limiter │ │ │ │ └── redis │ │ │ │ └── RedisRateLimiter.scala │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── rate │ │ │ │ └── limiter │ │ │ │ ├── KvrocksRateLimiterTest.scala │ │ │ │ ├── KvrocksSentinelRateLimiterTest.scala │ │ │ │ ├── RedisRateLimiterTest.scala │ │ │ │ ├── RedisRateLimiterWithMasterReplicaTopologyTest.scala │ │ │ │ ├── RedisRateLimiterWithSentinelTest.scala │ │ │ │ └── TopologyRedisRateLimiterTest.scala │ │ │ └── resources │ │ │ └── keystore.p12 │ ├── rate-limiter │ │ ├── README.adoc │ │ ├── docker-compose.yml │ │ ├── extensions.properties │ │ ├── mailetcontainer.xml │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ ├── rate │ │ │ │ └── limiter │ │ │ │ │ ├── api │ │ │ │ │ └── RateLimiter.scala │ │ │ │ │ └── memory │ │ │ │ │ └── MemoryRateLimiter.scala │ │ │ │ └── transport │ │ │ │ └── mailets │ │ │ │ ├── EntityType.scala │ │ │ │ ├── GlobalRateLimit.scala │ │ │ │ ├── PerRecipientRateLimit.scala │ │ │ │ └── PerSenderRateLimit.scala │ │ │ └── test │ │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ ├── rate │ │ │ └── limiter │ │ │ │ ├── api │ │ │ │ └── RateLimiterContract.scala │ │ │ │ └── memory │ │ │ │ └── MemoryRateLimiterTest.scala │ │ │ └── transport │ │ │ └── mailets │ │ │ ├── GlobalRateLimitTest.scala │ │ │ ├── PerRecipientRateLimitTest.scala │ │ │ └── PerSenderRateLimitTest.scala │ └── remote-delivery-integration-testing │ │ ├── pom.xml │ │ └── src │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ ├── SubAddressingRelayTest.java │ │ ├── mailets │ │ ├── RemoteDeliveryDKIMIntegrationTest.java │ │ ├── RemoteDeliveryErrorHandlingTest.java │ │ ├── RemoteDeliveryErrorTest.java │ │ ├── RemoteDeliveryForwardIntegrationTest.java │ │ └── RemoteDeliveryOnSuccessTest.java │ │ └── smtp │ │ ├── dsn │ │ ├── DSNLocalIntegrationTest.java │ │ ├── DSNRelayTest.java │ │ └── DSNRemoteIntegrationTest.java │ │ ├── priority │ │ └── SmtpMtPriorityRelayTest.java │ │ └── tls │ │ └── SmtpRequireTlsRelayTest.java ├── mailrepository │ ├── mailrepository-api │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mailrepository │ │ │ │ └── api │ │ │ │ ├── EmptyErrorMailRepositoryHealthCheck.java │ │ │ │ ├── Initializable.java │ │ │ │ ├── MailKey.java │ │ │ │ ├── MailRepository.java │ │ │ │ ├── MailRepositoryFactory.java │ │ │ │ ├── MailRepositoryLoader.java │ │ │ │ ├── MailRepositoryPath.java │ │ │ │ ├── MailRepositoryStore.java │ │ │ │ ├── MailRepositoryUrl.java │ │ │ │ ├── MailRepositoryUrlStore.java │ │ │ │ ├── Protocol.java │ │ │ │ └── package-info.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailrepository │ │ │ ├── MailRepositoryContract.java │ │ │ ├── MailRepositoryUrlStoreContract.java │ │ │ └── api │ │ │ ├── EmptyErrorMailRepositoryHealthCheckContract.java │ │ │ ├── MailKeyTest.java │ │ │ ├── MailRepositoryPathTest.java │ │ │ ├── MailRepositoryUrlTest.java │ │ │ └── ProtocolTest.java │ ├── mailrepository-blob │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mailrepository │ │ │ │ └── blob │ │ │ │ ├── BlobMailRepository.scala │ │ │ │ ├── BlobMailRepositoryFactory.scala │ │ │ │ └── MailMetadata.scala │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailrepository │ │ │ └── blob │ │ │ ├── BlobMailRepositoryTest.java │ │ │ └── MailRepositoryBlobIdFactoryTest.java │ ├── mailrepository-cassandra │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── mailrepository │ │ │ │ └── cassandra │ │ │ │ ├── CassandraMailRepository.java │ │ │ │ ├── CassandraMailRepositoryDataDefinition.java │ │ │ │ ├── CassandraMailRepositoryFactory.java │ │ │ │ ├── CassandraMailRepositoryKeysDAO.java │ │ │ │ ├── CassandraMailRepositoryMailDaoV2.java │ │ │ │ ├── CassandraMailRepositoryUrlDataDefinition.java │ │ │ │ ├── CassandraMailRepositoryUrlStore.java │ │ │ │ ├── MailRepositoryBlobReferenceSource.java │ │ │ │ ├── MailRepositoryTable.java │ │ │ │ ├── MailRepositoryTableV2.java │ │ │ │ ├── UrlsDao.java │ │ │ │ └── UrlsTable.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailrepository │ │ │ └── cassandra │ │ │ ├── CassandraMailRepositoryKeysDAOTest.java │ │ │ ├── CassandraMailRepositoryMailDAOTest.java │ │ │ ├── CassandraMailRepositoryTest.java │ │ │ ├── CassandraMailRepositoryUrlStoreExtension.java │ │ │ ├── CassandraMailRepositoryUrlStoreTest.java │ │ │ └── CassandraMailRepositoryWithFakeImplementationsTest.java │ └── mailrepository-memory │ │ ├── pom.xml │ │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailrepository │ │ │ └── memory │ │ │ ├── MailRepositoryStoreConfiguration.java │ │ │ ├── MemoryMailRepository.java │ │ │ ├── MemoryMailRepositoryFactory.java │ │ │ ├── MemoryMailRepositoryStore.java │ │ │ ├── MemoryMailRepositoryUrlStore.java │ │ │ └── SimpleMailRepositoryLoader.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── mailrepository │ │ │ └── memory │ │ │ ├── MailRepositoryStoreConfigurationTest.java │ │ │ ├── MemoryEmptyErrorMailRepositoryHealthCheckTest.java │ │ │ ├── MemoryMailRepositoryStoreTest.java │ │ │ ├── MemoryMailRepositoryTest.java │ │ │ ├── MemoryMailRepositoryUrlStoreExtension.java │ │ │ └── MemoryMailRepositoryUrlStoreTest.java │ │ └── resources │ │ └── mailrepositorystore.xml ├── pom.xml ├── protocols │ ├── fetchmail │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── fetchmail │ │ │ │ │ ├── Account.java │ │ │ │ │ ├── DynamicAccount.java │ │ │ │ │ ├── FetchMail.java │ │ │ │ │ ├── FetchScheduler.java │ │ │ │ │ ├── FetchSchedulerMBean.java │ │ │ │ │ ├── FolderProcessor.java │ │ │ │ │ ├── MessageProcessor.java │ │ │ │ │ ├── ParsedConfiguration.java │ │ │ │ │ ├── ProcessorAbstract.java │ │ │ │ │ └── StoreProcessor.java │ │ │ └── resources │ │ │ │ ├── META-INF │ │ │ │ └── spring │ │ │ │ │ └── fetchmail-context.xml │ │ │ │ └── fetchmail.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── fetchmail │ │ │ └── FetchMailTest.java │ ├── jmap-draft-integration-testing │ │ ├── jmap-draft-integration-testing-common │ │ │ └── src │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ └── draft │ │ │ │ └── methods │ │ │ │ └── integration │ │ │ │ └── SetMessagesMethodTest.java │ │ └── rabbitmq-jmap-draft-integration-testing │ │ │ └── pom.xml │ ├── jmap-draft │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ └── draft │ │ │ │ ├── methods │ │ │ │ ├── BlobManagerImpl.java │ │ │ │ └── GetMessageListMethod.java │ │ │ │ └── model │ │ │ │ └── BlobId.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── jmap │ │ │ └── draft │ │ │ ├── methods │ │ │ ├── BlobManagerImplTest.java │ │ │ └── MIMEMessageConverterTest.java │ │ │ └── model │ │ │ └── message │ │ │ └── view │ │ │ ├── MessageFastViewFactoryTest.java │ │ │ ├── MessageFullViewFactoryTest.java │ │ │ ├── MessageHeaderViewFactoryTest.java │ │ │ └── MessageMetadataViewFactoryTest.java │ ├── jmap-rfc-8621-integration-tests │ │ ├── distributed-jmap-rfc-8621-integration-tests │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── jmap │ │ │ │ │ └── rfc8621 │ │ │ │ │ └── distributed │ │ │ │ │ ├── DistributedAuthenticationTest.java │ │ │ │ │ ├── DistributedBase.java │ │ │ │ │ ├── DistributedCorsHeaderAPITest.java │ │ │ │ │ ├── DistributedCustomMethodTest.java │ │ │ │ │ ├── DistributedCustomNamespaceTest.java │ │ │ │ │ ├── DistributedDelegateGetMethodTest.java │ │ │ │ │ ├── DistributedDelegateSetMethodTest.java │ │ │ │ │ ├── DistributedDelegatedAccountGetMethodTest.java │ │ │ │ │ ├── DistributedDelegatedAccountSetMethodTest.java │ │ │ │ │ ├── DistributedDownloadTest.java │ │ │ │ │ ├── DistributedEchoMethodTest.java │ │ │ │ │ ├── DistributedEmailChangeMethodTest.java │ │ │ │ │ ├── DistributedEmailGetMethodTest.java │ │ │ │ │ ├── DistributedEmailQueryMethodNoViewTest.java │ │ │ │ │ ├── DistributedEmailQueryMethodTest.java │ │ │ │ │ ├── DistributedEmailSetMethodTest.java │ │ │ │ │ ├── DistributedEmailSubmissionSetMethodFutureReleaseTest.java │ │ │ │ │ ├── DistributedEmailSubmissionSetMethodtest.java │ │ │ │ │ ├── DistributedIMAPSetMessagesCompatibilityTest.java │ │ │ │ │ ├── DistributedIdentityGetTest.java │ │ │ │ │ ├── DistributedIdentitySetTest.java │ │ │ │ │ ├── DistributedJmapPreviewTest.java │ │ │ │ │ ├── DistributedMDNParseMethodTest.java │ │ │ │ │ ├── DistributedMDNSendMethodTest.java │ │ │ │ │ ├── DistributedMailboxChangeMethodTest.java │ │ │ │ │ ├── DistributedMailboxGetMethodTest.java │ │ │ │ │ ├── DistributedMailboxQueryChangesMethodTest.java │ │ │ │ │ ├── DistributedMailboxQueryMethodTest.java │ │ │ │ │ ├── DistributedMailboxSetMethodTest.java │ │ │ │ │ ├── DistributedProvisioningTest.java │ │ │ │ │ ├── DistributedPushSubscriptionSetMethodTest.java │ │ │ │ │ ├── DistributedQuotaChangesMethodTest.java │ │ │ │ │ ├── DistributedQuotaGetMethodTest.java │ │ │ │ │ ├── DistributedQuotaMailingTest.java │ │ │ │ │ ├── DistributedQuotaQueryMethodTest.java │ │ │ │ │ ├── DistributedSearchSnippetGetMethodTest.java │ │ │ │ │ ├── DistributedSessionRouteTest.java │ │ │ │ │ ├── DistributedThreadGetMethodTest.java │ │ │ │ │ ├── DistributedUploadTest.java │ │ │ │ │ ├── DistributedVacationIntegrationTest.java │ │ │ │ │ ├── DistributedVacationRelayIntegrationTest.java │ │ │ │ │ ├── DistributedVacationResponseGetMethodTest.java │ │ │ │ │ ├── DistributedVacationResponseSetMethodTest.java │ │ │ │ │ ├── DistributedWebPushTest.java │ │ │ │ │ ├── DistributedWebSocketTest.java │ │ │ │ │ └── ReadLevelTest.java │ │ │ │ └── resources │ │ │ │ ├── dnsservice.xml │ │ │ │ ├── domainlist.xml │ │ │ │ ├── imapserver.xml │ │ │ │ ├── jmap.properties │ │ │ │ ├── keystore │ │ │ │ ├── listeners.xml │ │ │ │ ├── lmtpserver.xml │ │ │ │ ├── mailetcontainer.xml │ │ │ │ ├── mailrepositorystore.xml │ │ │ │ ├── pop3server.xml │ │ │ │ └── smtpserver.xml │ │ ├── jmap-rfc-8621-integration-tests-common │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── resources │ │ │ │ └── eml │ │ │ │ │ ├── alternative.cal.eml │ │ │ │ │ ├── alternative.eml │ │ │ │ │ ├── attachment-filename-in-content-type.eml │ │ │ │ │ ├── html.eml │ │ │ │ │ ├── html_body.eml │ │ │ │ │ ├── inlined-mixed.eml │ │ │ │ │ ├── inlined-single-attachment.eml │ │ │ │ │ ├── mdn_complex.eml │ │ │ │ │ ├── mdn_relate_original_message.eml │ │ │ │ │ ├── mdn_simple.eml │ │ │ │ │ ├── multipart_complex.eml │ │ │ │ │ ├── multipart_simple.eml │ │ │ │ │ ├── nested.eml │ │ │ │ │ ├── nested2.eml │ │ │ │ │ ├── related_in_alternative_multipart.eml │ │ │ │ │ └── simple-inlined-attachment.eml │ │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ └── rfc8621 │ │ │ │ └── contract │ │ │ │ ├── AuthenticationContract.scala │ │ │ │ ├── BackReferenceContract.scala │ │ │ │ ├── CorsHeaderAPITest.scala │ │ │ │ ├── CustomMethodContract.scala │ │ │ │ ├── CustomNamespaceContract.scala │ │ │ │ ├── DelegateGetMethodContract.scala │ │ │ │ ├── DelegateSetContract.scala │ │ │ │ ├── DelegatedAccountGetMethodContract.scala │ │ │ │ ├── DelegatedAccountSetContract.scala │ │ │ │ ├── DisabledCapabilityContract.scala │ │ │ │ ├── DownloadContract.scala │ │ │ │ ├── EchoMethodContract.scala │ │ │ │ ├── EmailChangesMethodContract.scala │ │ │ │ ├── EmailGetMethodContract.scala │ │ │ │ ├── EmailImportContract.scala │ │ │ │ ├── EmailParseMethodContract.scala │ │ │ │ ├── EmailQueryMethodContract.scala │ │ │ │ ├── EmailSetMethodContract.scala │ │ │ │ ├── EmailSubmissionSetMethodContract.scala │ │ │ │ ├── EmailSubmissionSetMethodFutureReleaseContract.scala │ │ │ │ ├── EventSourceContract.scala │ │ │ │ ├── Fixture.scala │ │ │ │ ├── IdentityChangesContract.scala │ │ │ │ ├── IdentityGetContract.scala │ │ │ │ ├── IdentitySetContract.scala │ │ │ │ ├── ImapKeywordsConsistencyContract.scala │ │ │ │ ├── ImapSetMessagesMailboxesUpdatesCompatibilityContract.scala │ │ │ │ ├── JmapPreviewContract.scala │ │ │ │ ├── JmapRequests.scala │ │ │ │ ├── MDNParseMethodContract.scala │ │ │ │ ├── MDNSendMethodContract.scala │ │ │ │ ├── MailboxChangesMethodContract.scala │ │ │ │ ├── MailboxGetMethodContract.scala │ │ │ │ ├── MailboxQueryChangesContract.scala │ │ │ │ ├── MailboxQueryMethodContract.scala │ │ │ │ ├── MailboxSetMethodContract.scala │ │ │ │ ├── ProvisioningContract.scala │ │ │ │ ├── PushServerExtension.scala │ │ │ │ ├── PushSubscriptionSetMethodContract.scala │ │ │ │ ├── QuotaChangesMethodContract.scala │ │ │ │ ├── QuotaGetMethodContract.scala │ │ │ │ ├── QuotaMailingTest.scala │ │ │ │ ├── QuotaQueryMethodContract.scala │ │ │ │ ├── SearchSnippetGetMethodContract.scala │ │ │ │ ├── SessionRoutesContract.scala │ │ │ │ ├── ThreadChangesContract.scala │ │ │ │ ├── ThreadGetContract.scala │ │ │ │ ├── UploadContract.scala │ │ │ │ ├── VacationIntegrationTest.scala │ │ │ │ ├── VacationRelayIntegrationTest.scala │ │ │ │ ├── VacationResponseGetMethodContract.scala │ │ │ │ ├── VacationResponseSetMethodContract.scala │ │ │ │ ├── WebPushContract.scala │ │ │ │ ├── WebSocketContract.scala │ │ │ │ ├── WebSocketWithPingIntervalContract.scala │ │ │ │ ├── custom │ │ │ │ └── authentication │ │ │ │ │ └── strategy │ │ │ │ │ ├── AllowAuthenticationStrategy.scala │ │ │ │ │ ├── DenyAuthenticationStrategy.scala │ │ │ │ │ └── ModularizeJmapRFC8621AuthenticationStrategyContract.java │ │ │ │ ├── package.scala │ │ │ │ ├── probe │ │ │ │ ├── DelegationProbe.scala │ │ │ │ └── TypeStateProbe.scala │ │ │ │ └── tags │ │ │ │ └── CategoryTags.java │ │ ├── memory-jmap-rfc-8621-integration-tests │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── jmap │ │ │ │ │ └── rfc8621 │ │ │ │ │ └── memory │ │ │ │ │ ├── MemoryAuthenticationTest.java │ │ │ │ │ ├── MemoryBackReferenceTest.java │ │ │ │ │ ├── MemoryBase.java │ │ │ │ │ ├── MemoryCorsHeaderAPITest.java │ │ │ │ │ ├── MemoryCustomMethodTest.java │ │ │ │ │ ├── MemoryCustomNamespaceTest.java │ │ │ │ │ ├── MemoryDelegateGetMethodTest.java │ │ │ │ │ ├── MemoryDelegateSetMethodTest.java │ │ │ │ │ ├── MemoryDelegatedAccountGetMethodTest.java │ │ │ │ │ ├── MemoryDelegatedAccountSetMethodTest.java │ │ │ │ │ ├── MemoryDisabledCapabilityTest.java │ │ │ │ │ ├── MemoryDownloadTest.java │ │ │ │ │ ├── MemoryEchoMethodTest.java │ │ │ │ │ ├── MemoryEmailChangesMethodTest.java │ │ │ │ │ ├── MemoryEmailGetMethodTest.java │ │ │ │ │ ├── MemoryEmailImportTest.java │ │ │ │ │ ├── MemoryEmailParseMethodTest.java │ │ │ │ │ ├── MemoryEmailQueryMethodNoViewTest.java │ │ │ │ │ ├── MemoryEmailQueryMethodTest.java │ │ │ │ │ ├── MemoryEmailSetMethodTest.java │ │ │ │ │ ├── MemoryEmailSubmissionSetMethodFutureReleaseTest.java │ │ │ │ │ ├── MemoryEmailSubmissionSetMethodTest.java │ │ │ │ │ ├── MemoryEventSourceTest.java │ │ │ │ │ ├── MemoryIMAPKeywordsInconsistenciesTest.java │ │ │ │ │ ├── MemoryIMAPSetMessagesCompatibilityTest.java │ │ │ │ │ ├── MemoryIdentityChangesMethodTest.java │ │ │ │ │ ├── MemoryIdentityGetMethodTest.java │ │ │ │ │ ├── MemoryIdentitySetMethodTests.java │ │ │ │ │ ├── MemoryMDNParseMethodTest.java │ │ │ │ │ ├── MemoryMDNSendMethodTest.java │ │ │ │ │ ├── MemoryMailboxChangesMethodTest.java │ │ │ │ │ ├── MemoryMailboxGetMethodTest.java │ │ │ │ │ ├── MemoryMailboxQueryChangesMethodTest.java │ │ │ │ │ ├── MemoryMailboxQueryMethodTest.java │ │ │ │ │ ├── MemoryMailboxSetMethodTest.java │ │ │ │ │ ├── MemoryModularizeJmapRFC8621AuthenticationStrategyContract.java │ │ │ │ │ ├── MemoryProvisioningTest.java │ │ │ │ │ ├── MemoryPushSubscriptionSetMethodTest.java │ │ │ │ │ ├── MemoryQuotaChangesMethodTest.java │ │ │ │ │ ├── MemoryQuotaGetMethodTest.java │ │ │ │ │ ├── MemoryQuotaMailingTest.java │ │ │ │ │ ├── MemoryQuotaQueryMethodTest.java │ │ │ │ │ ├── MemorySearchSnippetGetMethodTest.java │ │ │ │ │ ├── MemorySessionRouteTest.java │ │ │ │ │ ├── MemoryThreadChangesMethodTest.java │ │ │ │ │ ├── MemoryThreadGetMethodTest.java │ │ │ │ │ ├── MemoryUploadTest.java │ │ │ │ │ ├── MemoryVacationIntegrationTest.java │ │ │ │ │ ├── MemoryVacationRelayIntegrationTest.java │ │ │ │ │ ├── MemoryVacationResponseGetMethodTest.java │ │ │ │ │ ├── MemoryVacationResponseSetMethodTest.java │ │ │ │ │ ├── MemoryWebPushTest.java │ │ │ │ │ ├── MemoryWebSocketTest.java │ │ │ │ │ └── MemoryWebSocketWithPingIntervalTest.java │ │ │ │ └── resources │ │ │ │ ├── dnsservice.xml │ │ │ │ ├── domainlist.xml │ │ │ │ ├── imapserver.xml │ │ │ │ ├── jmap.properties │ │ │ │ ├── keystore │ │ │ │ ├── listeners.xml │ │ │ │ ├── lmtpserver.xml │ │ │ │ ├── mailetcontainer.xml │ │ │ │ ├── mailrepositorystore.xml │ │ │ │ ├── managesieveserver.xml │ │ │ │ ├── pop3server.xml │ │ │ │ ├── smtpserver.xml │ │ │ │ └── usersrepository.xml │ │ ├── pom.xml │ │ └── postgres-jmap-rfc-8621-integration-tests │ │ │ ├── pom.xml │ │ │ └── src │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ └── rfc8621 │ │ │ │ └── postgres │ │ │ │ ├── PostgresAuthenticationTest.java │ │ │ │ ├── PostgresBase.java │ │ │ │ ├── PostgresCustomMethodTest.java │ │ │ │ ├── PostgresCustomNamespaceTest.java │ │ │ │ ├── PostgresDelegatedAccountGetMethodTest.java │ │ │ │ ├── PostgresDelegatedAccountSetTest.java │ │ │ │ ├── PostgresDownloadTest.java │ │ │ │ ├── PostgresEchoMethodTest.java │ │ │ │ ├── PostgresEmailChangesMethodTest.java │ │ │ │ ├── PostgresEmailGetMethodTest.java │ │ │ │ ├── PostgresEmailQueryMethodTest.java │ │ │ │ ├── PostgresEmailSetMethodTest.java │ │ │ │ ├── PostgresEmailSubmissionSetMethodFutureReleaseTest.java │ │ │ │ ├── PostgresEmailSubmissionSetMethodTest.java │ │ │ │ ├── PostgresIdentityGetTest.java │ │ │ │ ├── PostgresIdentitySetTest.java │ │ │ │ ├── PostgresJmapPreviewTest.java │ │ │ │ ├── PostgresMDNParseMethodTest.java │ │ │ │ ├── PostgresMDNSendMethodTest.java │ │ │ │ ├── PostgresMailboxChangesMethodTest.java │ │ │ │ ├── PostgresMailboxGetMethodTest.java │ │ │ │ ├── PostgresMailboxQueryChangesTest.java │ │ │ │ ├── PostgresMailboxQueryMethodTest.java │ │ │ │ ├── PostgresMailboxSetMethodTest.java │ │ │ │ ├── PostgresProvisioningTest.java │ │ │ │ ├── PostgresPushSubscriptionSetMethodTest.java │ │ │ │ ├── PostgresQuotaChangesMethodTest.java │ │ │ │ ├── PostgresQuotaGetMethodTest.java │ │ │ │ ├── PostgresQuotaQueryMethodTest.java │ │ │ │ ├── PostgresSessionRoutesTest.java │ │ │ │ ├── PostgresThreadGetTest.java │ │ │ │ ├── PostgresUploadTest.java │ │ │ │ ├── PostgresVacationResponseGetMethodTest.java │ │ │ │ ├── PostgresVacationResponseSetMethodTest.java │ │ │ │ ├── PostgresWebPushTest.java │ │ │ │ └── PostgresWebSocketTest.java │ │ │ └── resources │ │ │ ├── dnsservice.xml │ │ │ ├── domainlist.xml │ │ │ ├── imapserver.xml │ │ │ ├── jmap.properties │ │ │ ├── keystore │ │ │ ├── listeners.xml │ │ │ ├── mailetcontainer.xml │ │ │ ├── mailrepositorystore.xml │ │ │ ├── managesieveserver.xml │ │ │ ├── pop3server.xml │ │ │ ├── rabbitmq.properties │ │ │ ├── smtpserver.xml │ │ │ └── usersrepository.xml │ ├── jmap-rfc-8621 │ │ ├── doc │ │ │ ├── README.md │ │ │ └── specs │ │ │ │ ├── LICENSE.md │ │ │ │ ├── README.md │ │ │ │ ├── rfc │ │ │ │ └── src │ │ │ │ │ ├── jmap.mdown │ │ │ │ │ ├── mail.mdown │ │ │ │ │ └── quotas.mdown │ │ │ │ └── spec │ │ │ │ ├── authentication.mdown │ │ │ │ ├── custom-quotas │ │ │ │ └── quotas.mdown │ │ │ │ ├── jmap │ │ │ │ ├── api.mdown │ │ │ │ ├── binary.mdown │ │ │ │ ├── ianaconsiderations.mdown │ │ │ │ ├── intro.mdown │ │ │ │ ├── push.mdown │ │ │ │ ├── securityconsiderations.mdown │ │ │ │ └── session.mdown │ │ │ │ ├── mail │ │ │ │ ├── delegation.mdown │ │ │ │ ├── ianaconsiderations.mdown │ │ │ │ ├── identity.mdown │ │ │ │ ├── identitySortOrder.mdown │ │ │ │ ├── intro.mdown │ │ │ │ ├── mailbox.mdown │ │ │ │ ├── message.mdown │ │ │ │ ├── messagesubmission.mdown │ │ │ │ ├── rights.mdown │ │ │ │ ├── searchsnippet.mdown │ │ │ │ ├── securityconsiderations.mdown │ │ │ │ ├── thread.mdown │ │ │ │ └── vacationresponse.mdown │ │ │ │ └── quotas │ │ │ │ ├── ianaconsiderations.mdown │ │ │ │ ├── intro.mdown │ │ │ │ ├── quota.mdown │ │ │ │ └── securityconsiderations.mdown │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── jmap │ │ │ │ │ ├── event │ │ │ │ │ ├── ComputeMessageFastViewProjectionListener.java │ │ │ │ │ ├── PopulateEmailQueryViewListener.java │ │ │ │ │ └── PropagateLookupRightListener.java │ │ │ │ │ ├── http │ │ │ │ │ └── rfc8621 │ │ │ │ │ │ └── InjectionKeys.java │ │ │ │ │ ├── mailet │ │ │ │ │ ├── ExtractMDNOriginalJMAPMessageId.java │ │ │ │ │ ├── SentByJmap.java │ │ │ │ │ ├── TextCalendarBodyToAttachment.java │ │ │ │ │ └── filter │ │ │ │ │ │ ├── ActionApplier.java │ │ │ │ │ │ ├── ContentMatcher.java │ │ │ │ │ │ ├── HeaderExtractor.java │ │ │ │ │ │ ├── JMAPFiltering.java │ │ │ │ │ │ ├── MailMatcher.java │ │ │ │ │ │ └── RuleMatcher.java │ │ │ │ │ ├── mime4j │ │ │ │ │ ├── JamesBodyDescriptorBuilder.java │ │ │ │ │ └── MaximalBodyDescriptor.java │ │ │ │ │ ├── send │ │ │ │ │ ├── MailMetadata.java │ │ │ │ │ ├── MailShouldBeInOutboxException.java │ │ │ │ │ ├── PostDequeueDecorator.java │ │ │ │ │ └── PostDequeueDecoratorFactory.java │ │ │ │ │ └── utils │ │ │ │ │ ├── AccountIdUtil.java │ │ │ │ │ └── JsoupHtmlTextExtractor.java │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ ├── change │ │ │ │ ├── AccountIdRegistrationKey.scala │ │ │ │ ├── EventDTOModule.scala │ │ │ │ ├── JmapEventSerializer.scala │ │ │ │ ├── MailboxChangeListener.scala │ │ │ │ ├── StateChange.scala │ │ │ │ └── StateChangeListener.scala │ │ │ │ ├── core │ │ │ │ ├── Capabilities.scala │ │ │ │ ├── Capability.scala │ │ │ │ ├── Id.scala │ │ │ │ ├── Invocation.scala │ │ │ │ ├── JmapRfc8621Configuration.scala │ │ │ │ ├── ProblemDetails.scala │ │ │ │ ├── Properties.scala │ │ │ │ ├── PushSubscriptionGet.scala │ │ │ │ ├── PushSubscriptionSet.scala │ │ │ │ ├── Query.scala │ │ │ │ ├── RequestLevelErrorType.scala │ │ │ │ ├── RequestObject.scala │ │ │ │ ├── ResponseObject.scala │ │ │ │ ├── Session.scala │ │ │ │ ├── SessionTranslator.scala │ │ │ │ ├── SetError.scala │ │ │ │ ├── UTCDate.scala │ │ │ │ ├── UnsignedInt.scala │ │ │ │ └── WebSocketTransport.scala │ │ │ │ ├── delegation │ │ │ │ ├── DelegateGet.scala │ │ │ │ ├── DelegateSet.scala │ │ │ │ ├── DelegatedAccountGet.scala │ │ │ │ ├── DelegatedAccountSet.scala │ │ │ │ └── Delegation.scala │ │ │ │ ├── highlight │ │ │ │ └── SearchSnippetGetRequest.scala │ │ │ │ ├── http │ │ │ │ ├── BasicAuthenticationStrategy.scala │ │ │ │ ├── MailboxesProvisioner.scala │ │ │ │ └── UserProvisioning.scala │ │ │ │ ├── json │ │ │ │ ├── BackReferenceDeserializer.scala │ │ │ │ ├── DelegationSerializer.scala │ │ │ │ ├── EmailGetSerializer.scala │ │ │ │ ├── EmailQuerySerializer.scala │ │ │ │ ├── EmailSetSerializer.scala │ │ │ │ ├── EmailSubmissionSetSerializer.scala │ │ │ │ ├── IdentitySerializer.scala │ │ │ │ ├── MDNSerializer.scala │ │ │ │ ├── MailboxQuerySerializer.scala │ │ │ │ ├── MailboxSerializer.scala │ │ │ │ ├── PushSerializer.scala │ │ │ │ ├── PushSubscriptionSerializer.scala │ │ │ │ ├── QuotaSerializer.scala │ │ │ │ ├── ResponseSerializer.scala │ │ │ │ ├── SearchSnippetSerializer.scala │ │ │ │ ├── ThreadSerializer.scala │ │ │ │ ├── UploadSerializer.scala │ │ │ │ ├── VacationSerializer.scala │ │ │ │ └── package.scala │ │ │ │ ├── mail │ │ │ │ ├── BlobId.scala │ │ │ │ ├── Email.scala │ │ │ │ ├── EmailAddressGroup.scala │ │ │ │ ├── EmailBodyPart.scala │ │ │ │ ├── EmailBodyValue.scala │ │ │ │ ├── EmailGet.scala │ │ │ │ ├── EmailHeader.scala │ │ │ │ ├── EmailImport.scala │ │ │ │ ├── EmailParse.scala │ │ │ │ ├── EmailQuery.scala │ │ │ │ ├── EmailSet.scala │ │ │ │ ├── EmailSubmissionSet.scala │ │ │ │ ├── IdentityChanges.scala │ │ │ │ ├── IdentityGet.scala │ │ │ │ ├── IdentitySet.scala │ │ │ │ ├── Keyword.scala │ │ │ │ ├── Keywords.scala │ │ │ │ ├── KeywordsCombiner.scala │ │ │ │ ├── MDN.scala │ │ │ │ ├── MDNParse.scala │ │ │ │ ├── MDNSend.scala │ │ │ │ ├── Mailbox.scala │ │ │ │ ├── MailboxFactory.scala │ │ │ │ ├── MailboxGet.scala │ │ │ │ ├── MailboxNamespace.scala │ │ │ │ ├── MailboxQuery.scala │ │ │ │ ├── MailboxQueryChanges.scala │ │ │ │ ├── MailboxSet.scala │ │ │ │ ├── MinimalEmailBodyPart.scala │ │ │ │ ├── Quotas.scala │ │ │ │ ├── Rights.scala │ │ │ │ └── Thread.scala │ │ │ │ ├── method │ │ │ │ ├── CoreEchoMethod.scala │ │ │ │ ├── DelegateGetMethod.scala │ │ │ │ ├── DelegateSetCreatePerformer.scala │ │ │ │ ├── DelegateSetDeletePerformer.scala │ │ │ │ ├── DelegateSetMethod.scala │ │ │ │ ├── DelegatedAccountDeletePerformer.scala │ │ │ │ ├── DelegatedAccountGetMethod.scala │ │ │ │ ├── DelegatedAccountSetMethod.scala │ │ │ │ ├── EmailChangesMethod.scala │ │ │ │ ├── EmailGetMethod.scala │ │ │ │ ├── EmailImportMethod.scala │ │ │ │ ├── EmailParseMethod.scala │ │ │ │ ├── EmailQueryMethod.scala │ │ │ │ ├── EmailSetCreatePerformer.scala │ │ │ │ ├── EmailSetDeletePerformer.scala │ │ │ │ ├── EmailSetMethod.scala │ │ │ │ ├── EmailSetUpdatePerformer.scala │ │ │ │ ├── EmailSubmissionSetMethod.scala │ │ │ │ ├── IdentityChangesMethod.scala │ │ │ │ ├── IdentityGetMethod.scala │ │ │ │ ├── IdentitySetCreatePerformer.scala │ │ │ │ ├── IdentitySetDeletePerformer.scala │ │ │ │ ├── IdentitySetMethod.scala │ │ │ │ ├── IdentitySetUpdatePerformer.scala │ │ │ │ ├── MDNParseMethod.scala │ │ │ │ ├── MDNSendMethod.scala │ │ │ │ ├── MailboxChangesMethod.scala │ │ │ │ ├── MailboxGetMethod.scala │ │ │ │ ├── MailboxQueryChangesMethod.scala │ │ │ │ ├── MailboxQueryMethod.scala │ │ │ │ ├── MailboxSetCreatePerformer.scala │ │ │ │ ├── MailboxSetDeletePerformer.scala │ │ │ │ ├── MailboxSetMethod.scala │ │ │ │ ├── MailboxSetUpdatePerformer.scala │ │ │ │ ├── Method.scala │ │ │ │ ├── PushSubscriptionGetMethod.scala │ │ │ │ ├── PushSubscriptionSetCreatePerformer.scala │ │ │ │ ├── PushSubscriptionSetDeletePerformer.scala │ │ │ │ ├── PushSubscriptionSetMethod.scala │ │ │ │ ├── PushSubscriptionUpdatePerformer.scala │ │ │ │ ├── QuotaChangesMethod.scala │ │ │ │ ├── QuotaGetMethod.scala │ │ │ │ ├── QuotaQueryMethod.scala │ │ │ │ ├── SearchSnippetGetMethod.scala │ │ │ │ ├── ThreadChangesMethod.scala │ │ │ │ ├── ThreadGetMethod.scala │ │ │ │ ├── VacationResponseGetMethod.scala │ │ │ │ ├── VacationResponseSetMethod.scala │ │ │ │ └── package.scala │ │ │ │ ├── metrics │ │ │ │ └── HttpClientMetrics.scala │ │ │ │ ├── pushsubscription │ │ │ │ ├── PushListener.scala │ │ │ │ ├── PushRequest.scala │ │ │ │ └── WebPushClient.scala │ │ │ │ ├── routes │ │ │ │ ├── DownloadRoutes.scala │ │ │ │ ├── EventSourceRoutes.scala │ │ │ │ ├── JMAPApiRoutes.scala │ │ │ │ ├── JmapApi.scala │ │ │ │ ├── ProcessingContext.scala │ │ │ │ ├── SessionRoutes.scala │ │ │ │ ├── SessionSupplier.scala │ │ │ │ ├── UploadRoutes.scala │ │ │ │ └── WebSocketRoutes.scala │ │ │ │ ├── utils │ │ │ │ ├── quotas │ │ │ │ │ ├── QuotaLoader.scala │ │ │ │ │ ├── QuotaLoaderWithPreloadedDefault.scala │ │ │ │ │ └── QuotaReader.scala │ │ │ │ └── search │ │ │ │ │ └── MailboxFilter.scala │ │ │ │ └── vacation │ │ │ │ ├── VacationResponse.scala │ │ │ │ ├── VacationResponseGet.scala │ │ │ │ └── VacationResponseSet.scala │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ ├── event │ │ │ │ ├── ComputeMessageFastViewProjectionListenerTest.java │ │ │ │ ├── PopulateEmailQueryViewListenerTest.java │ │ │ │ └── PropagateLookupRightListenerTest.java │ │ │ │ ├── mailet │ │ │ │ ├── SentByJmapTest.java │ │ │ │ ├── TextCalendarBodyToAttachmentTest.java │ │ │ │ └── filter │ │ │ │ │ ├── JMAPFilteringExtension.java │ │ │ │ │ ├── JMAPFilteringFixture.java │ │ │ │ │ └── JMAPFilteringTest.java │ │ │ │ ├── pushsubscription │ │ │ │ ├── DefaultWebPushClientServerSideForgeryTest.java │ │ │ │ └── DefaultWebPushClientTest.java │ │ │ │ ├── send │ │ │ │ ├── MailMetadataTest.java │ │ │ │ └── PostDequeueDecoratorTest.java │ │ │ │ └── utils │ │ │ │ └── JsoupHtmlTextExtractorTest.java │ │ │ ├── resources │ │ │ ├── calendar.eml │ │ │ ├── emptyBodyMessageWithOneAttachment.eml │ │ │ ├── example.html │ │ │ ├── fullMessage.eml │ │ │ └── spamMail.eml │ │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── jmap │ │ │ ├── change │ │ │ ├── AccountIdRegistrationKeyTest.scala │ │ │ ├── MailboxChangeListenerTest.scala │ │ │ ├── StateChangeEventSerializerTest.scala │ │ │ ├── StateChangeListenerTest.scala │ │ │ └── TypeStateFactoryTest.scala │ │ │ ├── core │ │ │ ├── JmapUrlEndpointResolverTest.scala │ │ │ ├── KeywordTest.scala │ │ │ ├── KeywordsCombinerTest.scala │ │ │ ├── KeywordsTest.scala │ │ │ ├── MailboxValidationTest.scala │ │ │ └── UTCDateTest.scala │ │ │ ├── http │ │ │ ├── MailboxesProvisionerTest.scala │ │ │ ├── UserCredentialParserTest.scala │ │ │ └── UserProvisioningTest.scala │ │ │ ├── json │ │ │ ├── BackReferenceTest.scala │ │ │ ├── EmailSetSerializerTest.scala │ │ │ ├── EmailSubmissionSetSerializerTest.scala │ │ │ ├── Fixture.scala │ │ │ ├── JsErrorSerializationTest.scala │ │ │ ├── MDNSerializationTest.scala │ │ │ ├── MailboxGetSerializationTest.scala │ │ │ ├── MailboxSerializationTest.scala │ │ │ ├── PushSerializerTest.scala │ │ │ ├── PushSubscriptionSerializerTest.scala │ │ │ ├── QuotaSerializerTest.scala │ │ │ ├── RequestObjectSerializationTest.scala │ │ │ ├── ResponseObjectSerializationTest.scala │ │ │ ├── SearchSnippetSerializerTest.scala │ │ │ ├── SessionSerializationTest.scala │ │ │ ├── VacationResponseGetSerializationTest.scala │ │ │ └── VacationResponseSerializationTest.scala │ │ │ ├── mail │ │ │ ├── MailboxTest.scala │ │ │ └── RightsTest.scala │ │ │ ├── method │ │ │ └── CoreEchoMethodTest.scala │ │ │ ├── pushsubscription │ │ │ ├── PushListenerTest.scala │ │ │ ├── PushRequestTest.scala │ │ │ ├── PushServerExtension.scala │ │ │ ├── PushSubscriptionSetCreateProcessorTest.scala │ │ │ ├── SafeWebPushClientContract.scala │ │ │ └── WebPushClientContract.scala │ │ │ └── routes │ │ │ ├── JMAPApiRoutesTest.scala │ │ │ ├── SessionRoutesTest.scala │ │ │ └── SessionSupplierTest.scala │ ├── jmap │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jmap │ │ │ │ ├── Endpoint.java │ │ │ │ ├── HttpConstants.java │ │ │ │ ├── InjectionKeys.java │ │ │ │ ├── JMAPConfiguration.java │ │ │ │ ├── JMAPRoute.java │ │ │ │ ├── JMAPRoutes.java │ │ │ │ ├── JMAPRoutesHandler.java │ │ │ │ ├── JMAPServer.java │ │ │ │ ├── JMAPUrls.java │ │ │ │ ├── UriMatcher.java │ │ │ │ ├── Version.java │ │ │ │ ├── VersionParser.java │ │ │ │ ├── exceptions │ │ │ │ ├── NoAuthorizationSuppliedException.java │ │ │ │ └── UnauthorizedException.java │ │ │ │ └── http │ │ │ │ ├── AuthenticateHeader.java │ │ │ │ ├── AuthenticationChallenge.java │ │ │ │ ├── AuthenticationScheme.java │ │ │ │ ├── AuthenticationStrategy.java │ │ │ │ ├── Authenticator.java │ │ │ │ ├── JWTAuthenticationStrategy.java │ │ │ │ └── XUserAuthenticationStrategy.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── jmap │ │ │ ├── EndpointTest.java │ │ │ ├── FixedUriMatcherTest.java │ │ │ ├── JMAPConfigurationTest.java │ │ │ ├── JMAPServerTest.java │ │ │ ├── VersionParserTest.java │ │ │ └── VersionTest.java │ ├── jwt │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── jwt │ │ │ │ ├── CheckTokenClient.java │ │ │ │ ├── DefaultCheckTokenClient.java │ │ │ │ ├── DefaultPublicKeyProvider.java │ │ │ │ ├── JwksPublicKeyProvider.java │ │ │ │ ├── JwtConfiguration.java │ │ │ │ ├── JwtTokenVerifier.java │ │ │ │ ├── MissingOrInvalidKeyException.java │ │ │ │ ├── OidcJwtTokenVerifier.java │ │ │ │ ├── PublicKeyProvider.java │ │ │ │ ├── PublicKeyReader.java │ │ │ │ ├── introspection │ │ │ │ ├── IntrospectionEndpoint.java │ │ │ │ ├── TokenIntrospectionException.java │ │ │ │ └── TokenIntrospectionResponse.java │ │ │ │ └── userinfo │ │ │ │ ├── UserInfoCheckException.java │ │ │ │ └── UserinfoResponse.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── jwt │ │ │ ├── DefaultPublicKeyProviderTest.java │ │ │ ├── JwksPublicKeyProviderTest.java │ │ │ ├── JwtConfigurationTest.java │ │ │ ├── JwtTokenVerifierTest.java │ │ │ ├── OidcJwtTokenVerifierTest.java │ │ │ ├── OidcTokenFixture.java │ │ │ ├── PublicKeyReaderTest.java │ │ │ └── introspection │ │ │ └── DefaultCheckTokenClientTest.java │ ├── protocols-imap4 │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── imapserver │ │ │ │ │ └── netty │ │ │ │ │ ├── AbstractNettyImapRequestLineReader.java │ │ │ │ │ ├── ChannelImapResponseWriter.java │ │ │ │ │ ├── HAProxyMessageHandler.java │ │ │ │ │ ├── IMAPHealthCheck.java │ │ │ │ │ ├── IMAPMDCContext.java │ │ │ │ │ ├── IMAPServer.java │ │ │ │ │ ├── IMAPServerFactory.java │ │ │ │ │ ├── IMAPServerMBean.java │ │ │ │ │ ├── ImapChannelUpstreamHandler.java │ │ │ │ │ ├── ImapHeartbeatHandler.java │ │ │ │ │ ├── ImapIdleStateHandler.java │ │ │ │ │ ├── ImapLineHandlerAdapter.java │ │ │ │ │ ├── ImapMetrics.java │ │ │ │ │ ├── ImapRequestFrameDecoder.java │ │ │ │ │ ├── NettyConstants.java │ │ │ │ │ ├── NettyImapRequestLineReader.java │ │ │ │ │ ├── NettyImapSession.java │ │ │ │ │ ├── NettyStreamImapRequestLineReader.java │ │ │ │ │ ├── ReactiveThrottler.java │ │ │ │ │ ├── SwitchableLineBasedFrameDecoder.java │ │ │ │ │ ├── SwitchableLineBasedFrameDecoderFactory.java │ │ │ │ │ └── TrafficShapingConfiguration.java │ │ │ └── resources │ │ │ │ ├── META-INF │ │ │ │ └── spring │ │ │ │ │ └── imapserver-context.xml │ │ │ │ └── imapserver.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── imapserver │ │ │ │ └── netty │ │ │ │ ├── IMAPHealthCheckTest.java │ │ │ │ ├── IMAPServerConfigurationTest.java │ │ │ │ ├── IMAPServerTest.java │ │ │ │ ├── IpConnectionCheck.java │ │ │ │ └── ReactiveThrottlerTest.java │ │ │ └── resources │ │ │ ├── certs.csr │ │ │ ├── certs.self-signed.csr │ │ │ ├── imapSSL.xml │ │ │ ├── imapServer.xml │ │ │ ├── imapServerCompress.xml │ │ │ ├── imapServerHealthCheck.xml │ │ │ ├── imapServerIdCommandResponseFields.xml │ │ │ ├── imapServerImapConnectCheck.xml │ │ │ ├── imapServerNoLimits.xml │ │ │ ├── imapServerPlainAuthAllowed.xml │ │ │ ├── imapServerPlainAuthDisabled.xml │ │ │ ├── imapServerPlainAuthDisallowed.xml │ │ │ ├── imapServerPlainAuthEnabledWithoutRequireSSL.xml │ │ │ ├── imapServerProxy.xml │ │ │ ├── imapServerRequireSSLIsFalseAndStartSSLIsFalse.xml │ │ │ ├── imapServerRequireSSLIsFalseAndStartSSLIsTrue.xml │ │ │ ├── imapServerRequireSSLIsTrueAndStartSSLIsFalse.xml │ │ │ ├── imapServerRequireSSLIsTrueAndStartSSLIsTrue.xml │ │ │ ├── imapServerSSL.xml │ │ │ ├── imapServerSSLCompress.xml │ │ │ ├── imapServerSslDefaultJKS.xml │ │ │ ├── imapServerSslJKS.xml │ │ │ ├── imapServerSslJKSBadPassword.xml │ │ │ ├── imapServerSslJKSNotFound.xml │ │ │ ├── imapServerSslNoKeys.xml │ │ │ ├── imapServerSslPEM.xml │ │ │ ├── imapServerSslPEMBadPass.xml │ │ │ ├── imapServerSslPEMExtraPass.xml │ │ │ ├── imapServerSslPEMMissingPass.xml │ │ │ ├── imapServerSslPEMNoPass.xml │ │ │ ├── imapServerSslPKCS12.xml │ │ │ ├── imapServerSslPKCS12MissingPassword.xml │ │ │ ├── imapServerSslPKCS12WrongPassword.xml │ │ │ ├── imapServerStartTLS.xml │ │ │ ├── keystore │ │ │ ├── keystore.jks │ │ │ ├── keystore.p12 │ │ │ ├── oauth.xml │ │ │ ├── private.key │ │ │ └── private.nopass.key │ ├── protocols-library │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── protocols │ │ │ │ └── lib │ │ │ │ ├── LegacyJavaEncryptionFactory.java │ │ │ │ ├── POP3BeforeSMTPHelper.java │ │ │ │ ├── ProtocolHandlerChainImpl.java │ │ │ │ ├── SslConfig.java │ │ │ │ ├── handler │ │ │ │ ├── HandlersPackage.java │ │ │ │ └── ProtocolHandlerLoader.java │ │ │ │ ├── jmx │ │ │ │ ├── AbstractCommandHandlerResultJMXMonitor.java │ │ │ │ ├── AbstractCommandHandlerStats.java │ │ │ │ ├── AbstractConnectHandlerResultJMXMonitor.java │ │ │ │ ├── AbstractLineHandlerResultJMXMonitor.java │ │ │ │ ├── CommandHandlerStatsMBean.java │ │ │ │ ├── ConnectHandlerStats.java │ │ │ │ ├── HandlerStatsMBean.java │ │ │ │ ├── LineHandlerStats.java │ │ │ │ └── ServerMBean.java │ │ │ │ └── netty │ │ │ │ ├── AbstractConfigurableAsyncServer.java │ │ │ │ ├── AbstractProtocolAsyncServer.java │ │ │ │ ├── AbstractServerFactory.java │ │ │ │ └── CertificateReloadable.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── protocols │ │ │ │ └── lib │ │ │ │ ├── AbstractConfigurableAsyncServerTest.java │ │ │ │ └── mock │ │ │ │ ├── ConfigLoader.java │ │ │ │ └── MockProtocolHandlerLoader.java │ │ │ └── resources │ │ │ ├── keystore │ │ │ ├── testServerDefaults.xml │ │ │ ├── testServerDisabled.xml │ │ │ ├── testServerPlain.xml │ │ │ ├── testServerStartTLS.xml │ │ │ ├── testServerTLS.xml │ │ │ ├── testServerTLSDefaultAuth.xml │ │ │ └── testServerTLSNeedAuth.xml │ ├── protocols-lmtp │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── lmtpserver │ │ │ │ │ ├── CoreCmdHandlerLoader.java │ │ │ │ │ ├── DataLineLMTPHandler.java │ │ │ │ │ ├── MailetContainerCmdHandlerLoader.java │ │ │ │ │ ├── MailetContainerHandler.java │ │ │ │ │ ├── NoopJamesMessageHook.java │ │ │ │ │ ├── hook │ │ │ │ │ └── MailboxDeliverToRecipientHandler.java │ │ │ │ │ ├── jmx │ │ │ │ │ ├── CommandHandlerResultJMXMonitor.java │ │ │ │ │ ├── ConnectHandlerResultJMXMonitor.java │ │ │ │ │ ├── JMXHandlersLoader.java │ │ │ │ │ └── LineHandlerResultJMXMonitor.java │ │ │ │ │ └── netty │ │ │ │ │ ├── LMTPMetricsImpl.java │ │ │ │ │ ├── LMTPServer.java │ │ │ │ │ ├── LMTPServerFactory.java │ │ │ │ │ └── LMTPServerMBean.java │ │ │ └── resources │ │ │ │ ├── META-INF │ │ │ │ └── spring │ │ │ │ │ └── lmtpserver-context.xml │ │ │ │ └── lmtpserver.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── lmtpserver │ │ │ │ └── LmtpServerTest.java │ │ │ └── resources │ │ │ ├── lmtp.xml │ │ │ ├── lmtpdsn.xml │ │ │ ├── lmtpmailet.xml │ │ │ └── lmtpnormaldsn.xml │ ├── protocols-managesieve │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── managesieveserver │ │ │ │ └── netty │ │ │ │ ├── ChannelManageSieveResponseWriter.java │ │ │ │ ├── ManageSieveChannelUpstreamHandler.java │ │ │ │ ├── ManageSieveMDCContext.java │ │ │ │ ├── ManageSieveServer.java │ │ │ │ ├── ManageSieveServerFactory.java │ │ │ │ ├── ManageSieveServerMBean.java │ │ │ │ └── NettyConstants.java │ │ │ └── resources │ │ │ └── META-INF │ │ │ └── spring │ │ │ └── managesieveserver-context.xml │ ├── protocols-pop3-distributed │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── pop3server │ │ │ │ └── mailbox │ │ │ │ ├── CassandraPop3MetadataStore.java │ │ │ │ ├── DistributedMailboxAdapter.java │ │ │ │ ├── MemoryPop3MetadataStore.java │ │ │ │ ├── Pop3MetadataDataDefinition.java │ │ │ │ ├── Pop3MetadataStore.java │ │ │ │ ├── PopulateMetadataStoreListener.java │ │ │ │ └── task │ │ │ │ ├── MessageInconsistenciesEntry.java │ │ │ │ ├── MetaDataFixInconsistenciesAdditionalInformationDTO.java │ │ │ │ ├── MetaDataFixInconsistenciesDTO.java │ │ │ │ ├── MetaDataFixInconsistenciesService.java │ │ │ │ └── MetaDataFixInconsistenciesTask.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── pop3server │ │ │ │ └── mailbox │ │ │ │ ├── CassandraPop3MetadataStoreTest.java │ │ │ │ ├── DistributedPop3ServerTest.java │ │ │ │ ├── MemoryPop3MetadataStoreTest.java │ │ │ │ ├── Pop3MetadataStoreContract.java │ │ │ │ └── task │ │ │ │ ├── MetaDataFixInconsistenciesAdditionalInformationDTOTest.java │ │ │ │ ├── MetaDataFixInconsistenciesDTOTest.java │ │ │ │ └── MetaDataFixInconsistenciesServiceTest.java │ │ │ └── resources │ │ │ ├── keystore │ │ │ └── pop3server.xml │ ├── protocols-pop3 │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── pop3server │ │ │ │ │ ├── core │ │ │ │ │ ├── CoreCmdHandlerLoader.java │ │ │ │ │ └── PassCmdHandler.java │ │ │ │ │ ├── jmx │ │ │ │ │ ├── CommandHandlerResultJMXMonitor.java │ │ │ │ │ ├── ConnectHandlerResultJMXMonitor.java │ │ │ │ │ ├── JMXHandlersLoader.java │ │ │ │ │ ├── LineHandlerResultJMXMonitor.java │ │ │ │ │ ├── POP3CommandHandlerStats.java │ │ │ │ │ └── POP3CommandHandlerStatsMBean.java │ │ │ │ │ ├── mailbox │ │ │ │ │ ├── DefaultMailboxAdapterFactory.java │ │ │ │ │ ├── MailboxAdapter.java │ │ │ │ │ └── MailboxAdapterFactory.java │ │ │ │ │ └── netty │ │ │ │ │ ├── POP3Server.java │ │ │ │ │ ├── POP3ServerFactory.java │ │ │ │ │ └── POP3ServerMBean.java │ │ │ └── resources │ │ │ │ ├── META-INF │ │ │ │ └── spring │ │ │ │ │ └── pop3server-context.xml │ │ │ │ └── pop3server.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── pop3server │ │ │ │ └── POP3ServerTest.java │ │ │ └── resources │ │ │ ├── keystore │ │ │ └── pop3server.xml │ ├── protocols-smtp-dkim │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── smtpserver │ │ │ │ └── DKIMHook.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── smtpserver │ │ │ └── DKIMHookTest.java │ ├── protocols-smtp │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── smtpserver │ │ │ │ │ ├── AddDefaultAttributesMessageHook.java │ │ │ │ │ ├── AuthRequiredToRelayRcptHook.java │ │ │ │ │ ├── CoreCmdHandlerLoader.java │ │ │ │ │ ├── DataLineJamesMessageHookHandler.java │ │ │ │ │ ├── EnforceHeaderLimitationsMessageHook.java │ │ │ │ │ ├── ExtendedSMTPSession.java │ │ │ │ │ ├── JamesDataCmdHandler.java │ │ │ │ │ ├── JamesMailCmdHandler.java │ │ │ │ │ ├── JamesMessageHook.java │ │ │ │ │ ├── JamesRcptCmdHandler.java │ │ │ │ │ ├── JamesWelcomeMessageHandler.java │ │ │ │ │ ├── MailPriorityHandler.java │ │ │ │ │ ├── POP3BeforeSMTPHandler.java │ │ │ │ │ ├── SMTPConstants.java │ │ │ │ │ ├── SendMailHandler.java │ │ │ │ │ ├── SenderAuthIdentifyVerificationHook.java │ │ │ │ │ ├── SetMimeHeaderHandler.java │ │ │ │ │ ├── TLDLookup.java │ │ │ │ │ ├── UsersRepositoryAuthHook.java │ │ │ │ │ ├── dsn │ │ │ │ │ ├── DSNEhloHook.java │ │ │ │ │ ├── DSNMailParameterHook.java │ │ │ │ │ ├── DSNMessageHook.java │ │ │ │ │ └── DSNRcptParameterHook.java │ │ │ │ │ ├── fastfail │ │ │ │ │ ├── DNSRBLHandler.java │ │ │ │ │ ├── JDBCGreylistHandler.java │ │ │ │ │ ├── MaxRcptHandler.java │ │ │ │ │ ├── MaxUnknownCmdHandler.java │ │ │ │ │ ├── ResolvableEhloHeloHandler.java │ │ │ │ │ ├── ReverseEqualsEhloHeloHandler.java │ │ │ │ │ ├── SPFHandler.java │ │ │ │ │ ├── SpamTrapHandler.java │ │ │ │ │ ├── URIRBLHandler.java │ │ │ │ │ ├── URIScanner.java │ │ │ │ │ ├── ValidRcptHandler.java │ │ │ │ │ ├── ValidRcptMX.java │ │ │ │ │ └── ValidSenderDomainHandler.java │ │ │ │ │ ├── futurerelease │ │ │ │ │ ├── FutureReleaseEHLOHook.java │ │ │ │ │ ├── FutureReleaseMailParameterHook.java │ │ │ │ │ └── FutureReleaseParameters.java │ │ │ │ │ ├── jmx │ │ │ │ │ ├── CommandHandlerResultJMXMonitor.java │ │ │ │ │ ├── ConnectHandlerResultJMXMonitor.java │ │ │ │ │ ├── HookResultJMXMonitor.java │ │ │ │ │ ├── HookStats.java │ │ │ │ │ ├── HookStatsMBean.java │ │ │ │ │ ├── JMXHandlersLoader.java │ │ │ │ │ ├── LineHandlerResultJMXMonitor.java │ │ │ │ │ ├── SMTPCommandHandlerStats.java │ │ │ │ │ └── SMTPCommandHandlerStatsMBean.java │ │ │ │ │ ├── model │ │ │ │ │ └── ProtocolMailAddressAdapter.java │ │ │ │ │ ├── netty │ │ │ │ │ ├── SMTPChannelInboundHandler.java │ │ │ │ │ ├── SMTPServer.java │ │ │ │ │ ├── SMTPServerFactory.java │ │ │ │ │ ├── SMTPServerMBean.java │ │ │ │ │ ├── SmtpMetrics.java │ │ │ │ │ └── SmtpMetricsImpl.java │ │ │ │ │ ├── priority │ │ │ │ │ ├── SmtpMtPriorityEhloHook.java │ │ │ │ │ ├── SmtpMtPriorityMessageHook.java │ │ │ │ │ ├── SmtpMtPriorityParameterHook.java │ │ │ │ │ └── SmtpMtPriorityParameters.java │ │ │ │ │ └── tls │ │ │ │ │ ├── EnforceMtaSts.java │ │ │ │ │ ├── SmtpRequireTlsEhloHook.java │ │ │ │ │ ├── SmtpRequireTlsMessageHook.java │ │ │ │ │ ├── SmtpRequireTlsParameterHook.java │ │ │ │ │ └── TestMtaSts.java │ │ │ └── resources │ │ │ │ ├── META-INF │ │ │ │ └── spring │ │ │ │ │ └── smtpserver-context.xml │ │ │ │ └── smtpserver.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── smtpserver │ │ │ │ ├── AuthAnnounceTest.java │ │ │ │ ├── DSNTest.java │ │ │ │ ├── DisableFeatureTest.java │ │ │ │ ├── EnforcedHeaderLimitationHookIntegrationTest.java │ │ │ │ ├── FutureReleaseTest.java │ │ │ │ ├── POP3BeforeSMTPHandlerTest.java │ │ │ │ ├── SMTPProxyProtocolTest.java │ │ │ │ ├── SMTPSTest.java │ │ │ │ ├── SMTPSaslTest.java │ │ │ │ ├── SMTPServerTest.java │ │ │ │ ├── SMTPServerTestSystem.java │ │ │ │ ├── SMTPTestConfiguration.java │ │ │ │ ├── SPFHandlerTest.java │ │ │ │ ├── SetMimeHeaderHandlerTest.java │ │ │ │ ├── SmtpMtPriorityMessageHookTest.java │ │ │ │ ├── SmtpRequireTlsMessageHookTest.java │ │ │ │ ├── URIRBLHandlerTest.java │ │ │ │ ├── ValidRcptHandlerTest.java │ │ │ │ ├── ValidRcptMXTest.java │ │ │ │ ├── futurerelease │ │ │ │ └── FutureReleaseParametersTest.java │ │ │ │ └── priority │ │ │ │ └── SmtpMtPriorityParametersTest.java │ │ │ └── resources │ │ │ ├── keystore │ │ │ ├── log4j.xml │ │ │ ├── smtpserver-EnforceHeader.xml │ │ │ ├── smtpserver-advancedSecurity.xml │ │ │ ├── smtpserver-authAnnounceAlways.xml │ │ │ ├── smtpserver-authAnnounceNever.xml │ │ │ ├── smtpserver-authAnnounceSometimeMatching.xml │ │ │ ├── smtpserver-authAnnounceSometimeNotMatching.xml │ │ │ ├── smtpserver-disabled-feature.xml │ │ │ ├── smtpserver-dsn.xml │ │ │ ├── smtpserver-futurerelease.xml │ │ │ ├── smtpserver-mtPriority.xml │ │ │ ├── smtpserver-no-plain.xml │ │ │ ├── smtpserver-noauth.xml │ │ │ ├── smtpserver-proxy.xml │ │ │ ├── smtpserver-requireSSL.xml │ │ │ ├── smtpserver-requireTls.xml │ │ │ ├── smtpserver-tls.xml │ │ │ └── test_keystore │ ├── webadmin-integration-test │ │ ├── distributed-webadmin-integration-test │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── webadmin │ │ │ │ │ └── integration │ │ │ │ │ └── rabbitmq │ │ │ │ │ ├── ConsistencyTasksIntegrationTest.java │ │ │ │ │ ├── FixingGhostMailboxTest.java │ │ │ │ │ ├── MailReceptionCheckIntegrationTest.java │ │ │ │ │ ├── RabbitMQAuthorizedEndpointsTest.java │ │ │ │ │ ├── RabbitMQEventDeadLettersIntegrationTest.java │ │ │ │ │ ├── RabbitMQFastViewProjectionHealthCheckIntegrationTest.java │ │ │ │ │ ├── RabbitMQForwardIntegrationTest.java │ │ │ │ │ ├── RabbitMQJwtFilterIntegrationTest.java │ │ │ │ │ ├── RabbitMQQuotaSearchIntegrationTest.java │ │ │ │ │ ├── RabbitMQReindexingWithEventDeadLettersTest.java │ │ │ │ │ ├── RabbitMQUnauthorizedEndpointsTest.java │ │ │ │ │ ├── RabbitMQWebAdminServerBlobGCIntegrationTest.java │ │ │ │ │ ├── RabbitMQWebAdminServerIntegrationImmutableTest.java │ │ │ │ │ ├── RabbitMQWebAdminServerIntegrationTest.java │ │ │ │ │ ├── RabbitMQWebAdminServerTaskSerializationIntegrationImmutableTest.java │ │ │ │ │ ├── RabbitMQWebAdminServerTaskSerializationIntegrationTest.java │ │ │ │ │ └── vault │ │ │ │ │ ├── RabbitMQDeletedMessageVaultIntegrationTest.java │ │ │ │ │ └── WorkQueueEnabledDeletedMessageVaultIntegrationTest.java │ │ │ │ └── resources │ │ │ │ ├── dnsservice.xml │ │ │ │ ├── domainlist.xml │ │ │ │ ├── eml │ │ │ │ └── emailWithOnlyAttachment.eml │ │ │ │ ├── imapserver.xml │ │ │ │ ├── jwt_publickey │ │ │ │ ├── keystore │ │ │ │ ├── listeners.xml │ │ │ │ ├── lmtpserver.xml │ │ │ │ ├── mailetcontainer.xml │ │ │ │ ├── mailrepositorystore.xml │ │ │ │ ├── managesieveserver.xml │ │ │ │ ├── pop3server.xml │ │ │ │ ├── smtpserver.xml │ │ │ │ └── webadmin.properties │ │ ├── memory-webadmin-integration-test │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── webadmin │ │ │ │ │ └── integration │ │ │ │ │ └── memory │ │ │ │ │ ├── DisabledMetricsTest.java │ │ │ │ │ ├── MemoryAuthorizedEndpointsTest.java │ │ │ │ │ ├── MemoryFastViewProjectionHealthCheckIntegrationTest.java │ │ │ │ │ ├── MemoryForwardIntegrationTest.java │ │ │ │ │ ├── MemoryJwtFilterIntegrationTest.java │ │ │ │ │ ├── MemoryQuotaSearchIntegrationTest.java │ │ │ │ │ ├── MemoryUnauthorizedEndpointsTest.java │ │ │ │ │ ├── MemoryUserDeletionIntegrationTest.java │ │ │ │ │ ├── MemoryUsernameChangeIntegrationTest.java │ │ │ │ │ ├── MemoryWebAdminServerIntegrationImmutableTest.java │ │ │ │ │ ├── MemoryWebAdminServerIntegrationTest.java │ │ │ │ │ └── vault │ │ │ │ │ └── MemoryDeletedMessageVaultIntegrationTest.java │ │ │ │ └── resources │ │ │ │ ├── dnsservice.xml │ │ │ │ ├── domainlist.xml │ │ │ │ ├── imapserver.xml │ │ │ │ ├── jwt_publickey │ │ │ │ ├── keystore │ │ │ │ ├── listeners.xml │ │ │ │ ├── lmtpserver.xml │ │ │ │ ├── mailetcontainer.xml │ │ │ │ ├── mailrepositorystore.xml │ │ │ │ ├── managesieveserver.xml │ │ │ │ ├── pop3server.xml │ │ │ │ ├── smtpserver.xml │ │ │ │ └── webadmin.properties │ │ ├── pom.xml │ │ ├── postgres-webadmin-integration-test │ │ │ ├── pom.xml │ │ │ └── src │ │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── webadmin │ │ │ │ │ └── integration │ │ │ │ │ ├── postgres │ │ │ │ │ ├── PostgresAuthorizedEndpointsTest.java │ │ │ │ │ ├── PostgresFastViewProjectionHealthCheckIntegrationTest.java │ │ │ │ │ ├── PostgresForwardIntegrationTest.java │ │ │ │ │ ├── PostgresJwtFilterIntegrationTest.java │ │ │ │ │ ├── PostgresPopulateEmailQueryViewTaskIntegrationTest.java │ │ │ │ │ ├── PostgresQuotaSearchIntegrationTest.java │ │ │ │ │ ├── PostgresUnauthorizedEndpointsTest.java │ │ │ │ │ ├── PostgresWebAdminServerBlobGCIntegrationTest.java │ │ │ │ │ ├── PostgresWebAdminServerIntegrationImmutableTest.java │ │ │ │ │ └── PostgresWebAdminServerIntegrationTest.java │ │ │ │ │ └── vault │ │ │ │ │ └── PostgresDeletedMessageVaultIntegrationTest.java │ │ │ │ └── resources │ │ │ │ ├── dnsservice.xml │ │ │ │ ├── domainlist.xml │ │ │ │ ├── eml │ │ │ │ └── emailWithOnlyAttachment.eml │ │ │ │ ├── imapserver.xml │ │ │ │ ├── jwt_publickey │ │ │ │ ├── keystore │ │ │ │ ├── listeners.xml │ │ │ │ ├── lmtpserver.xml │ │ │ │ ├── mailetcontainer.xml │ │ │ │ ├── mailrepositorystore.xml │ │ │ │ ├── managesieveserver.xml │ │ │ │ ├── pop3server.xml │ │ │ │ ├── smtpserver.xml │ │ │ │ └── webadmin.properties │ │ └── webadmin-integration-test-common │ │ │ ├── pom.xml │ │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── webadmin │ │ │ └── integration │ │ │ ├── AuthorizedEndpointsTest.java │ │ │ ├── FastViewProjectionHealthCheckIntegrationContract.java │ │ │ ├── ForwardIntegrationTest.java │ │ │ ├── JwtFilterIntegrationTest.java │ │ │ ├── QuotaSearchIntegrationTest.java │ │ │ ├── TestFixture.java │ │ │ ├── UnauthorizedEndpointsTest.java │ │ │ ├── UnauthorizedModule.java │ │ │ ├── WebAdminServerIntegrationImmutableTest.java │ │ │ ├── WebAdminServerIntegrationTest.java │ │ │ └── vault │ │ │ ├── DeletedMessageVaultIntegrationTest.java │ │ │ ├── DeletedMessagesVaultRequests.java │ │ │ └── ExportRequest.java │ └── webadmin │ │ ├── pom.xml │ │ ├── webadmin-cassandra-data │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ ├── routes │ │ │ │ └── CassandraMappingsRoutes.java │ │ │ │ └── service │ │ │ │ ├── CassandraMappingsService.java │ │ │ │ └── CassandraMappingsSolveInconsistenciesTask.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── webadmin │ │ │ ├── routes │ │ │ └── CassandraMappingsRoutesTest.java │ │ │ └── service │ │ │ └── CassandraMappingsSolveInconsistenciesTaskTest.java │ │ ├── webadmin-cassandra │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ ├── dto │ │ │ │ ├── CassandraVersionRequest.java │ │ │ │ ├── CassandraVersionResponse.java │ │ │ │ ├── MailboxMergingRequest.java │ │ │ │ └── WebAdminMigrationTaskAdditionalInformationDTO.java │ │ │ │ ├── routes │ │ │ │ ├── CassandraMailboxMergingRoutes.java │ │ │ │ ├── CassandraMigrationRoutes.java │ │ │ │ ├── RecomputeMailboxCountersRequestToTask.java │ │ │ │ ├── RunningOptionsParser.java │ │ │ │ ├── SolveMailboxInconsistenciesRequestToTask.java │ │ │ │ ├── SolveMessageDeletedInconsistenciesRequestToTask.java │ │ │ │ ├── SolveMessageInconsistenciesRequestToTask.java │ │ │ │ ├── SolveMessageRecentInconsistenciesRequestToTask.java │ │ │ │ └── TasksCleanupRoutes.java │ │ │ │ ├── services │ │ │ │ └── TasksCleanupService.java │ │ │ │ └── tasks │ │ │ │ ├── TasksCleanupTask.java │ │ │ │ ├── TasksCleanupTaskAdditionalInformationDTO.java │ │ │ │ └── TasksCleanupTaskDTO.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── webadmin │ │ │ ├── dto │ │ │ ├── VersionRequestTest.java │ │ │ └── WebAdminMigrationTaskSerializationTest.java │ │ │ └── routes │ │ │ ├── CassandraMigrationRoutesTest.java │ │ │ ├── RecomputeMailboxCountersRequestToTaskTest.java │ │ │ ├── SolveMailboxInconsistenciesRequestToTaskTest.java │ │ │ ├── SolveMessageInconsistenciesRequestToTaskTest.java │ │ │ └── TasksCleanupRoutesTest.java │ │ ├── webadmin-core │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ ├── CORSFilter.java │ │ │ │ ├── Constants.java │ │ │ │ ├── FixedPortSupplier.java │ │ │ │ ├── PortSupplier.java │ │ │ │ ├── PublicRoutes.java │ │ │ │ ├── RandomPortSupplier.java │ │ │ │ ├── Routes.java │ │ │ │ ├── TlsConfiguration.java │ │ │ │ ├── UserCondition.java │ │ │ │ ├── WebAdminConfiguration.java │ │ │ │ ├── WebAdminServer.java │ │ │ │ ├── authentication │ │ │ │ ├── AuthenticationFilter.java │ │ │ │ ├── JwtFilter.java │ │ │ │ └── NoAuthenticationFilter.java │ │ │ │ ├── dto │ │ │ │ ├── DTOModuleInjections.java │ │ │ │ ├── ExecutionDetailsDto.java │ │ │ │ ├── HealthCheckDto.java │ │ │ │ ├── HealthCheckExecutionResultDto.java │ │ │ │ └── HeathCheckAggregationExecutionResultDto.java │ │ │ │ ├── jettyserver │ │ │ │ ├── EmbeddedJettyFactory.java │ │ │ │ ├── EmbeddedJettyServer.java │ │ │ │ ├── JettyServer.java │ │ │ │ └── SocketConnectorFactory.java │ │ │ │ ├── mdc │ │ │ │ ├── LoggingRequestFilter.java │ │ │ │ ├── LoggingResponseFilter.java │ │ │ │ ├── MDCCleanupFilter.java │ │ │ │ ├── MDCFilter.java │ │ │ │ ├── RequestId.java │ │ │ │ └── RequestLogger.java │ │ │ │ ├── metric │ │ │ │ ├── MetricPostFilter.java │ │ │ │ └── MetricPreFilter.java │ │ │ │ ├── routes │ │ │ │ ├── CORSRoute.java │ │ │ │ ├── HealthCheckRoutes.java │ │ │ │ └── TasksRoutes.java │ │ │ │ ├── tasks │ │ │ │ ├── TaskFromRequest.java │ │ │ │ ├── TaskFromRequestRegistry.java │ │ │ │ ├── TaskIdDto.java │ │ │ │ └── TaskRegistrationKey.java │ │ │ │ └── utils │ │ │ │ ├── ErrorResponder.java │ │ │ │ ├── JsonExtractException.java │ │ │ │ ├── JsonExtractor.java │ │ │ │ ├── JsonTransformer.java │ │ │ │ ├── JsonTransformerModule.java │ │ │ │ ├── ParametersExtractor.java │ │ │ │ └── Responses.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── webadmin │ │ │ ├── FixedPortSupplierTest.java │ │ │ ├── RandomPortSupplierTest.java │ │ │ ├── TlsConfigurationTest.java │ │ │ ├── WebAdminConfigurationTest.java │ │ │ ├── WebAdminServerTest.java │ │ │ ├── WebAdminUtils.java │ │ │ ├── WebAdminUtilsTest.java │ │ │ ├── authentication │ │ │ └── JwtFilterTest.java │ │ │ ├── mdc │ │ │ └── RequestIdTest.java │ │ │ ├── routes │ │ │ ├── ErrorRoutes.java │ │ │ ├── ErrorRoutesTest.java │ │ │ ├── HealthCheckRoutesTest.java │ │ │ └── TasksRoutesTest.java │ │ │ ├── tasks │ │ │ ├── TaskFromRequestRegistryTest.java │ │ │ ├── TaskFromRequestTest.java │ │ │ └── TaskRegistrationKeyTest.java │ │ │ └── utils │ │ │ ├── ErrorResponderTest.java │ │ │ ├── JsonExtractorTest.java │ │ │ └── ParametersExtractorTest.java │ │ ├── webadmin-data │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ ├── dto │ │ │ │ ├── AddUserRequest.java │ │ │ │ ├── AliasSourcesResponse.java │ │ │ │ ├── DLPConfigurationDTO.java │ │ │ │ ├── DLPConfigurationItemDTO.java │ │ │ │ ├── DomainAliasResponse.java │ │ │ │ ├── ForwardDestinationResponse.java │ │ │ │ ├── MappingsModule.java │ │ │ │ ├── UserResponse.java │ │ │ │ ├── VacationDTO.java │ │ │ │ └── VerifyUserRequest.java │ │ │ │ ├── routes │ │ │ │ ├── AddressMappingRoutes.java │ │ │ │ ├── AliasRoutes.java │ │ │ │ ├── BlobRoutes.java │ │ │ │ ├── DLPConfigurationRoutes.java │ │ │ │ ├── DeleteUserDataRoutes.java │ │ │ │ ├── DomainMappingsRoutes.java │ │ │ │ ├── DomainsRoutes.java │ │ │ │ ├── DropListRoutes.java │ │ │ │ ├── ForwardRoutes.java │ │ │ │ ├── GroupsRoutes.java │ │ │ │ ├── MailAddressParser.java │ │ │ │ ├── MappingRoutes.java │ │ │ │ ├── RegexMappingRoutes.java │ │ │ │ ├── SieveQuotaRoutes.java │ │ │ │ ├── SieveScriptRoutes.java │ │ │ │ ├── UserCreationRequestLogger.java │ │ │ │ ├── UserRoutes.java │ │ │ │ ├── UsernameChangeRoutes.java │ │ │ │ └── VacationRoutes.java │ │ │ │ └── service │ │ │ │ ├── DeleteUserDataService.java │ │ │ │ ├── DeleteUserDataTask.java │ │ │ │ ├── DeleteUserDataTaskAdditionalInformationDTO.java │ │ │ │ ├── DeleteUserDataTaskDTO.java │ │ │ │ ├── DeleteUsersDataOfDomainTask.java │ │ │ │ ├── DeleteUsersDataOfDomainTaskAdditionalInformationDTO.java │ │ │ │ ├── DeleteUsersDataOfDomainTaskDTO.java │ │ │ │ ├── DomainAliasService.java │ │ │ │ ├── UserService.java │ │ │ │ ├── UsernameChangeService.java │ │ │ │ ├── UsernameChangeTask.java │ │ │ │ ├── UsernameChangeTaskAdditionalInformationDTO.java │ │ │ │ └── UsernameChangeTaskDTO.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ ├── dto │ │ │ │ ├── DLPConfigurationItemDTOTest.java │ │ │ │ ├── DomainAliasResponseTest.java │ │ │ │ └── VacationDTOTest.java │ │ │ │ ├── routes │ │ │ │ ├── AddressMappingRoutesTest.java │ │ │ │ ├── AliasRoutesTest.java │ │ │ │ ├── BlobRoutesTest.java │ │ │ │ ├── DLPConfigurationRoutesTest.java │ │ │ │ ├── DeleteUserDataRoutesTest.java │ │ │ │ ├── DomainMappingsRoutesTest.java │ │ │ │ ├── DomainsRoutesTest.java │ │ │ │ ├── DropListRoutesTest.java │ │ │ │ ├── ForwardRoutesTest.java │ │ │ │ ├── GroupsRoutesTest.java │ │ │ │ ├── MappingRoutesTest.java │ │ │ │ ├── RegexMappingRoutesTest.java │ │ │ │ ├── SieveQuotaRoutesTest.java │ │ │ │ ├── SieveScriptRoutesTest.java │ │ │ │ ├── UserRoutesTest.java │ │ │ │ ├── UsernameChangeRoutesTest.java │ │ │ │ └── VacationRoutesTest.java │ │ │ │ └── service │ │ │ │ ├── DeleteUserDataTaskSerializationTest.java │ │ │ │ ├── DeleteUsersDataOfDomainTaskSerializationTest.java │ │ │ │ ├── DeleteUsersDataOfDomainTaskTest.java │ │ │ │ └── UsernameChangeTaskSerializationTest.java │ │ │ └── resources │ │ │ └── sieve │ │ │ └── my_sieve │ │ ├── webadmin-dropwizard-metrics │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ └── dropwizard │ │ │ │ └── MetricsRoutes.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── webadmin │ │ │ └── dropwizard │ │ │ └── MetricsRoutesTest.java │ │ ├── webadmin-http-client │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ └── httpclient │ │ │ │ ├── DomainClient.java │ │ │ │ ├── FeignHelper.java │ │ │ │ ├── MailboxClient.java │ │ │ │ ├── QuotaClient.java │ │ │ │ ├── UserClient.java │ │ │ │ ├── WebAdminHTTPClientFactory.java │ │ │ │ ├── feign │ │ │ │ ├── DomainFeignClient.java │ │ │ │ ├── JamesFeignException.java │ │ │ │ ├── MailboxFeignClient.java │ │ │ │ ├── QuotaFeignClient.java │ │ │ │ └── UserFeignClient.java │ │ │ │ └── model │ │ │ │ ├── DomainAlias.java │ │ │ │ ├── MailboxName.java │ │ │ │ ├── UserName.java │ │ │ │ └── UserPassword.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── webadmin │ │ │ └── httpclient │ │ │ ├── DomainClientTest.java │ │ │ ├── MailboxClientTest.java │ │ │ ├── QuotaClientTest.java │ │ │ └── UserClientTest.java │ │ ├── webadmin-jmap │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ └── data │ │ │ │ └── jmap │ │ │ │ ├── Constants.java │ │ │ │ ├── EmailQueryViewPopulator.java │ │ │ │ ├── JmapUploadRoutes.java │ │ │ │ ├── MessageFastViewProjectionCorrector.java │ │ │ │ ├── PopulateEmailQueryViewRequestToTask.java │ │ │ │ ├── PopulateEmailQueryViewTask.java │ │ │ │ ├── PopulateEmailQueryViewTaskAdditionalInformationDTO.java │ │ │ │ ├── PopulateFilteringProjectionRequestToTask.java │ │ │ │ ├── PopulateFilteringProjectionTask.java │ │ │ │ ├── PopulateFilteringProjectionTaskAdditionalInformationDTO.java │ │ │ │ ├── RecomputeAllFastViewProjectionItemsRequestToTask.java │ │ │ │ ├── RecomputeAllFastViewProjectionItemsTask.java │ │ │ │ ├── RecomputeAllFastViewTaskAdditionalInformationDTO.java │ │ │ │ ├── RecomputeUserFastViewProjectionItemsRequestToTask.java │ │ │ │ ├── RecomputeUserFastViewProjectionItemsTask.java │ │ │ │ ├── RecomputeUserFastViewTaskAdditionalInformationDTO.java │ │ │ │ ├── RunningOptions.java │ │ │ │ ├── RunningOptionsDTO.java │ │ │ │ ├── RunningOptionsParser.java │ │ │ │ ├── UploadCleanupTaskAdditionalInformationDTO.java │ │ │ │ ├── UploadCleanupTaskDTO.java │ │ │ │ ├── UploadRepositoryCleanupTask.java │ │ │ │ ├── UserIdentityRoutes.java │ │ │ │ └── dto │ │ │ │ └── UserIdentity.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ └── data │ │ │ │ └── jmap │ │ │ │ ├── JmapUploadRoutesTest.java │ │ │ │ ├── PopulateEmailQueryViewProjectionItemsTaskAdditionalInformationDTOTest.java │ │ │ │ ├── PopulateEmailQueryViewRequestToTaskTest.java │ │ │ │ ├── PopulateEmailQueryViewTaskSerializationTest.java │ │ │ │ ├── PopulateFilteringProjectionItemsTaskAdditionalInformationDTOTest.java │ │ │ │ ├── PopulateFilteringProjectionRequestToTaskTest.java │ │ │ │ ├── PopulateFilteringProjectionTaskSerializationTest.java │ │ │ │ ├── RecomputeAllFastViewProjectionItemsRequestToTaskTest.java │ │ │ │ ├── RecomputeAllFastViewProjectionItemsTaskAdditionalInformationDTOTest.java │ │ │ │ ├── RecomputeAllFastViewProjectionItemsTaskSerializationTest.java │ │ │ │ ├── RecomputeUserFastViewProjectionItemsRequestToTaskTest.java │ │ │ │ ├── RecomputeUserFastViewProjectionItemsTaskAdditionalInformationDTOTest.java │ │ │ │ ├── RecomputeUserFastViewProjectionItemsTaskSerializationTest.java │ │ │ │ ├── UploadCleanupTaskAdditionalInformationDTOTest.java │ │ │ │ ├── UploadCleanupTaskSerializationTest.java │ │ │ │ └── UserIdentitiesRoutesTest.java │ │ │ └── resources │ │ │ └── json │ │ │ ├── cleanUpload.additionalInformation.json │ │ │ ├── cleanUpload.task.json │ │ │ ├── populateAll.additionalInformation.json │ │ │ ├── populateAll.task.json │ │ │ ├── populateFilters.additionalInformation.json │ │ │ ├── populateFilters.task.json │ │ │ ├── recomputeAll.additionalInformation.json │ │ │ ├── recomputeAll.additionalInformation.legacy.json │ │ │ ├── recomputeAll.task.json │ │ │ ├── recomputeAll.task.legacy.json │ │ │ ├── recomputeUser.additionalInformation.json │ │ │ ├── recomputeUser.additionalInformation.legacy.json │ │ │ ├── recomputeUser.task.json │ │ │ └── recomputeUser.task.legacy.json │ │ ├── webadmin-mail-over-web │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ └── routes │ │ │ │ └── TransferEmailRoutes.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── routes │ │ │ │ └── TransferEmailRoutesTest.java │ │ │ └── resources │ │ │ └── message │ │ │ └── rfc822 │ │ │ ├── message-without-from.eml │ │ │ ├── message-without-tos.eml │ │ │ └── message.eml │ │ ├── webadmin-mailbox-deleted-message-vault │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ └── vault │ │ │ │ └── routes │ │ │ │ ├── DeletedMessagesVaultDeleteTask.java │ │ │ │ ├── DeletedMessagesVaultDeleteTaskAdditionalInformationDTO.java │ │ │ │ ├── DeletedMessagesVaultDeleteTaskDTO.java │ │ │ │ ├── DeletedMessagesVaultExportTask.java │ │ │ │ ├── DeletedMessagesVaultExportTaskAdditionalInformationDTO.java │ │ │ │ ├── DeletedMessagesVaultExportTaskDTO.java │ │ │ │ ├── DeletedMessagesVaultRestoreTask.java │ │ │ │ ├── DeletedMessagesVaultRestoreTaskAdditionalInformationDTO.java │ │ │ │ ├── DeletedMessagesVaultRestoreTaskDTO.java │ │ │ │ ├── DeletedMessagesVaultRoutes.java │ │ │ │ ├── ExportService.java │ │ │ │ ├── RestoreService.java │ │ │ │ ├── WebAdminDeletedMessagesVaultDeleteTaskAdditionalInformationDTO.java │ │ │ │ └── WebAdminDeletedMessagesVaultRestoreTaskAdditionalInformationDTO.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ └── vault │ │ │ │ └── routes │ │ │ │ ├── DeletedMessagesVaultDeleteTaskSerializationTest.java │ │ │ │ ├── DeletedMessagesVaultExportTaskSerializationTest.java │ │ │ │ ├── DeletedMessagesVaultRestoreTaskSerializationTest.java │ │ │ │ ├── DeletedMessagesVaultRoutesTest.java │ │ │ │ ├── WebAdminDeletedMessagesVaultDeleteTaskSerializationTest.java │ │ │ │ ├── WebAdminDeletedMessagesVaultRestoreTaskSerializationTest.java │ │ │ │ └── WebadminApiQuerySerializationContractTest.java │ │ │ └── resources │ │ │ └── query │ │ │ ├── contains_origin_mailbox.json │ │ │ ├── contains_recipient.json │ │ │ ├── has_attachment.json │ │ │ ├── has_no_attachment.json │ │ │ ├── has_sender.json │ │ │ ├── string_contains.json │ │ │ ├── string_contains_ignore_case.json │ │ │ ├── string_equals.json │ │ │ ├── string_equals_ignore_case.json │ │ │ ├── zoned_date_time_after_or_equals.json │ │ │ └── zoned_date_time_before_or_equals.json │ │ ├── webadmin-mailbox │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ ├── condition │ │ │ │ └── user │ │ │ │ │ ├── HasNoMailboxesCondition.java │ │ │ │ │ └── HasNotAllSystemMailboxesCondition.java │ │ │ │ ├── dto │ │ │ │ ├── MailboxResponse.java │ │ │ │ ├── OccupationDTO.java │ │ │ │ ├── OccupationRatioDTO.java │ │ │ │ ├── QuotaDTO.java │ │ │ │ ├── QuotaDetailsDTO.java │ │ │ │ ├── QuotaDomainDTO.java │ │ │ │ ├── QuotaValueDeserializer.java │ │ │ │ ├── QuotaValueSerializer.java │ │ │ │ ├── SerializableReIndexingExecutionFailures.java │ │ │ │ ├── UsersQuotaDetailsDTO.java │ │ │ │ ├── ValidatedQuotaDTO.java │ │ │ │ ├── WebAdminIndexationContextInformationDTO.java │ │ │ │ ├── WebAdminSingleMailboxReindexingTaskAdditionalInformationDTO.java │ │ │ │ └── WebAdminUserReindexingTaskAdditionalInformationDTO.java │ │ │ │ ├── jackson │ │ │ │ └── QuotaModule.java │ │ │ │ ├── routes │ │ │ │ ├── DomainQuotaRoutes.java │ │ │ │ ├── EventDeadLettersRoutes.java │ │ │ │ ├── GlobalQuotaRoutes.java │ │ │ │ ├── MailboxesRoutes.java │ │ │ │ ├── MessagesRoutes.java │ │ │ │ ├── ReindexingRunningOptionsParser.java │ │ │ │ ├── UserMailboxesRoutes.java │ │ │ │ └── UserQuotaRoutes.java │ │ │ │ ├── service │ │ │ │ ├── ClearMailboxContentTask.java │ │ │ │ ├── ClearMailboxContentTaskAdditionalInformationDTO.java │ │ │ │ ├── ClearMailboxContentTaskDTO.java │ │ │ │ ├── CreateMissingParentsRequestToTask.java │ │ │ │ ├── CreateMissingParentsTask.java │ │ │ │ ├── CreateMissingParentsTaskAdditionalInformationDTO.java │ │ │ │ ├── DomainQuotaService.java │ │ │ │ ├── EventDeadLettersRedeliverAllTask.java │ │ │ │ ├── EventDeadLettersRedeliverAllTaskDTO.java │ │ │ │ ├── EventDeadLettersRedeliverGroupTask.java │ │ │ │ ├── EventDeadLettersRedeliverGroupTaskDTO.java │ │ │ │ ├── EventDeadLettersRedeliverOneTask.java │ │ │ │ ├── EventDeadLettersRedeliverOneTaskDTO.java │ │ │ │ ├── EventDeadLettersRedeliverService.java │ │ │ │ ├── EventDeadLettersRedeliveryTaskAdditionalInformation.java │ │ │ │ ├── EventDeadLettersRedeliveryTaskAdditionalInformationDTO.java │ │ │ │ ├── EventDeadLettersService.java │ │ │ │ ├── EventRetriever.java │ │ │ │ ├── ExpireMailboxAdditionalInformationDTO.java │ │ │ │ ├── ExpireMailboxDTO.java │ │ │ │ ├── ExpireMailboxService.java │ │ │ │ ├── ExpireMailboxTask.java │ │ │ │ ├── ExportService.java │ │ │ │ ├── GlobalQuotaService.java │ │ │ │ ├── MailboxesExportRequestToTask.java │ │ │ │ ├── MailboxesExportTask.java │ │ │ │ ├── MailboxesExportTaskAdditionalInformationDTO.java │ │ │ │ ├── PreviousReIndexingService.java │ │ │ │ ├── SubscribeAllRequestToTask.java │ │ │ │ ├── SubscribeAllTask.java │ │ │ │ ├── SubscribeAllTaskAdditionalInformationDTO.java │ │ │ │ ├── SubscribeAllTaskDTO.java │ │ │ │ ├── UserMailboxesService.java │ │ │ │ └── UserQuotaService.java │ │ │ │ ├── utils │ │ │ │ └── MailboxHaveChildrenException.java │ │ │ │ └── validation │ │ │ │ ├── MailboxName.java │ │ │ │ ├── QuotaDTOValidator.java │ │ │ │ └── Quotas.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ ├── dto │ │ │ │ ├── QuotaLimitValueDeserializerTest.java │ │ │ │ ├── SerializableReIndexingExecutionFailuresTest.java │ │ │ │ ├── UsersQuotaDetailsDTOTest.java │ │ │ │ ├── WebAdminIndexationContextInformationDTOTest.java │ │ │ │ ├── WebAdminSingleMailboxIndexingDTOTest.java │ │ │ │ └── WebAdminUserReIndexingDTOTest.java │ │ │ │ ├── routes │ │ │ │ ├── DomainQuotaRoutesNoVirtualHostingTest.java │ │ │ │ ├── DomainQuotaRoutesTest.java │ │ │ │ ├── EventDeadLettersRoutesTest.java │ │ │ │ ├── GlobalQuotaRoutesTest.java │ │ │ │ ├── MailboxesRoutesNoTasksTest.java │ │ │ │ ├── MailboxesRoutesTest.java │ │ │ │ ├── MalformedUrlRoutesTest.java │ │ │ │ ├── MessageRoutesExpireTest.java │ │ │ │ ├── MessageRoutesTest.java │ │ │ │ ├── OpenSearchQuotaSearchExtension.java │ │ │ │ ├── ScanningQuotaSearchExtension.java │ │ │ │ ├── UserMailboxesRoutesNoIndexationTest.java │ │ │ │ ├── UserMailboxesRoutesTest.java │ │ │ │ ├── UserQuotaRoutesTest.java │ │ │ │ ├── UserRoutesWithMailboxParamTest.java │ │ │ │ └── WebAdminQuotaSearchTestSystem.java │ │ │ │ ├── service │ │ │ │ ├── ClearMailboxContentTaskAdditionalInformationDTOTest.java │ │ │ │ ├── ClearMailboxContentTaskSerializationTest.java │ │ │ │ ├── CreateMissingParentsRequestToTaskTest.java │ │ │ │ ├── CreateMissingParentsTaskAdditionalInformationDTOTest.java │ │ │ │ ├── CreateMissingParentsTaskSerializationTest.java │ │ │ │ ├── EventDeadLettersRedeliverTaskTest.java │ │ │ │ ├── ExpireMailboxServiceTest.java │ │ │ │ ├── ExpireMailboxTaskAdditionalInformationDTOTest.java │ │ │ │ ├── ExpireMailboxTaskSerializationTest.java │ │ │ │ ├── ExportServiceTest.java │ │ │ │ ├── ExportServiceTestSystem.java │ │ │ │ ├── MailboxesExportRequestToTaskTest.java │ │ │ │ ├── MailboxesExportTaskAdditionalInformationDTOTest.java │ │ │ │ ├── MailboxesExportTaskSerializationTest.java │ │ │ │ ├── SubscribeAllRequestToTaskTest.java │ │ │ │ ├── SubscribeAllTaskAdditionalInformationDTOTest.java │ │ │ │ └── SubscribeAllTaskSerializationTest.java │ │ │ │ └── validation │ │ │ │ └── QuotaLimitValueTest.java │ │ │ └── resources │ │ │ └── json │ │ │ ├── clearMailboxContent.additionalInformation.json │ │ │ ├── clearMailboxContent.task.json │ │ │ ├── createMissingParents.additionalInformation.json │ │ │ ├── createMissingParents.task.json │ │ │ ├── expireMailbox.additionalInformation.json │ │ │ ├── expireMailbox.age.task.json │ │ │ ├── expireMailbox.header.task.json │ │ │ ├── mailboxesExport.additionalInformation.json │ │ │ ├── mailboxesExport.task.json │ │ │ ├── subscribeAll.additionalInformation.json │ │ │ └── subscribeAll.task.json │ │ ├── webadmin-mailqueue │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ ├── dto │ │ │ │ ├── ForceDelivery.java │ │ │ │ ├── MailQueueDTO.java │ │ │ │ └── MailQueueItemDTO.java │ │ │ │ ├── routes │ │ │ │ └── MailQueueRoutes.java │ │ │ │ └── service │ │ │ │ ├── ClearMailQueueTask.java │ │ │ │ ├── ClearMailQueueTaskAdditionalInformationDTO.java │ │ │ │ ├── ClearMailQueueTaskDTO.java │ │ │ │ ├── DeleteMailsFromMailQueueTask.java │ │ │ │ ├── DeleteMailsFromMailQueueTaskAdditionalInformationDTO.java │ │ │ │ ├── DeleteMailsFromMailQueueTaskDTO.java │ │ │ │ └── WebAdminDeleteMailsFromMailQueueTaskAdditionalInformationDTO.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── webadmin │ │ │ ├── dto │ │ │ ├── MailQueueDTOTest.java │ │ │ └── MailQueueItemDTOTest.java │ │ │ ├── routes │ │ │ ├── MailQueueRoutesTest.java │ │ │ └── MailQueueRoutesUnitTest.java │ │ │ └── service │ │ │ ├── ClearMailQueueTaskTest.java │ │ │ ├── DeleteMailsFromMailQueueTaskTest.java │ │ │ └── WebAdminDeleteMailsFromMailQueueTaskAdditionalInformationDTOTest.java │ │ ├── webadmin-mailrepository │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ ├── dto │ │ │ │ ├── ExtendedMailRepositoryResponse.java │ │ │ │ ├── HeadersDto.java │ │ │ │ ├── InaccessibleFieldException.java │ │ │ │ ├── MailDto.java │ │ │ │ ├── MailKeyDTO.java │ │ │ │ ├── MailRepositoryResponse.java │ │ │ │ └── SingleMailRepositoryResponse.java │ │ │ │ ├── routes │ │ │ │ └── MailRepositoriesRoutes.java │ │ │ │ └── service │ │ │ │ ├── ClearMailRepositoryTask.java │ │ │ │ ├── ClearMailRepositoryTaskAdditionalInformationDTO.java │ │ │ │ ├── ClearMailRepositoryTaskDTO.java │ │ │ │ ├── MailRepositoryStoreService.java │ │ │ │ ├── ReprocessingAllMailsTask.java │ │ │ │ ├── ReprocessingAllMailsTaskAdditionalInformationDTO.java │ │ │ │ ├── ReprocessingAllMailsTaskDTO.java │ │ │ │ ├── ReprocessingOneMailTask.java │ │ │ │ ├── ReprocessingOneMailTaskAdditionalInformationDTO.java │ │ │ │ ├── ReprocessingOneMailTaskDTO.java │ │ │ │ ├── ReprocessingService.java │ │ │ │ └── WebAdminClearMailRepositoryTaskAdditionalInformationDTO.java │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── webadmin │ │ │ │ ├── routes │ │ │ │ └── MailRepositoriesRoutesTest.java │ │ │ │ └── service │ │ │ │ ├── ClearMailRepositoryTaskTest.java │ │ │ │ ├── MailRepositoryStoreServiceTest.java │ │ │ │ ├── ReprocessingAllMailsTaskTest.java │ │ │ │ ├── ReprocessingOneMailTaskTest.java │ │ │ │ ├── ReprocessingServiceTest.java │ │ │ │ └── WebAdminClearMailRepositoryTaskDTOTest.java │ │ │ └── resources │ │ │ └── mail.eml │ │ ├── webadmin-pop3 │ │ ├── README.md │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── pop3 │ │ │ │ └── webadmin │ │ │ │ └── Pop3MetaDataFixInconsistenciesTaskRegistration.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── pop3 │ │ │ └── webadmin │ │ │ └── Pop3MetaDataFixInconsistenciesRoutesTest.java │ │ ├── webadmin-protocols │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── protocols │ │ │ └── webadmin │ │ │ └── ProtocolServerRoutes.java │ │ └── webadmin-rabbitmq │ │ ├── pom.xml │ │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── webadmin │ │ │ ├── routes │ │ │ ├── BrowseStartUpdateTaskRegistration.java │ │ │ └── RabbitMQMailQueuesRoutes.java │ │ │ └── service │ │ │ ├── BrowseStartUpdateTask.java │ │ │ ├── BrowseStartUpdateTaskAdditionalInformationDTO.java │ │ │ ├── BrowseStartUpdateTaskDTO.java │ │ │ ├── RepublishNotProcessedMailsTaskAdditionalInformationDTO.java │ │ │ ├── RepublishNotProcessedMailsTaskDTO.java │ │ │ └── RepublishNotprocessedMailsTask.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── webadmin │ │ ├── routes │ │ └── RabbitMQMailQueuesRoutesTest.java │ │ └── service │ │ └── RepublishNotprocessedMailsTaskTest.java ├── queue │ ├── queue-activemq │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── queue │ │ │ │ │ └── activemq │ │ │ │ │ ├── ActiveMQCacheableMailQueue.java │ │ │ │ │ ├── ActiveMQConfiguration.java │ │ │ │ │ ├── ActiveMQHealthCheck.java │ │ │ │ │ ├── ActiveMQMailQueueFactory.java │ │ │ │ │ ├── ActiveMQMailQueueItem.java │ │ │ │ │ ├── ActiveMQSupport.java │ │ │ │ │ ├── EmbeddedActiveMQ.java │ │ │ │ │ ├── FileSystemBlobStrategy.java │ │ │ │ │ ├── FileSystemBlobTransferPolicy.java │ │ │ │ │ ├── MimeMessageBlobMessageSource.java │ │ │ │ │ └── metric │ │ │ │ │ ├── ActiveMQMetricCollector.java │ │ │ │ │ ├── ActiveMQMetricCollectorImpl.java │ │ │ │ │ ├── ActiveMQMetricCollectorNoop.java │ │ │ │ │ ├── ActiveMQMetricConfiguration.java │ │ │ │ │ └── ActiveMQMetrics.java │ │ │ └── resources │ │ │ │ └── META-INF │ │ │ │ └── spring │ │ │ │ └── activemq-queue-context.xml │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── queue │ │ │ └── activemq │ │ │ ├── ActiveMQHealthCheckTest.java │ │ │ ├── ActiveMQMailQueueBlobTest.java │ │ │ ├── ActiveMQMailQueueFactoryTest.java │ │ │ ├── ActiveMQMailQueueTest.java │ │ │ └── metric │ │ │ ├── ActiveMQMetricCollectorTest.java │ │ │ └── ActiveMQMetricConfigurationTest.java │ ├── queue-api │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── queue │ │ │ │ └── api │ │ │ │ ├── MailPrioritySupport.java │ │ │ │ ├── MailQueue.java │ │ │ │ ├── MailQueueFactory.java │ │ │ │ ├── MailQueueItemDecoratorFactory.java │ │ │ │ ├── MailQueueManagementMBean.java │ │ │ │ ├── MailQueueName.java │ │ │ │ ├── ManageableMailQueue.java │ │ │ │ ├── RawMailQueueItem.java │ │ │ │ └── RawMailQueueItemDecoratorFactory.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── queue │ │ │ └── api │ │ │ ├── DelayedMailQueueContract.java │ │ │ ├── DelayedManageableMailQueueContract.java │ │ │ ├── DelayedPriorityMailQueueContract.java │ │ │ ├── MailQueueContract.java │ │ │ ├── MailQueueFactoryContract.java │ │ │ ├── MailQueueFactoryTest.java │ │ │ ├── MailQueueMetricContract.java │ │ │ ├── MailQueueMetricExtension.java │ │ │ ├── MailQueueNameTest.java │ │ │ ├── Mails.java │ │ │ ├── ManageableMailQueueContract.java │ │ │ ├── ManageableMailQueueFactoryContract.java │ │ │ ├── PriorityMailQueueContract.java │ │ │ └── PriorityManageableMailQueueContract.java │ ├── queue-jms │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── queue │ │ │ │ ├── jms │ │ │ │ ├── JMSCacheableMailQueue.java │ │ │ │ ├── JMSMailQueueFactory.java │ │ │ │ ├── JMSMailQueueItem.java │ │ │ │ ├── JMSSupport.java │ │ │ │ └── MimeMessageObjectMessageSource.java │ │ │ │ └── library │ │ │ │ ├── AbstractMailQueueFactory.java │ │ │ │ └── MailQueueManagement.java │ │ │ ├── reporting-site │ │ │ └── site.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── queue │ │ │ ├── jms │ │ │ ├── BrokerExtension.java │ │ │ ├── JMSCacheableMailQueueFactoryTest.java │ │ │ └── JMSCacheableMailQueueTest.java │ │ │ └── library │ │ │ └── AbstractMailQueueFactoryTest.java │ ├── queue-memory │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── queue │ │ │ │ └── memory │ │ │ │ └── MemoryMailQueueFactory.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── queue │ │ │ └── memory │ │ │ ├── MemoryCacheableMailQueueFactoryTest.java │ │ │ └── MemoryCacheableMailQueueTest.java │ ├── queue-pulsar │ │ ├── README.adoc │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── queue │ │ │ │ └── pulsar │ │ │ │ ├── EnqueueId.scala │ │ │ │ ├── Filter.scala │ │ │ │ ├── FilterStage.scala │ │ │ │ ├── Header.scala │ │ │ │ ├── MailMetadata.scala │ │ │ │ ├── PulsarMailQueue.scala │ │ │ │ ├── PulsarMailQueueConfiguration.scala │ │ │ │ └── PulsarMailQueueFactory.scala │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── queue │ │ │ │ └── pulsar │ │ │ │ ├── PulsarMailQueueFactoryTest.java │ │ │ │ └── PulsarMailQueueTest.java │ │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── queue │ │ │ └── pulsar │ │ │ └── JavaClient.scala │ └── queue-rabbitmq │ │ ├── pom.xml │ │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── queue │ │ │ └── rabbitmq │ │ │ ├── Dequeuer.java │ │ │ ├── EnqueueId.java │ │ │ ├── EnqueuedItem.java │ │ │ ├── Enqueuer.java │ │ │ ├── HeadersDto.java │ │ │ ├── MailLoader.java │ │ │ ├── MailQueueName.java │ │ │ ├── MailReference.java │ │ │ ├── MailReferenceDTO.java │ │ │ ├── MailReferenceSerializer.java │ │ │ ├── MailWithEnqueueId.java │ │ │ ├── RabbitMQMailQueue.java │ │ │ ├── RabbitMQMailQueueConsumerHealthCheck.java │ │ │ ├── RabbitMQMailQueueDeadLetterQueueHealthCheck.java │ │ │ ├── RabbitMQMailQueueFactory.java │ │ │ ├── RabbitMQMailQueueManagement.java │ │ │ └── view │ │ │ ├── RabbitMQMailQueueConfiguration.java │ │ │ ├── api │ │ │ ├── DeleteCondition.java │ │ │ ├── FakeMailQueueView.java │ │ │ └── MailQueueView.java │ │ │ └── cassandra │ │ │ ├── BrowseStartDAO.java │ │ │ ├── BrowseStartHealthCheck.java │ │ │ ├── CassandraMailQueueBrowser.java │ │ │ ├── CassandraMailQueueMailDelete.java │ │ │ ├── CassandraMailQueueMailStore.java │ │ │ ├── CassandraMailQueueView.java │ │ │ ├── CassandraMailQueueViewDataDefinition.java │ │ │ ├── CassandraMailQueueViewStartUpCheck.java │ │ │ ├── ContentStartDAO.java │ │ │ ├── DeletedMailsDAO.java │ │ │ ├── EnqueuedMailsDAO.java │ │ │ ├── EnqueuedMailsDaoUtil.java │ │ │ ├── MailQueueViewBlobReferenceSource.java │ │ │ ├── configuration │ │ │ ├── CassandraMailQueueViewConfiguration.java │ │ │ ├── CassandraMailQueueViewConfigurationModule.java │ │ │ ├── ConfigurationAggregate.java │ │ │ ├── ConfigurationChanged.java │ │ │ ├── ConfigurationChangedDTO.java │ │ │ ├── EventsourcingConfigurationManagement.java │ │ │ ├── RegisterConfigurationCommand.java │ │ │ └── RegisterConfigurationCommandHandler.java │ │ │ └── model │ │ │ ├── BucketedSlices.java │ │ │ └── EnqueuedItemWithSlicingContext.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── queue │ │ │ └── rabbitmq │ │ │ ├── EnqueuedItemTest.java │ │ │ ├── MailDTOTest.java │ │ │ ├── MailLoaderTest.java │ │ │ ├── MailQueueNameTest.java │ │ │ ├── RabbitMQMailQueueConfigurationChangeTest.java │ │ │ ├── RabbitMQMailQueueDeadLetterQueueHealthCheckTest.java │ │ │ ├── RabbitMQMailQueueTest.java │ │ │ ├── RabbitMqMailQueueFactoryTest.java │ │ │ └── view │ │ │ ├── RabbitMQMailQueueConfigurationTest.java │ │ │ ├── api │ │ │ └── DeleteConditionTest.java │ │ │ └── cassandra │ │ │ ├── BrowseStartDAOTest.java │ │ │ ├── BrowseStartHealthCheckTest.java │ │ │ ├── CassandraMailQueueViewTestFactory.java │ │ │ ├── ContentStartDAOTest.java │ │ │ ├── DeletedMailsDAOTest.java │ │ │ ├── EnqueuedMailsDaoTest.java │ │ │ ├── EnqueuedMailsDaoUtilTest.java │ │ │ ├── configuration │ │ │ ├── CassandraMailQueueViewConfigurationTest.java │ │ │ ├── ConfigurationChangedDTOTest.java │ │ │ ├── DTOTest.java │ │ │ ├── EventsourcingConfigurationManagementTest.java │ │ │ └── RegisterConfigurationCommandTest.java │ │ │ └── model │ │ │ ├── BucketedSlicesTest.java │ │ │ ├── EnqueueIdTest.java │ │ │ └── EnqueuedItemWithSlicingContextTest.java │ │ └── resources │ │ └── json │ │ ├── mail1-legacy.json │ │ ├── mail1.json │ │ ├── mail_min.json │ │ └── mailqueueview │ │ └── configuration │ │ └── configuration_changed.json ├── src │ ├── main │ │ └── appended-resources │ │ │ └── supplemental-models.xml │ └── reporting-site │ │ └── site.xml ├── task │ ├── task-api │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── task │ │ │ │ │ ├── AsyncSafeTask.java │ │ │ │ │ ├── Task.java │ │ │ │ │ ├── TaskId.java │ │ │ │ │ ├── TaskManager.java │ │ │ │ │ ├── TaskNotFoundException.java │ │ │ │ │ └── TaskType.java │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── task │ │ │ │ ├── Hostname.scala │ │ │ │ └── TaskExecutionDetails.scala │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── task │ │ │ ├── CompletedTask.java │ │ │ ├── FailedTask.java │ │ │ ├── FailsDeserializationTask.java │ │ │ ├── MemoryReferenceTask.java │ │ │ ├── MemoryReferenceWithCounterTask.java │ │ │ ├── TaskIdTest.java │ │ │ ├── TaskManagerContract.java │ │ │ ├── TaskTest.java │ │ │ ├── TaskTypeTest.java │ │ │ └── ThrowingTask.java │ ├── task-distributed │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── task │ │ │ │ │ └── eventsourcing │ │ │ │ │ └── distributed │ │ │ │ │ ├── CancelRequestQueueName.java │ │ │ │ │ ├── DistributedTaskManagerHealthCheck.java │ │ │ │ │ ├── RabbitMQTerminationSubscriber.java │ │ │ │ │ ├── RabbitMQWorkQueue.java │ │ │ │ │ ├── RabbitMQWorkQueueReconnectionHandler.java │ │ │ │ │ ├── TasksSerializationModule.java │ │ │ │ │ ├── TerminationQueueName.java │ │ │ │ │ └── TerminationReconnectionHandler.java │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── task │ │ │ │ └── eventsourcing │ │ │ │ ├── cassandra │ │ │ │ ├── CassandraTaskExecutionDetailsProjection.scala │ │ │ │ ├── CassandraTaskExecutionDetailsProjectionDAO.scala │ │ │ │ └── CassandraTaskExecutionDetailsProjectionModule.scala │ │ │ │ └── distributed │ │ │ │ ├── RabbitMQWorkQueueConfiguration.scala │ │ │ │ ├── RabbitMQWorkQueueSupplier.scala │ │ │ │ └── TaskEventDTO.scala │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── task │ │ │ └── eventsourcing │ │ │ ├── cassandra │ │ │ ├── CassandraTaskExecutionDetailsProjectionDAOTest.java │ │ │ └── CassandraTaskExecutionDetailsProjectionTest.java │ │ │ └── distributed │ │ │ ├── DistributedTaskManagerTest.java │ │ │ ├── DistributedTaskManagerWithQuorumQueueTest.java │ │ │ ├── ImmediateWorker.java │ │ │ ├── RabbitMQTerminationSubscriberTest.java │ │ │ ├── RabbitMQWorkQueuePersistenceTest.java │ │ │ ├── RabbitMQWorkQueueTest.java │ │ │ └── TaskEventsSerializationTest.java │ ├── task-json │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── server │ │ │ │ └── task │ │ │ │ └── json │ │ │ │ ├── JsonTaskAdditionalInformationSerializer.java │ │ │ │ ├── JsonTaskSerializer.java │ │ │ │ ├── TaskExtensionModule.java │ │ │ │ ├── TaskModuleInjectionKeys.java │ │ │ │ └── dto │ │ │ │ ├── AdditionalInformationDTO.java │ │ │ │ ├── AdditionalInformationDTOModule.java │ │ │ │ ├── TaskDTO.java │ │ │ │ └── TaskDTOModule.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── server │ │ │ └── task │ │ │ └── json │ │ │ ├── TaskDeserializerTest.java │ │ │ ├── TaskSerializationTest.java │ │ │ ├── TaskSerializerTest.java │ │ │ ├── TestTask.java │ │ │ └── dto │ │ │ ├── CompletedTaskDTO.java │ │ │ ├── FailedTaskDTO.java │ │ │ ├── FailsDeserializationTaskDTO.java │ │ │ ├── MemoryReferenceTaskDTO.java │ │ │ ├── MemoryReferenceTaskStore.java │ │ │ ├── MemoryReferenceWithCounterTaskAdditionalInformationDTO.java │ │ │ ├── MemoryReferenceWithCounterTaskDTO.java │ │ │ ├── MemoryReferenceWithCounterTaskStore.java │ │ │ ├── TestTaskDTO.java │ │ │ ├── TestTaskDTOModules.java │ │ │ └── ThrowingTaskDTO.java │ ├── task-memory │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── james │ │ │ │ │ └── task │ │ │ │ │ ├── MemoryTaskManager.java │ │ │ │ │ ├── MemoryWorkQueue.java │ │ │ │ │ ├── SerialTaskManagerWorker.java │ │ │ │ │ ├── TaskExecutionDetailsUpdater.java │ │ │ │ │ ├── TaskManagerWorker.java │ │ │ │ │ ├── TaskWithId.java │ │ │ │ │ └── WorkQueue.java │ │ │ └── scala │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── task │ │ │ │ └── eventsourcing │ │ │ │ ├── CommandHandlers.scala │ │ │ │ ├── DecisionProjection.scala │ │ │ │ ├── EventSourcingTaskManager.scala │ │ │ │ ├── Events.scala │ │ │ │ ├── TaskAggregate.scala │ │ │ │ ├── TaskAggregateId.scala │ │ │ │ ├── TaskCommand.scala │ │ │ │ ├── TaskExecutionDetailsProjection.scala │ │ │ │ ├── TerminationSubscriber.scala │ │ │ │ ├── WorkQueueSupplier.scala │ │ │ │ └── WorkerStatusListener.scala │ │ │ └── test │ │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── james │ │ │ │ └── task │ │ │ │ ├── CountDownLatchExtension.java │ │ │ │ ├── MemoryTaskManagerTest.java │ │ │ │ ├── SerialTaskManagerWorkerTest.java │ │ │ │ ├── TaskWithIdTest.java │ │ │ │ └── eventsourcing │ │ │ │ ├── EventSourcingTaskManagerTest.java │ │ │ │ ├── MemoryTaskExecutionDetailsProjectionTest.java │ │ │ │ ├── MemoryTerminationSubscriberTest.java │ │ │ │ ├── TaskAggregateTest.java │ │ │ │ ├── TaskExecutionDetailsProjectionContract.java │ │ │ │ └── TerminationSubscriberContract.java │ │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── task │ │ │ └── TaskExecutionDetailsFixture.scala │ └── task-postgres │ │ ├── pom.xml │ │ └── src │ │ ├── main │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── task │ │ │ └── eventsourcing │ │ │ └── postgres │ │ │ ├── PostgresTaskExecutionDetailsProjection.scala │ │ │ ├── PostgresTaskExecutionDetailsProjectionDAO.scala │ │ │ └── PostgresTaskExecutionDetailsProjectionDataDefinition.scala │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── task │ │ └── eventsourcing │ │ └── postgres │ │ ├── PostgresTaskExecutionDetailsProjectionDAOTest.java │ │ └── PostgresTaskExecutionDetailsProjectionTest.java └── testing │ ├── pom.xml │ └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ ├── jmap │ │ ├── JMAPTestingConstants.java │ │ ├── JmapRFCCommonRequests.java │ │ └── LocalHostURIBuilder.java │ │ ├── junit │ │ ├── ExecutorExtension.java │ │ ├── TemporaryFolderExtension.java │ │ └── categories │ │ │ └── BasicFeature.java │ │ ├── util │ │ └── docker │ │ │ ├── DockerContainer.java │ │ │ ├── Images.java │ │ │ └── RateLimiters.java │ │ └── utils │ │ ├── AllMatching.java │ │ ├── DiscreteDistribution.java │ │ ├── FakeSmtp.java │ │ ├── SMTPMessageSender.java │ │ ├── SMTPMessageSenderExtension.java │ │ ├── SMTPSendingException.java │ │ ├── SmtpSendingStep.java │ │ ├── TestIMAPClient.java │ │ └── UpdatableTickingClock.java │ └── test │ └── java │ └── org │ └── apache │ └── james │ └── utils │ ├── DiscreteDistributionTest.java │ ├── SMTPMessageSenderTest.java │ └── TestIMAPClientTest.java ├── src ├── adr │ ├── 0001-record-architecture-decisions.md │ ├── 0002-make-taskmanager-distributed.md │ ├── 0003-distributed-workqueue.md │ ├── 0004-distributed-tasks-listing.md │ ├── 0005-distributed-task-termination-ackowledgement.md │ ├── 0006-task-serialization.md │ ├── 0007-distributed-task-cancellation.md │ ├── 0008-distributed-task-await.md │ ├── 0009-disable-elasticsearch-dynamic-mapping.md │ ├── 0009-java-11-migration.md │ ├── 0010-enable-elasticsearch-routing.md │ ├── 0011-remove-elasticsearch-document-source.md │ ├── 0012-jmap-partial-reads.md │ ├── 0013-precompute-jmap-preview.md │ ├── 0014-blobstore-storage-policies.md │ ├── 0015-objectstorage-blobid-list.md │ ├── 0016-distributed-workqueue.md │ ├── 0017-file-mail-queue-deprecation.md │ ├── 0018-jmap-new-specs.md │ ├── 0019-reactor-netty-adoption.md │ ├── 0020-cassandra-mailbox-object-consistency.md │ ├── 0021-cassandra-acl-inconsistency.md │ ├── 0022-cassandra-message-inconsistency.md │ ├── 0023-cassandra-mailbox-counters-inconsistencies.md │ ├── 0024-polyglot-strategy.md │ ├── 0025-cassandra-blob-store-cache.md │ ├── 0026-removing-configured-additional-mailboxListeners.md │ ├── 0027-eventBus-error-handling-upon-dispatch.md │ ├── 0028-Recompute-mailbox-quotas.md │ ├── 0029-Cassandra-mailbox-deletion-cleanup.md │ ├── 0030-separate-attachment-content-and-metadata.md │ ├── 0031-distributed-mail-queue.md │ ├── 0032-distributed-mail-queue-cleanup.md │ ├── 0033-use-scala-in-event-sourcing-modules.md │ ├── 0034-mailbox-api-visibility-and-usage.md │ ├── 0035-distributed-listeners-configuration.md │ ├── 0036-against-use-of-conditional-statements-in-guice-modules.md │ ├── 0037-eventbus.md │ ├── 0038-distributed-eventbus.md │ ├── 0039-distributed-blob-garbage-collector.md │ ├── 0040-quality-levels-definitions.md │ ├── 0041-replace-jcloud-with-s3.md │ ├── 0042-applicative-read-repairs.md │ ├── 0042-james-cli-based-on-webadmin.md │ ├── 0043-avoid-elasticsearch-on-critical-reads.md │ ├── 0044-against-the-use-of-cassandra-lightweight-transactions.md │ ├── 0045-support-jmap-push-with-mailbox-changes-implementation.md │ ├── 0046-generalize-event-bus.md │ ├── 0047-jmap-push-over-websockets.md │ ├── 0048-cleanup-jmap-uploads.md │ ├── 0049-deduplicated-blobs-gs-with-bloom-filters.md │ ├── 0050-jmap-web-push.md │ ├── 0051-oidc.md │ ├── 0052-pulsar-mailqueue.md │ ├── 0053-email-rate-limiting.md │ ├── 0054-elasticsearch-search-overrides.md │ ├── 0055-rspamd-spam-filtering.md │ ├── 0056-opensearch-migration.md │ ├── 0057-reactive-imap.md │ ├── 0058-upgrade-to-netty-4.md │ ├── 0059-upgrade-to-cassadra-driver-4.md │ ├── 0060-adopt-bounded-elastic.md │ ├── 0061-delegation.md │ ├── 0062-oidc-token-introspection.md │ ├── 0063-temporary-file-leaks.md │ ├── 0064-account-delegation.md │ ├── 0065-changing-username.md │ ├── 0066-modular-user-data-deletion.md │ ├── 0067-quota-for-jmap-uploads.md │ ├── 0068-mutualize-cassandra-storge-for-quota.md │ ├── 0069-crowdsec-IP-filtering.md │ ├── 0070-postgresql-adoption.md │ ├── 0071-objectstorage-sse-c.md │ ├── 0071-postgresql-mailbox-tables-structure.md │ ├── 0072-postgresql-flags-update-concurrency-control.md │ └── img │ │ ├── adr-68-architecture-diagram.png │ │ ├── adr-69-scenario-diagram.png │ │ └── adr-71-mailbox-tables-diagram.png ├── homepage-docker │ ├── Dockerfile │ └── compile.sh ├── homepage │ ├── Gemfile │ ├── _config.yml │ ├── _includes │ │ ├── footer.html │ │ └── header.html │ ├── _layouts │ │ ├── default.html │ │ ├── howTo.html │ │ └── post.html │ ├── _posts │ │ ├── 2006-07-02-2.3.0on-the-way.markdown │ │ ├── 2006-08-02-james-website-updates.markdown │ │ ├── 2006-08-03-2.3.0-RC3.markdown │ │ ├── 2006-09-03-JSPF-0.9-b3.markdown │ │ ├── 2006-10-03-JAMES-2.3.markdown │ │ ├── 2007-01-03-Mailet-api.markdown │ │ ├── 2007-02-03-feathercast-fetures.markdown │ │ ├── 2007-02-04-JSPF-0.9-beta4.markdown │ │ ├── 2007-04-04-james-commiters-guidelines.markdown │ │ ├── 2007-04-05-JAMES-2.3.1-RC1.markdown │ │ ├── 2007-04-15-JAMES-2.3.1.markdown │ │ ├── 2007-05-15-mailet-api-lives.markdown │ │ ├── 2007-05-16-mime4j-0.3.markdown │ │ ├── 2007-09-16-jspf-0.9.5.markdown │ │ ├── 2008-03-16-gsoc-2008.markdown │ │ ├── 2008-04-16-jspf-0.9.6.markdown │ │ ├── 2008-08-16-mime4j-0.4.markdown │ │ ├── 2008-08-17-JSIEVE-0.2.markdown │ │ ├── 2008-10-16-mime4j-0.5.markdown │ │ ├── 2009-01-16-MAILET-2.4.markdown │ │ ├── 2009-02-16-MAILET-docs-plugin-0.1.markdown │ │ ├── 2009-03-16-Mime4j-0.6.markdown │ │ ├── 2009-04-16-Mailet-base-0.1.markdown │ │ ├── 2009-05-16-Mailet-crypto-0.1.markdown │ │ ├── 2009-06-16-jsieve-03.markdown │ │ ├── 2009-06-17-jspf-0.9.7.markdown │ │ ├── 2009-07-17-jMPT-0.1.markdown │ │ ├── 2009-08-17-james-2.3.2.markdown │ │ ├── 2009-09-17-hupa.markdown │ │ ├── 2009-10-17-jdkim.markdown │ │ ├── 2010-05-01-mailet-1.0.markdown │ │ ├── 2010-05-02-jsieve-0.4.markdown │ │ ├── 2010-06-02-mailet-base-1.1.markdown │ │ ├── 2010-06-03-jspf-0.9.8.markdown │ │ ├── 2010-09-03-protocols-1.2-M2.markdown │ │ ├── 2010-09-04-imap-0.2-M1.markdown │ │ ├── 2010-11-05-james-3.0-M1.markdown │ │ ├── 2010-11-06-james-3.0-M2.markdown │ │ ├── 2010-12-06-protocols-1.2.markdown │ │ ├── 2011-01-06-imap-mailbox-0.2.markdown │ │ ├── 2011-02-06-protocols-1.5.markdown │ │ ├── 2011-03-06-jspf-0.9.9.markdown │ │ ├── 2011-04-06-mime4J-0.7.markdown │ │ ├── 2011-05-06-jdKim0.2.markdown │ │ ├── 2011-08-06-james-beta3.markdown │ │ ├── 2011-10-06-protocols-1.6-beta2.markdown │ │ ├── 2011-10-07-mime4j-0.7.1.markdown │ │ ├── 2011-11-07-jspf-1.0.0.markdown │ │ ├── 2011-12-07-protocols-1.6.0-RC1.markdown │ │ ├── 2012-01-07-mime4j-0.7.2.markdown │ │ ├── 2012-01-07-protocols-1.6.0.markdown │ │ ├── 2012-01-08-protocols-1.6.1.markdown │ │ ├── 2012-04-08-James-3.0-beta4.markdown │ │ ├── 2012-06-08-hupa-0.2.markdown │ │ ├── 2012-12-08-mailet-2.5.0.markdown │ │ ├── 2015-09-08-james-2.3.1.markdown │ │ ├── 2015-10-08-james-2.3.1.markdown │ │ ├── 2016-01-08-module-merge.markdown │ │ ├── 2016-02-08-moving-to-git.markdown │ │ ├── 2016-02-09-jmap.markdown │ │ ├── 2016-05-09-jmap.markdown │ │ ├── 2016-07-09-jmap.markdown │ │ ├── 2016-07-19-jmap.markdown │ │ ├── 2016-09-19-james-3.0.markdown │ │ ├── 2016-10-19-james-3.0.markdown │ │ ├── 2016-11-19-james-3.0.markdown │ │ ├── 2017-05-16-james-3.0.0-rc1.markdown │ │ ├── 2017-05-16-mime4j-0.8.1.markdown │ │ ├── 2017-06-23-jsieve-0.7.markdown │ │ ├── 2017-07-20-james-3.0.markdown │ │ ├── 2017-10-02-BlogPostInstallingJames.markdown │ │ ├── 2017-10-03-Hacktoberfest.markdown │ │ ├── 2017-10-20-james-3.0.1.markdown │ │ ├── 2018-01-26-admin-features.markdown │ │ ├── 2018-02-12-gsoc-2018.markdown │ │ ├── 2018-05-07-mime4j-0.8.2.markdown │ │ ├── 2018-06-06-linagora-june-nl.markdown │ │ ├── 2018-07-31-james-3.1.0.markdown │ │ ├── 2018-11-14-james-3.2.0.markdown │ │ ├── 2019-03-19-mime4j-0.8.3.markdown │ │ ├── 2019-03-26-james-3.3.0.markdown │ │ ├── 2019-08-30-latest-image-changes.markdown │ │ ├── 2019-09-05-james-3.4.0.markdown │ │ ├── 2019-11-19-apache-con-eu.markdown │ │ ├── 2020-07-16-james-3.5.0.markdown │ │ ├── 2020-10-29-testing-james-with-jmeter.markdown │ │ ├── 2021-03-16-james-3.6.0.markdown │ │ ├── 2021-04-21-mime4j-0.8.4.markdown │ │ ├── 2021-07-02-mime4j-0.8.5.markdown │ │ ├── 2021-09-21-james-joinsapachecon.markdown │ │ ├── 2021-09-26-mime4j-0.8.6.markdown │ │ ├── 2021-12-02-james-3.6.1.markdown │ │ ├── 2022-01-26-james-3.6.2.markdown │ │ ├── 2022-03-01-james-3.7.0.markdown │ │ ├── 2022-04-01-mime4j-0.8.7.markdown │ │ ├── 2022-08-26-james-3.7.1.markdown │ │ ├── 2022-10-06-james-3.7.2.markdown │ │ ├── 2022-10-07-jdkim-0.3.markdown │ │ ├── 2022-10-28-jsieve-0.8.markdown │ │ ├── 2022-10-28-jspf-1.0.2.markdown │ │ ├── 2022-10-28-mime4j-0.8.8.markdown │ │ ├── 2022-12-30-james-3.7.3.markdown │ │ ├── 2022-12-30-mime4j-0.8.9.markdown │ │ ├── 2023-03-20-james-3.7.4.markdown │ │ ├── 2023-05-17-james-3.8.0.markdown │ │ ├── 2023-06-20-fail2ban.markdown │ │ ├── 2024-01-08-mime4j-0.8.10.markdown │ │ ├── 2024-01-09-james-3.7.5.markdown │ │ ├── 2024-01-09-james-3.8.1.markdown │ │ ├── 2024-03-05-mime4j-0.8.11.markdown │ │ ├── 2024-06-07-jspf-1.0.4.markdown │ │ ├── 2024-12-23-mime4j-0.8.12.markdown │ │ ├── 2025-01-29-james-3.7.6.markdown │ │ ├── 2025-01-29-james-3.8.2.markdown │ │ ├── 2025-03-03-jspf-1.0.5.markdown │ │ └── 2025-03-04-jdKim0.4.markdown │ ├── about.md │ ├── assets │ │ ├── css │ │ │ ├── font-awesome.min.css │ │ │ ├── ie8.css │ │ │ ├── ie9.css │ │ │ ├── images │ │ │ │ ├── background.jpg │ │ │ │ └── overlay.png │ │ │ ├── lightbox.css │ │ │ ├── lity.min.css │ │ │ ├── main.css │ │ │ └── test.html │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ ├── fontawesome-webfont.woff │ │ │ └── fontawesome-webfont.woff2 │ │ ├── images │ │ │ ├── close.png │ │ │ ├── gsoc.png │ │ │ ├── loading.gif │ │ │ ├── next.png │ │ │ └── prev.png │ │ └── js │ │ │ ├── github-fetch.js │ │ │ ├── ie │ │ │ ├── PIE.htc │ │ │ ├── html5shiv.js │ │ │ └── respond.min.js │ │ │ ├── jquery.min.js │ │ │ ├── jquery.scrollex.min.js │ │ │ ├── jquery.scrolly.min.js │ │ │ ├── lightbox.js │ │ │ ├── lity.min.js │ │ │ ├── main.js │ │ │ ├── skel.min.js │ │ │ └── util.js │ ├── elements.html │ ├── feed.xml │ ├── howTo │ │ ├── custom-healthchecks.html │ │ ├── custom-james-assembly.html │ │ ├── custom-listeners.html │ │ ├── custom-smtp-commands.html │ │ ├── custom-smtp-hooks.html │ │ ├── custom-webadmin-routes.html │ │ ├── deleted-messages-vault.html │ │ ├── dkim.html │ │ ├── imap-server.html │ │ ├── index.html │ │ ├── mail-processing.html │ │ └── spf.html │ ├── images │ │ ├── guice-jpa-architecture-overview.png │ │ ├── hactoberfest.png │ │ ├── james-alt.svg │ │ ├── james-general-architecture.png │ │ ├── james-imap-server.png │ │ ├── james-logo.png │ │ ├── james-smtp-relay.png │ │ ├── james.svg │ │ ├── linagora.png │ │ ├── openpaas.png │ │ ├── tb1.png │ │ ├── tb2.png │ │ ├── tb3-5.png │ │ ├── tb3.png │ │ └── tb4.png │ ├── index.html │ └── posts.html ├── reporting-site │ └── site.xml ├── site-docker │ ├── Dockerfile │ └── compile.sh └── site │ ├── apt │ ├── mailet │ │ ├── examples │ │ │ └── standard.apt │ │ ├── release-notes-old.apt │ │ └── usage.apt │ └── mpt │ │ └── release-notes.apt │ ├── custom │ └── project-info-report.properties │ ├── markdown │ ├── mailet │ │ ├── quickstart.md │ │ └── release-notes.md │ └── server │ │ ├── install │ │ ├── guice-cassandra-rabbitmq-s3.md │ │ ├── guice-cassandra.md │ │ ├── guice-jpa-smtp.md │ │ └── guice-jpa.md │ │ ├── manage-cli.md │ │ ├── manage-guice-distributed-james.md │ │ └── manage-webadmin.md │ ├── resources │ ├── css │ │ └── site.css │ ├── download.cgi │ ├── downloads │ │ ├── codetemplates.xml │ │ └── formatting.xml │ ├── downloadunstable.cgi │ ├── favicon.ico │ ├── images │ │ ├── asf-logo-reduced.gif │ │ ├── james-logo-square.png │ │ ├── james-logo.png │ │ ├── james-schema-subprojects.png │ │ └── linagora.png │ ├── js │ │ └── james │ │ │ ├── functions.js │ │ │ └── index.js │ ├── mailbox │ │ └── images │ │ │ ├── james-server-logo.gif │ │ │ ├── uml │ │ │ ├── org-apache-james-mailbox-api-mailboxmanager.png │ │ │ ├── org-apache-james-mailbox-api-mailboxsession.png │ │ │ ├── org-apache-james-mailbox-api-messagemanager.png │ │ │ ├── org-apache-james-mailbox-api-msc.png │ │ │ ├── org-apache-james-mailbox-api-subscriptionmanager.png │ │ │ ├── org-apache-james-mailbox-jpa-managers.png │ │ │ ├── org-apache-james-mailbox-maildir-managers.png │ │ │ ├── org-apache-james-mailbox-memory-managers.png │ │ │ ├── org-apache-james-mailbox-package.png │ │ │ ├── org-apache-james-mailbox-store-mailboxmanager.png │ │ │ ├── org-apache-james-mailbox-store-messagemanager.png │ │ │ ├── org-apache-james-mailbox-store-model.png │ │ │ └── org-apache-james-mailbox-store-subscriptionmanager.png │ │ │ └── void.gif │ ├── mailet │ │ └── css │ │ │ └── site.css │ ├── model-eclipse-modeler │ │ ├── .project │ │ ├── model.di │ │ ├── model.notation │ │ └── model.uml │ ├── protocols │ │ └── images │ │ │ ├── uml │ │ │ ├── org.apache.james.imap-package.png │ │ │ ├── org.apache.james.imap-withtest-package.png │ │ │ ├── org.apache.james.imap.api.png │ │ │ └── org.apache.james.protocols-package.png │ │ │ └── void.gif │ ├── robots.txt │ └── server │ │ ├── css │ │ └── site.css │ │ ├── images │ │ ├── conf │ │ │ └── config-example.png │ │ ├── database │ │ │ ├── james-database-schema-derby.png │ │ │ └── james-database-schema-derby_1000.png │ │ ├── dns-mx │ │ │ ├── james-config-load-balance.png │ │ │ ├── james-config-secondary.png │ │ │ └── james-config-smart-host.png │ │ ├── eclipse │ │ │ ├── eclipse-import-maven-view-1.gif │ │ │ ├── eclipse-import-maven-view-2.gif │ │ │ ├── eclipse-m2eclipse-project-dependencies.gif │ │ │ ├── eclipse-m2eclipse-projects.gif │ │ │ └── eclipse-run-james.gif │ │ ├── intellij-idea │ │ │ ├── intellij-checkstyle-scan.png │ │ │ ├── intellij-checkstyle-setting.png │ │ │ ├── intellij-import-layout-java.png │ │ │ ├── intellij-import-layout-scala.png │ │ │ ├── intellij-james-project.png │ │ │ ├── intellij-james-zip.png │ │ │ ├── intellij-mvn.png │ │ │ └── intellij-new-project.png │ │ ├── jmx-management │ │ │ ├── jmx-domainlist.png │ │ │ ├── jmx-user-part.png │ │ │ └── jmx-user.png │ │ ├── jmx-monitoring │ │ │ ├── jmx-current-connections.png │ │ │ ├── jmx-gc.png │ │ │ ├── jmx-memory.png │ │ │ ├── jmx-org.apache.james.smtpserver.JamesDataCmdHandler.png │ │ │ └── jmx-process-root.png │ │ ├── netbeans │ │ │ ├── james-build-dir.png │ │ │ ├── netbeans-james-project.png │ │ │ ├── netbeans-svn-checkout-browse.png │ │ │ ├── netbeans-svn-checkout1.png │ │ │ └── netbeans-svn-checkout2.png │ │ ├── performances │ │ │ ├── gatling_1.png │ │ │ ├── gatling_2.png │ │ │ └── metrics.png │ │ ├── uml │ │ │ ├── org.apache.james-package-detail_large.png │ │ │ ├── org.apache.james-package-detail_small.png │ │ │ ├── org.apache.james-package-details.png │ │ │ ├── org.apache.james-package-large.png │ │ │ ├── org.apache.james-package-small.png │ │ │ ├── org.apache.james-package.png │ │ │ ├── org.apache.james-package_large.png │ │ │ ├── org.apache.james-package_small.png │ │ │ ├── org.apache.james.container-package.png │ │ │ ├── org.apache.james.management-package.png │ │ │ └── org.apache.james.server-package.png │ │ └── void.gif │ │ ├── js │ │ ├── dev.js │ │ └── index.js │ │ └── rfclist │ │ ├── basic │ │ ├── rfc0822.txt │ │ ├── rfc1123.txt │ │ ├── rfc2045.txt │ │ ├── rfc2046.txt │ │ └── rfc2822.txt │ │ ├── imap4 │ │ ├── rfc1731.txt │ │ ├── rfc2060.txt │ │ ├── rfc2086.txt │ │ ├── rfc2087.txt │ │ ├── rfc2088.txt │ │ ├── rfc2177.txt │ │ ├── rfc2180.txt │ │ ├── rfc2192.txt │ │ ├── rfc2193.txt │ │ ├── rfc2195.txt │ │ ├── rfc2221.txt │ │ ├── rfc2342.txt │ │ ├── rfc2359.txt │ │ ├── rfc2595.txt │ │ ├── rfc2683.txt │ │ └── rfc5256.txt │ │ ├── ldap │ │ ├── rfc2251.txt │ │ ├── rfc2252.txt │ │ ├── rfc2253.txt │ │ ├── rfc2254.txt │ │ ├── rfc2255.txt │ │ ├── rfc2256.txt │ │ ├── rfc2829.txt │ │ ├── rfc2830.txt │ │ └── rfc3377.txt │ │ ├── lmtp │ │ └── rfc2033.txt │ │ ├── pop3 │ │ ├── rfc1725.txt │ │ ├── rfc1734.txt │ │ └── rfc1939.txt │ │ └── smtp │ │ ├── rfc0821.txt │ │ ├── rfc0974.txt │ │ ├── rfc1652.txt │ │ ├── rfc1830.txt │ │ ├── rfc1869.txt │ │ ├── rfc1870.txt │ │ ├── rfc1891.txt │ │ ├── rfc1893.txt │ │ ├── rfc1985.txt │ │ ├── rfc2034.txt │ │ ├── rfc2142.txt │ │ ├── rfc2197.txt │ │ ├── rfc2554.txt │ │ ├── rfc2821.txt │ │ └── rfc6710.txt │ ├── site.xml │ └── xdoc │ ├── contribute.xml │ ├── documentation.xml │ ├── download.xml │ ├── guidelines.xml │ ├── mail.xml │ ├── mailbox │ ├── index.xml │ ├── mailbox-api.xml │ ├── mailbox-cassandra.xml │ ├── mailbox-jpa.xml │ ├── mailbox-memory.xml │ ├── mailbox-spring.xml │ ├── mailbox-store.xml │ ├── mailbox-tool.xml │ └── source-code.xml │ ├── mailet │ ├── ai │ │ └── index.xml │ ├── api │ │ └── index.xml │ ├── base │ │ └── index.xml │ ├── conf.xml │ ├── crypto │ │ ├── conf.xml │ │ └── index.xml │ ├── index.xml │ ├── mailetdocs-maven-plugin │ │ └── index.xml │ ├── standard │ │ ├── conf.xml │ │ └── index.xml │ └── stylesheets │ │ ├── project.xml │ │ └── site.xsl │ ├── mpt │ └── index.xml │ ├── protocols │ ├── changes.xml │ ├── imap4.xml │ ├── index.xml │ ├── pop3.xml │ ├── smtp.xml │ └── source-code.xml │ ├── server │ ├── advantages.xml │ ├── archive │ │ ├── announcement_2_1.xml │ │ ├── architecture_v1_2.xml │ │ ├── architecture_v2_0.xml │ │ ├── configuration_v2_0.xml │ │ ├── document_archive.xml │ │ ├── install.xml │ │ ├── usingJDBC_v2.0.xml │ │ ├── usingLDAP_v1_2.xml │ │ └── usingTLS_v1_2.xml │ ├── config-activemq.xml │ ├── config-antispam.xml │ ├── config-blob-export.xml │ ├── config-blobstore.xml │ ├── config-cassandra.xml │ ├── config-dnsservice.xml │ ├── config-domainlist.xml │ ├── config-fetchmail.xml │ ├── config-guice.xml │ ├── config-healthcheck.xml │ ├── config-imap4.xml │ ├── config-jmap.xml │ ├── config-listeners.xml │ ├── config-mailbox.xml │ ├── config-mailetcontainer.xml │ ├── config-mailrepositorystore.xml │ ├── config-opensearch.xml │ ├── config-pop3.xml │ ├── config-quota.xml │ ├── config-rabbitmq.xml │ ├── config-recipientrewritetable.xml │ ├── config-redis.xml │ ├── config-sieve.xml │ ├── config-smtp-lmtp.xml │ ├── config-spring-jpa-postgres.xml │ ├── config-ssl-tls.xml │ ├── config-system.xml │ ├── config-users.xml │ ├── config-vault.xml │ ├── config-webadmin.xml │ ├── config.xml │ ├── dev-activemq.xml │ ├── dev-build.xml │ ├── dev-database-schema.xml │ ├── dev-extend-mailet.xml │ ├── dev-extend-matcher.xml │ ├── dev-extend-smtp-hook.xml │ ├── dev-extend.xml │ ├── dev-provided-smtp-hooks.xml │ ├── dev-provided.xml │ ├── dev.xml │ ├── feature-mailetcontainer.xml │ ├── feature-performance.xml │ ├── feature-persistence.xml │ ├── feature-protocols.xml │ ├── feature-queue-priority.xml │ ├── feature-security.xml │ ├── feature-smtp-hooks.xml │ ├── features.xml │ ├── index.xml │ ├── install.xml │ ├── manage-jmx.xml │ ├── manage.xml │ ├── metrics.xml │ ├── monitor-folders.xml │ ├── monitor-jmx.xml │ ├── monitor-logging.xml │ ├── monitor.xml │ ├── objectives.xml │ ├── packaging.xml │ ├── quick-start-cassandra.xml │ ├── quick-start.xml │ ├── release-notes.xml │ ├── rfcs.xml │ ├── upgrade-2.3.xml │ └── upgrade.xml │ ├── support.xml │ └── thanks.xml ├── testing └── base │ ├── pom.xml │ └── src │ └── main │ ├── java │ └── org │ │ └── apache │ │ └── james │ │ └── junit │ │ └── categories │ │ └── Unstable.java │ └── resources │ ├── logback-test.xml │ └── testcontainers.properties ├── third-party ├── clamav │ ├── README.md │ ├── docker-compose.yml │ ├── pom.xml │ ├── sample-configuration │ │ └── mailetcontainer.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── clamav │ │ │ └── ClamAVScan.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── clamav │ │ │ ├── ClamAVScanTest.java │ │ │ └── DockerClamAV.java │ │ └── resources │ │ └── attachment │ │ ├── inlineNonVirusTextAttachment.eml │ │ └── inlineVirusTextAttachment.eml ├── crowdsec │ ├── Dockerfile │ ├── README.md │ ├── docker-compose.yml │ ├── pom.xml │ ├── sample-configuration │ │ ├── acquis.yaml │ │ ├── collections │ │ │ └── james.yaml │ │ ├── crowdsec.properties │ │ ├── extensions.properties │ │ ├── imapserver.xml │ │ ├── logback.xml │ │ ├── parsers │ │ │ ├── james-auth.yaml │ │ │ ├── james-dictionary-attack.yaml │ │ │ └── syslog-logs.yaml │ │ ├── pop3server.xml │ │ ├── scenarios │ │ │ ├── james-bf-auth.yaml │ │ │ └── james-dictionary-attack.yaml │ │ └── smtpserver.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── crowdsec │ │ │ ├── CrowdsecEhloHook.java │ │ │ ├── CrowdsecImapConnectionCheck.java │ │ │ ├── CrowdsecPOP3CheckHandler.java │ │ │ ├── CrowdsecSMTPConnectHandler.java │ │ │ ├── CrowdsecService.java │ │ │ ├── CrowdsecUtils.java │ │ │ ├── client │ │ │ ├── CrowdsecClientConfiguration.java │ │ │ └── CrowdsecHttpClient.java │ │ │ ├── exception │ │ │ └── CrowdsecException.java │ │ │ ├── model │ │ │ ├── CrowdsecDecision.java │ │ │ └── CrowdsecDecisionDeserializer.java │ │ │ └── module │ │ │ └── CrowdsecModule.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── crowdsec │ │ │ ├── CrowdsecDecisionDeserializerTest.java │ │ │ ├── CrowdsecEhloHookTest.java │ │ │ ├── CrowdsecExtension.java │ │ │ ├── CrowdsecHttpClientTest.java │ │ │ ├── CrowdsecImapConnectionCheckTest.java │ │ │ ├── CrowdsecIntegrationTest.java │ │ │ ├── CrowdsecSMTPConnectHandlerTest.java │ │ │ ├── CrowdsecServiceTest.java │ │ │ ├── DockerCrowdsecExtensionTest.java │ │ │ └── HAProxyExtension.java │ │ └── resources │ │ ├── crowdsec │ │ ├── acquis.yaml │ │ ├── collections │ │ │ └── james.yaml │ │ ├── parsers │ │ │ ├── james-auth.yaml │ │ │ ├── james-dictionary-attack.yaml │ │ │ └── syslog-logs.yaml │ │ └── scenarios │ │ │ ├── james-bf-auth.yaml │ │ │ └── james-dictionary-attack.yaml │ │ ├── haproxy.cfg │ │ ├── imapserver.xml │ │ ├── listeners.xml │ │ ├── log │ │ └── james.log │ │ ├── logback-test.xml │ │ ├── mailetcontainer.xml │ │ ├── pop3server.xml │ │ ├── smtpserver.xml │ │ └── usersrepository.xml ├── elasticsearch │ ├── README.md │ ├── conf │ │ ├── elasticsearch.properties │ │ └── extensions.properties │ ├── docker-compose.yml │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── metrics │ │ │ └── es │ │ │ └── v7 │ │ │ ├── ESMetricReporter.java │ │ │ ├── ESMetricReporterModule.java │ │ │ └── ESReporterConfiguration.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── metric │ │ └── es │ │ └── v7 │ │ ├── DockerElasticSearchExtension.java │ │ ├── ES2ReporterTest.java │ │ ├── ES6ReporterTest.java │ │ ├── ES7ReporterTest.java │ │ ├── ESReportedConfigurationTest.java │ │ └── ESReporterContract.java ├── pom.xml ├── rspamd │ ├── README.md │ ├── docker-compose-distributed.yml │ ├── docker-compose-rspamd-with-kvrocks-sentinel.yml │ ├── docker-compose-rspamd-with-kvrocks-standalone.yml │ ├── docker-compose-rspamd-with-redis-sentinel.yml │ ├── docker-compose.yml │ ├── pom.xml │ ├── sample-configuration │ │ ├── antivirus.conf │ │ ├── classifier-bayes.conf │ │ ├── extensions.properties │ │ ├── healthcheck.properties │ │ ├── kvrocks │ │ │ ├── sentinel │ │ │ │ ├── master-node │ │ │ │ │ └── kvrocks.conf │ │ │ │ ├── replica-node │ │ │ │ │ └── kvrocks.conf │ │ │ │ └── sentinel-node │ │ │ │ │ ├── docker-entrypoint-sentinel.sh │ │ │ │ │ └── sentinel.conf.template │ │ │ └── standalone │ │ │ │ └── kvrocks.conf │ │ ├── listeners.xml │ │ ├── mailetcontainer_distributed.xml │ │ ├── mailetcontainer_memory.xml │ │ ├── redis-shake │ │ │ └── shake.toml │ │ ├── redis.conf │ │ ├── redis │ │ │ ├── master │ │ │ │ ├── docker-entrypoint-master.sh │ │ │ │ └── redis.conf.template │ │ │ ├── replica │ │ │ │ ├── docker-entrypoint-replica.sh │ │ │ │ └── redis.conf.template │ │ │ └── sentinel │ │ │ │ ├── docker-entrypoint-sentinel.sh │ │ │ │ └── sentinel.conf.template │ │ ├── rspamd-kvrocks-sentinel.conf │ │ ├── rspamd-redis-sentinel.conf │ │ ├── rspamd.properties │ │ ├── statistic.conf │ │ ├── webadmin.properties │ │ └── worker-controller.inc │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── rspamd │ │ │ ├── RspamdListener.java │ │ │ ├── RspamdScanner.java │ │ │ ├── client │ │ │ ├── RspamdClientConfiguration.java │ │ │ └── RspamdHttpClient.java │ │ │ ├── exception │ │ │ ├── RspamdUnexpectedException.java │ │ │ └── UnauthorizedException.java │ │ │ ├── healthcheck │ │ │ └── RspamdHealthCheck.java │ │ │ ├── model │ │ │ ├── AnalysisResult.java │ │ │ └── AnalysisResultDeserializer.java │ │ │ ├── module │ │ │ ├── RspamdModule.java │ │ │ └── RspamdTaskExtensionModule.java │ │ │ ├── route │ │ │ └── FeedMessageRoute.java │ │ │ └── task │ │ │ ├── FeedHamToRspamdTask.java │ │ │ ├── FeedHamToRspamdTaskAdditionalInformationDTO.java │ │ │ ├── FeedHamToRspamdTaskDTO.java │ │ │ ├── FeedSpamToRspamdTask.java │ │ │ ├── FeedSpamToRspamdTaskAdditionalInformationDTO.java │ │ │ ├── FeedSpamToRspamdTaskDTO.java │ │ │ ├── GetMailboxMessagesService.java │ │ │ └── RunningOptions.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── james │ │ │ └── rspamd │ │ │ ├── DockerRspamdExtensionTest.java │ │ │ ├── RspamdExtension.java │ │ │ ├── RspamdListenerTest.java │ │ │ ├── RspamdScannerTest.java │ │ │ ├── client │ │ │ └── RspamdHttpClientTest.java │ │ │ ├── healthcheck │ │ │ └── RspamdHealthcheckTest.java │ │ │ ├── model │ │ │ └── AnalysisResultDeserializationTest.java │ │ │ ├── route │ │ │ └── FeedMessageRouteTest.java │ │ │ └── task │ │ │ ├── FeedHamToRspamdTaskAdditionalInformationDTOTest.java │ │ │ ├── FeedHamToRspamdTaskTest.java │ │ │ ├── FeedSpamToRspamdTaskAdditionalInformationDTOTest.java │ │ │ └── FeedSpamToRspamdTaskTest.java │ │ └── resources │ │ ├── json │ │ ├── feedHamClassifiedAsHam.additionalInformation.json │ │ ├── feedHamEmptyPeriod.additionalInformation.json │ │ ├── feedHamEmptyRspamdTimeout.additionalInformation.json │ │ ├── feedHamNonEmptyPeriod.additionalInformation.json │ │ ├── feedHamNonEmptyRspamdTimeout.additionalInformation.json │ │ ├── feedSpamClassifiedAsHam.additionalInformation.json │ │ ├── feedSpamEmptyPeriod.additionalInformation.json │ │ ├── feedSpamEmptyRspamdTimeout.additionalInformation.json │ │ ├── feedSpamNonEmptyPeriod.additionalInformation.json │ │ └── feedSpamNonEmptyRspamdTimeout.additionalInformation.json │ │ ├── mail │ │ ├── attachment │ │ │ ├── inlineNonVirusTextAttachment.eml │ │ │ └── inlineVirusTextAttachment.eml │ │ ├── ham │ │ │ └── ham1.eml │ │ └── spam │ │ │ ├── phishing.eml │ │ │ └── spam8.eml │ │ └── rspamd-config │ │ ├── actions.conf │ │ ├── antivirus.conf │ │ ├── redis.conf │ │ ├── statistic.conf │ │ └── worker-controller.inc └── spamassassin │ ├── docker-compose.yml │ ├── pom.xml │ ├── sample-configuration │ ├── extensions.properties │ ├── listeners.xml │ ├── mailetcontainer.xml │ ├── smtpserver.xml │ └── spamassassin.properties │ └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── james │ │ └── spamassassin │ │ ├── SpamAssassin.java │ │ ├── SpamAssassinConfiguration.java │ │ ├── SpamAssassinHandler.java │ │ ├── SpamAssassinInvoker.java │ │ ├── SpamAssassinLearner.java │ │ ├── SpamAssassinListener.java │ │ ├── SpamAssassinModule.java │ │ └── SpamAssassinResult.java │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── james │ │ └── spamassassin │ │ ├── MemorySpamAssassinTest.java │ │ ├── SpamAssassinConfigurationTest.java │ │ ├── SpamAssassinContract.java │ │ ├── SpamAssassinExtension.java │ │ ├── SpamAssassinHandlerTest.java │ │ ├── SpamAssassinIntegrationTest.java │ │ ├── SpamAssassinInvokerTest.java │ │ ├── SpamAssassinListenerTest.java │ │ ├── SpamAssassinResultTest.java │ │ ├── SpamAssassinTest.java │ │ ├── mock │ │ ├── MockSpamd.java │ │ └── MockSpamdExtension.java │ │ └── module │ │ ├── SpamAssassinModuleExtension.java │ │ └── SpamAssassinTestModule.java │ └── resources │ ├── eml │ └── spam.eml │ ├── listeners.xml │ ├── mailetcontainer.xml │ ├── smtpserver.xml │ └── spamassassin_db │ ├── ham │ ├── ham1 │ ├── ham2 │ └── ham3 │ └── spam │ ├── spam1 │ ├── spam2 │ └── spam3 └── upgrade-instructions.md /.adr-dir: -------------------------------------------------------------------------------- 1 | src/adr 2 | -------------------------------------------------------------------------------- /.asf.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/.asf.yaml -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/.gitignore -------------------------------------------------------------------------------- /.mvn/develocity-custom-user-data.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/.mvn/develocity-custom-user-data.groovy -------------------------------------------------------------------------------- /.mvn/develocity.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/.mvn/develocity.xml -------------------------------------------------------------------------------- /.mvn/extensions.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/.mvn/extensions.xml -------------------------------------------------------------------------------- /.mvn/maven.config: -------------------------------------------------------------------------------- 1 | -Daether.dependencyCollector.impl=bf 2 | -Dmaven.artifact.threads=5 -------------------------------------------------------------------------------- /.scalafix.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/.scalafix.conf -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /Jenkinsfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/Jenkinsfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/LICENSE -------------------------------------------------------------------------------- /README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/README.adoc -------------------------------------------------------------------------------- /backends-common/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/backends-common/README.adoc -------------------------------------------------------------------------------- /backends-common/cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/backends-common/cassandra/pom.xml -------------------------------------------------------------------------------- /backends-common/jpa/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/backends-common/jpa/pom.xml -------------------------------------------------------------------------------- /backends-common/opensearch/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/backends-common/opensearch/pom.xml -------------------------------------------------------------------------------- /backends-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/backends-common/pom.xml -------------------------------------------------------------------------------- /backends-common/postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/backends-common/postgres/pom.xml -------------------------------------------------------------------------------- /backends-common/pulsar/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/backends-common/pulsar/pom.xml -------------------------------------------------------------------------------- /backends-common/rabbitmq/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/backends-common/rabbitmq/pom.xml -------------------------------------------------------------------------------- /backends-common/rabbitmq/src/test/resources/empty-store: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backends-common/redis/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/backends-common/redis/pom.xml -------------------------------------------------------------------------------- /checkstyle-suppressions.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/checkstyle-suppressions.xml -------------------------------------------------------------------------------- /checkstyle.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/checkstyle.xml -------------------------------------------------------------------------------- /code-coverage-report/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/code-coverage-report/pom.xml -------------------------------------------------------------------------------- /core/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/core/pom.xml -------------------------------------------------------------------------------- /docs/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/Dockerfile -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/README.md -------------------------------------------------------------------------------- /docs/antora-playbook-local.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/antora-playbook-local.yml -------------------------------------------------------------------------------- /docs/antora.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/antora.yml -------------------------------------------------------------------------------- /docs/modules/ROOT/nav.adoc: -------------------------------------------------------------------------------- 1 | * Apache James Reference Documentation 2 | -------------------------------------------------------------------------------- /docs/modules/ROOT/pages/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/ROOT/pages/index.adoc -------------------------------------------------------------------------------- /docs/modules/community/images/linagora.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/community/images/linagora.png -------------------------------------------------------------------------------- /docs/modules/community/nav.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/community/nav.adoc -------------------------------------------------------------------------------- /docs/modules/community/pages/contributing.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/community/pages/contributing.adoc -------------------------------------------------------------------------------- /docs/modules/community/pages/download.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/community/pages/download.adoc -------------------------------------------------------------------------------- /docs/modules/community/pages/guidelines.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/community/pages/guidelines.adoc -------------------------------------------------------------------------------- /docs/modules/community/pages/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/community/pages/index.adoc -------------------------------------------------------------------------------- /docs/modules/community/pages/mailing-lists.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/community/pages/mailing-lists.adoc -------------------------------------------------------------------------------- /docs/modules/community/pages/release.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/community/pages/release.adoc -------------------------------------------------------------------------------- /docs/modules/community/pages/support.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/community/pages/support.adoc -------------------------------------------------------------------------------- /docs/modules/community/pages/website.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/community/pages/website.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/nav.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/nav.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/configuration.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/configuration.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/glossary.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/glossary.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/index.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/mail/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/mail/index.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/messages/imf.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/messages/imf.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/messages/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/messages/index.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/messages/mime.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/messages/mime.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/protocols/imap.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/protocols/imap.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/protocols/jmap.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/protocols/jmap.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/protocols/lmtp.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/protocols/lmtp.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/protocols/pop.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/protocols/pop.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/protocols/smtp.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/protocols/smtp.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/storage/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/storage/index.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/storage/users.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/storage/users.adoc -------------------------------------------------------------------------------- /docs/modules/concepts/pages/user/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/concepts/pages/user/index.adoc -------------------------------------------------------------------------------- /docs/modules/customization/nav.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/customization/nav.adoc -------------------------------------------------------------------------------- /docs/modules/customization/pages/imap.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/customization/pages/imap.adoc -------------------------------------------------------------------------------- /docs/modules/customization/pages/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/customization/pages/index.adoc -------------------------------------------------------------------------------- /docs/modules/development/nav.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/development/nav.adoc -------------------------------------------------------------------------------- /docs/modules/development/pages/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/development/pages/index.adoc -------------------------------------------------------------------------------- /docs/modules/development/pages/logging.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/development/pages/logging.adoc -------------------------------------------------------------------------------- /docs/modules/servers/assets/images/MATCHER.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/assets/images/MATCHER.png -------------------------------------------------------------------------------- /docs/modules/servers/assets/images/webAdmin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/assets/images/webAdmin.png -------------------------------------------------------------------------------- /docs/modules/servers/nav.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/nav.adoc -------------------------------------------------------------------------------- /docs/modules/servers/pages/5-minute-demo.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/pages/5-minute-demo.adoc -------------------------------------------------------------------------------- /docs/modules/servers/pages/basic/context.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/pages/basic/context.adoc -------------------------------------------------------------------------------- /docs/modules/servers/pages/basic/help.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/pages/basic/help.adoc -------------------------------------------------------------------------------- /docs/modules/servers/pages/basic/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/pages/basic/index.adoc -------------------------------------------------------------------------------- /docs/modules/servers/pages/demo.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/pages/demo.adoc -------------------------------------------------------------------------------- /docs/modules/servers/pages/distributed/benchmark/benchmark_prepare.adoc: -------------------------------------------------------------------------------- 1 | // -------------------------------------------------------------------------------- /docs/modules/servers/pages/index.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/pages/index.adoc -------------------------------------------------------------------------------- /docs/modules/servers/pages/postgres/architecture/consistency_model_data_replication_extend.adoc: -------------------------------------------------------------------------------- 1 | // -------------------------------------------------------------------------------- /docs/modules/servers/pages/postgres/architecture/mailqueue_combined_extend.adoc: -------------------------------------------------------------------------------- 1 | // 123 -------------------------------------------------------------------------------- /docs/modules/servers/pages/postgres/operate/webadmin/admin-mail-queues-extend.adoc: -------------------------------------------------------------------------------- 1 | // The document only covers Postgres -------------------------------------------------------------------------------- /docs/modules/servers/pages/postgres/operate/webadmin/admin-mailboxes-extend.adoc: -------------------------------------------------------------------------------- 1 | // The document only covers Postgres -------------------------------------------------------------------------------- /docs/modules/servers/pages/postgres/operate/webadmin/admin-messages-extend.adoc: -------------------------------------------------------------------------------- 1 | // The document only covers Postgres -------------------------------------------------------------------------------- /docs/modules/servers/pages/run.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/pages/run.adoc -------------------------------------------------------------------------------- /docs/modules/servers/pages/test.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/pages/test.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/AddFooter.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/AddFooter.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/All.adoc: -------------------------------------------------------------------------------- 1 | === All 2 | 3 | Matches all mail. -------------------------------------------------------------------------------- /docs/modules/servers/partials/AtMost.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/AtMost.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/Bounce.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/Bounce.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/ClamAVScan.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/ClamAVScan.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/DKIMSign.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/DKIMSign.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/DKIMVerify.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/DKIMVerify.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/DLP.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/DLP.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/DSNBounce.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/DSNBounce.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/Expires.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/Expires.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/Forward.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/Forward.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/HasHeader.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/HasHeader.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/HostIs.adoc: -------------------------------------------------------------------------------- 1 | === HostIs 2 | 3 | Matches mail to given hosts. -------------------------------------------------------------------------------- /docs/modules/servers/partials/IsSMIMESigned.adoc: -------------------------------------------------------------------------------- 1 | === IsSMIMESigned 2 | 3 | Checks if a mail is smime encrypted. -------------------------------------------------------------------------------- /docs/modules/servers/partials/LogMessage.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/LogMessage.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/Null.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/Null.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/OnlyText.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/OnlyText.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/Redirect.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/Redirect.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/RelayLimit.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/RelayLimit.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/Resend.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/Resend.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/SMIMESign.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/SMIMESign.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/SPF.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/SPF.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/SenderIs.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/SenderIs.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/SentByJmap.adoc: -------------------------------------------------------------------------------- 1 | === SentByJmap 2 | 3 | Matches mails sent via the JMAP protocol. -------------------------------------------------------------------------------- /docs/modules/servers/partials/ServerTime.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/ServerTime.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/Sieve.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/Sieve.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/Sign.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/Sign.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/SplitMail.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/SplitMail.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/SubjectIs.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/SubjectIs.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/UnwrapText.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/UnwrapText.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/UserIs.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/modules/servers/partials/UserIs.adoc -------------------------------------------------------------------------------- /docs/modules/servers/partials/WrapText.adoc: -------------------------------------------------------------------------------- 1 | === WrapText 2 | 3 | Convert a message to format=flowed 4 | 5 | 6 | -------------------------------------------------------------------------------- /docs/ui-overrides/img/james.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/ui-overrides/img/james.svg -------------------------------------------------------------------------------- /docs/ui-overrides/partials/header-content.hbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/docs/ui-overrides/partials/header-content.hbs -------------------------------------------------------------------------------- /event-bus/api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-bus/api/pom.xml -------------------------------------------------------------------------------- /event-bus/cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-bus/cassandra/pom.xml -------------------------------------------------------------------------------- /event-bus/distributed/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-bus/distributed/pom.xml -------------------------------------------------------------------------------- /event-bus/in-vm/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-bus/in-vm/pom.xml -------------------------------------------------------------------------------- /event-bus/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-bus/pom.xml -------------------------------------------------------------------------------- /event-bus/postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-bus/postgres/pom.xml -------------------------------------------------------------------------------- /event-sourcing/event-sourcing-core/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-sourcing/event-sourcing-core/pom.xml -------------------------------------------------------------------------------- /event-sourcing/event-sourcing-pojo/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-sourcing/event-sourcing-pojo/pom.xml -------------------------------------------------------------------------------- /event-sourcing/event-store-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-sourcing/event-store-api/pom.xml -------------------------------------------------------------------------------- /event-sourcing/event-store-cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-sourcing/event-store-cassandra/pom.xml -------------------------------------------------------------------------------- /event-sourcing/event-store-jpa/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-sourcing/event-store-jpa/pom.xml -------------------------------------------------------------------------------- /event-sourcing/event-store-memory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-sourcing/event-store-memory/pom.xml -------------------------------------------------------------------------------- /event-sourcing/event-store-postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-sourcing/event-store-postgres/pom.xml -------------------------------------------------------------------------------- /event-sourcing/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/event-sourcing/pom.xml -------------------------------------------------------------------------------- /examples/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/README.md -------------------------------------------------------------------------------- /examples/custom-healthcheck/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-healthcheck/README.md -------------------------------------------------------------------------------- /examples/custom-healthcheck/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-healthcheck/pom.xml -------------------------------------------------------------------------------- /examples/custom-imap/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-imap/README.md -------------------------------------------------------------------------------- /examples/custom-imap/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-imap/docker-compose.yml -------------------------------------------------------------------------------- /examples/custom-imap/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-imap/pom.xml -------------------------------------------------------------------------------- /examples/custom-james-assembly/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-james-assembly/README.md -------------------------------------------------------------------------------- /examples/custom-james-assembly/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-james-assembly/pom.xml -------------------------------------------------------------------------------- /examples/custom-listeners/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-listeners/README.md -------------------------------------------------------------------------------- /examples/custom-listeners/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-listeners/pom.xml -------------------------------------------------------------------------------- /examples/custom-mailets/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-mailets/README.md -------------------------------------------------------------------------------- /examples/custom-mailets/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-mailets/pom.xml -------------------------------------------------------------------------------- /examples/custom-smtp-command/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-smtp-command/README.md -------------------------------------------------------------------------------- /examples/custom-smtp-command/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-smtp-command/pom.xml -------------------------------------------------------------------------------- /examples/custom-smtp-hooks/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-smtp-hooks/README.md -------------------------------------------------------------------------------- /examples/custom-smtp-hooks/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-smtp-hooks/pom.xml -------------------------------------------------------------------------------- /examples/custom-webadmin-route/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-webadmin-route/README.md -------------------------------------------------------------------------------- /examples/custom-webadmin-route/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/custom-webadmin-route/pom.xml -------------------------------------------------------------------------------- /examples/imap-autoconf/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/imap-autoconf/README.adoc -------------------------------------------------------------------------------- /examples/imap-autoconf/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/imap-autoconf/docker-compose.yml -------------------------------------------------------------------------------- /examples/metrics-graphite/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/metrics-graphite/README.md -------------------------------------------------------------------------------- /examples/metrics-graphite/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/metrics-graphite/docker-compose.yml -------------------------------------------------------------------------------- /examples/metrics-graphite/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/metrics-graphite/pom.xml -------------------------------------------------------------------------------- /examples/oidc/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/README.md -------------------------------------------------------------------------------- /examples/oidc/_media/IMAP-SMTP-oidc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/IMAP-SMTP-oidc.png -------------------------------------------------------------------------------- /examples/oidc/_media/IMAP_SMTP oidc.drawio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/IMAP_SMTP oidc.drawio -------------------------------------------------------------------------------- /examples/oidc/_media/imap-setting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/imap-setting.png -------------------------------------------------------------------------------- /examples/oidc/_media/login-popup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/login-popup.png -------------------------------------------------------------------------------- /examples/oidc/_media/oidc-slo.drawio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/oidc-slo.drawio -------------------------------------------------------------------------------- /examples/oidc/_media/oidc-slo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/oidc-slo.png -------------------------------------------------------------------------------- /examples/oidc/_media/oidc-sso.drawio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/oidc-sso.drawio -------------------------------------------------------------------------------- /examples/oidc/_media/oidc-sso.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/oidc-sso.png -------------------------------------------------------------------------------- /examples/oidc/_media/receive-mail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/receive-mail.png -------------------------------------------------------------------------------- /examples/oidc/_media/send-mail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/send-mail.png -------------------------------------------------------------------------------- /examples/oidc/_media/smtp-setting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/_media/smtp-setting.png -------------------------------------------------------------------------------- /examples/oidc/apisix/conf/apisix.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/apisix/conf/apisix.yaml -------------------------------------------------------------------------------- /examples/oidc/apisix/conf/config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/apisix/conf/config.yaml -------------------------------------------------------------------------------- /examples/oidc/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/docker-compose.yml -------------------------------------------------------------------------------- /examples/oidc/james/imapserver.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/james/imapserver.xml -------------------------------------------------------------------------------- /examples/oidc/james/jmap.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/james/jmap.properties -------------------------------------------------------------------------------- /examples/oidc/james/smtpserver.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/james/smtpserver.xml -------------------------------------------------------------------------------- /examples/oidc/james/usersrepository.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/james/usersrepository.xml -------------------------------------------------------------------------------- /examples/oidc/keycloak/realm-oidc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/keycloak/realm-oidc.json -------------------------------------------------------------------------------- /examples/oidc/ldap/populate.ldif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/ldap/populate.ldif -------------------------------------------------------------------------------- /examples/oidc/test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/oidc/test.sh -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/README.md -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_1.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_10.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_11.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_12.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_13.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_14.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_15.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_2.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_3.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_4.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_5.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_6.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_7.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_8.png -------------------------------------------------------------------------------- /examples/opensearch-dahsboard/img_9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/opensearch-dahsboard/img_9.png -------------------------------------------------------------------------------- /examples/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/pom.xml -------------------------------------------------------------------------------- /examples/proxy-smtp/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/proxy-smtp/README.md -------------------------------------------------------------------------------- /examples/proxy-smtp/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/proxy-smtp/docker-compose.yml -------------------------------------------------------------------------------- /examples/proxy-smtp/haproxy.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/proxy-smtp/haproxy.cfg -------------------------------------------------------------------------------- /examples/proxy-smtp/imapserver.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/proxy-smtp/imapserver.xml -------------------------------------------------------------------------------- /examples/proxy-smtp/smtpserver.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/examples/proxy-smtp/smtpserver.xml -------------------------------------------------------------------------------- /james-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/james-logo.png -------------------------------------------------------------------------------- /javax-mail-extension/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/javax-mail-extension/pom.xml -------------------------------------------------------------------------------- /json/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/json/pom.xml -------------------------------------------------------------------------------- /mailbox/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/README.md -------------------------------------------------------------------------------- /mailbox/api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/api/pom.xml -------------------------------------------------------------------------------- /mailbox/api/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/api/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mailbox/backup/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/backup/pom.xml -------------------------------------------------------------------------------- /mailbox/cassandra/README.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/cassandra/README.txt -------------------------------------------------------------------------------- /mailbox/cassandra/doc/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/cassandra/doc/README.md -------------------------------------------------------------------------------- /mailbox/cassandra/doc/table_structure.drawio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/cassandra/doc/table_structure.drawio -------------------------------------------------------------------------------- /mailbox/cassandra/doc/table_structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/cassandra/doc/table_structure.png -------------------------------------------------------------------------------- /mailbox/cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/cassandra/pom.xml -------------------------------------------------------------------------------- /mailbox/cassandra/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/cassandra/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.task.legacy.json: -------------------------------------------------------------------------------- 1 | { 2 | "type":"solve-message-inconsistencies" 3 | } -------------------------------------------------------------------------------- /mailbox/event/json/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/event/json/pom.xml -------------------------------------------------------------------------------- /mailbox/jpa/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/jpa/pom.xml -------------------------------------------------------------------------------- /mailbox/jpa/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/jpa/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mailbox/lucene/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/lucene/pom.xml -------------------------------------------------------------------------------- /mailbox/lucene/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/lucene/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mailbox/memory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/memory/pom.xml -------------------------------------------------------------------------------- /mailbox/memory/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/memory/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mailbox/memory/src/test/resources/test.eml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /mailbox/opensearch/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/opensearch/pom.xml -------------------------------------------------------------------------------- /mailbox/plugin/deleted-messages-vault/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/plugin/deleted-messages-vault/pom.xml -------------------------------------------------------------------------------- /mailbox/plugin/quota-mailing-memory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/plugin/quota-mailing-memory/pom.xml -------------------------------------------------------------------------------- /mailbox/plugin/quota-mailing/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/plugin/quota-mailing/pom.xml -------------------------------------------------------------------------------- /mailbox/plugin/quota-mailing/src/test/resources/templates/body1.mustache: -------------------------------------------------------------------------------- 1 | [BODY_1] -------------------------------------------------------------------------------- /mailbox/plugin/quota-mailing/src/test/resources/templates/body2.mustache: -------------------------------------------------------------------------------- 1 | [BODY_2] -------------------------------------------------------------------------------- /mailbox/plugin/quota-mailing/src/test/resources/templates/subject1.mustache: -------------------------------------------------------------------------------- 1 | [SUBJECT_1] -------------------------------------------------------------------------------- /mailbox/plugin/quota-mailing/src/test/resources/templates/subject2.mustache: -------------------------------------------------------------------------------- 1 | [SUBJECT_2] -------------------------------------------------------------------------------- /mailbox/plugin/quota-search-scanning/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/plugin/quota-search-scanning/pom.xml -------------------------------------------------------------------------------- /mailbox/plugin/quota-search/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/plugin/quota-search/pom.xml -------------------------------------------------------------------------------- /mailbox/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/pom.xml -------------------------------------------------------------------------------- /mailbox/postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/postgres/pom.xml -------------------------------------------------------------------------------- /mailbox/scanning-search/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/scanning-search/pom.xml -------------------------------------------------------------------------------- /mailbox/spring/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/spring/pom.xml -------------------------------------------------------------------------------- /mailbox/spring/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/spring/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mailbox/spring/src/test/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/spring/src/test/README.md -------------------------------------------------------------------------------- /mailbox/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mailbox/store/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/store/pom.xml -------------------------------------------------------------------------------- /mailbox/store/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/store/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mailbox/store/src/test/resources/documents/writter.docx: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /mailbox/store/src/test/resources/eml/gimp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/store/src/test/resources/eml/gimp.png -------------------------------------------------------------------------------- /mailbox/store/src/test/resources/eml/mail.eml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/store/src/test/resources/eml/mail.eml -------------------------------------------------------------------------------- /mailbox/tika/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/tika/pom.xml -------------------------------------------------------------------------------- /mailbox/tools/copier/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/tools/copier/pom.xml -------------------------------------------------------------------------------- /mailbox/tools/indexer/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/tools/indexer/pom.xml -------------------------------------------------------------------------------- /mailbox/tools/jpa-migrator/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/tools/jpa-migrator/pom.xml -------------------------------------------------------------------------------- /mailbox/tools/quota-recompute/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailbox/tools/quota-recompute/pom.xml -------------------------------------------------------------------------------- /mailet/.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | target/ 3 | *.iml 4 | -------------------------------------------------------------------------------- /mailet/ai/BUILDING.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/ai/BUILDING.txt -------------------------------------------------------------------------------- /mailet/ai/LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/ai/LICENSE.txt -------------------------------------------------------------------------------- /mailet/ai/NOTICE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/ai/NOTICE.txt -------------------------------------------------------------------------------- /mailet/ai/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/ai/pom.xml -------------------------------------------------------------------------------- /mailet/amqp/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/amqp/pom.xml -------------------------------------------------------------------------------- /mailet/api/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/api/LICENSE -------------------------------------------------------------------------------- /mailet/api/NOTICE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/api/NOTICE -------------------------------------------------------------------------------- /mailet/api/RELEASE_NOTES.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/api/RELEASE_NOTES.txt -------------------------------------------------------------------------------- /mailet/api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/api/pom.xml -------------------------------------------------------------------------------- /mailet/base/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/base/LICENSE -------------------------------------------------------------------------------- /mailet/base/NOTICE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/base/NOTICE -------------------------------------------------------------------------------- /mailet/base/RELEASE_NOTES.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/base/RELEASE_NOTES.txt -------------------------------------------------------------------------------- /mailet/base/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/base/pom.xml -------------------------------------------------------------------------------- /mailet/crypto/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/crypto/LICENSE -------------------------------------------------------------------------------- /mailet/crypto/NOTICE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/crypto/NOTICE -------------------------------------------------------------------------------- /mailet/crypto/README.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/crypto/README.txt -------------------------------------------------------------------------------- /mailet/crypto/RELEASE_NOTES.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/crypto/RELEASE_NOTES.txt -------------------------------------------------------------------------------- /mailet/crypto/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/crypto/pom.xml -------------------------------------------------------------------------------- /mailet/icalendar/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/icalendar/pom.xml -------------------------------------------------------------------------------- /mailet/mailetdocs-maven-plugin/LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/mailetdocs-maven-plugin/LICENSE.txt -------------------------------------------------------------------------------- /mailet/mailetdocs-maven-plugin/NOTICE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/mailetdocs-maven-plugin/NOTICE.txt -------------------------------------------------------------------------------- /mailet/mailetdocs-maven-plugin/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/mailetdocs-maven-plugin/pom.xml -------------------------------------------------------------------------------- /mailet/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/pom.xml -------------------------------------------------------------------------------- /mailet/src/reporting-site/site-base.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/src/reporting-site/site-base.xml -------------------------------------------------------------------------------- /mailet/src/reporting-site/site-crypto.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/src/reporting-site/site-crypto.xml -------------------------------------------------------------------------------- /mailet/src/reporting-site/site-mailetdoc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/src/reporting-site/site-mailetdoc.xml -------------------------------------------------------------------------------- /mailet/src/reporting-site/site-standard.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/src/reporting-site/site-standard.xml -------------------------------------------------------------------------------- /mailet/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mailet/src/reporting-site/site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/src/reporting-site/site/site.xml -------------------------------------------------------------------------------- /mailet/standard/LICENSE.activation: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/standard/LICENSE.activation -------------------------------------------------------------------------------- /mailet/standard/LICENSE.apache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/standard/LICENSE.apache -------------------------------------------------------------------------------- /mailet/standard/LICENSE.mail: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/standard/LICENSE.mail -------------------------------------------------------------------------------- /mailet/standard/LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/standard/LICENSE.txt -------------------------------------------------------------------------------- /mailet/standard/NOTICE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/standard/NOTICE.txt -------------------------------------------------------------------------------- /mailet/standard/RELEASE_NOTES.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/standard/RELEASE_NOTES.txt -------------------------------------------------------------------------------- /mailet/standard/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/standard/pom.xml -------------------------------------------------------------------------------- /mailet/standard/src/test/resources/nested.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/standard/src/test/resources/nested.zip -------------------------------------------------------------------------------- /mailet/standard/src/test/resources/sonde.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/standard/src/test/resources/sonde.zip -------------------------------------------------------------------------------- /mailet/test/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mailet/test/pom.xml -------------------------------------------------------------------------------- /mdn/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mdn/pom.xml -------------------------------------------------------------------------------- /metrics/metrics-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/metrics/metrics-api/pom.xml -------------------------------------------------------------------------------- /metrics/metrics-dropwizard/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/metrics/metrics-dropwizard/pom.xml -------------------------------------------------------------------------------- /metrics/metrics-logger/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/metrics/metrics-logger/pom.xml -------------------------------------------------------------------------------- /metrics/metrics-tests/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/metrics/metrics-tests/pom.xml -------------------------------------------------------------------------------- /metrics/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/metrics/pom.xml -------------------------------------------------------------------------------- /mpt/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | .settings 3 | .project 4 | .classpath -------------------------------------------------------------------------------- /mpt/all/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/all/pom.xml -------------------------------------------------------------------------------- /mpt/all/src/assemble/bin.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/all/src/assemble/bin.xml -------------------------------------------------------------------------------- /mpt/all/src/assemble/src.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/all/src/assemble/src.xml -------------------------------------------------------------------------------- /mpt/all/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/all/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mpt/all/src/site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/all/src/site/site.xml -------------------------------------------------------------------------------- /mpt/app/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/app/pom.xml -------------------------------------------------------------------------------- /mpt/app/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/app/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mpt/app/src/site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/app/src/site/site.xml -------------------------------------------------------------------------------- /mpt/app/src/site/xdoc/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/app/src/site/xdoc/index.xml -------------------------------------------------------------------------------- /mpt/core/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/core/pom.xml -------------------------------------------------------------------------------- /mpt/core/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/core/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mpt/core/src/site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/core/src/site/site.xml -------------------------------------------------------------------------------- /mpt/core/src/site/xdoc/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/core/src/site/xdoc/index.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/LICENSE.txt -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/NOTICE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/NOTICE.txt -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/cassandra/pom.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/core/LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/core/LICENSE.txt -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/core/NOTICE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/core/NOTICE.txt -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/core/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/core/pom.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/cyrus/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/cyrus/pom.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/external-james/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/external-james/pom.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/inmemory/LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/inmemory/LICENSE.txt -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/inmemory/NOTICE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/inmemory/NOTICE.txt -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/inmemory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/inmemory/pom.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/jpa/LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/jpa/LICENSE.txt -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/jpa/NOTICE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/jpa/NOTICE.txt -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/jpa/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/jpa/pom.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/lucenesearch/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/lucenesearch/pom.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/opensearch/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | data 3 | *.iml 4 | /bin/ 5 | -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/opensearch/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/opensearch/pom.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/pom.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/postgres/pom.xml -------------------------------------------------------------------------------- /mpt/impl/imap-mailbox/rabbitmq/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/imap-mailbox/rabbitmq/pom.xml -------------------------------------------------------------------------------- /mpt/impl/managesieve/cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/managesieve/cassandra/pom.xml -------------------------------------------------------------------------------- /mpt/impl/managesieve/core/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/managesieve/core/pom.xml -------------------------------------------------------------------------------- /mpt/impl/managesieve/file/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/managesieve/file/pom.xml -------------------------------------------------------------------------------- /mpt/impl/managesieve/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/managesieve/pom.xml -------------------------------------------------------------------------------- /mpt/impl/smtp/cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/smtp/cassandra/pom.xml -------------------------------------------------------------------------------- /mpt/impl/smtp/core/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/smtp/core/pom.xml -------------------------------------------------------------------------------- /mpt/impl/smtp/jpa-pulsar/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/smtp/jpa-pulsar/pom.xml -------------------------------------------------------------------------------- /mpt/impl/smtp/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/impl/smtp/pom.xml -------------------------------------------------------------------------------- /mpt/mavenplugin/LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/mavenplugin/LICENSE.txt -------------------------------------------------------------------------------- /mpt/mavenplugin/NOTICE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/mavenplugin/NOTICE.txt -------------------------------------------------------------------------------- /mpt/mavenplugin/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/mavenplugin/pom.xml -------------------------------------------------------------------------------- /mpt/mavenplugin/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/mavenplugin/src/reporting-site/site.xml -------------------------------------------------------------------------------- /mpt/mavenplugin/src/site/apt/index.apt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/mavenplugin/src/site/apt/index.apt -------------------------------------------------------------------------------- /mpt/mavenplugin/src/site/apt/usage.apt.vm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/mavenplugin/src/site/apt/usage.apt.vm -------------------------------------------------------------------------------- /mpt/mavenplugin/src/site/fml/faq.fml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/mavenplugin/src/site/fml/faq.fml -------------------------------------------------------------------------------- /mpt/mavenplugin/src/site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/mavenplugin/src/site/site.xml -------------------------------------------------------------------------------- /mpt/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/pom.xml -------------------------------------------------------------------------------- /mpt/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/mpt/src/reporting-site/site.xml -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/pom.xml -------------------------------------------------------------------------------- /protocols/.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | target 3 | *.iml 4 | -------------------------------------------------------------------------------- /protocols/api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/api/pom.xml -------------------------------------------------------------------------------- /protocols/api/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/api/src/reporting-site/site.xml -------------------------------------------------------------------------------- /protocols/imap/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/imap/pom.xml -------------------------------------------------------------------------------- /protocols/lmtp/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/lmtp/pom.xml -------------------------------------------------------------------------------- /protocols/managesieve/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/managesieve/pom.xml -------------------------------------------------------------------------------- /protocols/netty/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/netty/pom.xml -------------------------------------------------------------------------------- /protocols/netty/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/netty/src/reporting-site/site.xml -------------------------------------------------------------------------------- /protocols/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/pom.xml -------------------------------------------------------------------------------- /protocols/pop3/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/pop3/pom.xml -------------------------------------------------------------------------------- /protocols/smtp/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/smtp/pom.xml -------------------------------------------------------------------------------- /protocols/smtp/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/smtp/src/reporting-site/site.xml -------------------------------------------------------------------------------- /protocols/smtp/src/test/resources/a50.eml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/smtp/src/test/resources/a50.eml -------------------------------------------------------------------------------- /protocols/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/src/reporting-site/site.xml -------------------------------------------------------------------------------- /protocols/src/site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/protocols/src/site/site.xml -------------------------------------------------------------------------------- /server/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/.gitignore -------------------------------------------------------------------------------- /server/Overview.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/Overview.md -------------------------------------------------------------------------------- /server/README.crypto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/README.crypto -------------------------------------------------------------------------------- /server/apps/cassandra-app/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/cassandra-app/README.adoc -------------------------------------------------------------------------------- /server/apps/cassandra-app/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/cassandra-app/docker-compose.yml -------------------------------------------------------------------------------- /server/apps/cassandra-app/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/cassandra-app/pom.xml -------------------------------------------------------------------------------- /server/apps/cli-integration-tests/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/cli-integration-tests/pom.xml -------------------------------------------------------------------------------- /server/apps/cli/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/cli/README.adoc -------------------------------------------------------------------------------- /server/apps/cli/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/cli/pom.xml -------------------------------------------------------------------------------- /server/apps/cli/src/assemble/app.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/cli/src/assemble/app.xml -------------------------------------------------------------------------------- /server/apps/cli/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/cli/src/reporting-site/site.xml -------------------------------------------------------------------------------- /server/apps/demo/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/demo/Dockerfile -------------------------------------------------------------------------------- /server/apps/demo/imapserver.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/demo/imapserver.xml -------------------------------------------------------------------------------- /server/apps/demo/initialdata.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/demo/initialdata.sh -------------------------------------------------------------------------------- /server/apps/demo/pop3server.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/demo/pop3server.xml -------------------------------------------------------------------------------- /server/apps/demo/smtpserver.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/demo/smtpserver.xml -------------------------------------------------------------------------------- /server/apps/demo/startup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/demo/startup.sh -------------------------------------------------------------------------------- /server/apps/distributed-app/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/distributed-app/README.adoc -------------------------------------------------------------------------------- /server/apps/distributed-app/docs/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/distributed-app/docs/Dockerfile -------------------------------------------------------------------------------- /server/apps/distributed-app/docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/distributed-app/docs/README.md -------------------------------------------------------------------------------- /server/apps/distributed-app/docs/antora.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/distributed-app/docs/antora.yml -------------------------------------------------------------------------------- /server/apps/distributed-app/docs/modules/ROOT/nav.adoc: -------------------------------------------------------------------------------- 1 | * Apache James Distributed Reference Documentation 2 | -------------------------------------------------------------------------------- /server/apps/distributed-app/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/distributed-app/pom.xml -------------------------------------------------------------------------------- /server/apps/distributed-app/sample-configuration/droplists.properties: -------------------------------------------------------------------------------- 1 | # Configuration file for DropLists 2 | 3 | enabled=false -------------------------------------------------------------------------------- /server/apps/distributed-app/sample-configuration/queue-pulsar.properties: -------------------------------------------------------------------------------- 1 | mail.queue.choice=PULSAR -------------------------------------------------------------------------------- /server/apps/distributed-app/sample-configuration/queue.properties: -------------------------------------------------------------------------------- 1 | mail.queue.choice=RABBITMQ -------------------------------------------------------------------------------- /server/apps/distributed-pop3-app/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/distributed-pop3-app/README.adoc -------------------------------------------------------------------------------- /server/apps/distributed-pop3-app/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/distributed-pop3-app/pom.xml -------------------------------------------------------------------------------- /server/apps/distributed-pop3-app/src/test/resources/attachment.eml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/apps/distributed-pop3-app/src/test/resources/big.eml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/apps/jpa-app/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/jpa-app/README.adoc -------------------------------------------------------------------------------- /server/apps/jpa-app/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/jpa-app/docker-compose.yml -------------------------------------------------------------------------------- /server/apps/jpa-app/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/jpa-app/pom.xml -------------------------------------------------------------------------------- /server/apps/jpa-app/sample-configuration/droplists.properties: -------------------------------------------------------------------------------- 1 | # Configuration file for DropLists 2 | 3 | enabled=false -------------------------------------------------------------------------------- /server/apps/jpa-app/src/assemble/app.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/jpa-app/src/assemble/app.xml -------------------------------------------------------------------------------- /server/apps/jpa-smtp-app/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/jpa-smtp-app/README.adoc -------------------------------------------------------------------------------- /server/apps/jpa-smtp-app/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/jpa-smtp-app/docker-compose.yml -------------------------------------------------------------------------------- /server/apps/jpa-smtp-app/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/jpa-smtp-app/pom.xml -------------------------------------------------------------------------------- /server/apps/jpa-smtp-app/src/assemble/app.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/jpa-smtp-app/src/assemble/app.xml -------------------------------------------------------------------------------- /server/apps/jpa-smtp-app/src/main/resources/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/apps/memory-app/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/memory-app/README.md -------------------------------------------------------------------------------- /server/apps/memory-app/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/memory-app/pom.xml -------------------------------------------------------------------------------- /server/apps/memory-app/sample-configuration/droplists.properties: -------------------------------------------------------------------------------- 1 | # Configuration file for DropLists 2 | 3 | enabled=false -------------------------------------------------------------------------------- /server/apps/memory-app/src/assemble/app.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/memory-app/src/assemble/app.xml -------------------------------------------------------------------------------- /server/apps/postgres-app/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/postgres-app/README.adoc -------------------------------------------------------------------------------- /server/apps/postgres-app/clean_up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/postgres-app/clean_up.sql -------------------------------------------------------------------------------- /server/apps/postgres-app/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/postgres-app/docker-compose.yml -------------------------------------------------------------------------------- /server/apps/postgres-app/performance-test.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/postgres-app/performance-test.md -------------------------------------------------------------------------------- /server/apps/postgres-app/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/postgres-app/pom.xml -------------------------------------------------------------------------------- /server/apps/postgres-app/provision.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/postgres-app/provision.sh -------------------------------------------------------------------------------- /server/apps/postgres-app/sample-configuration/droplists.properties: -------------------------------------------------------------------------------- 1 | # Configuration file for DropLists 2 | 3 | enabled=false -------------------------------------------------------------------------------- /server/apps/postgres-app/src/assemble/app.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/postgres-app/src/assemble/app.xml -------------------------------------------------------------------------------- /server/apps/scaling-pulsar-smtp/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/scaling-pulsar-smtp/README.adoc -------------------------------------------------------------------------------- /server/apps/scaling-pulsar-smtp/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/scaling-pulsar-smtp/pom.xml -------------------------------------------------------------------------------- /server/apps/scaling-pulsar-smtp/sample-configuration/scriptFile.scala: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /server/apps/scaling-pulsar-smtp/src/main/extensions-jars/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/apps/scaling-pulsar-smtp/src/main/glowroot/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/apps/spring-app/.dummy: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/apps/spring-app/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/spring-app/LICENSE -------------------------------------------------------------------------------- /server/apps/spring-app/NOTICE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/spring-app/NOTICE -------------------------------------------------------------------------------- /server/apps/spring-app/README.crypto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/spring-app/README.crypto -------------------------------------------------------------------------------- /server/apps/spring-app/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/spring-app/pom.xml -------------------------------------------------------------------------------- /server/apps/spring-app/src/assemble/app.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/spring-app/src/assemble/app.xml -------------------------------------------------------------------------------- /server/apps/spring-app/src/main/resources/jmxremote.access: -------------------------------------------------------------------------------- 1 | james-admin readwrite -------------------------------------------------------------------------------- /server/apps/spring-app/src/main/resources/jmxremote.password: -------------------------------------------------------------------------------- 1 | james-admin changeme -------------------------------------------------------------------------------- /server/apps/webadmin-cli/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/webadmin-cli/README.md -------------------------------------------------------------------------------- /server/apps/webadmin-cli/james-cli: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | unset JAVA_TOOL_OPTIONS 4 | java -jar target/james-cli.jar "$@" -------------------------------------------------------------------------------- /server/apps/webadmin-cli/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/apps/webadmin-cli/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-aes/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-aes/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-api/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-cassandra/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-common/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-export-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-export-api/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-export-file/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-export-file/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-file/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-file/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-memory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-memory/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-postgres/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-s3/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-s3/pom.xml -------------------------------------------------------------------------------- /server/blob/blob-storage-strategy/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/blob-storage-strategy/pom.xml -------------------------------------------------------------------------------- /server/blob/mail-store/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/mail-store/pom.xml -------------------------------------------------------------------------------- /server/blob/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/blob/pom.xml -------------------------------------------------------------------------------- /server/container/core/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/core/pom.xml -------------------------------------------------------------------------------- /server/container/feature-checks/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/feature-checks/pom.xml -------------------------------------------------------------------------------- /server/container/filesystem-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/filesystem-api/pom.xml -------------------------------------------------------------------------------- /server/container/filesystem-api/src/test/resources/class path Test.txt: -------------------------------------------------------------------------------- 1 | Non empty 2 | -------------------------------------------------------------------------------- /server/container/filesystem-api/src/test/resources/classpathTest.txt: -------------------------------------------------------------------------------- 1 | Non empty 2 | -------------------------------------------------------------------------------- /server/container/guice/blob/api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/blob/api/pom.xml -------------------------------------------------------------------------------- /server/container/guice/blob/export/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/blob/export/pom.xml -------------------------------------------------------------------------------- /server/container/guice/blob/memory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/blob/memory/pom.xml -------------------------------------------------------------------------------- /server/container/guice/blob/postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/blob/postgres/pom.xml -------------------------------------------------------------------------------- /server/container/guice/blob/s3/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/blob/s3/pom.xml -------------------------------------------------------------------------------- /server/container/guice/cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/cassandra/pom.xml -------------------------------------------------------------------------------- /server/container/guice/common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/common/pom.xml -------------------------------------------------------------------------------- /server/container/guice/configuration/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/configuration/pom.xml -------------------------------------------------------------------------------- /server/container/guice/configuration/src/test/resources/b.properties: -------------------------------------------------------------------------------- 1 | prop=value2 -------------------------------------------------------------------------------- /server/container/guice/configuration/src/test/resources/env.properties: -------------------------------------------------------------------------------- 1 | keyByEnv=${env:PROPERTIES_PROVIDER_ENV_VARIABLES} -------------------------------------------------------------------------------- /server/container/guice/data-cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/data-cassandra/pom.xml -------------------------------------------------------------------------------- /server/container/guice/data-ldap/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/data-ldap/pom.xml -------------------------------------------------------------------------------- /server/container/guice/distributed/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/distributed/pom.xml -------------------------------------------------------------------------------- /server/container/guice/jmx/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/jmx/pom.xml -------------------------------------------------------------------------------- /server/container/guice/jpa-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/jpa-common/pom.xml -------------------------------------------------------------------------------- /server/container/guice/lucene/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/lucene/pom.xml -------------------------------------------------------------------------------- /server/container/guice/mailbox-jpa/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/mailbox-jpa/pom.xml -------------------------------------------------------------------------------- /server/container/guice/mailbox/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/mailbox/pom.xml -------------------------------------------------------------------------------- /server/container/guice/mailet/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/mailet/pom.xml -------------------------------------------------------------------------------- /server/container/guice/memory/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/memory/README.md -------------------------------------------------------------------------------- /server/container/guice/memory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/memory/pom.xml -------------------------------------------------------------------------------- /server/container/guice/onami/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/onami/pom.xml -------------------------------------------------------------------------------- /server/container/guice/opensearch/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/opensearch/pom.xml -------------------------------------------------------------------------------- /server/container/guice/opensearch/src/test/resources/recursive/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/container/guice/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/pom.xml -------------------------------------------------------------------------------- /server/container/guice/protocols/imap/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/protocols/imap/pom.xml -------------------------------------------------------------------------------- /server/container/guice/protocols/jmap/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/protocols/jmap/pom.xml -------------------------------------------------------------------------------- /server/container/guice/protocols/lmtp/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/protocols/lmtp/pom.xml -------------------------------------------------------------------------------- /server/container/guice/protocols/pop/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/protocols/pop/pom.xml -------------------------------------------------------------------------------- /server/container/guice/protocols/smtp/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/protocols/smtp/pom.xml -------------------------------------------------------------------------------- /server/container/guice/protocols/webadmin/src/test/resources/webadmin-empty.properties: -------------------------------------------------------------------------------- 1 | extensions.routes= -------------------------------------------------------------------------------- /server/container/guice/protocols/webadmin/src/test/resources/webadmin-none.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/container/guice/queue/activemq/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/queue/activemq/pom.xml -------------------------------------------------------------------------------- /server/container/guice/queue/memory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/queue/memory/pom.xml -------------------------------------------------------------------------------- /server/container/guice/queue/pulsar/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/queue/pulsar/pom.xml -------------------------------------------------------------------------------- /server/container/guice/queue/rabbitmq/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/queue/rabbitmq/pom.xml -------------------------------------------------------------------------------- /server/container/guice/sieve-file/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/sieve-file/pom.xml -------------------------------------------------------------------------------- /server/container/guice/sieve-jpa/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/sieve-jpa/pom.xml -------------------------------------------------------------------------------- /server/container/guice/sieve-postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/sieve-postgres/pom.xml -------------------------------------------------------------------------------- /server/container/guice/testing/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/testing/pom.xml -------------------------------------------------------------------------------- /server/container/guice/utils/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/guice/utils/pom.xml -------------------------------------------------------------------------------- /server/container/guice/utils/src/test/resources/extensions-empty.properties: -------------------------------------------------------------------------------- 1 | guice.extension.module= -------------------------------------------------------------------------------- /server/container/guice/utils/src/test/resources/extensions-none.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/container/lifecycle-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/lifecycle-api/pom.xml -------------------------------------------------------------------------------- /server/container/mailbox-adapter/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/mailbox-adapter/pom.xml -------------------------------------------------------------------------------- /server/container/mailbox-jmx/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/mailbox-jmx/pom.xml -------------------------------------------------------------------------------- /server/container/spring/.dummy: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/container/spring/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/spring/pom.xml -------------------------------------------------------------------------------- /server/container/util/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/container/util/pom.xml -------------------------------------------------------------------------------- /server/data/data-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-api/pom.xml -------------------------------------------------------------------------------- /server/data/data-cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-cassandra/pom.xml -------------------------------------------------------------------------------- /server/data/data-file/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-file/pom.xml -------------------------------------------------------------------------------- /server/data/data-jmap-cassandra/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-jmap-cassandra/pom.xml -------------------------------------------------------------------------------- /server/data/data-jmap-postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-jmap-postgres/pom.xml -------------------------------------------------------------------------------- /server/data/data-jmap/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-jmap/pom.xml -------------------------------------------------------------------------------- /server/data/data-jpa/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-jpa/pom.xml -------------------------------------------------------------------------------- /server/data/data-ldap/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-ldap/pom.xml -------------------------------------------------------------------------------- /server/data/data-library/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-library/pom.xml -------------------------------------------------------------------------------- /server/data/data-memory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-memory/pom.xml -------------------------------------------------------------------------------- /server/data/data-postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/data/data-postgres/pom.xml -------------------------------------------------------------------------------- /server/dns-service/dnsservice-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/dns-service/dnsservice-api/pom.xml -------------------------------------------------------------------------------- /server/dns-service/dnsservice-dnsjava/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/dns-service/dnsservice-dnsjava/pom.xml -------------------------------------------------------------------------------- /server/dns-service/dnsservice-library/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/dns-service/dnsservice-library/pom.xml -------------------------------------------------------------------------------- /server/dns-service/dnsservice-test/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/dns-service/dnsservice-test/pom.xml -------------------------------------------------------------------------------- /server/mailet/dkim/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/dkim/pom.xml -------------------------------------------------------------------------------- /server/mailet/integration-testing/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/integration-testing/pom.xml -------------------------------------------------------------------------------- /server/mailet/integration-testing/src/main/resources/smime-test-resource-set/rootCA.srl: -------------------------------------------------------------------------------- 1 | 0D7772E97111FE45872B8D654C9C552705CF650E 2 | -------------------------------------------------------------------------------- /server/mailet/ldap/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/ldap/README.md -------------------------------------------------------------------------------- /server/mailet/ldap/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/ldap/pom.xml -------------------------------------------------------------------------------- /server/mailet/mailetcontainer-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/mailetcontainer-api/pom.xml -------------------------------------------------------------------------------- /server/mailet/mailetcontainer-impl/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/mailetcontainer-impl/pom.xml -------------------------------------------------------------------------------- /server/mailet/mailets/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/mailets/pom.xml -------------------------------------------------------------------------------- /server/mailet/mock-smtp-server/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/mock-smtp-server/README.adoc -------------------------------------------------------------------------------- /server/mailet/mock-smtp-server/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/mock-smtp-server/pom.xml -------------------------------------------------------------------------------- /server/mailet/rate-limiter-redis/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/rate-limiter-redis/README.adoc -------------------------------------------------------------------------------- /server/mailet/rate-limiter-redis/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/rate-limiter-redis/pom.xml -------------------------------------------------------------------------------- /server/mailet/rate-limiter/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/rate-limiter/README.adoc -------------------------------------------------------------------------------- /server/mailet/rate-limiter/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/rate-limiter/docker-compose.yml -------------------------------------------------------------------------------- /server/mailet/rate-limiter/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/mailet/rate-limiter/pom.xml -------------------------------------------------------------------------------- /server/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/pom.xml -------------------------------------------------------------------------------- /server/protocols/fetchmail/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/fetchmail/pom.xml -------------------------------------------------------------------------------- /server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/pom.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/BlobManagerImpl.java: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/methods/GetMessageListMethod.java: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/protocols/jmap-draft/src/main/java/org/apache/james/jmap/draft/model/BlobId.java: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/methods/BlobManagerImplTest.java: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/methods/MIMEMessageConverterTest.java: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/model/message/view/MessageFastViewFactoryTest.java: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/model/message/view/MessageFullViewFactoryTest.java: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/model/message/view/MessageHeaderViewFactoryTest.java: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/protocols/jmap-draft/src/test/java/org/apache/james/jmap/draft/model/message/view/MessageMetadataViewFactoryTest.java: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/protocols/jmap-rfc-8621/doc/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/jmap-rfc-8621/doc/README.md -------------------------------------------------------------------------------- /server/protocols/jmap-rfc-8621/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/jmap-rfc-8621/pom.xml -------------------------------------------------------------------------------- /server/protocols/jmap/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/jmap/pom.xml -------------------------------------------------------------------------------- /server/protocols/jwt/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/jwt/pom.xml -------------------------------------------------------------------------------- /server/protocols/protocols-imap4/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/protocols-imap4/pom.xml -------------------------------------------------------------------------------- /server/protocols/protocols-library/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/protocols-library/pom.xml -------------------------------------------------------------------------------- /server/protocols/protocols-lmtp/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/protocols-lmtp/pom.xml -------------------------------------------------------------------------------- /server/protocols/protocols-pop3/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/protocols-pop3/pom.xml -------------------------------------------------------------------------------- /server/protocols/protocols-smtp-dkim/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/protocols-smtp-dkim/pom.xml -------------------------------------------------------------------------------- /server/protocols/protocols-smtp/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/protocols-smtp/pom.xml -------------------------------------------------------------------------------- /server/protocols/webadmin/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/protocols/webadmin/pom.xml -------------------------------------------------------------------------------- /server/protocols/webadmin/webadmin-jmap/src/test/resources/json/populateFilters.task.json: -------------------------------------------------------------------------------- 1 | { 2 | "type":"PopulateFilteringProjectionTask" 3 | } -------------------------------------------------------------------------------- /server/protocols/webadmin/webadmin-jmap/src/test/resources/json/recomputeAll.task.legacy.json: -------------------------------------------------------------------------------- 1 | {"type":"RecomputeAllFastViewProjectionItemsTask"} -------------------------------------------------------------------------------- /server/protocols/webadmin/webadmin-mailbox/src/test/resources/json/createMissingParents.task.json: -------------------------------------------------------------------------------- 1 | { 2 | "type":"CreateMissingParentsTask" 3 | } -------------------------------------------------------------------------------- /server/queue/queue-activemq/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/queue/queue-activemq/pom.xml -------------------------------------------------------------------------------- /server/queue/queue-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/queue/queue-api/pom.xml -------------------------------------------------------------------------------- /server/queue/queue-jms/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/queue/queue-jms/pom.xml -------------------------------------------------------------------------------- /server/queue/queue-memory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/queue/queue-memory/pom.xml -------------------------------------------------------------------------------- /server/queue/queue-pulsar/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/queue/queue-pulsar/README.adoc -------------------------------------------------------------------------------- /server/queue/queue-pulsar/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/queue/queue-pulsar/pom.xml -------------------------------------------------------------------------------- /server/queue/queue-rabbitmq/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/queue/queue-rabbitmq/pom.xml -------------------------------------------------------------------------------- /server/src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/src/reporting-site/site.xml -------------------------------------------------------------------------------- /server/task/task-api/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/task/task-api/pom.xml -------------------------------------------------------------------------------- /server/task/task-distributed/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/task/task-distributed/pom.xml -------------------------------------------------------------------------------- /server/task/task-json/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/task/task-json/pom.xml -------------------------------------------------------------------------------- /server/task/task-memory/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/task/task-memory/pom.xml -------------------------------------------------------------------------------- /server/task/task-postgres/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/task/task-postgres/pom.xml -------------------------------------------------------------------------------- /server/testing/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/server/testing/pom.xml -------------------------------------------------------------------------------- /src/adr/0001-record-architecture-decisions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0001-record-architecture-decisions.md -------------------------------------------------------------------------------- /src/adr/0002-make-taskmanager-distributed.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0002-make-taskmanager-distributed.md -------------------------------------------------------------------------------- /src/adr/0003-distributed-workqueue.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0003-distributed-workqueue.md -------------------------------------------------------------------------------- /src/adr/0004-distributed-tasks-listing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0004-distributed-tasks-listing.md -------------------------------------------------------------------------------- /src/adr/0006-task-serialization.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0006-task-serialization.md -------------------------------------------------------------------------------- /src/adr/0007-distributed-task-cancellation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0007-distributed-task-cancellation.md -------------------------------------------------------------------------------- /src/adr/0008-distributed-task-await.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0008-distributed-task-await.md -------------------------------------------------------------------------------- /src/adr/0009-java-11-migration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0009-java-11-migration.md -------------------------------------------------------------------------------- /src/adr/0010-enable-elasticsearch-routing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0010-enable-elasticsearch-routing.md -------------------------------------------------------------------------------- /src/adr/0012-jmap-partial-reads.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0012-jmap-partial-reads.md -------------------------------------------------------------------------------- /src/adr/0013-precompute-jmap-preview.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0013-precompute-jmap-preview.md -------------------------------------------------------------------------------- /src/adr/0014-blobstore-storage-policies.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0014-blobstore-storage-policies.md -------------------------------------------------------------------------------- /src/adr/0015-objectstorage-blobid-list.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0015-objectstorage-blobid-list.md -------------------------------------------------------------------------------- /src/adr/0016-distributed-workqueue.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0016-distributed-workqueue.md -------------------------------------------------------------------------------- /src/adr/0017-file-mail-queue-deprecation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0017-file-mail-queue-deprecation.md -------------------------------------------------------------------------------- /src/adr/0018-jmap-new-specs.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0018-jmap-new-specs.md -------------------------------------------------------------------------------- /src/adr/0019-reactor-netty-adoption.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0019-reactor-netty-adoption.md -------------------------------------------------------------------------------- /src/adr/0021-cassandra-acl-inconsistency.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0021-cassandra-acl-inconsistency.md -------------------------------------------------------------------------------- /src/adr/0024-polyglot-strategy.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0024-polyglot-strategy.md -------------------------------------------------------------------------------- /src/adr/0025-cassandra-blob-store-cache.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0025-cassandra-blob-store-cache.md -------------------------------------------------------------------------------- /src/adr/0028-Recompute-mailbox-quotas.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0028-Recompute-mailbox-quotas.md -------------------------------------------------------------------------------- /src/adr/0031-distributed-mail-queue.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0031-distributed-mail-queue.md -------------------------------------------------------------------------------- /src/adr/0037-eventbus.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0037-eventbus.md -------------------------------------------------------------------------------- /src/adr/0038-distributed-eventbus.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0038-distributed-eventbus.md -------------------------------------------------------------------------------- /src/adr/0040-quality-levels-definitions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0040-quality-levels-definitions.md -------------------------------------------------------------------------------- /src/adr/0041-replace-jcloud-with-s3.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0041-replace-jcloud-with-s3.md -------------------------------------------------------------------------------- /src/adr/0042-applicative-read-repairs.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0042-applicative-read-repairs.md -------------------------------------------------------------------------------- /src/adr/0042-james-cli-based-on-webadmin.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0042-james-cli-based-on-webadmin.md -------------------------------------------------------------------------------- /src/adr/0046-generalize-event-bus.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0046-generalize-event-bus.md -------------------------------------------------------------------------------- /src/adr/0047-jmap-push-over-websockets.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0047-jmap-push-over-websockets.md -------------------------------------------------------------------------------- /src/adr/0048-cleanup-jmap-uploads.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0048-cleanup-jmap-uploads.md -------------------------------------------------------------------------------- /src/adr/0050-jmap-web-push.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0050-jmap-web-push.md -------------------------------------------------------------------------------- /src/adr/0051-oidc.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0051-oidc.md -------------------------------------------------------------------------------- /src/adr/0052-pulsar-mailqueue.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0052-pulsar-mailqueue.md -------------------------------------------------------------------------------- /src/adr/0053-email-rate-limiting.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0053-email-rate-limiting.md -------------------------------------------------------------------------------- /src/adr/0055-rspamd-spam-filtering.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0055-rspamd-spam-filtering.md -------------------------------------------------------------------------------- /src/adr/0056-opensearch-migration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0056-opensearch-migration.md -------------------------------------------------------------------------------- /src/adr/0057-reactive-imap.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0057-reactive-imap.md -------------------------------------------------------------------------------- /src/adr/0058-upgrade-to-netty-4.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0058-upgrade-to-netty-4.md -------------------------------------------------------------------------------- /src/adr/0059-upgrade-to-cassadra-driver-4.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0059-upgrade-to-cassadra-driver-4.md -------------------------------------------------------------------------------- /src/adr/0060-adopt-bounded-elastic.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0060-adopt-bounded-elastic.md -------------------------------------------------------------------------------- /src/adr/0061-delegation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0061-delegation.md -------------------------------------------------------------------------------- /src/adr/0062-oidc-token-introspection.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0062-oidc-token-introspection.md -------------------------------------------------------------------------------- /src/adr/0063-temporary-file-leaks.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0063-temporary-file-leaks.md -------------------------------------------------------------------------------- /src/adr/0064-account-delegation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0064-account-delegation.md -------------------------------------------------------------------------------- /src/adr/0065-changing-username.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0065-changing-username.md -------------------------------------------------------------------------------- /src/adr/0066-modular-user-data-deletion.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0066-modular-user-data-deletion.md -------------------------------------------------------------------------------- /src/adr/0067-quota-for-jmap-uploads.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0067-quota-for-jmap-uploads.md -------------------------------------------------------------------------------- /src/adr/0069-crowdsec-IP-filtering.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0069-crowdsec-IP-filtering.md -------------------------------------------------------------------------------- /src/adr/0070-postgresql-adoption.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0070-postgresql-adoption.md -------------------------------------------------------------------------------- /src/adr/0071-objectstorage-sse-c.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/0071-objectstorage-sse-c.md -------------------------------------------------------------------------------- /src/adr/img/adr-68-architecture-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/img/adr-68-architecture-diagram.png -------------------------------------------------------------------------------- /src/adr/img/adr-69-scenario-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/img/adr-69-scenario-diagram.png -------------------------------------------------------------------------------- /src/adr/img/adr-71-mailbox-tables-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/adr/img/adr-71-mailbox-tables-diagram.png -------------------------------------------------------------------------------- /src/homepage-docker/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage-docker/Dockerfile -------------------------------------------------------------------------------- /src/homepage-docker/compile.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage-docker/compile.sh -------------------------------------------------------------------------------- /src/homepage/Gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/Gemfile -------------------------------------------------------------------------------- /src/homepage/_config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_config.yml -------------------------------------------------------------------------------- /src/homepage/_includes/footer.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_includes/footer.html -------------------------------------------------------------------------------- /src/homepage/_includes/header.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_includes/header.html -------------------------------------------------------------------------------- /src/homepage/_layouts/default.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_layouts/default.html -------------------------------------------------------------------------------- /src/homepage/_layouts/howTo.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_layouts/howTo.html -------------------------------------------------------------------------------- /src/homepage/_layouts/post.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_layouts/post.html -------------------------------------------------------------------------------- /src/homepage/_posts/2009-09-17-hupa.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_posts/2009-09-17-hupa.markdown -------------------------------------------------------------------------------- /src/homepage/_posts/2009-10-17-jdkim.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_posts/2009-10-17-jdkim.markdown -------------------------------------------------------------------------------- /src/homepage/_posts/2016-02-09-jmap.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_posts/2016-02-09-jmap.markdown -------------------------------------------------------------------------------- /src/homepage/_posts/2016-05-09-jmap.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_posts/2016-05-09-jmap.markdown -------------------------------------------------------------------------------- /src/homepage/_posts/2016-07-09-jmap.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_posts/2016-07-09-jmap.markdown -------------------------------------------------------------------------------- /src/homepage/_posts/2016-07-19-jmap.markdown: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/_posts/2016-07-19-jmap.markdown -------------------------------------------------------------------------------- /src/homepage/about.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/about.md -------------------------------------------------------------------------------- /src/homepage/assets/css/font-awesome.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/css/font-awesome.min.css -------------------------------------------------------------------------------- /src/homepage/assets/css/ie8.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/css/ie8.css -------------------------------------------------------------------------------- /src/homepage/assets/css/ie9.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/css/ie9.css -------------------------------------------------------------------------------- /src/homepage/assets/css/images/background.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/css/images/background.jpg -------------------------------------------------------------------------------- /src/homepage/assets/css/images/overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/css/images/overlay.png -------------------------------------------------------------------------------- /src/homepage/assets/css/lightbox.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/css/lightbox.css -------------------------------------------------------------------------------- /src/homepage/assets/css/lity.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/css/lity.min.css -------------------------------------------------------------------------------- /src/homepage/assets/css/main.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/css/main.css -------------------------------------------------------------------------------- /src/homepage/assets/css/test.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/css/test.html -------------------------------------------------------------------------------- /src/homepage/assets/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /src/homepage/assets/images/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/images/close.png -------------------------------------------------------------------------------- /src/homepage/assets/images/gsoc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/images/gsoc.png -------------------------------------------------------------------------------- /src/homepage/assets/images/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/images/loading.gif -------------------------------------------------------------------------------- /src/homepage/assets/images/next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/images/next.png -------------------------------------------------------------------------------- /src/homepage/assets/images/prev.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/images/prev.png -------------------------------------------------------------------------------- /src/homepage/assets/js/github-fetch.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/github-fetch.js -------------------------------------------------------------------------------- /src/homepage/assets/js/ie/PIE.htc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/ie/PIE.htc -------------------------------------------------------------------------------- /src/homepage/assets/js/ie/html5shiv.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/ie/html5shiv.js -------------------------------------------------------------------------------- /src/homepage/assets/js/ie/respond.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/ie/respond.min.js -------------------------------------------------------------------------------- /src/homepage/assets/js/jquery.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/jquery.min.js -------------------------------------------------------------------------------- /src/homepage/assets/js/jquery.scrollex.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/jquery.scrollex.min.js -------------------------------------------------------------------------------- /src/homepage/assets/js/jquery.scrolly.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/jquery.scrolly.min.js -------------------------------------------------------------------------------- /src/homepage/assets/js/lightbox.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/lightbox.js -------------------------------------------------------------------------------- /src/homepage/assets/js/lity.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/lity.min.js -------------------------------------------------------------------------------- /src/homepage/assets/js/main.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/main.js -------------------------------------------------------------------------------- /src/homepage/assets/js/skel.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/skel.min.js -------------------------------------------------------------------------------- /src/homepage/assets/js/util.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/assets/js/util.js -------------------------------------------------------------------------------- /src/homepage/elements.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/elements.html -------------------------------------------------------------------------------- /src/homepage/feed.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/feed.xml -------------------------------------------------------------------------------- /src/homepage/howTo/custom-healthchecks.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/howTo/custom-healthchecks.html -------------------------------------------------------------------------------- /src/homepage/howTo/custom-james-assembly.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/howTo/custom-james-assembly.html -------------------------------------------------------------------------------- /src/homepage/howTo/custom-listeners.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/howTo/custom-listeners.html -------------------------------------------------------------------------------- /src/homepage/howTo/custom-smtp-commands.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/howTo/custom-smtp-commands.html -------------------------------------------------------------------------------- /src/homepage/howTo/custom-smtp-hooks.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/howTo/custom-smtp-hooks.html -------------------------------------------------------------------------------- /src/homepage/howTo/dkim.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/howTo/dkim.html -------------------------------------------------------------------------------- /src/homepage/howTo/imap-server.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/howTo/imap-server.html -------------------------------------------------------------------------------- /src/homepage/howTo/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/howTo/index.html -------------------------------------------------------------------------------- /src/homepage/howTo/mail-processing.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/howTo/mail-processing.html -------------------------------------------------------------------------------- /src/homepage/howTo/spf.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/howTo/spf.html -------------------------------------------------------------------------------- /src/homepage/images/hactoberfest.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/hactoberfest.png -------------------------------------------------------------------------------- /src/homepage/images/james-alt.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/james-alt.svg -------------------------------------------------------------------------------- /src/homepage/images/james-imap-server.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/james-imap-server.png -------------------------------------------------------------------------------- /src/homepage/images/james-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/james-logo.png -------------------------------------------------------------------------------- /src/homepage/images/james-smtp-relay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/james-smtp-relay.png -------------------------------------------------------------------------------- /src/homepage/images/james.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/james.svg -------------------------------------------------------------------------------- /src/homepage/images/linagora.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/linagora.png -------------------------------------------------------------------------------- /src/homepage/images/openpaas.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/openpaas.png -------------------------------------------------------------------------------- /src/homepage/images/tb1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/tb1.png -------------------------------------------------------------------------------- /src/homepage/images/tb2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/tb2.png -------------------------------------------------------------------------------- /src/homepage/images/tb3-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/tb3-5.png -------------------------------------------------------------------------------- /src/homepage/images/tb3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/tb3.png -------------------------------------------------------------------------------- /src/homepage/images/tb4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/images/tb4.png -------------------------------------------------------------------------------- /src/homepage/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/index.html -------------------------------------------------------------------------------- /src/homepage/posts.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/homepage/posts.html -------------------------------------------------------------------------------- /src/reporting-site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/reporting-site/site.xml -------------------------------------------------------------------------------- /src/site-docker/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site-docker/Dockerfile -------------------------------------------------------------------------------- /src/site-docker/compile.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site-docker/compile.sh -------------------------------------------------------------------------------- /src/site/apt/mailet/examples/standard.apt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/apt/mailet/examples/standard.apt -------------------------------------------------------------------------------- /src/site/apt/mailet/release-notes-old.apt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/apt/mailet/release-notes-old.apt -------------------------------------------------------------------------------- /src/site/apt/mailet/usage.apt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/apt/mailet/usage.apt -------------------------------------------------------------------------------- /src/site/apt/mpt/release-notes.apt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/apt/mpt/release-notes.apt -------------------------------------------------------------------------------- /src/site/markdown/mailet/quickstart.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/markdown/mailet/quickstart.md -------------------------------------------------------------------------------- /src/site/markdown/mailet/release-notes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/markdown/mailet/release-notes.md -------------------------------------------------------------------------------- /src/site/markdown/server/install/guice-jpa.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/markdown/server/install/guice-jpa.md -------------------------------------------------------------------------------- /src/site/markdown/server/manage-cli.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/markdown/server/manage-cli.md -------------------------------------------------------------------------------- /src/site/markdown/server/manage-webadmin.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/markdown/server/manage-webadmin.md -------------------------------------------------------------------------------- /src/site/resources/css/site.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/css/site.css -------------------------------------------------------------------------------- /src/site/resources/download.cgi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/download.cgi -------------------------------------------------------------------------------- /src/site/resources/downloads/formatting.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/downloads/formatting.xml -------------------------------------------------------------------------------- /src/site/resources/downloadunstable.cgi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/downloadunstable.cgi -------------------------------------------------------------------------------- /src/site/resources/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/favicon.ico -------------------------------------------------------------------------------- /src/site/resources/images/james-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/images/james-logo.png -------------------------------------------------------------------------------- /src/site/resources/images/linagora.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/images/linagora.png -------------------------------------------------------------------------------- /src/site/resources/js/james/functions.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/js/james/functions.js -------------------------------------------------------------------------------- /src/site/resources/js/james/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/js/james/index.js -------------------------------------------------------------------------------- /src/site/resources/mailbox/images/void.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/mailbox/images/void.gif -------------------------------------------------------------------------------- /src/site/resources/mailet/css/site.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/mailet/css/site.css -------------------------------------------------------------------------------- /src/site/resources/protocols/images/void.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/protocols/images/void.gif -------------------------------------------------------------------------------- /src/site/resources/robots.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/robots.txt -------------------------------------------------------------------------------- /src/site/resources/server/css/site.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/server/css/site.css -------------------------------------------------------------------------------- /src/site/resources/server/images/void.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/server/images/void.gif -------------------------------------------------------------------------------- /src/site/resources/server/js/dev.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/server/js/dev.js -------------------------------------------------------------------------------- /src/site/resources/server/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/resources/server/js/index.js -------------------------------------------------------------------------------- /src/site/site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/site.xml -------------------------------------------------------------------------------- /src/site/xdoc/contribute.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/contribute.xml -------------------------------------------------------------------------------- /src/site/xdoc/documentation.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/documentation.xml -------------------------------------------------------------------------------- /src/site/xdoc/download.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/download.xml -------------------------------------------------------------------------------- /src/site/xdoc/guidelines.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/guidelines.xml -------------------------------------------------------------------------------- /src/site/xdoc/mail.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mail.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailbox/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailbox/index.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailbox/mailbox-api.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailbox/mailbox-api.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailbox/mailbox-cassandra.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailbox/mailbox-cassandra.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailbox/mailbox-jpa.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailbox/mailbox-jpa.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailbox/mailbox-memory.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailbox/mailbox-memory.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailbox/mailbox-spring.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailbox/mailbox-spring.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailbox/mailbox-store.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailbox/mailbox-store.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailbox/mailbox-tool.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailbox/mailbox-tool.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailbox/source-code.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailbox/source-code.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/ai/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/ai/index.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/api/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/api/index.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/base/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/base/index.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/conf.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/conf.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/crypto/conf.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/crypto/conf.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/crypto/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/crypto/index.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/index.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/standard/conf.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/standard/conf.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/standard/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/standard/index.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/stylesheets/project.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/stylesheets/project.xml -------------------------------------------------------------------------------- /src/site/xdoc/mailet/stylesheets/site.xsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mailet/stylesheets/site.xsl -------------------------------------------------------------------------------- /src/site/xdoc/mpt/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/mpt/index.xml -------------------------------------------------------------------------------- /src/site/xdoc/protocols/changes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/protocols/changes.xml -------------------------------------------------------------------------------- /src/site/xdoc/protocols/imap4.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/protocols/imap4.xml -------------------------------------------------------------------------------- /src/site/xdoc/protocols/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/protocols/index.xml -------------------------------------------------------------------------------- /src/site/xdoc/protocols/pop3.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/protocols/pop3.xml -------------------------------------------------------------------------------- /src/site/xdoc/protocols/smtp.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/protocols/smtp.xml -------------------------------------------------------------------------------- /src/site/xdoc/protocols/source-code.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/protocols/source-code.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/advantages.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/advantages.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/archive/install.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/archive/install.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-activemq.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-activemq.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-antispam.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-antispam.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-blob-export.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-blob-export.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-blobstore.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-blobstore.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-cassandra.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-cassandra.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-dnsservice.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-dnsservice.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-domainlist.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-domainlist.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-fetchmail.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-fetchmail.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-guice.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-guice.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-healthcheck.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-healthcheck.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-imap4.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-imap4.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-jmap.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-jmap.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-listeners.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-listeners.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-mailbox.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-mailbox.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-opensearch.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-opensearch.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-pop3.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-pop3.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-quota.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-quota.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-rabbitmq.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-rabbitmq.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-redis.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-redis.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-sieve.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-sieve.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-smtp-lmtp.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-smtp-lmtp.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-ssl-tls.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-ssl-tls.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-system.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-system.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-users.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-users.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-vault.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-vault.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config-webadmin.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config-webadmin.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/config.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/config.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/dev-activemq.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/dev-activemq.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/dev-build.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/dev-build.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/dev-database-schema.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/dev-database-schema.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/dev-extend-mailet.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/dev-extend-mailet.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/dev-extend-matcher.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/dev-extend-matcher.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/dev-extend-smtp-hook.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/dev-extend-smtp-hook.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/dev-extend.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/dev-extend.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/dev-provided.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/dev-provided.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/dev.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/dev.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/feature-performance.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/feature-performance.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/feature-persistence.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/feature-persistence.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/feature-protocols.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/feature-protocols.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/feature-security.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/feature-security.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/feature-smtp-hooks.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/feature-smtp-hooks.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/features.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/features.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/index.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/index.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/install.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/install.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/manage-jmx.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/manage-jmx.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/manage.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/manage.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/metrics.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/metrics.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/monitor-folders.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/monitor-folders.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/monitor-jmx.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/monitor-jmx.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/monitor-logging.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/monitor-logging.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/monitor.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/monitor.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/objectives.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/objectives.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/packaging.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/packaging.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/quick-start.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/quick-start.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/release-notes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/release-notes.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/rfcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/rfcs.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/upgrade-2.3.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/upgrade-2.3.xml -------------------------------------------------------------------------------- /src/site/xdoc/server/upgrade.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/server/upgrade.xml -------------------------------------------------------------------------------- /src/site/xdoc/support.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/support.xml -------------------------------------------------------------------------------- /src/site/xdoc/thanks.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/src/site/xdoc/thanks.xml -------------------------------------------------------------------------------- /testing/base/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/testing/base/pom.xml -------------------------------------------------------------------------------- /testing/base/src/main/resources/testcontainers.properties: -------------------------------------------------------------------------------- 1 | checks.disable = false -------------------------------------------------------------------------------- /third-party/clamav/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/clamav/README.md -------------------------------------------------------------------------------- /third-party/clamav/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/clamav/docker-compose.yml -------------------------------------------------------------------------------- /third-party/clamav/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/clamav/pom.xml -------------------------------------------------------------------------------- /third-party/crowdsec/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/crowdsec/Dockerfile -------------------------------------------------------------------------------- /third-party/crowdsec/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/crowdsec/README.md -------------------------------------------------------------------------------- /third-party/crowdsec/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/crowdsec/docker-compose.yml -------------------------------------------------------------------------------- /third-party/crowdsec/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/crowdsec/pom.xml -------------------------------------------------------------------------------- /third-party/crowdsec/src/test/resources/log/james.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /third-party/elasticsearch/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/elasticsearch/README.md -------------------------------------------------------------------------------- /third-party/elasticsearch/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/elasticsearch/docker-compose.yml -------------------------------------------------------------------------------- /third-party/elasticsearch/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/elasticsearch/pom.xml -------------------------------------------------------------------------------- /third-party/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/pom.xml -------------------------------------------------------------------------------- /third-party/rspamd/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/rspamd/README.md -------------------------------------------------------------------------------- /third-party/rspamd/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/rspamd/docker-compose.yml -------------------------------------------------------------------------------- /third-party/rspamd/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/rspamd/pom.xml -------------------------------------------------------------------------------- /third-party/rspamd/sample-configuration/kvrocks/standalone/kvrocks.conf: -------------------------------------------------------------------------------- 1 | log-level info 2 | port 6379 -------------------------------------------------------------------------------- /third-party/rspamd/sample-configuration/redis.conf: -------------------------------------------------------------------------------- 1 | servers = "redis:6379"; 2 | -------------------------------------------------------------------------------- /third-party/rspamd/sample-configuration/worker-controller.inc: -------------------------------------------------------------------------------- 1 | password = "{= env.PASSWORD =}" -------------------------------------------------------------------------------- /third-party/rspamd/src/test/resources/rspamd-config/redis.conf: -------------------------------------------------------------------------------- 1 | servers = "{= env.REDIS_SERVERS =}"; 2 | -------------------------------------------------------------------------------- /third-party/rspamd/src/test/resources/rspamd-config/worker-controller.inc: -------------------------------------------------------------------------------- 1 | password = "{= env.PASSWORD =}" -------------------------------------------------------------------------------- /third-party/spamassassin/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/spamassassin/docker-compose.yml -------------------------------------------------------------------------------- /third-party/spamassassin/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/third-party/spamassassin/pom.xml -------------------------------------------------------------------------------- /upgrade-instructions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linagora/james-project/HEAD/upgrade-instructions.md --------------------------------------------------------------------------------