This is an automated email from the ASF dual-hosted git repository.
aleks pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/fineract.git
The following commit(s) were added to refs/heads/develop by this push:
new 073b1b04b Cleanup around Hooks and Hook templates
073b1b04b is described below
commit 073b1b04b6f2a44e03a8b645b7ae02f0626cbf47
Author: Arnold Galovics <[email protected]>
AuthorDate: Tue May 17 19:51:02 2022 +0200
Cleanup around Hooks and Hook templates
---
.../infrastructure/hooks/api/HookApiConstants.java | 8 ++--
.../infrastructure/hooks/api/HookApiResource.java | 16 +------
.../fineract/infrastructure/hooks/data/Entity.java | 16 +------
.../fineract/infrastructure/hooks/data/Event.java | 19 ++------
.../hooks/data/EventResultSetExtractor.java | 21 ++------
.../fineract/infrastructure/hooks/data/Field.java | 31 +++---------
.../infrastructure/hooks/data/Grouping.java | 16 +------
.../infrastructure/hooks/data/HookData.java | 48 +++----------------
.../hooks/data/HookTemplateData.java | 13 ++---
.../fineract/infrastructure/hooks/domain/Hook.java | 4 +-
.../hooks/event/HookEventSource.java | 20 ++------
.../hooks/handler/CreateHookCommandHandler.java | 9 +---
.../hooks/handler/DeleteHookCommandHandler.java | 10 +---
.../hooks/handler/UpdateHookCommandHandler.java | 10 +---
.../hooks/listener/FineractHookListener.java | 19 ++------
.../processor/ElasticSearchHookProcessor.java | 6 +--
.../processor/MessageGatewayHookProcessor.java | 22 ++-------
.../hooks/processor/TwilioHookProcessor.java | 13 +----
.../hooks/processor/WebHookProcessor.java | 8 +---
.../HookCommandFromApiJsonDeserializer.java | 8 +---
.../hooks/service/HookReadPlatformServiceImpl.java | 56 ++++++++--------------
.../HookWritePlatformServiceJpaRepositoryImpl.java | 17 +------
.../service/NotificationDomainServiceImpl.java | 20 ++------
23 files changed, 89 insertions(+), 321 deletions(-)
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/api/HookApiConstants.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/api/HookApiConstants.java
index 381e36997..b1dcfe7db 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/api/HookApiConstants.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/api/HookApiConstants.java
@@ -24,9 +24,7 @@ import java.util.Set;
public final class HookApiConstants {
- private HookApiConstants() {
-
- }
+ private HookApiConstants() {}
public static final String HOOK_RESOURCE_NAME = "HOOK";
@@ -72,10 +70,10 @@ public final class HookApiConstants {
public static final String SMSProviderIdParamName = "SMS Provider Id";
- static final Set<String> RESPONSE_DATA_PARAMETERS = new
HashSet<>(Arrays.asList(nameParamName, displayNameParamName,
+ public static final Set<String> RESPONSE_DATA_PARAMETERS = new
HashSet<>(Arrays.asList(nameParamName, displayNameParamName,
templateIdParamName, isActiveParamName, configParamName,
eventsParamName, templateNameParamName));
- static final Set<String> UPDATE_REQUEST_DATA_PARAMETERS = new
HashSet<>(Arrays.asList(nameParamName, displayNameParamName,
+ public static final Set<String> UPDATE_REQUEST_DATA_PARAMETERS = new
HashSet<>(Arrays.asList(nameParamName, displayNameParamName,
templateIdParamName, isActiveParamName, configParamName,
eventsParamName, templateNameParamName));
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/api/HookApiResource.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/api/HookApiResource.java
index 236d852cb..c064d729b 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/api/HookApiResource.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/api/HookApiResource.java
@@ -42,6 +42,7 @@ import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.UriInfo;
+import lombok.RequiredArgsConstructor;
import org.apache.fineract.commands.domain.CommandWrapper;
import org.apache.fineract.commands.service.CommandWrapperBuilder;
import
org.apache.fineract.commands.service.PortfolioCommandSourceWritePlatformService;
@@ -52,16 +53,14 @@ import
org.apache.fineract.infrastructure.core.serialization.DefaultToApiJsonSer
import org.apache.fineract.infrastructure.hooks.data.HookData;
import
org.apache.fineract.infrastructure.hooks.service.HookReadPlatformService;
import
org.apache.fineract.infrastructure.security.service.PlatformSecurityContext;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
@Path("/hooks")
@Consumes({ MediaType.APPLICATION_JSON })
@Produces({ MediaType.APPLICATION_JSON })
@Component
-@Scope("singleton")
@Tag(name = "Hooks", description = "Hooks are a mechanism to trigger custom
code on the occurence of events. ")
+@RequiredArgsConstructor
public class HookApiResource {
private final PlatformSecurityContext context;
@@ -70,17 +69,6 @@ public class HookApiResource {
private final ApiRequestParameterHelper apiRequestParameterHelper;
private final PortfolioCommandSourceWritePlatformService
commandsSourceWritePlatformService;
- @Autowired
- public HookApiResource(final PlatformSecurityContext context, final
HookReadPlatformService readPlatformService,
- final DefaultToApiJsonSerializer<HookData> toApiJsonSerializer,
final ApiRequestParameterHelper apiRequestParameterHelper,
- final PortfolioCommandSourceWritePlatformService
commandsSourceWritePlatformService) {
- this.context = context;
- this.readPlatformService = readPlatformService;
- this.toApiJsonSerializer = toApiJsonSerializer;
- this.apiRequestParameterHelper = apiRequestParameterHelper;
- this.commandsSourceWritePlatformService =
commandsSourceWritePlatformService;
- }
-
@GET
@Operation(summary = "Retrieve Hooks", description = "Returns the list of
hooks.\n" + "\n" + "Example Requests:\n" + "\n" + "hooks")
@ApiResponses({
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Entity.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Entity.java
index f63d24e00..a2ba1bfed 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Entity.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Entity.java
@@ -20,24 +20,12 @@ package org.apache.fineract.infrastructure.hooks.data;
import java.io.Serializable;
import java.util.List;
+import lombok.Data;
@SuppressWarnings("unused")
+@Data
public class Entity implements Serializable {
private String name;
-
private List<String> actions;
-
- public void setName(final String name) {
- this.name = name;
- }
-
- public void setActions(final List<String> actions) {
- this.actions = actions;
- }
-
- public String getName() {
- return this.name;
- }
-
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Event.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Event.java
index bc0a09fad..312b14447 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Event.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Event.java
@@ -19,7 +19,12 @@
package org.apache.fineract.infrastructure.hooks.data;
import java.io.Serializable;
+import lombok.AccessLevel;
+import lombok.Getter;
+import lombok.RequiredArgsConstructor;
+@RequiredArgsConstructor(access = AccessLevel.PRIVATE)
+@Getter
public final class Event implements Serializable {
private final String actionName;
@@ -28,18 +33,4 @@ public final class Event implements Serializable {
public static Event instance(final String actionName, final String
entityName) {
return new Event(actionName, entityName);
}
-
- private Event(final String actionName, final String entityName) {
- this.actionName = actionName;
- this.entityName = entityName;
- }
-
- public String getActionName() {
- return this.actionName;
- }
-
- public String getEntityName() {
- return this.entityName;
- }
-
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/EventResultSetExtractor.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/EventResultSetExtractor.java
index 95d5a7305..c91acfc26 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/EventResultSetExtractor.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/EventResultSetExtractor.java
@@ -67,35 +67,20 @@ public class EventResultSetExtractor implements
ResultSetExtractor<List<Grouping
final Grouping group = new Grouping();
group.setName(groupingEntry.getKey());
for (final Map.Entry<String, List<String>> entityEntry :
groupingEntry.getValue().entrySet()) {
- final List<String> actions = new ArrayList<>();
final Entity entity = new Entity();
entity.setName(entityEntry.getKey());
- for (final String action : entityEntry.getValue()) {
- actions.add(action);
- }
+ final List<String> actions = new
ArrayList<>(entityEntry.getValue());
Collections.sort(actions);
entity.setActions(actions);
entities.add(entity);
}
- Collections.sort(entities, new Comparator<Entity>() {
-
- @Override
- public int compare(final Entity entity1, final Entity entity2)
{
- return entity1.getName().compareTo(entity2.getName());
- }
- });
+ entities.sort(Comparator.comparing(Entity::getName));
group.setEntities(entities);
groupings.add(group);
}
- Collections.sort(groupings, new Comparator<Grouping>() {
-
- @Override
- public int compare(final Grouping grouping1, final Grouping
grouping2) {
- return grouping1.getName().compareTo(grouping2.getName());
- }
- });
+ groupings.sort(Comparator.comparing(Grouping::getName));
return groupings;
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Field.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Field.java
index ac4603f06..4a9041b18 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Field.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Field.java
@@ -19,8 +19,13 @@
package org.apache.fineract.infrastructure.hooks.data;
import java.io.Serializable;
+import lombok.AccessLevel;
+import lombok.Getter;
+import lombok.RequiredArgsConstructor;
@SuppressWarnings("unused")
+@RequiredArgsConstructor(access = AccessLevel.PRIVATE)
+@Getter
public final class Field implements Serializable {
private final String fieldName;
@@ -30,32 +35,10 @@ public final class Field implements Serializable {
private final String placeholder;
public static Field fromConfig(final String fieldName, final String
fieldValue) {
- return new Field(null, fieldName, fieldValue, null, null);
+ return new Field(fieldName, fieldValue, null, null, null);
}
public static Field fromSchema(final String fieldType, final String
fieldName, final Boolean optional, final String placeholder) {
- return new Field(fieldType, fieldName, null, optional, placeholder);
+ return new Field(fieldName, null, fieldType, optional, placeholder);
}
-
- private Field(final String fieldType, final String fieldName, final String
fieldValue, final Boolean optional,
- final String placeholder) {
- this.fieldType = fieldType;
- this.fieldName = fieldName;
- this.fieldValue = fieldValue;
- this.optional = optional;
- this.placeholder = placeholder;
- }
-
- public String getFieldName() {
- return this.fieldName;
- }
-
- public String getFieldValue() {
- return this.fieldValue;
- }
-
- public String getFieldType() {
- return this.fieldType;
- }
-
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Grouping.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Grouping.java
index 1892459ed..c3491e0d6 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Grouping.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/Grouping.java
@@ -20,24 +20,12 @@ package org.apache.fineract.infrastructure.hooks.data;
import java.io.Serializable;
import java.util.List;
+import lombok.Data;
@SuppressWarnings("unused")
+@Data
public class Grouping implements Serializable {
private String name;
-
private List<Entity> entities;
-
- public void setName(final String name) {
- this.name = name;
- }
-
- public void setEntities(final List<Entity> entities) {
- this.entities = entities;
- }
-
- public String getName() {
- return this.name;
- }
-
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/HookData.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/HookData.java
index 2fdc7e8dc..34b024466 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/HookData.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/HookData.java
@@ -21,7 +21,12 @@ package org.apache.fineract.infrastructure.hooks.data;
import java.io.Serializable;
import java.time.LocalDate;
import java.util.List;
+import lombok.AccessLevel;
+import lombok.Getter;
+import lombok.RequiredArgsConstructor;
+@RequiredArgsConstructor(access = AccessLevel.PRIVATE)
+@Getter
public final class HookData implements Serializable {
private final Long id;
@@ -44,7 +49,7 @@ public final class HookData implements Serializable {
public static HookData instance(final Long id, final String name, final
String displayName, final boolean isActive,
final LocalDate createdAt, final LocalDate updatedAt, final Long
templateId, final List<Event> registeredEvents,
final List<Field> config, final String templateName) {
- return new HookData(id, name, displayName, isActive, createdAt,
updatedAt, templateId, registeredEvents, config, templateName, null,
+ return new HookData(id, name, displayName, isActive, createdAt,
updatedAt, templateId, templateName, registeredEvents, config, null,
null);
}
@@ -55,45 +60,6 @@ public final class HookData implements Serializable {
public static HookData templateExisting(final HookData hookData, final
List<HookTemplateData> templates,
final List<Grouping> groupings) {
return new HookData(hookData.id, hookData.name, hookData.displayName,
hookData.isActive, hookData.createdAt, hookData.updatedAt,
- hookData.templateId, hookData.events, hookData.config,
hookData.templateName, templates, groupings);
+ hookData.templateId, hookData.templateName, hookData.events,
hookData.config, templates, groupings);
}
-
- private HookData(final Long id, final String name, final String
displayName, final Boolean isActive, final LocalDate createdAt,
- final LocalDate updatedAt, final Long templateId, final
List<Event> events, final List<Field> config, final String templateName,
- final List<HookTemplateData> templates, final List<Grouping>
groupings) {
- this.id = id;
- this.name = name;
- this.displayName = displayName;
- this.isActive = isActive;
- this.createdAt = createdAt;
- this.updatedAt = updatedAt;
- this.templateId = templateId;
- this.templateName = templateName;
-
- // associations
- this.events = events;
- this.config = config;
-
- // template
- this.templates = templates;
- this.groupings = groupings;
-
- }
-
- public Long getHookId() {
- return this.id;
- }
-
- public List<HookTemplateData> getTemplates() {
- return this.templates;
- }
-
- public List<Grouping> getGroupings() {
- return this.groupings;
- }
-
- public String getTemplateName() {
- return this.templateName;
- }
-
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/HookTemplateData.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/HookTemplateData.java
index d8ac8e4f5..b08471d28 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/HookTemplateData.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/data/HookTemplateData.java
@@ -20,8 +20,11 @@ package org.apache.fineract.infrastructure.hooks.data;
import java.io.Serializable;
import java.util.List;
+import lombok.AccessLevel;
+import lombok.RequiredArgsConstructor;
@SuppressWarnings("unused")
+@RequiredArgsConstructor(access = AccessLevel.PRIVATE)
public final class HookTemplateData implements Serializable {
private final Long id;
@@ -34,16 +37,8 @@ public final class HookTemplateData implements Serializable {
return new HookTemplateData(id, name, schema);
}
- private HookTemplateData(final Long id, final String name, final
List<Field> schema) {
- this.id = id;
- this.name = name;
-
- // associations
- this.schema = schema;
- }
-
public Long getServiceId() {
- return this.id;
+ return id;
}
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/domain/Hook.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/domain/Hook.java
index 370414c35..b1d3f355f 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/domain/Hook.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/domain/Hook.java
@@ -68,9 +68,7 @@ public class Hook extends AbstractAuditableCustom {
@JoinColumn(name = "ugd_template_id", referencedColumnName = "id",
nullable = true)
private Template ugdTemplate;
- protected Hook() {
- //
- }
+ protected Hook() {}
public static Hook fromJson(final JsonCommand command, final HookTemplate
template, final Set<HookConfiguration> config,
final Set<HookResource> events, final Template ugdTemplate) {
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/event/HookEventSource.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/event/HookEventSource.java
index ea3e6b8c4..751eaba3c 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/event/HookEventSource.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/event/HookEventSource.java
@@ -19,25 +19,13 @@
package org.apache.fineract.infrastructure.hooks.event;
import java.io.Serializable;
+import lombok.Getter;
+import lombok.RequiredArgsConstructor;
+@RequiredArgsConstructor
+@Getter
public class HookEventSource implements Serializable {
private final String entityName;
-
private final String actionName;
-
- public HookEventSource(final String entityName, final String actionName) {
-
- this.entityName = entityName;
- this.actionName = actionName;
- }
-
- public String getEntityName() {
- return this.entityName;
- }
-
- public String getActionName() {
- return this.actionName;
- }
-
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/CreateHookCommandHandler.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/CreateHookCommandHandler.java
index e97049224..79613ce6b 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/CreateHookCommandHandler.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/CreateHookCommandHandler.java
@@ -18,30 +18,25 @@
*/
package org.apache.fineract.infrastructure.hooks.handler;
+import lombok.RequiredArgsConstructor;
import org.apache.fineract.commands.annotation.CommandType;
import org.apache.fineract.commands.handler.NewCommandSourceHandler;
import org.apache.fineract.infrastructure.core.api.JsonCommand;
import org.apache.fineract.infrastructure.core.data.CommandProcessingResult;
import
org.apache.fineract.infrastructure.hooks.service.HookWritePlatformService;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@Service
@CommandType(entity = "HOOK", action = "CREATE")
+@RequiredArgsConstructor
public class CreateHookCommandHandler implements NewCommandSourceHandler {
private final HookWritePlatformService writePlatformService;
- @Autowired
- public CreateHookCommandHandler(final HookWritePlatformService
writePlatformService) {
- this.writePlatformService = writePlatformService;
- }
-
@Transactional
@Override
public CommandProcessingResult processCommand(final JsonCommand command) {
-
return this.writePlatformService.createHook(command);
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/DeleteHookCommandHandler.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/DeleteHookCommandHandler.java
index ea041f4c7..c0768e5f8 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/DeleteHookCommandHandler.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/DeleteHookCommandHandler.java
@@ -18,31 +18,25 @@
*/
package org.apache.fineract.infrastructure.hooks.handler;
+import lombok.RequiredArgsConstructor;
import org.apache.fineract.commands.annotation.CommandType;
import org.apache.fineract.commands.handler.NewCommandSourceHandler;
import org.apache.fineract.infrastructure.core.api.JsonCommand;
import org.apache.fineract.infrastructure.core.data.CommandProcessingResult;
import
org.apache.fineract.infrastructure.hooks.service.HookWritePlatformService;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@Service
@CommandType(entity = "HOOK", action = "DELETE")
+@RequiredArgsConstructor
public class DeleteHookCommandHandler implements NewCommandSourceHandler {
private final HookWritePlatformService writePlatformService;
- @Autowired
- public DeleteHookCommandHandler(final HookWritePlatformService
writePlatformService) {
- this.writePlatformService = writePlatformService;
- }
-
@Transactional
@Override
public CommandProcessingResult processCommand(final JsonCommand command) {
-
return this.writePlatformService.deleteHook(command.entityId());
}
-
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/UpdateHookCommandHandler.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/UpdateHookCommandHandler.java
index a660e278e..652c82c78 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/UpdateHookCommandHandler.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/handler/UpdateHookCommandHandler.java
@@ -18,31 +18,25 @@
*/
package org.apache.fineract.infrastructure.hooks.handler;
+import lombok.RequiredArgsConstructor;
import org.apache.fineract.commands.annotation.CommandType;
import org.apache.fineract.commands.handler.NewCommandSourceHandler;
import org.apache.fineract.infrastructure.core.api.JsonCommand;
import org.apache.fineract.infrastructure.core.data.CommandProcessingResult;
import
org.apache.fineract.infrastructure.hooks.service.HookWritePlatformService;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@Service
@CommandType(entity = "HOOK", action = "UPDATE")
+@RequiredArgsConstructor
public class UpdateHookCommandHandler implements NewCommandSourceHandler {
private final HookWritePlatformService writePlatformService;
- @Autowired
- public UpdateHookCommandHandler(final HookWritePlatformService
writePlatformService) {
- this.writePlatformService = writePlatformService;
- }
-
@Transactional
@Override
public CommandProcessingResult processCommand(final JsonCommand command) {
-
return this.writePlatformService.updateHook(command.entityId(),
command);
}
-
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/listener/FineractHookListener.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/listener/FineractHookListener.java
index 2bc6a8738..95acc3fef 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/listener/FineractHookListener.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/listener/FineractHookListener.java
@@ -19,6 +19,8 @@
package org.apache.fineract.infrastructure.hooks.listener;
import java.util.List;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
import org.apache.fineract.infrastructure.core.domain.FineractPlatformTenant;
import org.apache.fineract.infrastructure.core.service.ThreadLocalContextUtil;
import org.apache.fineract.infrastructure.hooks.domain.Hook;
@@ -29,28 +31,17 @@ import
org.apache.fineract.infrastructure.hooks.processor.HookProcessorProvider;
import
org.apache.fineract.infrastructure.hooks.service.HookReadPlatformService;
import
org.apache.fineract.infrastructure.security.service.TenantDetailsService;
import org.apache.fineract.useradministration.domain.AppUser;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
+@RequiredArgsConstructor
+@Slf4j
public class FineractHookListener implements HookListener {
- private static final Logger LOG =
LoggerFactory.getLogger(FineractHookListener.class);
-
private final HookProcessorProvider hookProcessorProvider;
private final HookReadPlatformService hookReadPlatformService;
private final TenantDetailsService tenantDetailsService;
- @Autowired
- public FineractHookListener(final HookProcessorProvider
hookProcessorProvider, final HookReadPlatformService hookReadPlatformService,
- final TenantDetailsService tenantDetailsService) {
- this.hookReadPlatformService = hookReadPlatformService;
- this.hookProcessorProvider = hookProcessorProvider;
- this.tenantDetailsService = tenantDetailsService;
- }
-
@Override
public void onApplicationEvent(final HookEvent event) {
final String tenantIdentifier = event.getTenantIdentifier();
@@ -73,7 +64,7 @@ public class FineractHookListener implements HookListener {
try {
processor.process(hook, appUser, payload, entityName,
actionName, tenantIdentifier, authToken);
} catch (Throwable e) {
- LOG.error("Hook {} failed in HookProcessor {} for
tenantIdentifier/user {}/{}, entityName: {}, actionName: {}, payload {} ",
+ log.error("Hook {} failed in HookProcessor {} for
tenantIdentifier/user {}/{}, entityName: {}, actionName: {}, payload {} ",
hook.getId(), processor.getClass().getSimpleName(),
tenantIdentifier, appUser, entityName, actionName, payload, e);
}
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/ElasticSearchHookProcessor.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/ElasticSearchHookProcessor.java
index 551a53be1..be5d463b5 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/ElasticSearchHookProcessor.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/ElasticSearchHookProcessor.java
@@ -26,18 +26,18 @@ import com.google.gson.JsonObject;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
+import lombok.RequiredArgsConstructor;
import org.apache.fineract.infrastructure.hooks.domain.Hook;
import org.apache.fineract.infrastructure.hooks.domain.HookConfiguration;
import org.apache.fineract.useradministration.domain.AppUser;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import retrofit2.Callback;
@Service
+@RequiredArgsConstructor
public class ElasticSearchHookProcessor implements HookProcessor {
- @Autowired
- private ProcessorHelper processorHelper;
+ private final ProcessorHelper processorHelper;
@Override
public void process(final Hook hook, @SuppressWarnings("unused") final
AppUser appUser, final String payload, final String entityName,
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/MessageGatewayHookProcessor.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/MessageGatewayHookProcessor.java
index 4cfd89fe5..5cd7e8bb3 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/MessageGatewayHookProcessor.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/MessageGatewayHookProcessor.java
@@ -28,6 +28,8 @@ import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
import
org.apache.fineract.infrastructure.core.exception.GeneralPlatformDomainRuleException;
import org.apache.fineract.infrastructure.hooks.domain.Hook;
import org.apache.fineract.infrastructure.hooks.domain.HookConfiguration;
@@ -40,16 +42,13 @@ import org.apache.fineract.template.domain.Template;
import org.apache.fineract.template.domain.TemplateRepository;
import org.apache.fineract.template.service.TemplateMergeService;
import org.apache.fineract.useradministration.domain.AppUser;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
+@Slf4j
+@RequiredArgsConstructor
public class MessageGatewayHookProcessor implements HookProcessor {
- private static final Logger LOG =
LoggerFactory.getLogger(MessageGatewayHookProcessor.class);
-
private final ClientRepositoryWrapper clientRepository;
private final TemplateRepository templateRepository;
private final TemplateMergeService templateMergeService;
@@ -57,17 +56,6 @@ public class MessageGatewayHookProcessor implements
HookProcessor {
private final SmsMessageRepository smsMessageRepository;
private final SmsMessageScheduledJobService smsMessageScheduledJobService;
- @Autowired
- public MessageGatewayHookProcessor(ClientRepositoryWrapper
clientRepository, TemplateRepository templateRepository,
- TemplateMergeService templateMergeService, SmsMessageRepository
smsMessageRepository,
- SmsMessageScheduledJobService smsMessageScheduledJobService) {
- this.clientRepository = clientRepository;
- this.templateRepository = templateRepository;
- this.templateMergeService = templateMergeService;
- this.smsMessageRepository = smsMessageRepository;
- this.smsMessageScheduledJobService = smsMessageScheduledJobService;
- }
-
@Override
public void process(final Hook hook, @SuppressWarnings("unused") final
AppUser appUser, final String payload, final String entityName,
final String actionName, final String tenantIdentifier, final
String authToken) throws IOException {
@@ -95,7 +83,7 @@ public class MessageGatewayHookProcessor implements
HookProcessor {
template = templates.get(0);
}
if (template == null) {
- LOG.error("Error : {} with name {}", "Template not found",
templateName);
+ log.error("Error : {} with name {}", "Template not found",
templateName);
throw new
GeneralPlatformDomainRuleException("error.msg.templates.not.found", "Template
not found", templateName);
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/TwilioHookProcessor.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/TwilioHookProcessor.java
index 5813caaf7..73a6d4c43 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/TwilioHookProcessor.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/TwilioHookProcessor.java
@@ -29,6 +29,7 @@ import com.google.gson.JsonParser;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
+import lombok.RequiredArgsConstructor;
import org.apache.fineract.infrastructure.hooks.domain.Hook;
import org.apache.fineract.infrastructure.hooks.domain.HookConfiguration;
import
org.apache.fineract.infrastructure.hooks.domain.HookConfigurationRepository;
@@ -37,11 +38,11 @@ import org.apache.fineract.portfolio.client.domain.Client;
import org.apache.fineract.portfolio.client.domain.ClientRepositoryWrapper;
import org.apache.fineract.template.service.TemplateMergeService;
import org.apache.fineract.useradministration.domain.AppUser;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import retrofit2.Callback;
@Service
+@RequiredArgsConstructor
public class TwilioHookProcessor implements HookProcessor {
private final HookConfigurationRepository hookConfigurationRepository;
@@ -49,16 +50,6 @@ public class TwilioHookProcessor implements HookProcessor {
private final ClientRepositoryWrapper clientRepositoryWrapper;
private final ProcessorHelper processorHelper;
- @Autowired
- public TwilioHookProcessor(final HookConfigurationRepository
hookConfigurationRepository,
- final TemplateMergeService templateMergeService, final
ClientRepositoryWrapper clientRepositoryWrapper,
- ProcessorHelper processorHelper) {
- this.hookConfigurationRepository = hookConfigurationRepository;
- this.templateMergeService = templateMergeService;
- this.clientRepositoryWrapper = clientRepositoryWrapper;
- this.processorHelper = processorHelper;
- }
-
@Override
public void process(final Hook hook, @SuppressWarnings("unused") final
AppUser appUser, final String payload, final String entityName,
final String actionName, final String tenantIdentifier, final
String authToken) throws IOException {
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/WebHookProcessor.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/WebHookProcessor.java
index 796f9d807..47f6786fc 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/WebHookProcessor.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/processor/WebHookProcessor.java
@@ -27,23 +27,19 @@ import com.google.gson.JsonParser;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
+import lombok.RequiredArgsConstructor;
import org.apache.fineract.infrastructure.hooks.domain.Hook;
import org.apache.fineract.infrastructure.hooks.domain.HookConfiguration;
import org.apache.fineract.useradministration.domain.AppUser;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import retrofit2.Callback;
@Service
+@RequiredArgsConstructor
public class WebHookProcessor implements HookProcessor {
private final ProcessorHelper processorHelper;
- @Autowired
- public WebHookProcessor(ProcessorHelper processorHelper) {
- this.processorHelper = processorHelper;
- }
-
@Override
public void process(final Hook hook, @SuppressWarnings("unused") final
AppUser appUser, final String payload, final String entityName,
final String actionName, final String tenantIdentifier, final
String authToken) {
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/serialization/HookCommandFromApiJsonDeserializer.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/serialization/HookCommandFromApiJsonDeserializer.java
index b3b11612b..758a242ca 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/serialization/HookCommandFromApiJsonDeserializer.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/serialization/HookCommandFromApiJsonDeserializer.java
@@ -27,6 +27,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.apache.fineract.infrastructure.core.data.ApiParameterError;
import org.apache.fineract.infrastructure.core.data.DataValidatorBuilder;
@@ -34,10 +35,10 @@ import
org.apache.fineract.infrastructure.core.exception.InvalidJsonException;
import
org.apache.fineract.infrastructure.core.exception.PlatformApiDataValidationException;
import org.apache.fineract.infrastructure.core.serialization.FromJsonHelper;
import org.apache.fineract.infrastructure.hooks.api.HookApiConstants;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
+@RequiredArgsConstructor
public class HookCommandFromApiJsonDeserializer {
/**
@@ -47,11 +48,6 @@ public class HookCommandFromApiJsonDeserializer {
Arrays.asList("name", "displayName", "isActive", "events",
"config", "templateId"));
private final FromJsonHelper fromApiJsonHelper;
- @Autowired
- public HookCommandFromApiJsonDeserializer(final FromJsonHelper
fromApiJsonHelper) {
- this.fromApiJsonHelper = fromApiJsonHelper;
- }
-
public void validateForCreate(final String json) {
if (StringUtils.isBlank(json)) {
throw new InvalidJsonException();
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/service/HookReadPlatformServiceImpl.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/service/HookReadPlatformServiceImpl.java
index 0f9c39254..43b44babe 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/service/HookReadPlatformServiceImpl.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/service/HookReadPlatformServiceImpl.java
@@ -23,6 +23,7 @@ import java.sql.SQLException;
import java.time.LocalDate;
import java.util.Collection;
import java.util.List;
+import lombok.RequiredArgsConstructor;
import org.apache.fineract.infrastructure.core.domain.JdbcSupport;
import org.apache.fineract.infrastructure.hooks.data.Event;
import org.apache.fineract.infrastructure.hooks.data.EventResultSetExtractor;
@@ -34,7 +35,6 @@ import org.apache.fineract.infrastructure.hooks.domain.Hook;
import org.apache.fineract.infrastructure.hooks.domain.HookRepository;
import
org.apache.fineract.infrastructure.hooks.exception.HookNotFoundException;
import
org.apache.fineract.infrastructure.security.service.PlatformSecurityContext;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.dao.EmptyResultDataAccessException;
import org.springframework.jdbc.core.JdbcTemplate;
@@ -42,37 +42,30 @@ import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Service;
@Service
+@RequiredArgsConstructor
public class HookReadPlatformServiceImpl implements HookReadPlatformService {
private final JdbcTemplate jdbcTemplate;
private final HookRepository hookRepository;
private final PlatformSecurityContext context;
- @Autowired
- public HookReadPlatformServiceImpl(final PlatformSecurityContext context,
final HookRepository hookRepository,
- final JdbcTemplate jdbcTemplate) {
- this.context = context;
- this.hookRepository = hookRepository;
- this.jdbcTemplate = jdbcTemplate;
- }
-
@Override
public Collection<HookData> retrieveAllHooks() {
- this.context.authenticatedUser();
- final HookMapper rm = new HookMapper(this.jdbcTemplate);
+ context.authenticatedUser();
+ final HookMapper rm = new HookMapper(jdbcTemplate);
final String sql = "select " + rm.schema() + " order by h.name";
- return this.jdbcTemplate.query(sql, rm); // NOSONAR
+ return jdbcTemplate.query(sql, rm); // NOSONAR
}
@Override
public HookData retrieveHook(final Long hookId) {
try {
- this.context.authenticatedUser();
- final HookMapper rm = new HookMapper(this.jdbcTemplate);
+ context.authenticatedUser();
+ final HookMapper rm = new HookMapper(jdbcTemplate);
final String sql = "select " + rm.schema() + " where h.id = ?";
- return this.jdbcTemplate.queryForObject(sql, rm, new Object[] {
hookId }); // NOSONAR
+ return jdbcTemplate.queryForObject(sql, rm, hookId); // NOSONAR
} catch (final EmptyResultDataAccessException e) {
throw new HookNotFoundException(hookId, e);
}
@@ -82,24 +75,23 @@ public class HookReadPlatformServiceImpl implements
HookReadPlatformService {
@Override
@Cacheable(value = "hooks", key =
"T(org.apache.fineract.infrastructure.core.service.ThreadLocalContextUtil).getTenant().getTenantIdentifier().concat('HK')")
public List<Hook> retrieveHooksByEvent(final String entityName, final
String actionName) {
-
- return this.hookRepository.findAllHooksListeningToEvent(entityName,
actionName);
+ return hookRepository.findAllHooksListeningToEvent(entityName,
actionName);
}
@Override
public HookData retrieveNewHookDetails(final String templateName) {
- this.context.authenticatedUser();
- final TemplateMapper rm = new TemplateMapper(this.jdbcTemplate);
+ context.authenticatedUser();
+ final TemplateMapper rm = new TemplateMapper(jdbcTemplate);
final String sql;
List<HookTemplateData> templateData;
if (templateName == null) {
sql = "select " + rm.schema() + " order by s.name";
- templateData = this.jdbcTemplate.query(sql, rm); // NOSONAR
+ templateData = jdbcTemplate.query(sql, rm); // NOSONAR
} else {
sql = "select " + rm.schema() + " where s.name = ? order by
s.name";
- templateData = this.jdbcTemplate.query(sql, rm, new Object[] {
templateName }); // NOSONAR
+ templateData = jdbcTemplate.query(sql, rm, templateName); //
NOSONAR
}
final List<Grouping> events = getTemplateForEvents();
@@ -111,17 +103,14 @@ public class HookReadPlatformServiceImpl implements
HookReadPlatformService {
final String sql = "select p.grouping, p.entity_name, p.action_name
from m_permission p "
+ " where p.action_name NOT LIKE '%CHECKER%' AND p.action_name
NOT LIKE '%READ%' " + " order by p.grouping, p.entity_name ";
final EventResultSetExtractor extractor = new
EventResultSetExtractor();
- return this.jdbcTemplate.query(sql, extractor);
+ return jdbcTemplate.query(sql, extractor);
}
+ @RequiredArgsConstructor
private static final class HookMapper implements RowMapper<HookData> {
private final JdbcTemplate jdbcTemplate;
- HookMapper(final JdbcTemplate jdbcTemplate) {
- this.jdbcTemplate = jdbcTemplate;
- }
-
public String schema() {
return " h.id, s.name as name, h.name as display_name,
h.is_active, h.created_date,"
+ " h.lastmodified_date, h.ugd_template_id, tp.name as
ugd_template_name, "
@@ -152,7 +141,7 @@ public class HookReadPlatformServiceImpl implements
HookReadPlatformService {
final HookEventMapper rm = new HookEventMapper();
final String sql = "select " + rm.schema() + " where h.id= ?";
- return this.jdbcTemplate.query(sql, rm, new Object[] { hookId });
// NOSONAR
+ return jdbcTemplate.query(sql, rm, hookId); // NOSONAR
}
private List<Field> retrieveConfig(final Long hookId) {
@@ -160,9 +149,7 @@ public class HookReadPlatformServiceImpl implements
HookReadPlatformService {
final HookConfigMapper rm = new HookConfigMapper();
final String sql = "select " + rm.schema() + " where h.id= ? order
by hc.field_name";
- final List<Field> fields = this.jdbcTemplate.query(sql, rm, new
Object[] { hookId }); // NOSONAR
-
- return fields;
+ return jdbcTemplate.query(sql, rm, hookId); // NOSONAR
}
}
@@ -194,14 +181,11 @@ public class HookReadPlatformServiceImpl implements
HookReadPlatformService {
}
}
+ @RequiredArgsConstructor
private static final class TemplateMapper implements
RowMapper<HookTemplateData> {
private final JdbcTemplate jdbcTemplate;
- TemplateMapper(final JdbcTemplate jdbcTemplate) {
- this.jdbcTemplate = jdbcTemplate;
- }
-
public String schema() {
return " s.id, s.name from m_hook_templates s ";
}
@@ -221,9 +205,7 @@ public class HookReadPlatformServiceImpl implements
HookReadPlatformService {
final TemplateSchemaMapper rm = new TemplateSchemaMapper();
final String sql = "select " + rm.schema() + " where s.id= ? order
by hs.field_name ";
- final List<Field> fields = this.jdbcTemplate.query(sql, rm, new
Object[] { templateId }); // NOSONAR
-
- return fields;
+ return jdbcTemplate.query(sql, rm, templateId); // NOSONAR;
}
}
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/service/HookWritePlatformServiceJpaRepositoryImpl.java
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/service/HookWritePlatformServiceJpaRepositoryImpl.java
index e4863a272..fb01377bb 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/service/HookWritePlatformServiceJpaRepositoryImpl.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/hooks/service/HookWritePlatformServiceJpaRepositoryImpl.java
@@ -37,6 +37,7 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
import javax.persistence.PersistenceException;
+import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.apache.fineract.infrastructure.core.api.JsonCommand;
import org.apache.fineract.infrastructure.core.data.ApiParameterError;
@@ -62,7 +63,6 @@ import
org.apache.fineract.infrastructure.security.service.PlatformSecurityConte
import org.apache.fineract.template.domain.Template;
import org.apache.fineract.template.domain.TemplateRepository;
import org.apache.fineract.template.exception.TemplateNotFoundException;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.dao.DataIntegrityViolationException;
import org.springframework.orm.jpa.JpaSystemException;
@@ -70,6 +70,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@Service
+@RequiredArgsConstructor
public class HookWritePlatformServiceJpaRepositoryImpl implements
HookWritePlatformService {
private final PlatformSecurityContext context;
@@ -80,20 +81,6 @@ public class HookWritePlatformServiceJpaRepositoryImpl
implements HookWritePlatf
private final FromJsonHelper fromApiJsonHelper;
private final ProcessorHelper processorHelper;
- @Autowired
- public HookWritePlatformServiceJpaRepositoryImpl(final
PlatformSecurityContext context, final HookRepository hookRepository,
- final HookTemplateRepository hookTemplateRepository, final
TemplateRepository ugdTemplateRepository,
- final HookCommandFromApiJsonDeserializer fromApiJsonDeserializer,
final FromJsonHelper fromApiJsonHelper,
- ProcessorHelper processorHelper) {
- this.context = context;
- this.hookRepository = hookRepository;
- this.hookTemplateRepository = hookTemplateRepository;
- this.ugdTemplateRepository = ugdTemplateRepository;
- this.fromApiJsonDeserializer = fromApiJsonDeserializer;
- this.fromApiJsonHelper = fromApiJsonHelper;
- this.processorHelper = processorHelper;
- }
-
@Transactional
@Override
@CacheEvict(value = "hooks", allEntries = true)
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/notification/service/NotificationDomainServiceImpl.java
b/fineract-provider/src/main/java/org/apache/fineract/notification/service/NotificationDomainServiceImpl.java
index 40b6b1a95..793d51c7c 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/notification/service/NotificationDomainServiceImpl.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/notification/service/NotificationDomainServiceImpl.java
@@ -25,6 +25,7 @@ import java.util.Map;
import java.util.Set;
import javax.annotation.PostConstruct;
import javax.jms.Queue;
+import lombok.RequiredArgsConstructor;
import org.apache.activemq.command.ActiveMQQueue;
import org.apache.fineract.infrastructure.core.data.CommandProcessingResult;
import org.apache.fineract.infrastructure.core.service.ThreadLocalContextUtil;
@@ -50,35 +51,20 @@ import
org.apache.fineract.portfolio.savings.domain.SavingsAccountTransaction;
import org.apache.fineract.portfolio.shareaccounts.domain.ShareAccount;
import org.apache.fineract.useradministration.domain.Role;
import org.apache.fineract.useradministration.domain.RoleRepository;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
+@RequiredArgsConstructor
public class NotificationDomainServiceImpl implements
NotificationDomainService {
private final BusinessEventNotifierService businessEventNotifierService;
- final PlatformSecurityContext context;
+ private final PlatformSecurityContext context;
private final RoleRepository roleRepository;
private final OfficeRepository officeRepository;
private final TopicSubscriberReadPlatformService
topicSubscriberReadPlatformService;
private final NotificationEventService notificationEvent;
private final SpringEventPublisher springEventPublisher;
- @Autowired
- public NotificationDomainServiceImpl(final BusinessEventNotifierService
businessEventNotifierService,
- final PlatformSecurityContext context, final RoleRepository
roleRepository,
- final TopicSubscriberReadPlatformService
topicSubscriberReadPlatformService, final OfficeRepository officeRepository,
- final NotificationEventService notificationEvent, final
SpringEventPublisher springEventPublisher) {
-
- this.businessEventNotifierService = businessEventNotifierService;
- this.context = context;
- this.roleRepository = roleRepository;
- this.topicSubscriberReadPlatformService =
topicSubscriberReadPlatformService;
- this.officeRepository = officeRepository;
- this.notificationEvent = notificationEvent;
- this.springEventPublisher = springEventPublisher;
- }
-
@PostConstruct
public void addListeners() {
businessEventNotifierService.addBusinessEventPostListeners(BusinessEvents.CLIENTS_CREATE,
new ClientCreatedListener());