http://git.mfd.msk/mfd/clearing/-/issues/10 IMessageResolver + IMDG
This commit is contained in:
parent
29b47b8b96
commit
819a1afd22
13 changed files with 75 additions and 40 deletions
|
|
@ -9,13 +9,13 @@ import ru.spcex.clearing.util.security.UserRoleVerification;
|
||||||
import ru.spcex.platform.enumeration.UserRole;
|
import ru.spcex.platform.enumeration.UserRole;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
import ru.spcex.platform.utils.enumeration.SimpleMessageResolver;
|
import ru.spcex.clearing.util.services.IMDGMessageResolver;
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
public class BeanConfiguration {
|
public class BeanConfiguration {
|
||||||
@Bean
|
@Bean
|
||||||
public IMessageResolver messageResolver() {
|
public IMessageResolver messageResolver(ImdgProvider imdgProvider) {
|
||||||
return new SimpleMessageResolver();
|
return new IMDGMessageResolver(imdgProvider);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,10 @@
|
||||||
<groupId>ru.spcex.platform</groupId>
|
<groupId>ru.spcex.platform</groupId>
|
||||||
<artifactId>platform-imdg-api-hazelcast-impl</artifactId>
|
<artifactId>platform-imdg-api-hazelcast-impl</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>ru.spcex.clearing</groupId>
|
||||||
|
<artifactId>clearing-validation</artifactId>
|
||||||
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>ru.spcex.clearing</groupId>
|
<groupId>ru.spcex.clearing</groupId>
|
||||||
<artifactId>classes</artifactId>
|
<artifactId>classes</artifactId>
|
||||||
|
|
|
||||||
|
|
@ -1,30 +1,16 @@
|
||||||
package ru.spcex.clearing.balance.config;
|
package ru.spcex.clearing.balance.config;
|
||||||
|
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import org.springframework.context.support.ResourceBundleMessageSource;
|
import ru.spcex.clearing.util.services.IMDGMessageResolver;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
import ru.spcex.platform.utils.enumeration.SpringPropertiesMessageResolver;
|
|
||||||
|
|
||||||
import java.util.Locale;
|
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
public class MessagesConfig {
|
public class MessagesConfig {
|
||||||
@Bean("validation-error-messages")
|
|
||||||
public ResourceBundleMessageSource messages() {
|
|
||||||
ResourceBundleMessageSource source = new ResourceBundleMessageSource();
|
|
||||||
source.setBasenames("messages/error");
|
|
||||||
source.setUseCodeAsDefaultMessage(true);
|
|
||||||
source.setDefaultEncoding("utf8");
|
|
||||||
source.setDefaultLocale(Locale.ROOT);
|
|
||||||
return source;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
public IMessageResolver errorResolver(@Qualifier("validation-error-messages") ResourceBundleMessageSource messageBundle) {
|
public IMessageResolver errorResolver(ImdgProvider imdgProvider) {
|
||||||
SpringPropertiesMessageResolver resolver = new SpringPropertiesMessageResolver(messageBundle);
|
return new IMDGMessageResolver(imdgProvider);
|
||||||
resolver.setLocale("ru");
|
|
||||||
return resolver;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
5211=Company not found
|
|
||||||
5213=Currency not found
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
5211=Компания не найдена
|
|
||||||
5213=Валюта не найдена
|
|
||||||
|
|
@ -25,6 +25,10 @@
|
||||||
<groupId>ru.spcex.platform</groupId>
|
<groupId>ru.spcex.platform</groupId>
|
||||||
<artifactId>platform-imdg-api-hazelcast-impl</artifactId>
|
<artifactId>platform-imdg-api-hazelcast-impl</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>ru.spcex.clearing</groupId>
|
||||||
|
<artifactId>clearing-validation</artifactId>
|
||||||
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>ru.spcex.clearing</groupId>
|
<groupId>ru.spcex.clearing</groupId>
|
||||||
<artifactId>classes</artifactId>
|
<artifactId>classes</artifactId>
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,13 @@ package ru.spcex.clearing.config;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
import ru.spcex.platform.utils.enumeration.SimpleMessageResolver;
|
import ru.spcex.clearing.util.services.IMDGMessageResolver;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
public class MessageResolverConfig {
|
public class MessageResolverConfig {
|
||||||
@Bean
|
@Bean
|
||||||
public IMessageResolver messageResolver() {
|
public IMessageResolver messageResolver(ImdgProvider imdgProvider) {
|
||||||
return new SimpleMessageResolver();
|
return new IMDGMessageResolver(imdgProvider);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,37 @@
|
||||||
|
package ru.spcex.clearing.util.services;
|
||||||
|
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import ru.clearing.platform.dictionary.ErrorCodeDictionary;
|
||||||
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
import ru.spcex.platform.utils.enumeration.EnumMessage;
|
||||||
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Использует ErrorCodeDictionary для расшифровки текста кодов ошибок.
|
||||||
|
*/
|
||||||
|
public class IMDGMessageResolver implements IMessageResolver {
|
||||||
|
protected final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
protected final Imdg<ErrorCodeDictionary> errorCodeDictionaryIMDG;
|
||||||
|
|
||||||
|
public IMDGMessageResolver(ImdgProvider imdgProvider) {
|
||||||
|
this.errorCodeDictionaryIMDG = imdgProvider.getImdg(IMDGDistributedNames.Map_ErrorCodeDictionary, ErrorCodeDictionary.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String resolve(EnumMessage errorMessage) {
|
||||||
|
if (errorMessage == null) return "null";
|
||||||
|
|
||||||
|
ErrorCodeDictionary errorDictionary = errorCodeDictionaryIMDG.getSingleObjectByID(errorMessage.getSubject().getId());
|
||||||
|
if (errorDictionary == null) {
|
||||||
|
log.warn("ERROR_CODE_DICTIONARY not found fo id={}", errorMessage.getSubject().getId());
|
||||||
|
return String.format("(%d) args %s", errorMessage.getSubject().getId(), Arrays.toString(errorMessage.getArgs()));
|
||||||
|
}
|
||||||
|
String textTemplate = errorDictionary.getName();
|
||||||
|
return String.format(textTemplate, errorMessage.getArgs());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -10,13 +10,13 @@ import ru.spcex.clearing.util.security.UserRoleVerification;
|
||||||
import ru.spcex.platform.enumeration.UserRole;
|
import ru.spcex.platform.enumeration.UserRole;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
import ru.spcex.platform.utils.enumeration.SimpleMessageResolver;
|
import ru.spcex.clearing.util.services.IMDGMessageResolver;
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
public class BeanConfiguration {
|
public class BeanConfiguration {
|
||||||
@Bean
|
@Bean
|
||||||
public IMessageResolver messageResolver() {
|
public IMessageResolver messageResolver(ImdgProvider imdgProvider) {
|
||||||
return new SimpleMessageResolver();
|
return new IMDGMessageResolver(imdgProvider);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,13 @@ package ru.spcex.clearing.scheduler.config;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
import ru.spcex.platform.utils.enumeration.SimpleMessageResolver;
|
import ru.spcex.clearing.util.services.IMDGMessageResolver;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
public class ErrorResolverConfig {
|
public class ErrorResolverConfig {
|
||||||
@Bean
|
@Bean
|
||||||
public IMessageResolver messageResolver() {
|
public IMessageResolver messageResolver(ImdgProvider imdgProvider) {
|
||||||
return new SimpleMessageResolver();
|
return new IMDGMessageResolver(imdgProvider);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,13 @@ package ru.spcex.clearing.securities.config;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
import ru.spcex.platform.utils.enumeration.SimpleMessageResolver;
|
import ru.spcex.clearing.util.services.IMDGMessageResolver;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
public class ErrorResolverConfig {
|
public class ErrorResolverConfig {
|
||||||
@Bean
|
@Bean
|
||||||
public IMessageResolver messageResolver() {
|
public IMessageResolver messageResolver(ImdgProvider imdgProvider) {
|
||||||
return new SimpleMessageResolver();
|
return new IMDGMessageResolver(imdgProvider);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -62,6 +62,10 @@
|
||||||
<groupId>ru.spcex.platform</groupId>
|
<groupId>ru.spcex.platform</groupId>
|
||||||
<artifactId>platform-imdg-api-hazelcast-impl</artifactId>
|
<artifactId>platform-imdg-api-hazelcast-impl</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>ru.spcex.clearing</groupId>
|
||||||
|
<artifactId>clearing-validation</artifactId>
|
||||||
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>ru.spcex.platform</groupId>
|
<groupId>ru.spcex.platform</groupId>
|
||||||
<artifactId>platform-enum</artifactId>
|
<artifactId>platform-enum</artifactId>
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,13 @@ package ru.spcex.clearing.trade.importer.config;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
import ru.spcex.platform.utils.enumeration.SimpleMessageResolver;
|
import ru.spcex.clearing.util.services.IMDGMessageResolver;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
public class ErrorResolverConfig {
|
public class ErrorResolverConfig {
|
||||||
@Bean
|
@Bean
|
||||||
public IMessageResolver messageResolver() {
|
public IMessageResolver messageResolver(ImdgProvider imdgProvider) {
|
||||||
return new SimpleMessageResolver();
|
return new IMDGMessageResolver(imdgProvider);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue