Skip to content

Commit ae86484

Browse files
Merge pull request #5 from dynamiatools/3.x
upgrade to dynamia tools v5.1.x
2 parents 9bf0654 + 7fcfc63 commit ae86484

File tree

31 files changed

+456
-139
lines changed

31 files changed

+456
-139
lines changed

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,24 +25,24 @@ Add the following dependencies to project classpath
2525
<dependency>
2626
<groupId>tools.dynamia.modules</groupId>
2727
<artifactId>tools.dynamia.modules.saas</artifactId>
28-
<version>3.0.0</version>
28+
<version>3.1.0</version>
2929
</dependency>
3030
```
3131

3232
```xml
3333
<dependency>
3434
<groupId>tools.dynamia.modules</groupId>
3535
<artifactId>tools.dynamia.modules.saas.ui</artifactId>
36-
<version>3.0.0</version>
36+
<version>3.1.0</version>
3737
</dependency>
3838

3939
```
4040

4141
**Gradle**
4242

4343
```groovy
44-
compile 'tools.dynamia.modules:tools.dynamia.modules.saas:3.0.0'
45-
compile 'tools.dynamia.modules:tools.dynamia.modules.saas.ui:3.0.0'
44+
compile 'tools.dynamia.modules:tools.dynamia.modules.saas:3.1.0'
45+
compile 'tools.dynamia.modules:tools.dynamia.modules.saas.ui:3.1.0'
4646
```
4747

4848
## Usage
@@ -81,7 +81,7 @@ For your modules you only require the API dependency
8181
<dependency>
8282
<groupId>tools.dynamia.modules</groupId>
8383
<artifactId>tools.dynamia.modules.saas.api</artifactId>
84-
<version>3.0.0</version>
84+
<version>3.1.0</version>
8585
</dependency>
8686
```
8787

sources/api/pom.xml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,13 @@
2626
<parent>
2727
<groupId>tools.dynamia.modules</groupId>
2828
<artifactId>tools.dynamia.modules.saas.parent</artifactId>
29-
<version>3.0.1</version>
29+
<version>3.1.1</version>
3030
</parent>
3131
<artifactId>tools.dynamia.modules.saas.api</artifactId>
3232

3333
<name>DynamiaModules - SaaS API</name>
3434
<url>https://www.dynamia.tools/modules/saas</url>
35-
<version>3.0.1</version>
35+
<version>3.1.1</version>
3636

3737
<build>
3838
<plugins>
@@ -43,7 +43,8 @@
4343
<configuration>
4444
<source>${java.version}</source>
4545
<target>${java.version}</target>
46-
<encoding>${source.encoding}</encoding>
46+
<encoding>${source.encoding}</encoding>
47+
<parameters>true</parameters>
4748
</configuration>
4849
</plugin>
4950
</plugins>
@@ -55,6 +56,10 @@
5556
<artifactId>tools.dynamia.actions</artifactId>
5657
<version>${dynamiatools.version}</version>
5758
</dependency>
59+
<dependency>
60+
<groupId>org.springframework.boot</groupId>
61+
<artifactId>spring-boot-autoconfigure</artifactId>
62+
</dependency>
5863
</dependencies>
5964

6065

sources/api/src/main/java/tools/dynamia/modules/saas/api/AccountAPIConfig.java

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,38 @@
1818
package tools.dynamia.modules.saas.api;
1919

2020
import org.springframework.beans.factory.config.CustomScopeConfigurer;
21+
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
2122
import org.springframework.context.annotation.Bean;
2223
import org.springframework.context.annotation.Configuration;
24+
import tools.dynamia.integration.ms.MessageService;
2325

