Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5e01bb5421 | ||
|
|
7e5b401d24 | ||
|
|
0c16b11dc6 | ||
|
|
78e3a93413 | ||
|
|
b77d04ae4f | ||
|
|
6cbc78a238 | ||
|
|
353f4c13d7 | ||
|
|
2d8aeade09 | ||
|
|
acd2f9f5b8 | ||
|
|
57d7bf62e5 | ||
|
|
ead1d5ac8d | ||
|
|
e2071a291c |
@@ -17,7 +17,8 @@
|
||||
*(MAXKEY-200616) LINUX操作系统支持
|
||||
*(MAXKEY-200617) 修改测试域名为sso.maxkey.top
|
||||
*(MAXKEY-200618) 修复更新应用时状态问题
|
||||
*(MAXKEY-200619) 依赖jar升级,消除非必要依赖
|
||||
*(MAXKEY-200619) REST API 机构和用户接口实现
|
||||
*(MAXKEY-200620) 依赖jar升级,消除非必要依赖
|
||||
spring 5.2.7.RELEASE
|
||||
springBoot 2.3.1.RELEASE
|
||||
springSecurity 5.3.2.RELEASE
|
||||
|
||||
@@ -9,7 +9,7 @@ dependencies {
|
||||
|
||||
|
||||
compile project(":maxkey-core")
|
||||
compile project(":maxkey-dao")
|
||||
compile project(":maxkey-persistence")
|
||||
compile project(":maxkey-client-sdk")
|
||||
compile project(":maxkey-protocols:maxkey-protocol-oauth-2.0")
|
||||
compile project(":maxkey-protocols:maxkey-protocol-saml-2.0")
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-core/maxkey-core">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-dao/maxkey-dao">
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-persistence/maxkey-persistence">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-client-sdk/maxkey-client-sdk">
|
||||
|
||||
@@ -9,7 +9,7 @@ dependencies {
|
||||
compile fileTree(dir: '../maxkey-lib/*/', include: '*.jar')
|
||||
|
||||
compile project(":maxkey-core")
|
||||
compile project(":maxkey-dao")
|
||||
compile project(":maxkey-persistence")
|
||||
compile project(":maxkey-client-sdk")
|
||||
compile project(":maxkey-connectors:maxkey-connector-base")
|
||||
compile project(":maxkey-identitys:maxkey-identity-kafka")
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-core/maxkey-core">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-dao/maxkey-dao">
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-persistence/maxkey-persistence">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-client-sdk/maxkey-client-sdk">
|
||||
|
||||
@@ -9,7 +9,7 @@ dependencies {
|
||||
compile fileTree(dir: '../maxkey-lib/*/', include: '*.jar')
|
||||
|
||||
compile project(":maxkey-core")
|
||||
compile project(":maxkey-dao")
|
||||
compile project(":maxkey-persistence")
|
||||
compile project(":maxkey-client-sdk")
|
||||
compile project(":maxkey-identitys:maxkey-identity-kafka")
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-core/maxkey-core">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-dao/maxkey-dao">
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-persistence/maxkey-persistence">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-client-sdk/maxkey-client-sdk">
|
||||
|
||||
@@ -9,7 +9,7 @@ dependencies {
|
||||
compile fileTree(dir: '../maxkey-lib/*/', include: '*.jar')
|
||||
|
||||
compile project(":maxkey-core")
|
||||
compile project(":maxkey-dao")
|
||||
compile project(":maxkey-persistence")
|
||||
compile project(":maxkey-client-sdk")
|
||||
compile project(":maxkey-connectors:maxkey-connector-base")
|
||||
compile project(":maxkey-identitys:maxkey-identity-kafka")
|
||||
|
||||
@@ -2,7 +2,7 @@ package org.maxkey.authn;
|
||||
|
||||
import org.maxkey.authn.realm.AbstractAuthenticationRealm;
|
||||
import org.maxkey.authn.support.rememberme.AbstractRemeberMeService;
|
||||
import org.maxkey.config.ApplicationConfig;
|
||||
import org.maxkey.configuration.ApplicationConfig;
|
||||
import org.maxkey.constants.ConstantsLoginType;
|
||||
import org.maxkey.crypto.password.PasswordReciprocal;
|
||||
import org.maxkey.crypto.password.opt.AbstractOptAuthn;
|
||||
|
||||
@@ -13,8 +13,8 @@ import java.util.Date;
|
||||
import java.util.UUID;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import org.joda.time.DateTime;
|
||||
import org.maxkey.config.ApplicationConfig;
|
||||
import org.maxkey.config.oidc.OIDCProviderMetadataDetails;
|
||||
import org.maxkey.configuration.ApplicationConfig;
|
||||
import org.maxkey.configuration.oidc.OIDCProviderMetadataDetails;
|
||||
import org.maxkey.constants.ConstantsLoginType;
|
||||
import org.maxkey.crypto.jwt.signer.service.impl.DefaultJwtSigningAndValidationService;
|
||||
import org.maxkey.web.WebContext;
|
||||
|
||||
@@ -6,7 +6,7 @@ import javax.servlet.http.Cookie;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import org.joda.time.DateTime;
|
||||
import org.maxkey.config.ApplicationConfig;
|
||||
import org.maxkey.configuration.ApplicationConfig;
|
||||
import org.maxkey.constants.ConstantsLoginType;
|
||||
import org.maxkey.constants.ConstantsTimeInterval;
|
||||
import org.maxkey.crypto.Base64Utils;
|
||||
|
||||
@@ -6,7 +6,7 @@ import java.net.URI;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
import java.security.spec.InvalidKeySpecException;
|
||||
import org.maxkey.authn.support.jwt.JwtLoginService;
|
||||
import org.maxkey.config.oidc.OIDCProviderMetadataDetails;
|
||||
import org.maxkey.configuration.oidc.OIDCProviderMetadataDetails;
|
||||
import org.maxkey.constants.ConstantsProperties;
|
||||
import org.maxkey.crypto.jose.keystore.JWKSetKeyStore;
|
||||
import org.maxkey.crypto.jwt.encryption.service.impl.DefaultJwtEncryptionAndDecryptionService;
|
||||
|
||||
@@ -3,7 +3,6 @@ package org.maxkey.autoconfigure;
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.maxkey.constants.ConstantsProperties;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -134,6 +133,8 @@ public class MvcAutoConfiguration implements InitializingBean {
|
||||
marshallingHttpMessageConverter.setUnmarshaller(jaxb2Marshaller);
|
||||
ArrayList<MediaType> mediaTypesList = new ArrayList<MediaType>();
|
||||
mediaTypesList.add(MediaType.APPLICATION_XML);
|
||||
mediaTypesList.add(MediaType.TEXT_XML);
|
||||
mediaTypesList.add(MediaType.TEXT_PLAIN);
|
||||
marshallingHttpMessageConverter.setSupportedMediaTypes(mediaTypesList);
|
||||
return marshallingHttpMessageConverter;
|
||||
}
|
||||
@@ -148,6 +149,7 @@ public class MvcAutoConfiguration implements InitializingBean {
|
||||
new MappingJackson2HttpMessageConverter();
|
||||
ArrayList<MediaType> mediaTypesList = new ArrayList<MediaType>();
|
||||
mediaTypesList.add(MediaType.APPLICATION_JSON);
|
||||
mediaTypesList.add(MediaType.TEXT_PLAIN);
|
||||
mappingJacksonHttpMessageConverter.setSupportedMediaTypes(mediaTypesList);
|
||||
return mappingJacksonHttpMessageConverter;
|
||||
}
|
||||
@@ -173,14 +175,14 @@ public class MvcAutoConfiguration implements InitializingBean {
|
||||
MappingJackson2HttpMessageConverter mappingJacksonHttpMessageConverter,
|
||||
MarshallingHttpMessageConverter marshallingHttpMessageConverter,
|
||||
StringHttpMessageConverter stringHttpMessageConverter) {
|
||||
|
||||
RequestMappingHandlerAdapter requestMappingHandlerAdapter =
|
||||
new RequestMappingHandlerAdapter();
|
||||
List<HttpMessageConverter<?>> httpMessageConverterList =
|
||||
new ArrayList<HttpMessageConverter<?>>();
|
||||
httpMessageConverterList.add(mappingJacksonHttpMessageConverter);
|
||||
httpMessageConverterList.add(marshallingHttpMessageConverter);
|
||||
httpMessageConverterList.add(stringHttpMessageConverter);
|
||||
|
||||
RequestMappingHandlerAdapter requestMappingHandlerAdapter =
|
||||
new RequestMappingHandlerAdapter();
|
||||
requestMappingHandlerAdapter.setMessageConverters(httpMessageConverterList);
|
||||
return requestMappingHandlerAdapter;
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package org.maxkey.config;
|
||||
package org.maxkey.configuration;
|
||||
|
||||
import org.maxkey.constants.ConstantsProperties;
|
||||
import org.slf4j.Logger;
|
||||
@@ -55,6 +55,9 @@ public class ApplicationConfig {
|
||||
@Value("${config.identity.kafkasupport:false}")
|
||||
private boolean kafkaSupport;
|
||||
|
||||
@Value("${config.maxkey.uri}")
|
||||
private String maxKeyUri;
|
||||
|
||||
public int getPort() {
|
||||
return port;
|
||||
}
|
||||
@@ -209,6 +212,14 @@ public class ApplicationConfig {
|
||||
this.kafkaSupport = kafkaSupport;
|
||||
}
|
||||
|
||||
public String getMaxKeyUri() {
|
||||
return maxKeyUri;
|
||||
}
|
||||
|
||||
public void setMaxKeyUri(String maxKeyUri) {
|
||||
this.maxKeyUri = maxKeyUri;
|
||||
}
|
||||
|
||||
/*
|
||||
* public boolean isWhiteList() { return whiteList; }
|
||||
*
|
||||
@@ -1,4 +1,4 @@
|
||||
package org.maxkey.config;
|
||||
package org.maxkey.configuration;
|
||||
|
||||
import java.io.UnsupportedEncodingException;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package org.maxkey.config;
|
||||
package org.maxkey.configuration;
|
||||
|
||||
import org.maxkey.constants.ConstantsProperties;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
@@ -1,4 +1,4 @@
|
||||
package org.maxkey.config;
|
||||
package org.maxkey.configuration;
|
||||
|
||||
import org.maxkey.constants.ConstantsProperties;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
@@ -1,4 +1,4 @@
|
||||
package org.maxkey.config.oidc;
|
||||
package org.maxkey.configuration.oidc;
|
||||
|
||||
import java.net.URI;
|
||||
import java.util.Set;
|
||||
@@ -1,4 +1,4 @@
|
||||
package org.maxkey.config.oidc;
|
||||
package org.maxkey.configuration.oidc;
|
||||
|
||||
import java.net.URI;
|
||||
import java.util.Set;
|
||||
@@ -4,7 +4,7 @@ import java.text.MessageFormat;
|
||||
import org.apache.commons.mail.DefaultAuthenticator;
|
||||
import org.apache.commons.mail.Email;
|
||||
import org.apache.commons.mail.SimpleEmail;
|
||||
import org.maxkey.config.EmailConfig;
|
||||
import org.maxkey.configuration.EmailConfig;
|
||||
import org.maxkey.crypto.password.opt.AbstractOptAuthn;
|
||||
import org.maxkey.domain.UserInfo;
|
||||
import org.slf4j.Logger;
|
||||
|
||||
@@ -7,59 +7,55 @@ import org.maxkey.crypto.Base64Utils;
|
||||
*
|
||||
*/
|
||||
public class AuthorizationHeaderUtils {
|
||||
|
||||
public static String AUTHORIZATION_HEADERNAME="Authorization";
|
||||
|
||||
public static String BASIC="Basic ";
|
||||
|
||||
public static String BEARER="Bearer ";
|
||||
|
||||
public static String createBasic( String username, String password ){
|
||||
String authUserPass = username + ":" + password;
|
||||
String encodedAuthUserPass = Base64Utils.encode(authUserPass );
|
||||
return BASIC + encodedAuthUserPass;
|
||||
}
|
||||
public static final String AUTHORIZATION_HEADERNAME = "Authorization";
|
||||
|
||||
public static String [] resolveBasic( String basic ){
|
||||
if(isBasic(basic)){
|
||||
String[] userPass =basic.split(" ");
|
||||
String decodeUserPass = Base64Utils.decode(userPass[1] );
|
||||
return decodeUserPass.split(":");
|
||||
}else{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean isBasic( String basic ){
|
||||
if(basic.startsWith(BASIC )){
|
||||
return true;
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static String resolveBearer( String bearer ){
|
||||
if(isBearer(bearer)){
|
||||
return bearer.split(" ")[1];
|
||||
}else{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static String createBearer(String bearer){
|
||||
return BEARER +bearer;
|
||||
}
|
||||
|
||||
public static final String BASIC = "Basic ";
|
||||
|
||||
|
||||
public static boolean isBearer( String bearer ){
|
||||
if(bearer.startsWith(BEARER )){
|
||||
return true;
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
public static final String BEARER = "Bearer ";
|
||||
|
||||
public static String createBasic(String username, String password) {
|
||||
String authUserPass = username + ":" + password;
|
||||
String encodedAuthUserPass = Base64Utils.encode(authUserPass);
|
||||
return BASIC + encodedAuthUserPass;
|
||||
}
|
||||
|
||||
public static String[] resolveBasic(String basic) {
|
||||
if (isBasic(basic)) {
|
||||
String[] userPass = basic.split(" ");
|
||||
String decodeUserPass = Base64Utils.decode(userPass[1]);
|
||||
return decodeUserPass.split(":");
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean isBasic(String basic) {
|
||||
if (basic.startsWith(BASIC)) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static String resolveBearer(String bearer) {
|
||||
if (isBearer(bearer)) {
|
||||
return bearer.split(" ")[1];
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static String createBearer(String bearer) {
|
||||
return BEARER + bearer;
|
||||
}
|
||||
|
||||
public static boolean isBearer(String bearer) {
|
||||
if (bearer.startsWith(BEARER)) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ import javax.servlet.http.HttpSession;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.maxkey.authn.BasicAuthentication;
|
||||
import org.maxkey.authn.realm.AbstractAuthenticationRealm;
|
||||
import org.maxkey.config.ApplicationConfig;
|
||||
import org.maxkey.configuration.ApplicationConfig;
|
||||
import org.maxkey.domain.UserInfo;
|
||||
import org.maxkey.util.DateUtils;
|
||||
import org.maxkey.util.StringGenerator;
|
||||
|
||||
@@ -9,7 +9,7 @@ import javax.imageio.ImageIO;
|
||||
import javax.servlet.ServletOutputStream;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import org.maxkey.config.ApplicationConfig;
|
||||
import org.maxkey.configuration.ApplicationConfig;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
1
maxkey-dao/.gitignore
vendored
1
maxkey-dao/.gitignore
vendored
@@ -1 +0,0 @@
|
||||
/build/
|
||||
@@ -1,11 +0,0 @@
|
||||
build.commands=org.eclipse.jdt.core.javabuilder
|
||||
connection.arguments=
|
||||
connection.gradle.distribution=GRADLE_DISTRIBUTION(WRAPPER)
|
||||
connection.java.home=null
|
||||
connection.jvm.arguments=
|
||||
connection.project.dir=..
|
||||
containers=org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7/
|
||||
derived.resources=.gradle,build
|
||||
eclipse.preferences.version=1
|
||||
natures=org.eclipse.jdt.core.javanature
|
||||
project.path=\:maxkey-dao
|
||||
@@ -1,17 +0,0 @@
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.builder.cleanOutputFolder=clean
|
||||
org.eclipse.jdt.core.builder.duplicateResourceTask=warning
|
||||
org.eclipse.jdt.core.builder.invalidClasspath=abort
|
||||
org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
|
||||
org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
|
||||
org.eclipse.jdt.core.circularClasspath=warning
|
||||
org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
|
||||
org.eclipse.jdt.core.classpath.mainOnlyProjectHasTestOnlyDependency=error
|
||||
org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
|
||||
org.eclipse.jdt.core.classpath.outputOverlappingAnotherSource=error
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
|
||||
org.eclipse.jdt.core.compiler.compliance=1.8
|
||||
org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
|
||||
org.eclipse.jdt.core.compiler.source=1.8
|
||||
org.eclipse.jdt.core.incompatibleJDKLevel=ignore
|
||||
org.eclipse.jdt.core.incompleteClasspath=error
|
||||
@@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
|
||||
<wb-module deploy-name="maxkey-dao">
|
||||
<wb-resource deploy-path="/" source-path="/src/main/java"/>
|
||||
<wb-resource deploy-path="/" source-path="/src/main/resources"/>
|
||||
<wb-resource deploy-path="/" source-path="/src/test/java"/>
|
||||
<wb-resource deploy-path="/" source-path="/src/test/resources"/>
|
||||
</wb-module>
|
||||
</project-modules>
|
||||
@@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<faceted-project>
|
||||
<fixed facet="java"/>
|
||||
<fixed facet="jst.utility"/>
|
||||
<installed facet="jst.utility" version="1.0"/>
|
||||
<installed facet="java" version="1.8"/>
|
||||
</faceted-project>
|
||||
@@ -1,20 +0,0 @@
|
||||
DELEGATES_PREFERENCE=delegateValidatorList
|
||||
USER_BUILD_PREFERENCE=enabledBuildValidatorList
|
||||
USER_MANUAL_PREFERENCE=enabledManualValidatorList
|
||||
USER_PREFERENCE=overrideGlobalPreferencestruedisableAllValidationfalseversion1.2.800.v201904082137
|
||||
eclipse.preferences.version=1
|
||||
override=true
|
||||
suspend=false
|
||||
vals/org.eclipse.jst.jsf.facelet.ui.FaceletHTMLValidator/global=FF01
|
||||
vals/org.eclipse.jst.jsf.ui.JSFAppConfigValidator/global=FF01
|
||||
vals/org.eclipse.jst.jsp.core.JSPBatchValidator/global=FF01
|
||||
vals/org.eclipse.jst.jsp.core.JSPContentValidator/global=FF01
|
||||
vals/org.eclipse.jst.jsp.core.TLDValidator/global=FF01
|
||||
vals/org.eclipse.wst.dtd.core.dtdDTDValidator/global=FF01
|
||||
vals/org.eclipse.wst.html.core.HTMLValidator/global=FF01
|
||||
vals/org.eclipse.wst.json.core.json/global=FF03
|
||||
vals/org.eclipse.wst.wsdl.validation.wsdl/global=FF02158org.eclipse.wst.wsdl.validation.internal.eclipse.Validator
|
||||
vals/org.eclipse.wst.xml.core.xml/global=FF03
|
||||
vals/org.eclipse.wst.xsd.core.xsd/global=FF02162org.eclipse.wst.xsd.core.internal.validation.eclipse.Validator
|
||||
vals/org.eclipse.wst.xsl.core.xsl/global=FF02
|
||||
vf.version=3
|
||||
@@ -2,7 +2,7 @@ package org.maxkey.identity.kafka;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
import org.maxkey.config.ApplicationConfig;
|
||||
import org.maxkey.configuration.ApplicationConfig;
|
||||
import org.maxkey.util.DateUtils;
|
||||
import org.maxkey.util.JsonUtils;
|
||||
import org.slf4j.Logger;
|
||||
@@ -40,9 +40,35 @@ public class KafkaProvisioningService {
|
||||
message.setContent(JsonUtils.gson2Json(content));
|
||||
String msg = JsonUtils.gson2Json(message);
|
||||
_logger.info("send message = {}", msg);
|
||||
//通过线程发送Kafka消息
|
||||
KafkaProvisioningThread thread =
|
||||
new KafkaProvisioningThread(kafkaTemplate,topic,msg);
|
||||
|
||||
kafkaTemplate.send(topic, msg);
|
||||
thread.start();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
class KafkaProvisioningThread extends Thread{
|
||||
|
||||
KafkaTemplate<String, String> kafkaTemplate;
|
||||
|
||||
String topic ;
|
||||
|
||||
String msg;
|
||||
|
||||
public KafkaProvisioningThread(KafkaTemplate<String, String> kafkaTemplate, String topic, String msg) {
|
||||
this.kafkaTemplate = kafkaTemplate;
|
||||
this.topic = topic;
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
kafkaTemplate.send(topic, msg);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
36
maxkey-identitys/maxkey-identity-rest/.classpath
Normal file
36
maxkey-identitys/maxkey-identity-rest/.classpath
Normal file
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" output="bin/main" path="src/main/java">
|
||||
<attributes>
|
||||
<attribute name="gradle_scope" value="main"/>
|
||||
<attribute name="gradle_used_by_scope" value="main,test"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" output="bin/main" path="src/main/resources">
|
||||
<attributes>
|
||||
<attribute name="gradle_scope" value="main"/>
|
||||
<attribute name="gradle_used_by_scope" value="main,test"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" output="bin/test" path="src/test/java">
|
||||
<attributes>
|
||||
<attribute name="gradle_scope" value="test"/>
|
||||
<attribute name="gradle_used_by_scope" value="test"/>
|
||||
<attribute name="test" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" output="bin/test" path="src/test/resources">
|
||||
<attributes>
|
||||
<attribute name="gradle_scope" value="test"/>
|
||||
<attribute name="gradle_used_by_scope" value="test"/>
|
||||
<attribute name="test" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/"/>
|
||||
<classpathentry kind="con" path="org.eclipse.buildship.core.gradleclasspathcontainer">
|
||||
<attributes>
|
||||
<attribute name="org.eclipse.jst.component.nondependency" value=""/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="output" path="bin/default"/>
|
||||
</classpath>
|
||||
41
maxkey-identitys/maxkey-identity-rest/.project
Normal file
41
maxkey-identitys/maxkey-identity-rest/.project
Normal file
@@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>maxkey-identity-rest</name>
|
||||
<comment>Project maxkey-identity-rest created by Buildship.</comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.wst.common.project.facet.core.builder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.wst.validation.validationbuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.buildship.core.gradleprojectbuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.springframework.ide.eclipse.boot.validation.springbootbuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
|
||||
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
|
||||
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
|
||||
<nature>org.eclipse.buildship.core.gradleprojectnature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
@@ -0,0 +1,2 @@
|
||||
connection.project.dir=../..
|
||||
eclipse.preferences.version=1
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project-modules id="moduleCoreId" project-version="1.5.0">
|
||||
<wb-module deploy-name="maxkey-identity-rest">
|
||||
<wb-resource deploy-path="/" source-path="src/main/resources"/>
|
||||
<wb-resource deploy-path="/" source-path="src/main/java"/>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-core/maxkey-core">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-persistence/maxkey-persistence">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-client-sdk/maxkey-client-sdk">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
</wb-module>
|
||||
</project-modules>
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<faceted-project>
|
||||
<fixed facet="jst.java"/>
|
||||
<installed facet="jst.utility" version="1.0"/>
|
||||
<installed facet="jst.java" version="1.8"/>
|
||||
</faceted-project>
|
||||
15
maxkey-identitys/maxkey-identity-rest/build.gradle
Normal file
15
maxkey-identitys/maxkey-identity-rest/build.gradle
Normal file
@@ -0,0 +1,15 @@
|
||||
description = "maxkey-identity-rest"
|
||||
|
||||
apply plugin: 'java'
|
||||
apply plugin: 'eclipse-wtp'
|
||||
|
||||
|
||||
dependencies {
|
||||
//local jars
|
||||
compile fileTree(dir: '../maxkey-lib/*/', include: '*.jar')
|
||||
|
||||
compile project(":maxkey-core")
|
||||
compile project(":maxkey-persistence")
|
||||
compile project(":maxkey-client-sdk")
|
||||
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
package org.maxkey.identity.rest;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.maxkey.domain.Organizations;
|
||||
import org.maxkey.persistence.service.OrganizationsService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
import org.springframework.web.util.UriComponentsBuilder;
|
||||
|
||||
@Controller
|
||||
@RequestMapping(value={"/identity/api/org"})
|
||||
public class RestApiOrgController {
|
||||
|
||||
@Autowired
|
||||
OrganizationsService organizationsService;
|
||||
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
|
||||
public Organizations getUser(@PathVariable String id,
|
||||
@RequestParam(required = false) String attributes) {
|
||||
Organizations org = organizationsService.get(id);
|
||||
return org;
|
||||
}
|
||||
|
||||
@ResponseBody
|
||||
@RequestMapping(method = RequestMethod.POST)
|
||||
public Organizations create(@RequestBody Organizations org,
|
||||
@RequestParam(required = false) String attributes,
|
||||
UriComponentsBuilder builder) throws IOException {
|
||||
Organizations loadOrg = organizationsService.get(org.getId());
|
||||
if(loadOrg == null) {
|
||||
organizationsService.insert(org);
|
||||
}else {
|
||||
organizationsService.update(org);
|
||||
}
|
||||
return org;
|
||||
}
|
||||
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "/{id}", method = RequestMethod.PUT)
|
||||
public Organizations replace(@PathVariable String id,
|
||||
@RequestBody Organizations org,
|
||||
@RequestParam(required = false) String attributes)
|
||||
throws IOException {
|
||||
Organizations loadOrg = organizationsService.get(id);
|
||||
if(loadOrg == null) {
|
||||
organizationsService.insert(org);
|
||||
}else {
|
||||
organizationsService.update(org);
|
||||
}
|
||||
|
||||
return org;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
|
||||
@ResponseStatus(HttpStatus.OK)
|
||||
public void delete(@PathVariable final String id) {
|
||||
organizationsService.remove(id);
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
package org.maxkey.identity.rest;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.maxkey.domain.UserInfo;
|
||||
import org.maxkey.persistence.service.UserInfoService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
import org.springframework.web.util.UriComponentsBuilder;
|
||||
|
||||
@Controller
|
||||
@RequestMapping(value={"/identity/api/userinfo"})
|
||||
public class RestApiUserInfoController {
|
||||
|
||||
@Autowired
|
||||
@Qualifier("userInfoService")
|
||||
private UserInfoService userInfoService;
|
||||
|
||||
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public UserInfo getUser(
|
||||
@PathVariable String id,
|
||||
@RequestParam(required = false) String attributes) {
|
||||
|
||||
UserInfo loadUserInfo = userInfoService.get(id);
|
||||
loadUserInfo.setDecipherable(null);
|
||||
return loadUserInfo;
|
||||
}
|
||||
|
||||
@RequestMapping(method = RequestMethod.POST)
|
||||
@ResponseBody
|
||||
public UserInfo create(@RequestBody UserInfo userInfo,
|
||||
@RequestParam(required = false) String attributes,
|
||||
UriComponentsBuilder builder) throws IOException {
|
||||
UserInfo loadUserInfo = userInfoService.loadByUsername(userInfo.getUsername());
|
||||
if(loadUserInfo != null) {
|
||||
userInfoService.update(userInfo);
|
||||
}else {
|
||||
userInfoService.insert(userInfo);
|
||||
}
|
||||
return userInfo;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/{id}", method = RequestMethod.PUT)
|
||||
@ResponseBody
|
||||
public UserInfo replace(@PathVariable String id,
|
||||
@RequestBody UserInfo userInfo,
|
||||
@RequestParam(required = false) String attributes)
|
||||
throws IOException {
|
||||
UserInfo loadUserInfo = userInfoService.loadByUsername(userInfo.getUsername());
|
||||
if(loadUserInfo != null) {
|
||||
userInfoService.update(userInfo);
|
||||
}else {
|
||||
userInfoService.insert(userInfo);
|
||||
}
|
||||
return userInfo;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
|
||||
@ResponseStatus(HttpStatus.OK)
|
||||
public void delete(@PathVariable final String id) {
|
||||
userInfoService.logisticDeleteAllByCid(id);
|
||||
|
||||
}
|
||||
}
|
||||
@@ -6,7 +6,7 @@
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-core/maxkey-core">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-dao/maxkey-dao">
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-persistence/maxkey-persistence">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<dependent-module deploy-path="../" handle="module:/resource/maxkey-client-sdk/maxkey-client-sdk">
|
||||
|
||||
@@ -9,7 +9,7 @@ dependencies {
|
||||
compile fileTree(dir: '../maxkey-lib/*/', include: '*.jar')
|
||||
|
||||
compile project(":maxkey-core")
|
||||
compile project(":maxkey-dao")
|
||||
compile project(":maxkey-persistence")
|
||||
compile project(":maxkey-client-sdk")
|
||||
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
package org.maxkey.identity.scim.controller;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Map;
|
||||
|
||||
import org.maxkey.identity.scim.resources.Organization;
|
||||
import org.maxkey.identity.scim.resources.ScimSearchResult;
|
||||
import org.maxkey.identity.scim.resources.User;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.http.converter.json.MappingJacksonValue;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.ResponseStatus;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.util.UriComponentsBuilder;
|
||||
|
||||
/**
|
||||
* This Controller is used to manage Organization
|
||||
* <p>
|
||||
* http://tools.ietf.org/html/draft-ietf-scim-core-schema-00#section-6
|
||||
* <p>
|
||||
* it is based on the SCIM 2.0 API Specification:
|
||||
* <p>
|
||||
* http://tools.ietf.org/html/draft-ietf-scim-api-00#section-3
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping(value = "/identity/scim/v2/Organization")
|
||||
public class OrganizationController {
|
||||
|
||||
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
|
||||
public MappingJacksonValue getOrganization(@PathVariable String id,
|
||||
@RequestParam(required = false) String attributes) {
|
||||
Organization user = null;
|
||||
return null;
|
||||
}
|
||||
|
||||
@RequestMapping(method = RequestMethod.POST)
|
||||
public ResponseEntity<MappingJacksonValue> create(@RequestBody Organization user,
|
||||
@RequestParam(required = false) String attributes,
|
||||
UriComponentsBuilder builder) throws IOException {
|
||||
Organization createdUser = null;
|
||||
return null;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/{id}", method = RequestMethod.PUT)
|
||||
public ResponseEntity<MappingJacksonValue> replace(@PathVariable String id,
|
||||
@RequestBody Organization user,
|
||||
@RequestParam(required = false) String attributes)
|
||||
throws IOException {
|
||||
Organization createdUser = null;
|
||||
return null;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
|
||||
@ResponseStatus(HttpStatus.OK)
|
||||
public void delete(@PathVariable final String id) {
|
||||
//tokenService.revokeAllTokensOfUser(id);
|
||||
|
||||
}
|
||||
|
||||
@RequestMapping(method = RequestMethod.GET)
|
||||
public MappingJacksonValue searchWithGet(@RequestParam Map<String, String> requestParameters) {
|
||||
return searchWithPost(requestParameters);
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/.search", method = RequestMethod.POST)
|
||||
public MappingJacksonValue searchWithPost(@RequestParam Map<String, String> requestParameters) {
|
||||
ScimSearchResult<User> scimSearchResult = null;
|
||||
/*
|
||||
requestParameters.get("filter"),
|
||||
requestParameters.get("sortBy"),
|
||||
requestParameters.getOrDefault("sortOrder", "ascending"), // scim default
|
||||
Integer.parseInt(requestParameters.getOrDefault("count", "" + ServiceProviderConfigController.MAX_RESULTS)),
|
||||
Integer.parseInt(requestParameters.getOrDefault("startIndex", "1")); // scim default
|
||||
*/
|
||||
String attributes = (requestParameters.containsKey("attributes") ? requestParameters.get("attributes") : "");
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,170 @@
|
||||
package org.maxkey.identity.scim.resources;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
|
||||
public class Organization extends Resource{
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = -8087404240254880740L;
|
||||
public static String SCHEMA = "urn:ietf:params:scim:schemas:core:2.0:Organization";
|
||||
|
||||
private String code;
|
||||
|
||||
private String name;
|
||||
|
||||
private String fullName;
|
||||
|
||||
private String parentId;
|
||||
|
||||
private String parentName;
|
||||
|
||||
private String type;
|
||||
|
||||
private String codePath;
|
||||
|
||||
private String namePath;
|
||||
|
||||
private String level;
|
||||
|
||||
private String division;
|
||||
|
||||
private List<OrganizationAddress> addresses;
|
||||
|
||||
private List<OrganizationEmail> emails;
|
||||
|
||||
private List<OrganizationPhoneNumber> phoneNumbers;
|
||||
|
||||
private String sortOrder;
|
||||
|
||||
private String description;
|
||||
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
public void setCode(String code) {
|
||||
this.code = code;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getFullName() {
|
||||
return fullName;
|
||||
}
|
||||
|
||||
public void setFullName(String fullName) {
|
||||
this.fullName = fullName;
|
||||
}
|
||||
|
||||
public String getParentId() {
|
||||
return parentId;
|
||||
}
|
||||
|
||||
public void setParentId(String parentId) {
|
||||
this.parentId = parentId;
|
||||
}
|
||||
|
||||
public String getParentName() {
|
||||
return parentName;
|
||||
}
|
||||
|
||||
public void setParentName(String parentName) {
|
||||
this.parentName = parentName;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public String getCodePath() {
|
||||
return codePath;
|
||||
}
|
||||
|
||||
public void setCodePath(String codePath) {
|
||||
this.codePath = codePath;
|
||||
}
|
||||
|
||||
public String getNamePath() {
|
||||
return namePath;
|
||||
}
|
||||
|
||||
public void setNamePath(String namePath) {
|
||||
this.namePath = namePath;
|
||||
}
|
||||
|
||||
public String getLevel() {
|
||||
return level;
|
||||
}
|
||||
|
||||
public void setLevel(String level) {
|
||||
this.level = level;
|
||||
}
|
||||
|
||||
public String getDivision() {
|
||||
return division;
|
||||
}
|
||||
|
||||
public void setDivision(String division) {
|
||||
this.division = division;
|
||||
}
|
||||
|
||||
public String getSortOrder() {
|
||||
return sortOrder;
|
||||
}
|
||||
|
||||
public void setSortOrder(String sortOrder) {
|
||||
this.sortOrder = sortOrder;
|
||||
}
|
||||
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
|
||||
public void setDescription(String description) {
|
||||
this.description = description;
|
||||
}
|
||||
|
||||
public List<OrganizationAddress> getAddresses() {
|
||||
return addresses;
|
||||
}
|
||||
|
||||
public void setAddresses(List<OrganizationAddress> addresses) {
|
||||
this.addresses = addresses;
|
||||
}
|
||||
|
||||
public List<OrganizationEmail> getEmails() {
|
||||
return emails;
|
||||
}
|
||||
|
||||
public void setEmails(List<OrganizationEmail> emails) {
|
||||
this.emails = emails;
|
||||
}
|
||||
|
||||
public List<OrganizationPhoneNumber> getPhoneNumbers() {
|
||||
return phoneNumbers;
|
||||
}
|
||||
|
||||
public void setPhoneNumbers(List<OrganizationPhoneNumber> phoneNumbers) {
|
||||
this.phoneNumbers = phoneNumbers;
|
||||
}
|
||||
|
||||
public Organization() {
|
||||
schemas =new HashSet<String>();
|
||||
schemas.add(SCHEMA);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package org.maxkey.identity.scim.resources;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
public class OrganizationAddress extends MultiValuedAttribute implements Serializable {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = 7401597570364338298L;
|
||||
private String formatted;
|
||||
private String streetAddress;
|
||||
private String locality;
|
||||
private String region;
|
||||
private String postalCode;
|
||||
private String country;
|
||||
|
||||
public static class UserAddressType {
|
||||
public static final String WORK = "work";
|
||||
public static final String HOME = "home";
|
||||
public static final String OTHER = "other";
|
||||
|
||||
}
|
||||
|
||||
public String getFormatted() {
|
||||
return formatted;
|
||||
}
|
||||
public void setFormatted(String formatted) {
|
||||
this.formatted = formatted;
|
||||
}
|
||||
public String getStreetAddress() {
|
||||
return streetAddress;
|
||||
}
|
||||
public void setStreetAddress(String streetAddress) {
|
||||
this.streetAddress = streetAddress;
|
||||
}
|
||||
public String getLocality() {
|
||||
return locality;
|
||||
}
|
||||
public void setLocality(String locality) {
|
||||
this.locality = locality;
|
||||
}
|
||||
public String getRegion() {
|
||||
return region;
|
||||
}
|
||||
public void setRegion(String region) {
|
||||
this.region = region;
|
||||
}
|
||||
public String getPostalCode() {
|
||||
return postalCode;
|
||||
}
|
||||
public void setPostalCode(String postalCode) {
|
||||
this.postalCode = postalCode;
|
||||
}
|
||||
public String getCountry() {
|
||||
return country;
|
||||
}
|
||||
public void setCountry(String country) {
|
||||
this.country = country;
|
||||
}
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
public OrganizationAddress() {
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
package org.maxkey.identity.scim.resources;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
public class OrganizationEmail extends MultiValuedAttribute implements Serializable {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = -41327146592552688L;
|
||||
|
||||
public static class UserEmailType {
|
||||
public static final String WORK = "work";
|
||||
public static final String HOME = "home";
|
||||
public static final String OTHER = "other";
|
||||
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public boolean isPrimary() {
|
||||
return primary;
|
||||
}
|
||||
|
||||
public void setPrimary(boolean primary) {
|
||||
this.primary = primary;
|
||||
}
|
||||
|
||||
public OrganizationEmail() {
|
||||
}
|
||||
|
||||
public OrganizationEmail(String value, String type, boolean primary) {
|
||||
super();
|
||||
this.value = value;
|
||||
this.type = type;
|
||||
this.primary = primary;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package org.maxkey.identity.scim.resources;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
public class OrganizationPhoneNumber extends MultiValuedAttribute implements Serializable {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = 3201987266085144715L;
|
||||
|
||||
public static class UserPhoneNumberType {
|
||||
public static final String WORK = "work";
|
||||
public static final String HOME = "home";
|
||||
public static final String MOBILE = "mobile";
|
||||
public static final String FAX = "fax";
|
||||
public static final String PAGER = "pager";
|
||||
public static final String OTHER = "other";
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>maxkey-dao</name>
|
||||
<name>maxkey-persistence</name>
|
||||
<comment>maxkey-dao</comment>
|
||||
<projects>
|
||||
</projects>
|
||||
@@ -1,4 +1,4 @@
|
||||
description = "maxkey-dao"
|
||||
description = "maxkey-persistence"
|
||||
|
||||
dependencies {
|
||||
//local jars
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.Accounts;
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.apps.AppsCasDetails;
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.apps.AppsDesktopDetails;
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.apps.AppsFormBasedDetails;
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.apps.AppsSAML20Details;
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.apps.AppsTokenBasedDetails;
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.Groups;
|
||||
@@ -1,4 +1,4 @@
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.HistoryLoginApps;
|
||||
@@ -1,4 +1,4 @@
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.HistoryLogs;
|
||||
@@ -1,4 +1,4 @@
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.Organizations;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.PasswordPolicy;
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
import org.maxkey.domain.Resources;
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||
@@ -2,4 +2,4 @@
|
||||
*
|
||||
* Sql DAO Mapper XML Configuration.
|
||||
*/
|
||||
package org.maxkey.dao.persistence;
|
||||
package org.maxkey.persistence.mapper;
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.AccountsMapper;
|
||||
import org.maxkey.domain.Accounts;
|
||||
import org.maxkey.persistence.mapper.AccountsMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.AppsCasDetailsMapper;
|
||||
import org.maxkey.domain.apps.AppsCasDetails;
|
||||
import org.maxkey.persistence.mapper.AppsCasDetailsMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.AppsDesktopDetailsMapper;
|
||||
import org.maxkey.domain.apps.AppsDesktopDetails;
|
||||
import org.maxkey.persistence.mapper.AppsDesktopDetailsMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.AppsFormBasedDetailsMapper;
|
||||
import org.maxkey.domain.apps.AppsFormBasedDetails;
|
||||
import org.maxkey.persistence.mapper.AppsFormBasedDetailsMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.AppsSaml20DetailsMapper;
|
||||
import org.maxkey.domain.apps.AppsSAML20Details;
|
||||
import org.maxkey.persistence.mapper.AppsSaml20DetailsMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,11 +1,11 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.AppsMapper;
|
||||
import org.maxkey.domain.apps.Apps;
|
||||
import org.maxkey.domain.apps.UserApps;
|
||||
import org.maxkey.persistence.mapper.AppsMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.AppsTokenBasedDetailsMapper;
|
||||
import org.maxkey.domain.apps.AppsTokenBasedDetails;
|
||||
import org.maxkey.persistence.mapper.AppsTokenBasedDetailsMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.GroupMemberMapper;
|
||||
import org.maxkey.domain.GroupMember;
|
||||
import org.maxkey.persistence.mapper.GroupMemberMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.GroupPrivilegesMapper;
|
||||
import org.maxkey.domain.GroupPrivileges;
|
||||
import org.maxkey.persistence.mapper.GroupPrivilegesMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.GroupsMapper;
|
||||
import org.maxkey.domain.Groups;
|
||||
import org.maxkey.persistence.mapper.GroupsMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.HistoryLoginAppsMapper;
|
||||
import org.maxkey.domain.HistoryLoginApps;
|
||||
import org.maxkey.persistence.mapper.HistoryLoginAppsMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.HistoryLoginMapper;
|
||||
import org.maxkey.domain.HistoryLogin;
|
||||
import org.maxkey.persistence.mapper.HistoryLoginMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.HistoryLogsMapper;
|
||||
import org.maxkey.domain.HistoryLogs;
|
||||
import org.maxkey.persistence.mapper.HistoryLogsMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,11 +1,11 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.OrganizationsMapper;
|
||||
import org.maxkey.domain.Organizations;
|
||||
import org.maxkey.identity.kafka.KafkaIdentityAction;
|
||||
import org.maxkey.identity.kafka.KafkaIdentityTopic;
|
||||
import org.maxkey.identity.kafka.KafkaProvisioningService;
|
||||
import org.maxkey.persistence.mapper.OrganizationsMapper;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.PasswordPolicyMapper;
|
||||
import org.maxkey.domain.PasswordPolicy;
|
||||
import org.maxkey.persistence.mapper.PasswordPolicyMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,11 +1,11 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.RegistrationMapper;
|
||||
import org.maxkey.domain.Registration;
|
||||
import org.maxkey.domain.UserInfo;
|
||||
import org.maxkey.persistence.mapper.RegistrationMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,11 +1,11 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseDomain;
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.ReportMapper;
|
||||
import org.maxkey.persistence.mapper.ReportMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.ResourcesMapper;
|
||||
import org.maxkey.domain.Resources;
|
||||
import org.maxkey.persistence.mapper.ResourcesMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,8 +1,8 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.RoleMemberMapper;
|
||||
import org.maxkey.domain.RoleMember;
|
||||
import org.maxkey.persistence.mapper.RoleMemberMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,11 +1,11 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.dao.persistence.RolesMapper;
|
||||
import org.maxkey.domain.RolePermissions;
|
||||
import org.maxkey.domain.Roles;
|
||||
import org.maxkey.persistence.mapper.RolesMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@@ -1,16 +1,16 @@
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
|
||||
|
||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||
import org.maxkey.constants.ConstantsStatus;
|
||||
import org.maxkey.crypto.ReciprocalUtils;
|
||||
import org.maxkey.crypto.password.PasswordReciprocal;
|
||||
import org.maxkey.dao.persistence.UserInfoMapper;
|
||||
import org.maxkey.domain.ChangePassword;
|
||||
import org.maxkey.domain.UserInfo;
|
||||
import org.maxkey.identity.kafka.KafkaIdentityAction;
|
||||
import org.maxkey.identity.kafka.KafkaIdentityTopic;
|
||||
import org.maxkey.identity.kafka.KafkaProvisioningService;
|
||||
import org.maxkey.persistence.mapper.UserInfoMapper;
|
||||
import org.maxkey.util.DateUtils;
|
||||
import org.maxkey.util.StringUtils;
|
||||
import org.maxkey.web.WebContext;
|
||||
@@ -2,4 +2,4 @@
|
||||
*
|
||||
* Mysql DAO Mapper XML Configuration.
|
||||
*/
|
||||
package org.maxkey.dao.service;
|
||||
package org.maxkey.persistence.service;
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.maxkey.dao.persistence.AccountsMapper">
|
||||
<mapper namespace="org.maxkey.persistence.mapper.AccountsMapper">
|
||||
|
||||
<sql id="where_statement">
|
||||
<if test="id != null and id != ''">
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.maxkey.dao.persistence.AppsCasDetailsMapper">
|
||||
<mapper namespace="org.maxkey.persistence.mapper.AppsCasDetailsMapper">
|
||||
<select id="getAppDetails" parameterType="string" resultType="AppsCasDetails">
|
||||
SELECT
|
||||
*
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.maxkey.dao.persistence.AppsDesktopDetailsMapper">
|
||||
<mapper namespace="org.maxkey.persistence.mapper.AppsDesktopDetailsMapper">
|
||||
|
||||
<select id="getAppDetails" parameterType="string" resultType="AppsDesktopDetails">
|
||||
SELECT
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.maxkey.dao.persistence.AppsFormBasedDetailsMapper">
|
||||
<mapper namespace="org.maxkey.persistence.mapper.AppsFormBasedDetailsMapper">
|
||||
|
||||
<select id="getAppDetails" parameterType="string" resultType="AppsFormBasedDetails">
|
||||
SELECT
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.maxkey.dao.persistence.AppsMapper">
|
||||
<mapper namespace="org.maxkey.persistence.mapper.AppsMapper">
|
||||
|
||||
<sql id="where_statement">
|
||||
<if test="id != null and id != ''">
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user