Commit 40be6e588c5460f5223aa67343415b7dde449b67
1 parent
f1cc4fbd
Fix device wizard dialog. Fix install script for oauth2 client registration templates.
Showing
7 changed files
with
34 additions
and
2 deletions
@@ -42,6 +42,7 @@ import java.nio.file.DirectoryStream; | @@ -42,6 +42,7 @@ import java.nio.file.DirectoryStream; | ||
42 | import java.nio.file.Files; | 42 | import java.nio.file.Files; |
43 | import java.nio.file.Path; | 43 | import java.nio.file.Path; |
44 | import java.nio.file.Paths; | 44 | import java.nio.file.Paths; |
45 | +import java.util.Optional; | ||
45 | 46 | ||
46 | import static org.thingsboard.server.service.install.DatabaseHelper.objectMapper; | 47 | import static org.thingsboard.server.service.install.DatabaseHelper.objectMapper; |
47 | 48 | ||
@@ -243,6 +244,11 @@ public class InstallScripts { | @@ -243,6 +244,11 @@ public class InstallScripts { | ||
243 | try { | 244 | try { |
244 | JsonNode oauth2ConfigTemplateJson = objectMapper.readTree(path.toFile()); | 245 | JsonNode oauth2ConfigTemplateJson = objectMapper.readTree(path.toFile()); |
245 | OAuth2ClientRegistrationTemplate clientRegistrationTemplate = objectMapper.treeToValue(oauth2ConfigTemplateJson, OAuth2ClientRegistrationTemplate.class); | 246 | OAuth2ClientRegistrationTemplate clientRegistrationTemplate = objectMapper.treeToValue(oauth2ConfigTemplateJson, OAuth2ClientRegistrationTemplate.class); |
247 | + Optional<OAuth2ClientRegistrationTemplate> existingClientRegistrationTemplate = | ||
248 | + oAuth2TemplateService.findClientRegistrationTemplateByProviderId(clientRegistrationTemplate.getProviderId()); | ||
249 | + if (existingClientRegistrationTemplate.isPresent()) { | ||
250 | + clientRegistrationTemplate.setId(existingClientRegistrationTemplate.get().getId()); | ||
251 | + } | ||
246 | oAuth2TemplateService.saveClientRegistrationTemplate(clientRegistrationTemplate); | 252 | oAuth2TemplateService.saveClientRegistrationTemplate(clientRegistrationTemplate); |
247 | } catch (Exception e) { | 253 | } catch (Exception e) { |
248 | log.error("Unable to load oauth2 config templates from json: [{}]", path.toString()); | 254 | log.error("Unable to load oauth2 config templates from json: [{}]", path.toString()); |
@@ -19,10 +19,13 @@ import org.thingsboard.server.common.data.id.OAuth2ClientRegistrationTemplateId; | @@ -19,10 +19,13 @@ import org.thingsboard.server.common.data.id.OAuth2ClientRegistrationTemplateId; | ||
19 | import org.thingsboard.server.common.data.oauth2.OAuth2ClientRegistrationTemplate; | 19 | import org.thingsboard.server.common.data.oauth2.OAuth2ClientRegistrationTemplate; |
20 | 20 | ||
21 | import java.util.List; | 21 | import java.util.List; |
22 | +import java.util.Optional; | ||
22 | 23 | ||
23 | public interface OAuth2ConfigTemplateService { | 24 | public interface OAuth2ConfigTemplateService { |
24 | OAuth2ClientRegistrationTemplate saveClientRegistrationTemplate(OAuth2ClientRegistrationTemplate clientRegistrationTemplate); | 25 | OAuth2ClientRegistrationTemplate saveClientRegistrationTemplate(OAuth2ClientRegistrationTemplate clientRegistrationTemplate); |
25 | 26 | ||
27 | + Optional<OAuth2ClientRegistrationTemplate> findClientRegistrationTemplateByProviderId(String providerId); | ||
28 | + | ||
26 | OAuth2ClientRegistrationTemplate findClientRegistrationTemplateById(OAuth2ClientRegistrationTemplateId templateId); | 29 | OAuth2ClientRegistrationTemplate findClientRegistrationTemplateById(OAuth2ClientRegistrationTemplateId templateId); |
27 | 30 | ||
28 | List<OAuth2ClientRegistrationTemplate> findAllClientRegistrationTemplates(); | 31 | List<OAuth2ClientRegistrationTemplate> findAllClientRegistrationTemplates(); |
@@ -19,7 +19,11 @@ import org.thingsboard.server.common.data.oauth2.OAuth2ClientRegistrationTemplat | @@ -19,7 +19,11 @@ import org.thingsboard.server.common.data.oauth2.OAuth2ClientRegistrationTemplat | ||
19 | import org.thingsboard.server.dao.Dao; | 19 | import org.thingsboard.server.dao.Dao; |
20 | 20 | ||
21 | import java.util.List; | 21 | import java.util.List; |
22 | +import java.util.Optional; | ||
22 | 23 | ||
23 | public interface OAuth2ClientRegistrationTemplateDao extends Dao<OAuth2ClientRegistrationTemplate> { | 24 | public interface OAuth2ClientRegistrationTemplateDao extends Dao<OAuth2ClientRegistrationTemplate> { |
25 | + | ||
26 | + Optional<OAuth2ClientRegistrationTemplate> findByProviderId(String providerId); | ||
27 | + | ||
24 | List<OAuth2ClientRegistrationTemplate> findAll(); | 28 | List<OAuth2ClientRegistrationTemplate> findAll(); |
25 | } | 29 | } |
@@ -29,6 +29,7 @@ import org.thingsboard.server.dao.exception.DataValidationException; | @@ -29,6 +29,7 @@ import org.thingsboard.server.dao.exception.DataValidationException; | ||
29 | import org.thingsboard.server.dao.service.DataValidator; | 29 | import org.thingsboard.server.dao.service.DataValidator; |
30 | 30 | ||
31 | import java.util.List; | 31 | import java.util.List; |
32 | +import java.util.Optional; | ||
32 | 33 | ||
33 | import static org.thingsboard.server.dao.service.Validator.validateId; | 34 | import static org.thingsboard.server.dao.service.Validator.validateId; |
34 | import static org.thingsboard.server.dao.service.Validator.validateString; | 35 | import static org.thingsboard.server.dao.service.Validator.validateString; |
@@ -37,6 +38,7 @@ import static org.thingsboard.server.dao.service.Validator.validateString; | @@ -37,6 +38,7 @@ import static org.thingsboard.server.dao.service.Validator.validateString; | ||
37 | @Service | 38 | @Service |
38 | public class OAuth2ConfigTemplateServiceImpl extends AbstractEntityService implements OAuth2ConfigTemplateService { | 39 | public class OAuth2ConfigTemplateServiceImpl extends AbstractEntityService implements OAuth2ConfigTemplateService { |
39 | public static final String INCORRECT_CLIENT_REGISTRATION_TEMPLATE_ID = "Incorrect clientRegistrationTemplateId "; | 40 | public static final String INCORRECT_CLIENT_REGISTRATION_TEMPLATE_ID = "Incorrect clientRegistrationTemplateId "; |
41 | + public static final String INCORRECT_CLIENT_REGISTRATION_PROVIDER_ID = "Incorrect clientRegistrationProviderId "; | ||
40 | 42 | ||
41 | @Autowired | 43 | @Autowired |
42 | private OAuth2ClientRegistrationTemplateDao clientRegistrationTemplateDao; | 44 | private OAuth2ClientRegistrationTemplateDao clientRegistrationTemplateDao; |
@@ -60,6 +62,13 @@ public class OAuth2ConfigTemplateServiceImpl extends AbstractEntityService imple | @@ -60,6 +62,13 @@ public class OAuth2ConfigTemplateServiceImpl extends AbstractEntityService imple | ||
60 | } | 62 | } |
61 | 63 | ||
62 | @Override | 64 | @Override |
65 | + public Optional<OAuth2ClientRegistrationTemplate> findClientRegistrationTemplateByProviderId(String providerId) { | ||
66 | + log.trace("Executing findClientRegistrationTemplateByProviderId [{}]", providerId); | ||
67 | + validateString(providerId, INCORRECT_CLIENT_REGISTRATION_PROVIDER_ID + providerId); | ||
68 | + return clientRegistrationTemplateDao.findByProviderId(providerId); | ||
69 | + } | ||
70 | + | ||
71 | + @Override | ||
63 | public OAuth2ClientRegistrationTemplate findClientRegistrationTemplateById(OAuth2ClientRegistrationTemplateId templateId) { | 72 | public OAuth2ClientRegistrationTemplate findClientRegistrationTemplateById(OAuth2ClientRegistrationTemplateId templateId) { |
64 | log.trace("Executing findClientRegistrationTemplateById [{}]", templateId); | 73 | log.trace("Executing findClientRegistrationTemplateById [{}]", templateId); |
65 | validateId(templateId, INCORRECT_CLIENT_REGISTRATION_TEMPLATE_ID + templateId); | 74 | validateId(templateId, INCORRECT_CLIENT_REGISTRATION_TEMPLATE_ID + templateId); |
@@ -26,6 +26,7 @@ import org.thingsboard.server.dao.sql.JpaAbstractDao; | @@ -26,6 +26,7 @@ import org.thingsboard.server.dao.sql.JpaAbstractDao; | ||
26 | 26 | ||
27 | import java.util.ArrayList; | 27 | import java.util.ArrayList; |
28 | import java.util.List; | 28 | import java.util.List; |
29 | +import java.util.Optional; | ||
29 | import java.util.UUID; | 30 | import java.util.UUID; |
30 | 31 | ||
31 | @Component | 32 | @Component |
@@ -44,6 +45,12 @@ public class JpaOAuth2ClientRegistrationTemplateDao extends JpaAbstractDao<OAuth | @@ -44,6 +45,12 @@ public class JpaOAuth2ClientRegistrationTemplateDao extends JpaAbstractDao<OAuth | ||
44 | } | 45 | } |
45 | 46 | ||
46 | @Override | 47 | @Override |
48 | + public Optional<OAuth2ClientRegistrationTemplate> findByProviderId(String providerId) { | ||
49 | + OAuth2ClientRegistrationTemplate oAuth2ClientRegistrationTemplate = DaoUtil.getData(repository.findByProviderId(providerId)); | ||
50 | + return Optional.ofNullable(oAuth2ClientRegistrationTemplate); | ||
51 | + } | ||
52 | + | ||
53 | + @Override | ||
47 | public List<OAuth2ClientRegistrationTemplate> findAll() { | 54 | public List<OAuth2ClientRegistrationTemplate> findAll() { |
48 | Iterable<OAuth2ClientRegistrationTemplateEntity> entities = repository.findAll(); | 55 | Iterable<OAuth2ClientRegistrationTemplateEntity> entities = repository.findAll(); |
49 | List<OAuth2ClientRegistrationTemplate> result = new ArrayList<>(); | 56 | List<OAuth2ClientRegistrationTemplate> result = new ArrayList<>(); |
@@ -21,4 +21,7 @@ import org.thingsboard.server.dao.model.sql.OAuth2ClientRegistrationTemplateEnti | @@ -21,4 +21,7 @@ import org.thingsboard.server.dao.model.sql.OAuth2ClientRegistrationTemplateEnti | ||
21 | import java.util.UUID; | 21 | import java.util.UUID; |
22 | 22 | ||
23 | public interface OAuth2ClientRegistrationTemplateRepository extends CrudRepository<OAuth2ClientRegistrationTemplateEntity, UUID> { | 23 | public interface OAuth2ClientRegistrationTemplateRepository extends CrudRepository<OAuth2ClientRegistrationTemplateEntity, UUID> { |
24 | + | ||
25 | + OAuth2ClientRegistrationTemplateEntity findByProviderId(String providerId); | ||
26 | + | ||
24 | } | 27 | } |
@@ -266,11 +266,11 @@ export class DeviceWizardDialogComponent extends | @@ -266,11 +266,11 @@ export class DeviceWizardDialogComponent extends | ||
266 | }) | 266 | }) |
267 | ); | 267 | ); |
268 | } else { | 268 | } else { |
269 | - return of(null); | 269 | + return of(this.deviceWizardFormGroup.get('deviceProfileId').value); |
270 | } | 270 | } |
271 | } | 271 | } |
272 | 272 | ||
273 | - private createDevice(profileId: EntityId = this.deviceWizardFormGroup.get('deviceProfileId').value): Observable<BaseData<HasId>> { | 273 | + private createDevice(profileId): Observable<BaseData<HasId>> { |
274 | const device = { | 274 | const device = { |
275 | name: this.deviceWizardFormGroup.get('name').value, | 275 | name: this.deviceWizardFormGroup.get('name').value, |
276 | label: this.deviceWizardFormGroup.get('label').value, | 276 | label: this.deviceWizardFormGroup.get('label').value, |