26+
/**
27+
* Default Account SaaS configuration
28+
*/
2429
@Configuration
2530
public class AccountAPIConfig {
2631

2732

28-
33+
/**
34+
* This bean is used to register the AccountScope in the application context.
35+
* @return CustomScopeConfigurer
36+
*/
2937
@Bean
30-
public static CustomScopeConfigurer accountScopeConfigurer() {
38+
public CustomScopeConfigurer accountScopeConfigurer() {
3139
CustomScopeConfigurer configurer = new CustomScopeConfigurer();
3240
configurer.addScope("account", new AccountScope());
3341
return configurer;
3442
}
43+
44+
/**
45+
* If no AccountServiceAPI is configured, this bean will be used as a default.
46+
* This is useful for testing.
47+
*
48+
* @return NoOpAccountServiceAPI instance
49+
*/
50+
@Bean
51+
@ConditionalOnMissingBean(AccountServiceAPI.class)
52+
public AccountServiceAPI noOpAccountServiceAPI() {
53+
return new NoOpAccountServiceAPI();
54+
}
3555
}

sources/jpa/src/main/java/tools/dynamia/modules/saas/jpa/NoOpAccountServiceAPI.java renamed to sources/api/src/main/java/tools/dynamia/modules/saas/api/NoOpAccountServiceAPI.java

Lines changed: 11 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515
* limitations under the License.
1616
*/
1717

18-
package tools.dynamia.modules.saas.jpa;
18+
package tools.dynamia.modules.saas.api;
1919

20-
import tools.dynamia.domain.util.CrudServiceListenerAdapter;
21-
import tools.dynamia.modules.saas.api.AccountAware;
22-
import tools.dynamia.modules.saas.api.AccountServiceAPI;
20+
21+
import tools.dynamia.commons.logger.LoggingService;
22+
import tools.dynamia.commons.logger.SLF4JLoggingService;
2323
import tools.dynamia.modules.saas.api.dto.AccountDTO;
2424
import tools.dynamia.modules.saas.api.dto.AccountLogDTO;
2525
import tools.dynamia.modules.saas.api.dto.AccountPaymentDTO;
@@ -28,7 +28,12 @@
2828

2929
import java.util.*;
3030

31-
public class NoOpAccountServiceAPI extends CrudServiceListenerAdapter<AccountAware> implements AccountServiceAPI {
31+
/**
32+
* Default No operational {@link AccountServiceAPI} implementation. Useful for testing
33+
*/
34+
public class NoOpAccountServiceAPI implements AccountServiceAPI {
35+
36+
private final LoggingService logger = new SLF4JLoggingService(NoOpAccountServiceAPI.class);
3237

3338
private static Long defaultAccountId = 1L;
3439
private static AccountDTO CURRENT_ACCOUNT;
@@ -96,19 +101,6 @@ public void updateAccountUsers(Long accountId, long users, long activedUsers) {
96101

97102
}
98103

99-
@Override
100-
public void beforeCreate(AccountAware entity) {
101-
if (entity != null) {
102-
entity.setAccountId(defaultAccountId);
103-
}
104-
}
105-
106-
@Override
107-
public void afterUpdate(AccountAware entity) {
108-
if (entity != null && entity.getAccountId() == null) {
109-
entity.setAccountId(defaultAccountId);
110-
}
111-
}
112104

113105
@Override
114106
public List<AccountPaymentDTO> getPayments(Long accountId) {
@@ -143,7 +135,7 @@ public List<Long> findAccountsIdByFeature(String featureId) {
143135

144136
@Override
145137
public void log(Long accountId, String message) {
146-
System.out.println("[LOG ACCOUNT " + accountId + "] " + message);
138+
logger.info("[ACCOUNT " + accountId + "] " + message);
147139
}
148140

149141
@Override

sources/core/pom.xml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@
2222
<parent>
2323
<groupId>tools.dynamia.modules</groupId>
2424
<artifactId>tools.dynamia.modules.saas.parent</artifactId>
25-
<version>3.0.1</version>
25+
<version>3.1.1</version>
2626
</parent>
2727
<artifactId>tools.dynamia.modules.saas</artifactId>
28-
<version>3.0.1</version>
28+
<version>3.1.1</version>
2929
<name>DynamiaModules - SaaS Core</name>
3030
<url>https://www.dynamia.tools/modules/saas</url>
3131

@@ -38,7 +38,8 @@
3838
<configuration>
3939
<source>${java.version}</source>
4040
<target>${java.version}</target>
41-
<encoding>${source.encoding}</encoding>
41+
<encoding>${source.encoding}</encoding>
42+
<parameters>true</parameters>
4243
</configuration>
4344
</plugin>
4445
</plugins>
@@ -48,12 +49,12 @@
4849
<dependency>
4950
<groupId>tools.dynamia.modules</groupId>
5051
<artifactId>tools.dynamia.modules.saas.api</artifactId>
51-
<version>3.0.1</version>
52+
<version>3.1.1</version>
5253
</dependency>
5354
<dependency>
5455
<groupId>tools.dynamia.modules</groupId>
5556
<artifactId>tools.dynamia.modules.saas.jpa</artifactId>
56-
<version>3.0.1</version>
57+
<version>3.1.1</version>
5758
</dependency>
5859
<dependency>
5960
<groupId>junit</groupId>

sources/core/src/main/java/tools/dynamia/modules/saas/AccountContext.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818

1919
package tools.dynamia.modules.saas;
2020

21-
import org.springframework.beans.factory.annotation.Autowired;
2221
import org.springframework.stereotype.Component;
2322
import tools.dynamia.commons.logger.LoggingService;
2423
import tools.dynamia.commons.logger.SLF4JLoggingService;
@@ -28,7 +27,6 @@
2827
import tools.dynamia.modules.saas.services.AccountService;
2928
import tools.dynamia.web.util.HttpUtils;
3029

31-
import jakarta.annotation.PostConstruct;
3230
import java.util.List;
3331

3432
/**
@@ -39,11 +37,13 @@ public class AccountContext {
3937

4038
private final LoggingService logger = new SLF4JLoggingService(AccountContext.class);
4139

42-
@Autowired
43-
private List<AccountResolver> resolvers;
40+
private final AccountService service;
41+
private final List<AccountResolver> resolvers;
4442

45-
@Autowired
46-
private AccountService service;
43+
public AccountContext(AccountService service, List<AccountResolver> resolvers) {
44+
this.service = service;
45+
this.resolvers = resolvers;
46+
}
4747

4848

4949
public static AccountContext getCurrent() {

sources/core/src/main/java/tools/dynamia/modules/saas/AccountEntityFileProvider.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,12 @@
3030
@Provider
3131
public class AccountEntityFileProvider implements EntityFileAccountProvider {
3232

33-
@Autowired
34-
private AccountServiceAPI accountServiceAPI;
33+
34+
private final AccountServiceAPI accountServiceAPI;
35+
36+
public AccountEntityFileProvider(AccountServiceAPI accountServiceAPI) {
37+
this.accountServiceAPI = accountServiceAPI;
38+
}
3539

3640
@Override
3741
public Long getAccountId() {

sources/core/src/main/java/tools/dynamia/modules/saas/AccountLocaleProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
@Provider
2828
public class AccountLocaleProvider implements LocaleProvider {
2929

30-
private LoggingService logger = new SLF4JLoggingService(AccountLocaleProvider.class);
30+
private final LoggingService logger = new SLF4JLoggingService(AccountLocaleProvider.class);
3131

3232
@Override
3333
public int getPriority() {

sources/core/src/main/java/tools/dynamia/modules/saas/AccountResolver.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import tools.dynamia.modules.saas.domain.Account;
2323

2424
/**
25+
* Account resolver api
2526
*
2627
* @author Mario Serrano Leones
2728
*/

sources/core/src/main/java/tools/dynamia/modules/saas/AccountStatusCache.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,12 @@
2020
import tools.dynamia.commons.SimpleCache;
2121
import tools.dynamia.modules.saas.domain.Account;
2222

23+
/**
24+
* Basic simple cache for account status. Internaylly use {@link SimpleCache} class
25+
*/
2326
public class AccountStatusCache {
2427

25-
private static SimpleCache<Long, Boolean> statusCache = new SimpleCache<>();
28+
private static final SimpleCache<Long, Boolean> statusCache = new SimpleCache<>();
2629

2730
public static boolean isStatusChanged(Account account) {
2831
if (account.getId() == null) {

0 commit comments

Comments
 (0)