docs: @Override
      public void start(StartContext startContext) throws StartException {
          try {
              LdapKeyStore.Builder builder = LdapKeyStore.builder()
                      .setDirContextSupplier(dirContextSupplierInjector.getValue())
                      .setSearchPath(searchPath);
  
              if (filterAlias != null) builder.setFilterAlias(filterAlias);
              if (filterCertificate != null) builder.setFilterCertificate(filterCertificate);
              if (filterIterate != null) builder.setFilterIterate(filterIterate);
              if (createPath != null) builder.setCreatePath(createPath);
              if (createRdn != null) builder.setCreateRdn(createRdn);
              if (createAttributes != null) builder.setCreateAttributes(createAttributes);
              if (aliasAttribute != null) builder.setAliasAttribute(aliasAttribute);
              if (certificateAttribute != null) builder.setCertificateAttribute(certificateAttribute);
              if (certificateType != null) builder.setCertificateType(certificateType);
              if (certificateChainAttribute != null) builder.setCertificateChainAttribute(certificateChainAttribute);
              if (certificateChainEncoding != null) builder.setCertificateChainEncoding(certificateChainEncoding);
              if (keyAttribute != null) builder.setKeyAttribute(keyAttribute);
              if (keyType != null) builder.setKeyType(keyType);
  
              KeyStore keyStore = builder.build();
              keyStore.load(null); // initialize
              this.modifiableKeyStore = keyStore;
              this.unmodifiableKeyStore = UnmodifiableKeyStore.unmodifiableKeyStore(keyStore);
          } catch (GeneralSecurityException | IOException e) {
              throw ROOT_LOGGER.unableToStartService(e);
          }
      }