Start structural port from Spring Boot to Undertow
This commit is contained in:
@@ -39,7 +39,7 @@ import java.util.Optional;
|
||||
|
||||
public abstract class SqlProfileProvider implements ProfileProvider {
|
||||
|
||||
private Logger log = LoggerFactory.getLogger(SqlProfileProvider.class);
|
||||
private transient final Logger log = LoggerFactory.getLogger(SqlProfileProvider.class);
|
||||
|
||||
private SqlConfig.Profile cfg;
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ import java.util.Optional;
|
||||
|
||||
public abstract class SqlThreePidProvider implements IThreePidProvider {
|
||||
|
||||
private Logger log = LoggerFactory.getLogger(SqlThreePidProvider.class);
|
||||
private transient final Logger log = LoggerFactory.getLogger(SqlThreePidProvider.class);
|
||||
|
||||
private SqlConfig cfg;
|
||||
private MatrixConfig mxCfg;
|
||||
|
||||
@@ -27,20 +27,19 @@ import io.kamax.mxisd.config.sql.generic.GenericSqlProviderConfig;
|
||||
import io.kamax.mxisd.invitation.InvitationManager;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class GenericSqlAuthProvider implements AuthenticatorProvider {
|
||||
|
||||
private Logger log = LoggerFactory.getLogger(GenericSqlAuthProvider.class);
|
||||
private transient final Logger log = LoggerFactory.getLogger(GenericSqlAuthProvider.class);
|
||||
|
||||
@Autowired
|
||||
private GenericSqlProviderConfig cfg;
|
||||
|
||||
@Autowired
|
||||
private InvitationManager invMgr;
|
||||
|
||||
public GenericSqlAuthProvider(GenericSqlProviderConfig cfg, InvitationManager invMgr) {
|
||||
this.cfg = cfg;
|
||||
this.invMgr = invMgr;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEnabled() {
|
||||
return cfg.getAuth().isEnabled();
|
||||
|
||||
@@ -25,9 +25,9 @@ import io.kamax.mxisd.backend.sql.SqlConnectionPool;
|
||||
import io.kamax.mxisd.config.MatrixConfig;
|
||||
import io.kamax.mxisd.config.sql.SqlConfig;
|
||||
import io.kamax.mxisd.config.sql.generic.GenericSqlProviderConfig;
|
||||
import io.kamax.mxisd.controller.directory.v1.io.UserDirectorySearchResult;
|
||||
import io.kamax.mxisd.directory.IDirectoryProvider;
|
||||
import io.kamax.mxisd.exception.InternalServerError;
|
||||
import io.kamax.mxisd.http.io.UserDirectorySearchResult;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -38,11 +38,11 @@ import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.Optional;
|
||||
|
||||
import static io.kamax.mxisd.controller.directory.v1.io.UserDirectorySearchResult.Result;
|
||||
import static io.kamax.mxisd.http.io.UserDirectorySearchResult.Result;
|
||||
|
||||
public abstract class GenericSqlDirectoryProvider implements IDirectoryProvider {
|
||||
public class GenericSqlDirectoryProvider implements IDirectoryProvider {
|
||||
|
||||
private Logger log = LoggerFactory.getLogger(GenericSqlDirectoryProvider.class);
|
||||
private transient final Logger log = LoggerFactory.getLogger(GenericSqlDirectoryProvider.class);
|
||||
|
||||
protected SqlConfig cfg;
|
||||
protected MatrixConfig mxCfg;
|
||||
|
||||
@@ -22,9 +22,7 @@ package io.kamax.mxisd.backend.sql.generic;
|
||||
|
||||
import io.kamax.mxisd.backend.sql.SqlProfileProvider;
|
||||
import io.kamax.mxisd.config.sql.generic.GenericSqlProviderConfig;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class GenericSqlProfileProvider extends SqlProfileProvider {
|
||||
|
||||
public GenericSqlProfileProvider(GenericSqlProviderConfig cfg) {
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* mxisd - Matrix Identity Server Daemon
|
||||
* Copyright (C) 2018 Kamax Sarl
|
||||
*
|
||||
* https://www.kamax.io/
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package io.kamax.mxisd.backend.sql.generic;
|
||||
|
||||
import io.kamax.mxisd.Mxisd;
|
||||
import io.kamax.mxisd.auth.AuthProviders;
|
||||
import io.kamax.mxisd.backend.IdentityStoreSupplier;
|
||||
import io.kamax.mxisd.directory.DirectoryProviders;
|
||||
import io.kamax.mxisd.lookup.ThreePidProviders;
|
||||
import io.kamax.mxisd.profile.ProfileProviders;
|
||||
|
||||
public class GenericSqlStoreSupplier implements IdentityStoreSupplier {
|
||||
|
||||
@Override
|
||||
public void accept(Mxisd mxisd) {
|
||||
if (mxisd.getConfig().getSql().getAuth().isEnabled()) {
|
||||
AuthProviders.register(() -> new GenericSqlAuthProvider(mxisd.getConfig().getSql(), mxisd.getInvitationManager()));
|
||||
}
|
||||
|
||||
if (mxisd.getConfig().getSql().getDirectory().isEnabled()) {
|
||||
DirectoryProviders.register(() -> new GenericSqlDirectoryProvider(mxisd.getConfig().getSql(), mxisd.getConfig().getMatrix()));
|
||||
}
|
||||
|
||||
if (mxisd.getConfig().getSql().getIdentity().isEnabled()) {
|
||||
ThreePidProviders.register(() -> new GenericSqlThreePidProvider(mxisd.getConfig().getSql(), mxisd.getConfig().getMatrix()));
|
||||
}
|
||||
|
||||
if (mxisd.getConfig().getSql().getProfile().isEnabled()) {
|
||||
ProfileProviders.register(() -> new GenericSqlProfileProvider(mxisd.getConfig().getSql()));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -23,13 +23,9 @@ package io.kamax.mxisd.backend.sql.generic;
|
||||
import io.kamax.mxisd.backend.sql.SqlThreePidProvider;
|
||||
import io.kamax.mxisd.config.MatrixConfig;
|
||||
import io.kamax.mxisd.config.sql.generic.GenericSqlProviderConfig;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class GenericSqlThreePidProvider extends SqlThreePidProvider {
|
||||
|
||||
@Autowired
|
||||
public GenericSqlThreePidProvider(GenericSqlProviderConfig cfg, MatrixConfig mxCfg) {
|
||||
super(cfg, mxCfg);
|
||||
}
|
||||
|
||||
@@ -22,19 +22,15 @@ package io.kamax.mxisd.backend.sql.synapse;
|
||||
|
||||
import io.kamax.mxisd.backend.sql.SqlConnectionPool;
|
||||
import io.kamax.mxisd.config.sql.synapse.SynapseSqlProviderConfig;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.util.Optional;
|
||||
|
||||
@Component
|
||||
public class Synapse {
|
||||
|
||||
private SqlConnectionPool pool;
|
||||
|
||||
@Autowired
|
||||
public Synapse(SynapseSqlProviderConfig sqlCfg) {
|
||||
this.pool = new SqlConnectionPool(sqlCfg);
|
||||
}
|
||||
|
||||
@@ -24,32 +24,15 @@ import io.kamax.mxisd.backend.sql.generic.GenericSqlDirectoryProvider;
|
||||
import io.kamax.mxisd.config.MatrixConfig;
|
||||
import io.kamax.mxisd.config.sql.generic.GenericSqlProviderConfig;
|
||||
import io.kamax.mxisd.config.sql.synapse.SynapseSqlProviderConfig;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.SQLException;
|
||||
import java.util.Objects;
|
||||
|
||||
@Component
|
||||
public class SynapseSqlDirectoryProvider extends GenericSqlDirectoryProvider {
|
||||
|
||||
@Autowired
|
||||
public SynapseSqlDirectoryProvider(SynapseSqlProviderConfig cfg, MatrixConfig mxCfg) {
|
||||
super(cfg, mxCfg);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setParameters(PreparedStatement stmt, String searchTerm) throws SQLException {
|
||||
stmt.setString(1, "%" + searchTerm + "%");
|
||||
}
|
||||
|
||||
@PostConstruct
|
||||
public void build() {
|
||||
if (!isEnabled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
GenericSqlProviderConfig.Type queries = cfg.getDirectory().getQuery();
|
||||
if (Objects.isNull(queries.getName().getValue())) {
|
||||
@@ -60,4 +43,9 @@ public class SynapseSqlDirectoryProvider extends GenericSqlDirectoryProvider {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setParameters(PreparedStatement stmt, String searchTerm) throws SQLException {
|
||||
stmt.setString(1, "%" + searchTerm + "%");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -22,13 +22,9 @@ package io.kamax.mxisd.backend.sql.synapse;
|
||||
|
||||
import io.kamax.mxisd.backend.sql.SqlProfileProvider;
|
||||
import io.kamax.mxisd.config.sql.synapse.SynapseSqlProviderConfig;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class SynapseSqlProfileProvider extends SqlProfileProvider {
|
||||
|
||||
@Autowired
|
||||
public SynapseSqlProfileProvider(SynapseSqlProviderConfig cfg) {
|
||||
super(cfg);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* mxisd - Matrix Identity Server Daemon
|
||||
* Copyright (C) 2018 Kamax Sarl
|
||||
*
|
||||
* https://www.kamax.io/
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package io.kamax.mxisd.backend.sql.synapse;
|
||||
|
||||
import io.kamax.mxisd.Mxisd;
|
||||
import io.kamax.mxisd.backend.IdentityStoreSupplier;
|
||||
import io.kamax.mxisd.config.MxisdConfig;
|
||||
import io.kamax.mxisd.directory.DirectoryProviders;
|
||||
import io.kamax.mxisd.lookup.ThreePidProviders;
|
||||
import io.kamax.mxisd.profile.ProfileProviders;
|
||||
|
||||
public class SynapseSqlStoreSupplier implements IdentityStoreSupplier {
|
||||
|
||||
@Override
|
||||
public void accept(Mxisd mxisd) {
|
||||
accept(mxisd.getConfig());
|
||||
}
|
||||
|
||||
public void accept(MxisdConfig cfg) {
|
||||
if (cfg.getSynapseSql().getDirectory().isEnabled()) {
|
||||
DirectoryProviders.register(() -> new SynapseSqlDirectoryProvider(cfg.getSynapseSql(), cfg.getMatrix()));
|
||||
}
|
||||
|
||||
if (cfg.getSynapseSql().getIdentity().isEnabled()) {
|
||||
ThreePidProviders.register(() -> new SynapseSqlThreePidProvider(cfg.getSynapseSql(), cfg.getMatrix()));
|
||||
}
|
||||
|
||||
if (cfg.getSynapseSql().getProfile().isEnabled()) {
|
||||
ProfileProviders.register(() -> new SynapseSqlProfileProvider(cfg.getSynapseSql()));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -23,13 +23,9 @@ package io.kamax.mxisd.backend.sql.synapse;
|
||||
import io.kamax.mxisd.backend.sql.SqlThreePidProvider;
|
||||
import io.kamax.mxisd.config.MatrixConfig;
|
||||
import io.kamax.mxisd.config.sql.synapse.SynapseSqlProviderConfig;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class SynapseSqlThreePidProvider extends SqlThreePidProvider {
|
||||
|
||||
@Autowired
|
||||
public SynapseSqlThreePidProvider(SynapseSqlProviderConfig cfg, MatrixConfig mxCfg) {
|
||||
super(cfg, mxCfg);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user