@SneakyThrows(IOException.class)
    public static JDBCRepositorySQL load(final String type) {
        JDBCRepositorySQL result = null;
        try (Stream<String> resourceNameStream = ClasspathResourceDirectoryReader.read(JDBCRepositorySQLLoader.class.getClassLoader(), ROOT_DIRECTORY)) {
            Iterable<String> resourceNameIterable = resourceNameStream::iterator;
            for (String each : resourceNameIterable) {
                if (!each.endsWith(FILE_EXTENSION)) {
                    continue;
                }
                JDBCRepositorySQL provider = XML_MAPPER.readValue(JDBCRepositorySQLLoader.class.getClassLoader().getResourceAsStream(each), JDBCRepositorySQL.class);
                if (provider.isDefault()) {
                    result = provider;
                }
                if (Objects.equals(provider.getType(), type)) {
                    result = provider;
                    break;
                }
            }
        }
        return result;
    }
@Test
    void assertLoad() {
        assertThat(JDBCRepositorySQLLoader.load("MySQL").getType(), is("MySQL"));
        assertThat(JDBCRepositorySQLLoader.load("EmbeddedDerby").getType(), is("EmbeddedDerby"));
        assertThat(JDBCRepositorySQLLoader.load("DerbyNetworkServer").getType(), is("DerbyNetworkServer"));
        assertThat(JDBCRepositorySQLLoader.load("HSQLDB").getType(), is("HSQLDB"));
    }