From 6f7828fd64fd95e057b338ccf0d8111c9bf30374 Mon Sep 17 00:00:00 2001 From: Lars Johansson <lars.johansson@ess.eu> Date: Tue, 12 Jul 2022 14:44:03 +0200 Subject: [PATCH] Refactor REST API for structures Use parameters one-by-one instead of arrays. Purpose to improve usability. --- .../repository/DeviceGroupRepository.java | 205 ++++++------ .../repository/DeviceTypeRepository.java | 205 ++++++------ .../repository/DisciplineRepository.java | 194 ++++++------ .../names/repository/SubsystemRepository.java | 205 ++++++------ .../repository/SystemGroupRepository.java | 192 ++++++----- .../names/repository/SystemRepository.java | 204 ++++++------ .../names/rest/api/v1/IStructures.java | 95 ++++-- .../rest/controller/ReportController.java | 12 +- .../rest/controller/StructuresController.java | 36 +-- .../names/service/StructuresService.java | 298 ++++++++++-------- .../names/util/ValidateNameElementUtil.java | 13 +- .../util/ValidateStructureElementUtil.java | 129 ++++---- .../names/docker/StructuresDeviceGroupIT.java | 116 +++---- .../names/docker/StructuresDeviceTypeIT.java | 116 +++---- .../names/docker/StructuresDisciplineIT.java | 116 +++---- .../names/docker/StructuresSubsystemIT.java | 116 +++---- .../names/docker/StructuresSystemGroupIT.java | 116 +++---- .../names/docker/StructuresSystemIT.java | 116 +++---- .../names/util/ValidateUtilTest.java | 49 ++- 19 files changed, 1274 insertions(+), 1259 deletions(-) diff --git a/src/main/java/org/openepics/names/repository/DeviceGroupRepository.java b/src/main/java/org/openepics/names/repository/DeviceGroupRepository.java index 40640ef8..db47eb06 100644 --- a/src/main/java/org/openepics/names/repository/DeviceGroupRepository.java +++ b/src/main/java/org/openepics/names/repository/DeviceGroupRepository.java @@ -31,12 +31,15 @@ import javax.persistence.criteria.Root; import javax.persistence.criteria.Subquery; import org.apache.commons.lang3.BooleanUtils; +import org.apache.commons.lang3.StringUtils; import org.openepics.names.repository.model.DeviceGroup; import org.openepics.names.repository.model.NameStructure; import org.openepics.names.repository.model.Persistable; import org.openepics.names.repository.model.Structure; +import org.openepics.names.repository.model.System; import org.openepics.names.rest.beans.FieldStructure; import org.openepics.names.rest.beans.Status; +import org.openepics.names.util.RepositoryUtil; import org.springframework.stereotype.Repository; /** @@ -47,8 +50,6 @@ import org.springframework.stereotype.Repository; @Repository public class DeviceGroupRepository { - private static final String PERCENT = "%"; - @PersistenceContext private EntityManager em; @@ -57,13 +58,20 @@ public class DeviceGroupRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return count of device groups */ - public Long countDeviceGroups( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - return countDeviceGroups(statuses, deleted, queryFields, queryValues, Boolean.FALSE); + public Long countDeviceGroups(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { + return countDeviceGroups(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE); } /** @@ -71,13 +79,19 @@ public class DeviceGroupRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return count of device groups */ - public Long countDeviceGroups( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + public Long countDeviceGroups(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { // note // use of function for mnemonic path @@ -90,7 +104,9 @@ public class DeviceGroupRepository { CriteriaQuery<Long> cq = cb.createQuery(Long.class); Root<DeviceGroup> from = cq.from(DeviceGroup.class); - cq.where(cb.and(preparePredicatesDeviceGroups(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesDeviceGroups(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(cb.count(from)); return em.createQuery(cq).getSingleResult(); @@ -101,41 +117,21 @@ public class DeviceGroupRepository { * * @param status status * @param deleted deleted - * @param queryField query field - * @param queryValue query value + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return list of device groups */ - public List<DeviceGroup> readDeviceGroups( - Status status, Boolean deleted, FieldStructure queryField, String queryValue) { - - return readDeviceGroups( - status != null ? new Status[] {status} : null, - deleted, - queryField != null ? new FieldStructure[] {queryField} : null, - queryValue != null ? new String[] {queryValue} : null, - Boolean.FALSE, - null, null, null, null); - } + public List<DeviceGroup> readDeviceGroups(Status status, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { - /** - * Find device groups. - * - * @param status status - * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values - * @return list of device groups - */ - public List<DeviceGroup> readDeviceGroups( - Status status, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - - return readDeviceGroups( - status != null ? new Status[] {status} : null, - deleted, - queryFields, - queryValues, - Boolean.FALSE, - null, null, null, null); + return readDeviceGroups(status != null ? new Status[] {status} : null, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, null, null, null, null); } /** @@ -143,20 +139,25 @@ public class DeviceGroupRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param orderBy order by * @param isAsc is ascending * @param offset offset * @param limit limit * @return list of device groups */ - public List<DeviceGroup> readDeviceGroups( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, + public List<DeviceGroup> readDeviceGroups(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { - return readDeviceGroups( - statuses, deleted, queryFields, queryValues, Boolean.FALSE, - orderBy, isAsc, offset, limit); + return readDeviceGroups(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, orderBy, isAsc, offset, limit); } /** @@ -164,8 +165,13 @@ public class DeviceGroupRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @param orderBy order by * @param isAsc is ascending @@ -173,9 +179,9 @@ public class DeviceGroupRepository { * @param limit limit * @return list of device groups */ - public List<DeviceGroup> readDeviceGroups( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory, - FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { + public List<DeviceGroup> readDeviceGroups(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // note // use of function for mnemonic path @@ -192,7 +198,9 @@ public class DeviceGroupRepository { CriteriaQuery<DeviceGroup> cq = cb.createQuery(DeviceGroup.class); Root<DeviceGroup> from = cq.from(DeviceGroup.class); - cq.where(cb.and(preparePredicatesDeviceGroups(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesDeviceGroups(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(from); if (orderBy != null) { @@ -248,14 +256,19 @@ public class DeviceGroupRepository { * @param sub sub query to be used if history not included * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return list of predicates */ - private List<Predicate> preparePredicatesDeviceGroups( - CriteriaBuilder cb, Root<DeviceGroup> from, Subquery<Long> sub, - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + private List<Predicate> preparePredicatesDeviceGroups(CriteriaBuilder cb, Root<DeviceGroup> from, Subquery<Long> sub, Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { List<Predicate> predicates = new ArrayList<>(); @@ -307,51 +320,31 @@ public class DeviceGroupRepository { if (deleted != null) { predicates.add(cb.equal(from.get(NameStructure.FIELD_DELETED), deleted)); } - if (queryFields != null) { - for (int i=0; i<queryFields.length; i++) { - String queryValue = queryValues[i]; - - // jpa query characters % and _ - // remove excess % characters - if (queryValue.startsWith(PERCENT)) { - while (queryValue.startsWith(PERCENT)) { - queryValue = queryValue.substring(1); - } - queryValue = PERCENT + queryValue; - } - if (queryValue.endsWith(PERCENT)) { - while (queryValue.endsWith(PERCENT)) { - queryValue = queryValue.substring(0, queryValue.length()-1); - } - queryValue = queryValue + PERCENT; - } - switch (queryFields[i]) { - case UUID: - predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), queryValue))); - break; - case PARENT: - predicates.add(cb.and(cb.equal(from.get(DeviceGroup.FIELD_PARENT_UUID), queryValue))); - break; - case NAME: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), queryValue))); - break; - case MNEMONIC: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), queryValue))); - break; - case MNEMONICEQUIVALENCE: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), queryValue))); - break; - case MNEMONICPATH: - predicates.add(cb.and(cb.like(cb.function(DeviceGroup.FUNCTION_GET_MNEMONIC_PATH_DEVICEGROUP, String.class, from.get(NameStructure.FIELD_UUID)), queryValue))); - break; - case DESCRIPTION: - predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), queryValue))); - break; - default: - continue; - } - } + // prepare pattern + // jpa query characters % and _ + // remove excess % characters + + if (!StringUtils.isEmpty(uuid)) { + predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), RepositoryUtil.preparePattern(uuid)))); + } + if (!StringUtils.isEmpty(parentUuid)) { + predicates.add(cb.and(cb.equal(from.get(System.FIELD_PARENT_UUID), RepositoryUtil.preparePattern(parentUuid)))); + } + if (!StringUtils.isEmpty(name)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), RepositoryUtil.preparePattern(name)))); + } + if (!StringUtils.isEmpty(mnemonic)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), RepositoryUtil.preparePattern(mnemonic)))); + } + if (!StringUtils.isEmpty(mnemonicequivalence)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), RepositoryUtil.preparePattern(mnemonicequivalence)))); + } + if (!StringUtils.isEmpty(mnemonicpath)) { + predicates.add(cb.and(cb.like(cb.function(DeviceGroup.FUNCTION_GET_MNEMONIC_PATH_DEVICEGROUP, String.class, from.get(NameStructure.FIELD_UUID)), RepositoryUtil.preparePattern(mnemonicpath)))); + } + if (!StringUtils.isEmpty(description)) { + predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), RepositoryUtil.preparePattern(description)))); } return predicates; diff --git a/src/main/java/org/openepics/names/repository/DeviceTypeRepository.java b/src/main/java/org/openepics/names/repository/DeviceTypeRepository.java index 1c6449d0..b3eca34d 100644 --- a/src/main/java/org/openepics/names/repository/DeviceTypeRepository.java +++ b/src/main/java/org/openepics/names/repository/DeviceTypeRepository.java @@ -31,12 +31,15 @@ import javax.persistence.criteria.Root; import javax.persistence.criteria.Subquery; import org.apache.commons.lang3.BooleanUtils; +import org.apache.commons.lang3.StringUtils; import org.openepics.names.repository.model.DeviceType; import org.openepics.names.repository.model.NameStructure; import org.openepics.names.repository.model.Persistable; import org.openepics.names.repository.model.Structure; +import org.openepics.names.repository.model.System; import org.openepics.names.rest.beans.FieldStructure; import org.openepics.names.rest.beans.Status; +import org.openepics.names.util.RepositoryUtil; import org.springframework.stereotype.Repository; /** @@ -47,8 +50,6 @@ import org.springframework.stereotype.Repository; @Repository public class DeviceTypeRepository { - private static final String PERCENT = "%"; - @PersistenceContext private EntityManager em; @@ -57,13 +58,20 @@ public class DeviceTypeRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return count of device types */ - public Long countDeviceTypes( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - return countDeviceTypes(statuses, deleted, queryFields, queryValues, Boolean.FALSE); + public Long countDeviceTypes(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { + return countDeviceTypes(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE); } /** @@ -71,13 +79,19 @@ public class DeviceTypeRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return count of device types */ - public Long countDeviceTypes( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + public Long countDeviceTypes(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { // note // use of function for mnemonic path @@ -90,7 +104,9 @@ public class DeviceTypeRepository { CriteriaQuery<Long> cq = cb.createQuery(Long.class); Root<DeviceType> from = cq.from(DeviceType.class); - cq.where(cb.and(preparePredicatesDeviceTypes(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesDeviceTypes(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(cb.count(from)); return em.createQuery(cq).getSingleResult(); @@ -101,41 +117,21 @@ public class DeviceTypeRepository { * * @param status status * @param deleted deleted - * @param queryField query field - * @param queryValue query value + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return list of device types */ - public List<DeviceType> readDeviceTypes( - Status status, Boolean deleted, FieldStructure queryField, String queryValue) { - - return readDeviceTypes( - status != null ? new Status[] {status} : null, - deleted, - queryField != null ? new FieldStructure[] {queryField} : null, - queryValue != null ? new String[] {queryValue} : null, - Boolean.FALSE, - null, null, null, null); - } + public List<DeviceType> readDeviceTypes(Status status, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { - /** - * Find device types. - * - * @param status status - * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values - * @return list of device types - */ - public List<DeviceType> readDeviceTypes( - Status status, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - - return readDeviceTypes( - status != null ? new Status[] {status} : null, - deleted, - queryFields, - queryValues, - Boolean.FALSE, - null, null, null, null); + return readDeviceTypes(status != null ? new Status[] {status} : null, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, null, null, null, null); } /** @@ -143,20 +139,25 @@ public class DeviceTypeRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param orderBy order by * @param isAsc is ascending * @param offset offset * @param limit limit * @return list of device types */ - public List<DeviceType> readDeviceTypes( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, + public List<DeviceType> readDeviceTypes(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { - return readDeviceTypes( - statuses, deleted, queryFields, queryValues, Boolean.FALSE, - orderBy, isAsc, offset, limit); + return readDeviceTypes(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, orderBy, isAsc, offset, limit); } /** @@ -164,8 +165,13 @@ public class DeviceTypeRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @param orderBy order by * @param isAsc is ascending @@ -173,9 +179,9 @@ public class DeviceTypeRepository { * @param limit limit * @return list of device types */ - public List<DeviceType> readDeviceTypes( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory, - FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { + public List<DeviceType> readDeviceTypes(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // note // use of function for mnemonic path @@ -192,7 +198,9 @@ public class DeviceTypeRepository { CriteriaQuery<DeviceType> cq = cb.createQuery(DeviceType.class); Root<DeviceType> from = cq.from(DeviceType.class); - cq.where(cb.and(preparePredicatesDeviceTypes(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesDeviceTypes(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(from); if (orderBy != null) { @@ -248,14 +256,19 @@ public class DeviceTypeRepository { * @param sub sub query to be used if history not included * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return list of predicates */ - private List<Predicate> preparePredicatesDeviceTypes( - CriteriaBuilder cb, Root<DeviceType> from, Subquery<Long> sub, - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + private List<Predicate> preparePredicatesDeviceTypes(CriteriaBuilder cb, Root<DeviceType> from, Subquery<Long> sub, Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { List<Predicate> predicates = new ArrayList<>(); @@ -307,51 +320,31 @@ public class DeviceTypeRepository { if (deleted != null) { predicates.add(cb.equal(from.get(NameStructure.FIELD_DELETED), deleted)); } - if (queryFields != null) { - for (int i=0; i<queryFields.length; i++) { - String queryValue = queryValues[i]; - - // jpa query characters % and _ - // remove excess % characters - if (queryValue.startsWith(PERCENT)) { - while (queryValue.startsWith(PERCENT)) { - queryValue = queryValue.substring(1); - } - queryValue = PERCENT + queryValue; - } - if (queryValue.endsWith(PERCENT)) { - while (queryValue.endsWith(PERCENT)) { - queryValue = queryValue.substring(0, queryValue.length()-1); - } - queryValue = queryValue + PERCENT; - } - switch (queryFields[i]) { - case UUID: - predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), queryValue))); - break; - case PARENT: - predicates.add(cb.and(cb.equal(from.get(DeviceType.FIELD_PARENT_UUID), queryValue))); - break; - case NAME: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), queryValue))); - break; - case MNEMONIC: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), queryValue))); - break; - case MNEMONICEQUIVALENCE: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), queryValue))); - break; - case MNEMONICPATH: - predicates.add(cb.and(cb.like(cb.function(DeviceType.FUNCTION_GET_MNEMONIC_PATH_DEVICETYPE, String.class, from.get(NameStructure.FIELD_UUID)), queryValue))); - break; - case DESCRIPTION: - predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), queryValue))); - break; - default: - continue; - } - } + // prepare pattern + // jpa query characters % and _ + // remove excess % characters + + if (!StringUtils.isEmpty(uuid)) { + predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), RepositoryUtil.preparePattern(uuid)))); + } + if (!StringUtils.isEmpty(parentUuid)) { + predicates.add(cb.and(cb.equal(from.get(System.FIELD_PARENT_UUID), RepositoryUtil.preparePattern(parentUuid)))); + } + if (!StringUtils.isEmpty(name)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), RepositoryUtil.preparePattern(name)))); + } + if (!StringUtils.isEmpty(mnemonic)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), RepositoryUtil.preparePattern(mnemonic)))); + } + if (!StringUtils.isEmpty(mnemonicequivalence)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), RepositoryUtil.preparePattern(mnemonicequivalence)))); + } + if (!StringUtils.isEmpty(mnemonicpath)) { + predicates.add(cb.and(cb.like(cb.function(DeviceType.FUNCTION_GET_MNEMONIC_PATH_DEVICETYPE, String.class, from.get(NameStructure.FIELD_UUID)), RepositoryUtil.preparePattern(mnemonicpath)))); + } + if (!StringUtils.isEmpty(description)) { + predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), RepositoryUtil.preparePattern(description)))); } return predicates; diff --git a/src/main/java/org/openepics/names/repository/DisciplineRepository.java b/src/main/java/org/openepics/names/repository/DisciplineRepository.java index 043b888d..9eb3ecbe 100644 --- a/src/main/java/org/openepics/names/repository/DisciplineRepository.java +++ b/src/main/java/org/openepics/names/repository/DisciplineRepository.java @@ -31,12 +31,14 @@ import javax.persistence.criteria.Root; import javax.persistence.criteria.Subquery; import org.apache.commons.lang3.BooleanUtils; +import org.apache.commons.lang3.StringUtils; import org.openepics.names.repository.model.Discipline; import org.openepics.names.repository.model.NameStructure; import org.openepics.names.repository.model.Persistable; import org.openepics.names.repository.model.Structure; import org.openepics.names.rest.beans.FieldStructure; import org.openepics.names.rest.beans.Status; +import org.openepics.names.util.RepositoryUtil; import org.springframework.stereotype.Repository; /** @@ -47,8 +49,6 @@ import org.springframework.stereotype.Repository; @Repository public class DisciplineRepository { - private static final String PERCENT = "%"; - @PersistenceContext private EntityManager em; @@ -57,13 +57,19 @@ public class DisciplineRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return count of disciplines */ - public Long countDisciplines( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - return countDisciplines(statuses, deleted, queryFields, queryValues, Boolean.FALSE); + public Long countDisciplines(Status[] statuses, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { + return countDisciplines(statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE); } /** @@ -71,13 +77,18 @@ public class DisciplineRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return count of disciplines */ - public Long countDisciplines( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + public Long countDisciplines(Status[] statuses, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { // note // use of function for mnemonic path @@ -90,52 +101,33 @@ public class DisciplineRepository { CriteriaQuery<Long> cq = cb.createQuery(Long.class); Root<Discipline> from = cq.from(Discipline.class); - cq.where(cb.and(preparePredicatesDisciplines(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesDisciplines(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(cb.count(from)); return em.createQuery(cq).getSingleResult(); } - /** - *Find disciplines. - * - * @param status status - * @param deleted deleted - * @param queryField query field - * @param queryValue query value - * @return list of disciplines - */ - public List<Discipline> readDisciplines( - Status status, Boolean deleted, FieldStructure queryField, String queryValue) { - - return readDisciplines( - status != null ? new Status[] {status} : null, - deleted, - queryField != null ? new FieldStructure[] {queryField} : null, - queryValue != null ? new String[] {queryValue} : null, - Boolean.FALSE, - null, null, null, null); - } - /** * Find disciplines. * * @param status status * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return list of disciplines */ - public List<Discipline> readDisciplines( - Status status, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - - return readDisciplines( - status != null ? new Status[] {status} : null, - deleted, - queryFields, - queryValues, - Boolean.FALSE, - null, null, null, null); + public List<Discipline> readDisciplines(Status status, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { + + return readDisciplines(status != null ? new Status[] {status} : null, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, null, null, null, null); } /** @@ -143,20 +135,24 @@ public class DisciplineRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param orderBy order by * @param isAsc is ascending * @param offset offset * @param limit limit * @return list of disciplines */ - public List<Discipline> readDisciplines( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, + public List<Discipline> readDisciplines(Status[] statuses, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { - return readDisciplines( - statuses, deleted, queryFields, queryValues, Boolean.FALSE, - orderBy, isAsc, offset, limit); + return readDisciplines(statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, orderBy, isAsc, offset, limit); } /** @@ -164,8 +160,12 @@ public class DisciplineRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @param orderBy order by * @param isAsc is ascending @@ -173,9 +173,9 @@ public class DisciplineRepository { * @param limit limit * @return list of disciplines */ - public List<Discipline> readDisciplines( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory, - FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { + public List<Discipline> readDisciplines(Status[] statuses, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // note // use of function for mnemonic path @@ -192,7 +192,9 @@ public class DisciplineRepository { CriteriaQuery<Discipline> cq = cb.createQuery(Discipline.class); Root<Discipline> from = cq.from(Discipline.class); - cq.where(cb.and(preparePredicatesDisciplines(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesDisciplines(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(from); if (orderBy != null) { @@ -248,14 +250,18 @@ public class DisciplineRepository { * @param sub sub query to be used if history not included * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return list of predicates */ - private List<Predicate> preparePredicatesDisciplines( - CriteriaBuilder cb, Root<Discipline> from, Subquery<Long> sub, - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + private List<Predicate> preparePredicatesDisciplines(CriteriaBuilder cb, Root<Discipline> from, Subquery<Long> sub, Status[] statuses, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { List<Predicate> predicates = new ArrayList<>(); @@ -307,48 +313,28 @@ public class DisciplineRepository { if (deleted != null) { predicates.add(cb.equal(from.get(NameStructure.FIELD_DELETED), deleted)); } - if (queryFields != null) { - for (int i=0; i<queryFields.length; i++) { - String queryValue = queryValues[i]; - - // jpa query characters % and _ - // remove excess % characters - if (queryValue.startsWith(PERCENT)) { - while (queryValue.startsWith(PERCENT)) { - queryValue = queryValue.substring(1); - } - queryValue = PERCENT + queryValue; - } - if (queryValue.endsWith(PERCENT)) { - while (queryValue.endsWith(PERCENT)) { - queryValue = queryValue.substring(0, queryValue.length()-1); - } - queryValue = queryValue + PERCENT; - } - switch (queryFields[i]) { - case UUID: - predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), queryValue))); - break; - case NAME: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), queryValue))); - break; - case MNEMONIC: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), queryValue))); - break; - case MNEMONICEQUIVALENCE: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), queryValue))); - break; - case MNEMONICPATH: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), queryValue))); - break; - case DESCRIPTION: - predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), queryValue))); - break; - default: - continue; - } - } + // prepare pattern + // jpa query characters % and _ + // remove excess % characters + + if (!StringUtils.isEmpty(uuid)) { + predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), RepositoryUtil.preparePattern(uuid)))); + } + if (!StringUtils.isEmpty(name)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), RepositoryUtil.preparePattern(name)))); + } + if (!StringUtils.isEmpty(mnemonic)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), RepositoryUtil.preparePattern(mnemonic)))); + } + if (!StringUtils.isEmpty(mnemonicequivalence)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), RepositoryUtil.preparePattern(mnemonicequivalence)))); + } + if (!StringUtils.isEmpty(mnemonicpath)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), RepositoryUtil.preparePattern(mnemonicpath)))); + } + if (!StringUtils.isEmpty(description)) { + predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), RepositoryUtil.preparePattern(description)))); } return predicates; diff --git a/src/main/java/org/openepics/names/repository/SubsystemRepository.java b/src/main/java/org/openepics/names/repository/SubsystemRepository.java index 0cd577f3..be409abc 100644 --- a/src/main/java/org/openepics/names/repository/SubsystemRepository.java +++ b/src/main/java/org/openepics/names/repository/SubsystemRepository.java @@ -31,12 +31,15 @@ import javax.persistence.criteria.Root; import javax.persistence.criteria.Subquery; import org.apache.commons.lang3.BooleanUtils; +import org.apache.commons.lang3.StringUtils; import org.openepics.names.repository.model.NameStructure; import org.openepics.names.repository.model.Persistable; import org.openepics.names.repository.model.Structure; import org.openepics.names.repository.model.Subsystem; +import org.openepics.names.repository.model.System; import org.openepics.names.rest.beans.FieldStructure; import org.openepics.names.rest.beans.Status; +import org.openepics.names.util.RepositoryUtil; import org.springframework.stereotype.Repository; /** @@ -47,8 +50,6 @@ import org.springframework.stereotype.Repository; @Repository public class SubsystemRepository { - private static final String PERCENT = "%"; - @PersistenceContext private EntityManager em; @@ -57,13 +58,20 @@ public class SubsystemRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return count of subsystems */ - public Long countSubsystems( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - return countSubsystems(statuses, deleted, queryFields, queryValues, Boolean.FALSE); + public Long countSubsystems(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { + return countSubsystems(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE); } /** @@ -71,13 +79,19 @@ public class SubsystemRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return count of subsystems */ - public Long countSubsystems( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + public Long countSubsystems(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { // note // use of function for mnemonic path @@ -90,7 +104,9 @@ public class SubsystemRepository { CriteriaQuery<Long> cq = cb.createQuery(Long.class); Root<Subsystem> from = cq.from(Subsystem.class); - cq.where(cb.and(preparePredicatesSubsystems(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesSubsystems(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(cb.count(from)); return em.createQuery(cq).getSingleResult(); @@ -101,41 +117,21 @@ public class SubsystemRepository { * * @param status status * @param deleted deleted - * @param queryField query field - * @param queryValue query value + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return list of subsystems */ - public List<Subsystem> readSubsystems( - Status status, Boolean deleted, FieldStructure queryField, String queryValue) { - - return readSubsystems( - status != null ? new Status[] {status} : null, - deleted, - queryField != null ? new FieldStructure[] {queryField} : null, - queryValue != null ? new String[] {queryValue} : null, - Boolean.FALSE, - null, null, null, null); - } + public List<Subsystem> readSubsystems(Status status, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { - /** - * Find subsystems. - * - * @param status status - * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values - * @return list of subsystems - */ - public List<Subsystem> readSubsystems( - Status status, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - - return readSubsystems( - status != null ? new Status[] {status} : null, - deleted, - queryFields, - queryValues, - Boolean.FALSE, - null, null, null, null); + return readSubsystems(status != null ? new Status[] {status} : null, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, null, null, null, null); } /** @@ -143,20 +139,25 @@ public class SubsystemRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param orderBy order by * @param isAsc is ascending * @param offset offset * @param limit limit * @return list of subsystems */ - public List<Subsystem> readSubsystems( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, + public List<Subsystem> readSubsystems(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { - return readSubsystems( - statuses, deleted, queryFields, queryValues, Boolean.FALSE, - orderBy, isAsc, offset, limit); + return readSubsystems(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, orderBy, isAsc, offset, limit); } /** @@ -164,8 +165,13 @@ public class SubsystemRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @param orderBy order by * @param isAsc is ascending @@ -173,9 +179,9 @@ public class SubsystemRepository { * @param limit limit * @return list of subsystems */ - public List<Subsystem> readSubsystems( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory, - FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { + public List<Subsystem> readSubsystems(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // note // use of function for mnemonic path @@ -192,7 +198,9 @@ public class SubsystemRepository { CriteriaQuery<Subsystem> cq = cb.createQuery(Subsystem.class); Root<Subsystem> from = cq.from(Subsystem.class); - cq.where(cb.and(preparePredicatesSubsystems(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesSubsystems(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(from); if (orderBy != null) { @@ -248,14 +256,19 @@ public class SubsystemRepository { * @param sub sub query to be used if history not included * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return list of predicates */ - private List<Predicate> preparePredicatesSubsystems( - CriteriaBuilder cb, Root<Subsystem> from, Subquery<Long> sub, - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + private List<Predicate> preparePredicatesSubsystems(CriteriaBuilder cb, Root<Subsystem> from, Subquery<Long> sub, Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { List<Predicate> predicates = new ArrayList<>(); @@ -307,51 +320,31 @@ public class SubsystemRepository { if (deleted != null) { predicates.add(cb.equal(from.get(NameStructure.FIELD_DELETED), deleted)); } - if (queryFields != null) { - for (int i=0; i<queryFields.length; i++) { - String queryValue = queryValues[i]; - - // jpa query characters % and _ - // remove excess % characters - if (queryValue.startsWith(PERCENT)) { - while (queryValue.startsWith(PERCENT)) { - queryValue = queryValue.substring(1); - } - queryValue = PERCENT + queryValue; - } - if (queryValue.endsWith(PERCENT)) { - while (queryValue.endsWith(PERCENT)) { - queryValue = queryValue.substring(0, queryValue.length()-1); - } - queryValue = queryValue + PERCENT; - } - switch (queryFields[i]) { - case UUID: - predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), queryValue))); - break; - case PARENT: - predicates.add(cb.and(cb.equal(from.get(Subsystem.FIELD_PARENT_UUID), queryValue))); - break; - case NAME: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), queryValue))); - break; - case MNEMONIC: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), queryValue))); - break; - case MNEMONICEQUIVALENCE: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), queryValue))); - break; - case MNEMONICPATH: - predicates.add(cb.and(cb.like(cb.function(Subsystem.FUNCTION_GET_MNEMONIC_PATH_SUBSYSTEM, String.class, from.get(NameStructure.FIELD_UUID)), queryValue))); - break; - case DESCRIPTION: - predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), queryValue))); - break; - default: - continue; - } - } + // prepare pattern + // jpa query characters % and _ + // remove excess % characters + + if (!StringUtils.isEmpty(uuid)) { + predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), RepositoryUtil.preparePattern(uuid)))); + } + if (!StringUtils.isEmpty(parentUuid)) { + predicates.add(cb.and(cb.equal(from.get(System.FIELD_PARENT_UUID), RepositoryUtil.preparePattern(parentUuid)))); + } + if (!StringUtils.isEmpty(name)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), RepositoryUtil.preparePattern(name)))); + } + if (!StringUtils.isEmpty(mnemonic)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), RepositoryUtil.preparePattern(mnemonic)))); + } + if (!StringUtils.isEmpty(mnemonicequivalence)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), RepositoryUtil.preparePattern(mnemonicequivalence)))); + } + if (!StringUtils.isEmpty(mnemonicpath)) { + predicates.add(cb.and(cb.like(cb.function(Subsystem.FUNCTION_GET_MNEMONIC_PATH_SUBSYSTEM, String.class, from.get(NameStructure.FIELD_UUID)), RepositoryUtil.preparePattern(mnemonicpath)))); + } + if (!StringUtils.isEmpty(description)) { + predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), RepositoryUtil.preparePattern(description)))); } return predicates; diff --git a/src/main/java/org/openepics/names/repository/SystemGroupRepository.java b/src/main/java/org/openepics/names/repository/SystemGroupRepository.java index 23945f05..bc4c0249 100644 --- a/src/main/java/org/openepics/names/repository/SystemGroupRepository.java +++ b/src/main/java/org/openepics/names/repository/SystemGroupRepository.java @@ -31,12 +31,14 @@ import javax.persistence.criteria.Root; import javax.persistence.criteria.Subquery; import org.apache.commons.lang3.BooleanUtils; +import org.apache.commons.lang3.StringUtils; import org.openepics.names.repository.model.NameStructure; import org.openepics.names.repository.model.Persistable; import org.openepics.names.repository.model.Structure; import org.openepics.names.repository.model.SystemGroup; import org.openepics.names.rest.beans.FieldStructure; import org.openepics.names.rest.beans.Status; +import org.openepics.names.util.RepositoryUtil; import org.springframework.stereotype.Repository; /** @@ -47,8 +49,6 @@ import org.springframework.stereotype.Repository; @Repository public class SystemGroupRepository { - private static final String PERCENT = "%"; - @PersistenceContext private EntityManager em; @@ -57,13 +57,19 @@ public class SystemGroupRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return count of system groups */ - public Long countSystemGroups( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - return countSystemGroups(statuses, deleted, queryFields, queryValues, Boolean.FALSE); + public Long countSystemGroups(Status[] statuses, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { + return countSystemGroups(statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE); } /** @@ -71,13 +77,18 @@ public class SystemGroupRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return count of system groups */ - public Long countSystemGroups( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + public Long countSystemGroups(Status[] statuses, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { // where // statuses @@ -88,7 +99,9 @@ public class SystemGroupRepository { CriteriaQuery<Long> cq = cb.createQuery(Long.class); Root<SystemGroup> from = cq.from(SystemGroup.class); - cq.where(cb.and(preparePredicatesSystemGroups(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesSystemGroups(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(cb.count(from)); return em.createQuery(cq).getSingleResult(); @@ -99,41 +112,20 @@ public class SystemGroupRepository { * * @param status status * @param deleted deleted - * @param queryField query field - * @param queryValue query value + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return list of system groups */ - public List<SystemGroup> readSystemGroups( - Status status, Boolean deleted, FieldStructure queryField, String queryValue) { - - return readSystemGroups( - status != null ? new Status[] {status} : null, - deleted, - queryField != null ? new FieldStructure[] {queryField} : null, - queryValue != null ? new String[] {queryValue} : null, - Boolean.FALSE, - null, null, null, null); - } + public List<SystemGroup> readSystemGroups(Status status, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { - /** - * Find system groups. - * - * @param status status - * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values - * @return list of system groups - */ - public List<SystemGroup> readSystemGroups( - Status status, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - - return readSystemGroups( - status != null ? new Status[] {status} : null, - deleted, - queryFields, - queryValues, - Boolean.FALSE, - null, null, null, null); + return readSystemGroups(status != null ? new Status[] {status} : null, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, null, null, null, null); } /** @@ -141,20 +133,24 @@ public class SystemGroupRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param orderBy order by * @param isAsc is ascending * @param offset offset * @param limit limit * @return list of system groups */ - public List<SystemGroup> readSystemGroups( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, + public List<SystemGroup> readSystemGroups(Status[] statuses, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { - return readSystemGroups( - statuses, deleted, queryFields, queryValues, Boolean.FALSE, - orderBy, isAsc, offset, limit); + return readSystemGroups(statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, orderBy, isAsc, offset, limit); } /** @@ -162,8 +158,12 @@ public class SystemGroupRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @param orderBy order by * @param isAsc is ascending @@ -171,9 +171,9 @@ public class SystemGroupRepository { * @param limit limit * @return list of system groups */ - public List<SystemGroup> readSystemGroups( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory, - FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { + public List<SystemGroup> readSystemGroups(Status[] statuses, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // where // statuses, @@ -188,7 +188,9 @@ public class SystemGroupRepository { CriteriaQuery<SystemGroup> cq = cb.createQuery(SystemGroup.class); Root<SystemGroup> from = cq.from(SystemGroup.class); - cq.where(cb.and(preparePredicatesSystemGroups(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesSystemGroups(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(from); if (orderBy != null) { @@ -244,14 +246,18 @@ public class SystemGroupRepository { * @param sub sub query to be used if history not included * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return list of predicates */ - private List<Predicate> preparePredicatesSystemGroups( - CriteriaBuilder cb, Root<SystemGroup> from, Subquery<Long> sub, - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + private List<Predicate> preparePredicatesSystemGroups(CriteriaBuilder cb, Root<SystemGroup> from, Subquery<Long> sub, Status[] statuses, Boolean deleted, + String uuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { List<Predicate> predicates = new ArrayList<>(); @@ -303,48 +309,28 @@ public class SystemGroupRepository { if (deleted != null) { predicates.add(cb.equal(from.get(NameStructure.FIELD_DELETED), deleted)); } - if (queryFields != null) { - for (int i=0; i<queryFields.length; i++) { - String queryValue = queryValues[i]; - - // jpa query characters % and _ - // remove excess % characters - if (queryValue.startsWith(PERCENT)) { - while (queryValue.startsWith(PERCENT)) { - queryValue = queryValue.substring(1); - } - queryValue = PERCENT + queryValue; - } - if (queryValue.endsWith(PERCENT)) { - while (queryValue.endsWith(PERCENT)) { - queryValue = queryValue.substring(0, queryValue.length()-1); - } - queryValue = queryValue + PERCENT; - } - switch (queryFields[i]) { - case UUID: - predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), queryValue))); - break; - case NAME: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), queryValue))); - break; - case MNEMONIC: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), queryValue))); - break; - case MNEMONICEQUIVALENCE: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), queryValue))); - break; - case MNEMONICPATH: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), queryValue))); - break; - case DESCRIPTION: - predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), queryValue))); - break; - default: - continue; - } - } + // prepare pattern + // jpa query characters % and _ + // remove excess % characters + + if (!StringUtils.isEmpty(uuid)) { + predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), RepositoryUtil.preparePattern(uuid)))); + } + if (!StringUtils.isEmpty(name)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), RepositoryUtil.preparePattern(name)))); + } + if (!StringUtils.isEmpty(mnemonic)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), RepositoryUtil.preparePattern(mnemonic)))); + } + if (!StringUtils.isEmpty(mnemonicequivalence)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), RepositoryUtil.preparePattern(mnemonicequivalence)))); + } + if (!StringUtils.isEmpty(mnemonicpath)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), RepositoryUtil.preparePattern(mnemonicpath)))); + } + if (!StringUtils.isEmpty(description)) { + predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), RepositoryUtil.preparePattern(description)))); } return predicates; diff --git a/src/main/java/org/openepics/names/repository/SystemRepository.java b/src/main/java/org/openepics/names/repository/SystemRepository.java index b265a490..32978d0e 100644 --- a/src/main/java/org/openepics/names/repository/SystemRepository.java +++ b/src/main/java/org/openepics/names/repository/SystemRepository.java @@ -31,12 +31,14 @@ import javax.persistence.criteria.Root; import javax.persistence.criteria.Subquery; import org.apache.commons.lang3.BooleanUtils; +import org.apache.commons.lang3.StringUtils; import org.openepics.names.repository.model.NameStructure; import org.openepics.names.repository.model.Persistable; import org.openepics.names.repository.model.Structure; import org.openepics.names.repository.model.System; import org.openepics.names.rest.beans.FieldStructure; import org.openepics.names.rest.beans.Status; +import org.openepics.names.util.RepositoryUtil; import org.springframework.stereotype.Repository; /** @@ -47,8 +49,6 @@ import org.springframework.stereotype.Repository; @Repository public class SystemRepository { - private static final String PERCENT = "%"; - @PersistenceContext private EntityManager em; @@ -57,13 +57,20 @@ public class SystemRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return count of systems */ - public Long countSystems( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - return countSystems(statuses, deleted, queryFields, queryValues, Boolean.FALSE); + public Long countSystems(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { + return countSystems(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE); } /** @@ -71,13 +78,19 @@ public class SystemRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return count of systems */ - public Long countSystems( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + public Long countSystems(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { // note // use of function for mnemonic path @@ -90,7 +103,9 @@ public class SystemRepository { CriteriaQuery<Long> cq = cb.createQuery(Long.class); Root<System> from = cq.from(System.class); - cq.where(cb.and(preparePredicatesSystems(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesSystems(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(cb.count(from)); return em.createQuery(cq).getSingleResult(); @@ -101,41 +116,21 @@ public class SystemRepository { * * @param status status * @param deleted deleted - * @param queryField query field - * @param queryValue query value + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @return list of systems */ - public List<System> readSystems( - Status status, Boolean deleted, FieldStructure queryField, String queryValue) { - - return readSystems( - status != null ? new Status[] {status} : null, - deleted, - queryField != null ? new FieldStructure[] {queryField} : null, - queryValue != null ? new String[] {queryValue} : null, - Boolean.FALSE, - null, null, null, null); - } + public List<System> readSystems(Status status, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description) { - /** - * Find systems. - * - * @param status status - * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values - * @return list of systems - */ - public List<System> readSystems( - Status status, Boolean deleted, FieldStructure[] queryFields, String[] queryValues) { - - return readSystems( - status != null ? new Status[] {status} : null, - deleted, - queryFields, - queryValues, - Boolean.FALSE, - null, null, null, null); + return readSystems(status != null ? new Status[] {status} : null, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, null, null, null, null); } /** @@ -143,20 +138,25 @@ public class SystemRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param orderBy order by * @param isAsc is ascending * @param offset offset * @param limit limit * @return list of systems */ - public List<System> readSystems( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, + public List<System> readSystems(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { - return readSystems( - statuses, deleted, queryFields, queryValues, Boolean.FALSE, - orderBy, isAsc, offset, limit); + return readSystems(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, orderBy, isAsc, offset, limit); } /** @@ -164,8 +164,13 @@ public class SystemRepository { * * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @param orderBy order by * @param isAsc is ascending @@ -173,9 +178,9 @@ public class SystemRepository { * @param limit limit * @return list of systems */ - public List<System> readSystems( - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory, - FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { + public List<System> readSystems(Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // note // use of function for mnemonic path @@ -192,7 +197,9 @@ public class SystemRepository { CriteriaQuery<System> cq = cb.createQuery(System.class); Root<System> from = cq.from(System.class); - cq.where(cb.and(preparePredicatesSystems(cb, from, cq.subquery(Long.class), statuses, deleted, queryFields, queryValues, includeHistory).toArray(new Predicate[0]))); + cq.where(cb.and(preparePredicatesSystems(cb, from, cq.subquery(Long.class), statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory).toArray(new Predicate[0]))); cq.select(from); if (orderBy != null) { @@ -248,14 +255,19 @@ public class SystemRepository { * @param sub sub query to be used if history not included * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @return list of predicates */ - private List<Predicate> preparePredicatesSystems( - CriteriaBuilder cb, Root<System> from, Subquery<Long> sub, - Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory) { + private List<Predicate> preparePredicatesSystems(CriteriaBuilder cb, Root<System> from, Subquery<Long> sub, Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory) { List<Predicate> predicates = new ArrayList<>(); @@ -307,51 +319,31 @@ public class SystemRepository { if (deleted != null) { predicates.add(cb.equal(from.get(NameStructure.FIELD_DELETED), deleted)); } - if (queryFields != null) { - for (int i=0; i<queryFields.length; i++) { - String queryValue = queryValues[i]; - - // jpa query characters % and _ - // remove excess % characters - if (queryValue.startsWith(PERCENT)) { - while (queryValue.startsWith(PERCENT)) { - queryValue = queryValue.substring(1); - } - queryValue = PERCENT + queryValue; - } - if (queryValue.endsWith(PERCENT)) { - while (queryValue.endsWith(PERCENT)) { - queryValue = queryValue.substring(0, queryValue.length()-1); - } - queryValue = queryValue + PERCENT; - } - switch (queryFields[i]) { - case UUID: - predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), queryValue))); - break; - case PARENT: - predicates.add(cb.and(cb.equal(from.get(System.FIELD_PARENT_UUID), queryValue))); - break; - case NAME: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), queryValue))); - break; - case MNEMONIC: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), queryValue))); - break; - case MNEMONICEQUIVALENCE: - predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), queryValue))); - break; - case MNEMONICPATH: - predicates.add(cb.and(cb.like(cb.function(System.FUNCTION_GET_MNEMONIC_PATH_SYSTEM, String.class, from.get(NameStructure.FIELD_UUID)), queryValue))); - break; - case DESCRIPTION: - predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), queryValue))); - break; - default: - continue; - } - } + // prepare pattern + // jpa query characters % and _ + // remove excess % characters + + if (!StringUtils.isEmpty(uuid)) { + predicates.add(cb.and(cb.equal(from.get(NameStructure.FIELD_UUID), RepositoryUtil.preparePattern(uuid)))); + } + if (!StringUtils.isEmpty(parentUuid)) { + predicates.add(cb.and(cb.equal(from.get(System.FIELD_PARENT_UUID), RepositoryUtil.preparePattern(parentUuid)))); + } + if (!StringUtils.isEmpty(name)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_NAME), RepositoryUtil.preparePattern(name)))); + } + if (!StringUtils.isEmpty(mnemonic)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC), RepositoryUtil.preparePattern(mnemonic)))); + } + if (!StringUtils.isEmpty(mnemonicequivalence)) { + predicates.add(cb.and(cb.like(from.get(Structure.FIELD_MNEMONIC_EQUIVALENCE), RepositoryUtil.preparePattern(mnemonicequivalence)))); + } + if (!StringUtils.isEmpty(mnemonicpath)) { + predicates.add(cb.and(cb.like(cb.function(System.FUNCTION_GET_MNEMONIC_PATH_SYSTEM, String.class, from.get(NameStructure.FIELD_UUID)), RepositoryUtil.preparePattern(mnemonicpath)))); + } + if (!StringUtils.isEmpty(description)) { + predicates.add(cb.and(cb.like(from.get(NameStructure.FIELD_DESCRIPTION), RepositoryUtil.preparePattern(description)))); } return predicates; diff --git a/src/main/java/org/openepics/names/rest/api/v1/IStructures.java b/src/main/java/org/openepics/names/rest/api/v1/IStructures.java index 7c5efab2..6de16ad3 100644 --- a/src/main/java/org/openepics/names/rest/api/v1/IStructures.java +++ b/src/main/java/org/openepics/names/rest/api/v1/IStructures.java @@ -99,9 +99,9 @@ public interface IStructures { create POST /structures - createStructures (List<StructureElementCommand>) create POST /structures/upload - createStructures (MultipartFile) ---------------------------------------------------------------------------------------------------- - read GET /structures/{type} - readStructures (Type, Status[], Boolean, FieldStructure[], String[], FieldStructure, Boolean, Integer, Integer) - read GET /structures/{type}/download - readStructuresDownload (Type, Status[], Boolean, FieldStructure[], String[], FieldStructure, Boolean, Integer, Integer) - read GET /structures/children/{type}/{uuid} - readStructuresChildren (Type, String, FieldStructure, Boolean, Integer, Integer) + read GET /structures/{type} - readStructures (Type, Status[], Boolean, String, String, String, String, String, String, String, FieldStructure, Boolean, Integer, Integer) + read GET /structures/{type}/download - readStructuresDownload (Type, Status[], Boolean, String, String, String, String, String, String, String, FieldStructure, Boolean, Integer, Integer) + read GET /structures/children/{type}/{uuid} - readStructuresChildren (Type, String, Status[], Boolean, String, String, String, String, String, FieldStructure, Boolean, Integer, Integer) read GET /structures/mnemonic/{mnemonic} - readStructuresMnemonic (String, FieldStructure, Boolean, Integer, Integer, FieldStructure, Boolean, Integer, Integer) read GET /structures/mnemonicpath/{mnemonicpath} - readStructuresMnemonicpath (String, FieldStructure, Boolean, Integer, Integer, FieldStructure, Boolean, Integer, Integer) read GET /structures/history/{uuid} - readStructuresHistory (String, Type, FieldStructure, Boolean, Integer, Integer) @@ -283,12 +283,17 @@ public interface IStructures { * Find valid structures (search). * Return paged list of structure elements. * - * @param type type of structure to search in - * @param statuses statuses of structures to search for + * @param type type of structure + * @param statuses statuses for structures * @param deleted if deleted-only structures are to be included * (false for non-deleted-only structures, true for deleted-only structures, not used for both cases) - * @param queryFields search fields - * @param queryValues search values corresponding to search fields + * @param uuid uuid + * @param parentuuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param orderBy order by field * @param isAsc sort order, ascending or descending * @param page page starting from 0, offset @@ -332,11 +337,16 @@ public interface IStructures { value = "/{type}", produces = {"application/json"}) public ResponsePageStructureElements readStructures( - @Parameter(in = ParameterIn.PATH, description = "type of structure to search in") @PathVariable("type") Type type, - @Parameter(in = ParameterIn.QUERY, description = "statuses of structures to search for") @RequestParam(required = false) Status[] statuses, + @Parameter(in = ParameterIn.PATH, description = "search by type of structure") @PathVariable("type") Type type, + @Parameter(in = ParameterIn.QUERY, description = "search by statuses") @RequestParam(required = false) Status[] statuses, @Parameter(in = ParameterIn.QUERY, description = "if deleted structures are to be included or not, omitted for both deleted and not deleted structures") @RequestParam(required = false) Boolean deleted, - @Parameter(in = ParameterIn.QUERY, description = "search fields") @RequestParam(required = false) FieldStructure[] queryFields, - @Parameter(in = ParameterIn.QUERY, description = "search values corresponding to search fields") @RequestParam(required = false) String[] queryValues, + @Parameter(in = ParameterIn.QUERY, description = "search by uuid") @RequestParam(required = false) String uuid, + @Parameter(in = ParameterIn.QUERY, description = "search by parent uuid") @RequestParam(required = false) String parentuuid, + @Parameter(in = ParameterIn.QUERY, description = "search by name") @RequestParam(required = false) String name, + @Parameter(in = ParameterIn.QUERY, description = "search by mnemonic") @RequestParam(required = false) String mnemonic, + @Parameter(in = ParameterIn.QUERY, description = "search by mnemonic equivalence") @RequestParam(required = false) String mnemonicequivalence, + @Parameter(in = ParameterIn.QUERY, description = "search by mnemonic path") @RequestParam(required = false) String mnemonicpath, + @Parameter(in = ParameterIn.QUERY, description = "search by description") @RequestParam(required = false) String description, @Parameter(in = ParameterIn.QUERY, description = "order by field") @RequestParam(required = false) FieldStructure orderBy, @Parameter(in = ParameterIn.QUERY, description = "sort order, ascending or descending") @RequestParam(required = false) Boolean isAsc, @Parameter(in = ParameterIn.QUERY, description = "page starting from 0, offset") @RequestParam(required = false, defaultValue = DEFAULT_PAGE) Integer page, @@ -346,12 +356,17 @@ public interface IStructures { * Find valid structures (search). * Return Excel file with paged list of structure elements. * - * @param type type of structure to search in - * @param statuses statuses of structures to search for + * @param type type of structure + * @param statuses statuses for structures * @param deleted if deleted-only structures are to be included * (false for non-deleted-only structures, true for deleted-only structures, not used for both cases) - * @param queryFields search fields - * @param queryValues search values corresponding to search fields + * @param uuid uuid + * @param parentuuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param orderBy order by field * @param isAsc sort order, ascending or descending * @param page page starting from 0, offset @@ -393,11 +408,16 @@ public interface IStructures { value = "/{type}/download", produces = {"application/vnd.ms-excel"}) public ResponseEntity<Resource> readStructuresDownload( - @Parameter(in = ParameterIn.PATH, description = "type of structure to search in") @PathVariable("type") Type type, - @Parameter(in = ParameterIn.QUERY, description = "statuses of structures to search for") @RequestParam(required = false) Status[] statuses, + @Parameter(in = ParameterIn.PATH, description = "search by type of structure") @PathVariable("type") Type type, + @Parameter(in = ParameterIn.QUERY, description = "search by statuses") @RequestParam(required = false) Status[] statuses, @Parameter(in = ParameterIn.QUERY, description = "if deleted structures are to be included or not, omitted for both deleted and not deleted structures") @RequestParam(required = false) Boolean deleted, - @Parameter(in = ParameterIn.QUERY, description = "search fields") @RequestParam(required = false) FieldStructure[] queryFields, - @Parameter(in = ParameterIn.QUERY, description = "search values corresponding to search fields") @RequestParam(required = false) String[] queryValues, + @Parameter(in = ParameterIn.QUERY, description = "search by uuid") @RequestParam(required = false) String uuid, + @Parameter(in = ParameterIn.QUERY, description = "search by parent uuid") @RequestParam(required = false) String parentuuid, + @Parameter(in = ParameterIn.QUERY, description = "search by name") @RequestParam(required = false) String name, + @Parameter(in = ParameterIn.QUERY, description = "search by mnemonic") @RequestParam(required = false) String mnemonic, + @Parameter(in = ParameterIn.QUERY, description = "search by mnemonic equivalence") @RequestParam(required = false) String mnemonicequivalence, + @Parameter(in = ParameterIn.QUERY, description = "search by mnemonic path") @RequestParam(required = false) String mnemonicpath, + @Parameter(in = ParameterIn.QUERY, description = "search by description") @RequestParam(required = false) String description, @Parameter(in = ParameterIn.QUERY, description = "order by field") @RequestParam(required = false) FieldStructure orderBy, @Parameter(in = ParameterIn.QUERY, description = "sort order, ascending or descending") @RequestParam(required = false) Boolean isAsc, @Parameter(in = ParameterIn.QUERY, description = "page starting from 0, offset") @RequestParam(required = false, defaultValue = DEFAULT_PAGE) Integer page, @@ -407,8 +427,16 @@ public interface IStructures { * Find valid children structures by type and parent uuid (exact match). * Return paged list of structure elements. * - * @param type type of structure to search in - * @param uuid uuid to find structure for + * @param type type of structure + * @param uuid uuid + * @param statuses statuses for structures + * @param deleted if deleted-only structures are to be included + * (false for non-deleted-only structures, true for deleted-only structures, not used for both cases) + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param orderBy order by field * @param isAsc sort order, ascending or descending * @param page page starting from 0, offset @@ -452,8 +480,15 @@ public interface IStructures { value = "/children/{type}/{uuid}", produces = {"application/json"}) public ResponsePageStructureElements readStructuresChildren( - @Parameter(in = ParameterIn.PATH, description = "type of structure to search in") @PathVariable("type") Type type, - @Parameter(in = ParameterIn.PATH, description = "uuid to find structure for") @PathVariable("uuid") String uuid, + @Parameter(in = ParameterIn.PATH, description = "search by type of structure") @PathVariable("type") Type type, + @Parameter(in = ParameterIn.PATH, description = "search by uuid") @PathVariable("uuid") String uuid, + @Parameter(in = ParameterIn.QUERY, description = "search by statuses") @RequestParam(required = false) Status[] statuses, + @Parameter(in = ParameterIn.QUERY, description = "if deleted structures are to be included or not, omitted for both deleted and not deleted structures") @RequestParam(required = false) Boolean deleted, + @Parameter(in = ParameterIn.QUERY, description = "search by name") @RequestParam(required = false) String name, + @Parameter(in = ParameterIn.QUERY, description = "search by mnemonic") @RequestParam(required = false) String mnemonic, + @Parameter(in = ParameterIn.QUERY, description = "search by mnemonic equivalence") @RequestParam(required = false) String mnemonicequivalence, + @Parameter(in = ParameterIn.QUERY, description = "search by mnemonic path") @RequestParam(required = false) String mnemonicpath, + @Parameter(in = ParameterIn.QUERY, description = "search by description") @RequestParam(required = false) String description, @Parameter(in = ParameterIn.QUERY, description = "order by field") @RequestParam(required = false) FieldStructure orderBy, @Parameter(in = ParameterIn.QUERY, description = "sort order, ascending or descending") @RequestParam(required = false) Boolean isAsc, @Parameter(in = ParameterIn.QUERY, description = "page starting from 0, offset") @RequestParam(required = false, defaultValue = DEFAULT_PAGE) Integer page, @@ -463,7 +498,7 @@ public interface IStructures { * Find valid structures by mnemonic (search). * Return paged list of structure elements. * - * @param mnemonic mnemonic to search for + * @param mnemonic mnemonic * @param orderBy order by field * @param isAsc sort order, ascending or descending * @param page page starting from 0, offset @@ -507,7 +542,7 @@ public interface IStructures { value = "/mnemonic/{mnemonic}", produces = {"application/json"}) public ResponsePageStructureElements readStructuresMnemonic( - @Parameter(in = ParameterIn.PATH, description = "mnemonic to search for") @PathVariable("mnemonic") String mnemonic, + @Parameter(in = ParameterIn.PATH, description = "search by mnemonic") @PathVariable("mnemonic") String mnemonic, @Parameter(in = ParameterIn.QUERY, description = "order by field") @RequestParam(required = false) FieldStructure orderBy, @Parameter(in = ParameterIn.QUERY, description = "sort order, ascending or descending") @RequestParam(required = false) Boolean isAsc, @Parameter(in = ParameterIn.QUERY, description = "page starting from 0, offset") @RequestParam(required = false, defaultValue = DEFAULT_PAGE) Integer page, @@ -517,7 +552,7 @@ public interface IStructures { * Find valid structures by mnemonic path (search). * Return paged list of structure elements. * - * @param mnemonicpath mnemonic path to search for + * @param mnemonicpath mnemonic path * @param orderBy order by field * @param isAsc sort order, ascending or descending * @param page page starting from 0, offset @@ -561,7 +596,7 @@ public interface IStructures { value = "/mnemonicpath/{mnemonicpath}", produces = {"application/json"}) public ResponsePageStructureElements readStructuresMnemonicpath( - @Parameter(in = ParameterIn.PATH, description = "mnemonic path to search for") @PathVariable("mnemonicpath") String mnemonicpath, + @Parameter(in = ParameterIn.PATH, description = "search by mnemonic path") @PathVariable("mnemonicpath") String mnemonicpath, @Parameter(in = ParameterIn.QUERY, description = "order by field") @RequestParam(required = false) FieldStructure orderBy, @Parameter(in = ParameterIn.QUERY, description = "sort order, ascending or descending") @RequestParam(required = false) Boolean isAsc, @Parameter(in = ParameterIn.QUERY, description = "page starting from 0, offset") @RequestParam(required = false, defaultValue = DEFAULT_PAGE) Integer page, @@ -571,7 +606,7 @@ public interface IStructures { * Find history for structure by uuid (exact match). * Return paged list of structure elements. * - * @param uuid uuid to find history for + * @param uuid uuid * @param type type of structure to search in * @param orderBy order by field * @param isAsc sort order, ascending or descending @@ -616,8 +651,8 @@ public interface IStructures { value = "/history/{uuid}", produces = {"application/json"}) public ResponsePageStructureElements readStructuresHistory( - @Parameter(in = ParameterIn.PATH, description = "uuid to find structure for") @PathVariable("uuid") String uuid, - @Parameter(in = ParameterIn.QUERY, description = "type of structure to search in") @RequestParam(required = false) Type type, + @Parameter(in = ParameterIn.PATH, description = "search by uuid") @PathVariable("uuid") String uuid, + @Parameter(in = ParameterIn.QUERY, description = "search by type of structure") @RequestParam(required = false) Type type, @Parameter(in = ParameterIn.QUERY, description = "order by field") @RequestParam(required = false) FieldStructure orderBy, @Parameter(in = ParameterIn.QUERY, description = "sort order, ascending or descending") @RequestParam(required = false) Boolean isAsc, @Parameter(in = ParameterIn.QUERY, description = "page starting from 0, offset") @RequestParam(required = false, defaultValue = DEFAULT_PAGE) Integer page, diff --git a/src/main/java/org/openepics/names/rest/controller/ReportController.java b/src/main/java/org/openepics/names/rest/controller/ReportController.java index 56c108c9..b4c7437a 100644 --- a/src/main/java/org/openepics/names/rest/controller/ReportController.java +++ b/src/main/java/org/openepics/names/rest/controller/ReportController.java @@ -159,12 +159,12 @@ public class ReportController { } } - ResponsePageStructureElements structureElementsSystemgroup = structuresService.readStructures(Type.SYSTEMGROUP, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); - ResponsePageStructureElements structureElementsSystem = structuresService.readStructures(Type.SYSTEM, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); - ResponsePageStructureElements structureElementsSubsystem = structuresService.readStructures(Type.SUBSYSTEM, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); - ResponsePageStructureElements structureElementsDiscipline = structuresService.readStructures(Type.DISCIPLINE, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); - ResponsePageStructureElements structureElementsDevicegroup = structuresService.readStructures(Type.DEVICEGROUP, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); - ResponsePageStructureElements structureElementsDevicetype = structuresService.readStructures(Type.DEVICETYPE, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); + ResponsePageStructureElements structureElementsSystemgroup = structuresService.readStructures(Type.SYSTEMGROUP, null, null, null, null, null, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); + ResponsePageStructureElements structureElementsSystem = structuresService.readStructures(Type.SYSTEM, null, null, null, null, null, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); + ResponsePageStructureElements structureElementsSubsystem = structuresService.readStructures(Type.SUBSYSTEM, null, null, null, null, null, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); + ResponsePageStructureElements structureElementsDiscipline = structuresService.readStructures(Type.DISCIPLINE, null, null, null, null, null, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); + ResponsePageStructureElements structureElementsDevicegroup = structuresService.readStructures(Type.DEVICEGROUP, null, null, null, null, null, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); + ResponsePageStructureElements structureElementsDevicetype = structuresService.readStructures(Type.DEVICETYPE, null, null, null, null, null, null, null, null, null, Boolean.FALSE, null, null, null, null, StructureChoice.STRUCTURE); Map<UUID, Long> mapUuidCountSystemGroup = new TreeMap<>(); Map<UUID, Long> mapUuidCountSystem = new TreeMap<>(); diff --git a/src/main/java/org/openepics/names/rest/controller/StructuresController.java b/src/main/java/org/openepics/names/rest/controller/StructuresController.java index afb6d327..8bd76099 100644 --- a/src/main/java/org/openepics/names/rest/controller/StructuresController.java +++ b/src/main/java/org/openepics/names/rest/controller/StructuresController.java @@ -141,12 +141,12 @@ public class StructuresController implements IStructures { // ---------------------------------------------------------------------------------------------------- @Override - public ResponsePageStructureElements readStructures( - Type type, Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, + public ResponsePageStructureElements readStructures(Type type, Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, FieldStructure orderBy, Boolean isAsc, Integer page, Integer pageSize) { try { - return structuresService.readStructures( - type, statuses, deleted, queryFields, queryValues, + return structuresService.readStructures(type, statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, orderBy, isAsc, page, pageSize); } catch (ServiceException e) { logService.logServiceException(LOGGER, Level.WARNING, e); @@ -160,9 +160,11 @@ public class StructuresController implements IStructures { @Override public ResponseEntity<Resource> readStructuresDownload(Type type, Status[] statuses, Boolean deleted, - FieldStructure[] queryFields, String[] queryValues, FieldStructure orderBy, Boolean isAsc, Integer page, - Integer pageSize) { - ResponsePageStructureElements structureElements = readStructures(type, statuses, deleted, queryFields, queryValues, orderBy, isAsc, page, pageSize); + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + FieldStructure orderBy, Boolean isAsc, Integer page, Integer pageSize) { + ResponsePageStructureElements structureElements = readStructures(type, statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + orderBy, isAsc, page, pageSize); InputStreamResource isr = new InputStreamResource(ExcelUtil.structureElementsToExcel(structureElements)); return ResponseEntity.ok() .header(HttpHeaders.CONTENT_DISPOSITION, ATTACHMENT_FILENAME_STRUCTURE_ELEMENT_XLSX) @@ -171,12 +173,12 @@ public class StructuresController implements IStructures { } @Override - public ResponsePageStructureElements readStructuresChildren( - Type type, String uuid, + public ResponsePageStructureElements readStructuresChildren(Type type, String uuid, Status[] statuses, Boolean deleted, + String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, FieldStructure orderBy, Boolean isAsc, Integer page, Integer pageSize) { try { - return structuresService.readStructuresChildren( - type, uuid, + return structuresService.readStructuresChildren(type, uuid, statuses, deleted, + name, mnemonic, mnemonicequivalence, mnemonicpath, description, orderBy, isAsc, page, pageSize); } catch (ServiceException e) { logService.logServiceException(LOGGER, Level.WARNING, e); @@ -189,8 +191,7 @@ public class StructuresController implements IStructures { } @Override - public ResponsePageStructureElements readStructuresMnemonic( - String mnemonic, + public ResponsePageStructureElements readStructuresMnemonic(String mnemonic, FieldStructure orderBy, Boolean isAsc, Integer page, Integer pageSize) { try { return structuresService.readStructuresMnemonic(mnemonic, orderBy, isAsc, page, pageSize); @@ -205,8 +206,7 @@ public class StructuresController implements IStructures { } @Override - public ResponsePageStructureElements readStructuresMnemonicpath( - String mnemonicpath, + public ResponsePageStructureElements readStructuresMnemonicpath(String mnemonicpath, FieldStructure orderBy, Boolean isAsc, Integer page, Integer pageSize) { try { return structuresService.readStructuresMnemonicpath(mnemonicpath, orderBy, isAsc, page, pageSize); @@ -221,12 +221,10 @@ public class StructuresController implements IStructures { } @Override - public ResponsePageStructureElements readStructuresHistory( - String uuid, Type type, + public ResponsePageStructureElements readStructuresHistory(String uuid, Type type, FieldStructure orderBy, Boolean isAsc, Integer page, Integer pageSize) { try { - return structuresService.readStructuresHistory( - uuid, type, + return structuresService.readStructuresHistory(uuid, type, orderBy, isAsc, page, pageSize); } catch (ServiceException e) { logService.logServiceException(LOGGER, Level.WARNING, e); diff --git a/src/main/java/org/openepics/names/service/StructuresService.java b/src/main/java/org/openepics/names/service/StructuresService.java index 97c1b3e7..95eef282 100644 --- a/src/main/java/org/openepics/names/service/StructuresService.java +++ b/src/main/java/org/openepics/names/service/StructuresService.java @@ -261,22 +261,29 @@ public class StructuresService { // ---------------------------------------------------------------------------------------------------- - public ResponsePageStructureElements readStructures( - Type type, Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, + public ResponsePageStructureElements readStructures(Type type, Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { - return readStructures(type, statuses, deleted, queryFields, queryValues, Boolean.FALSE, orderBy, isAsc, offset, limit, StructureChoice.STRUCTURE); + return readStructures(type, statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + Boolean.FALSE, orderBy, isAsc, offset, limit, StructureChoice.STRUCTURE); } - public ResponsePageStructureElements readStructures( - Type type, Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, Boolean includeHistory, - FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit, + public ResponsePageStructureElements readStructures(Type type, Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit, StructureChoice structureChoice) { LOGGER.log(Level.FINE, "readStructures, type: {0}", type); LOGGER.log(Level.FINE, "readStructures, statuses.length: {0}", String.valueOf(statuses != null ? statuses.length : "null")); LOGGER.log(Level.FINE, "readStructures, deleted: {0}", deleted); - LOGGER.log(Level.FINE, "readStructures, queryFields.length: {0}", String.valueOf(queryFields != null ? queryFields.length : "null")); - LOGGER.log(Level.FINE, "readStructures, queryValues.length: {0}", String.valueOf(queryValues != null ? queryValues.length : "null")); + LOGGER.log(Level.FINE, "readStructures, uuid: {0}", uuid); + LOGGER.log(Level.FINE, "readStructures, parentUuid: {0}", parentUuid); + LOGGER.log(Level.FINE, "readStructures, name: {0}", name); + LOGGER.log(Level.FINE, "readStructures, mnemonic: {0}", mnemonic); + LOGGER.log(Level.FINE, "readStructures, mnemonicequivalence: {0}", mnemonicequivalence); + LOGGER.log(Level.FINE, "readStructures, mnemonicpath: {0}", mnemonicpath); + LOGGER.log(Level.FINE, "readStructures, description: {0}", description); LOGGER.log(Level.FINE, "readStructures, includeHistory: {0}", includeHistory); LOGGER.log(Level.FINE, "readStructures, orderBy: {0}", orderBy); LOGGER.log(Level.FINE, "readStructures, isAsc: {0}", isAsc); @@ -288,16 +295,6 @@ public class StructuresService { LOGGER.log(Level.FINE, "readStructures, status: {0}", status); } } - if (queryFields != null && queryFields.length > 0) { - for (FieldStructure queryField : queryFields) { - LOGGER.log(Level.FINE, "readStructures, queryField: {0}", queryField); - } - } - if (queryValues != null && queryValues.length > 0) { - for (String queryValue : queryValues) { - LOGGER.log(Level.FINE, "readStructures, queryValue: {0}", queryValue); - } - } // validate input // type @@ -309,11 +306,9 @@ public class StructuresService { // structure elements for structures // validate input - ValidateStructureElementUtil.validateStructuresInputRead( - type, statuses, deleted, queryFields, queryValues, - includeHistory, - orderBy, isAsc, - offset, limit); + ValidateStructureElementUtil.validateStructuresInputRead(type, statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory, orderBy, isAsc, offset, limit); // initiate holder of containers for system and device structure content, for performance reasons HolderSystemDeviceStructure holder = new HolderSystemDeviceStructure(holderIRepositories); @@ -322,57 +317,57 @@ public class StructuresService { final List<StructureElement> structureElements = Lists.newArrayList(); Long totalCount = null; if (Type.SYSTEMGROUP.equals(type)) { - List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups( - statuses, deleted, queryFields, queryValues, - includeHistory, - orderBy, isAsc, - offset, limit); - totalCount = holderRepositories.getSystemGroupRepository().countSystemGroups(statuses, deleted, queryFields, queryValues, includeHistory); + List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory, orderBy, isAsc, offset, limit); + totalCount = holderRepositories.getSystemGroupRepository().countSystemGroups(statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory); LOGGER.log(Level.FINE, "readStructures, systemGroups.size: {0}", systemGroups.size()); structureElements.addAll(StructureElementUtil.getStructureElementsForSystemGroups(systemGroups, holder, structureChoice)); } else if (Type.SYSTEM.equals(type)) { - List<System> systems = holderRepositories.getSystemRepository().readSystems( - statuses, deleted, queryFields, queryValues, - includeHistory, - orderBy, isAsc, - offset, limit); - totalCount = holderRepositories.getSystemRepository().countSystems(statuses, deleted, queryFields, queryValues, includeHistory); + List<System> systems = holderRepositories.getSystemRepository().readSystems(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory, orderBy, isAsc, offset, limit); + totalCount = holderRepositories.getSystemRepository().countSystems(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory); LOGGER.log(Level.FINE, "readStructures, systems.size: {0}", systems.size()); structureElements.addAll(StructureElementUtil.getStructureElementsForSystems(systems, holder, structureChoice)); } else if (Type.SUBSYSTEM.equals(type)) { - List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems( - statuses, deleted, queryFields, queryValues, - includeHistory, - orderBy, isAsc, - offset, limit); - totalCount = holderRepositories.getSubsystemRepository().countSubsystems(statuses, deleted, queryFields, queryValues, includeHistory); + List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory, orderBy, isAsc, offset, limit); + totalCount = holderRepositories.getSubsystemRepository().countSubsystems(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory); LOGGER.log(Level.FINE, "readStructures, subsystems.size: {0}", subsystems.size()); structureElements.addAll(StructureElementUtil.getStructureElementsForSubsystems(subsystems, holder, structureChoice)); } else if (Type.DISCIPLINE.equals(type)) { - List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines( - statuses, deleted, queryFields, queryValues, - includeHistory, - orderBy, isAsc, - offset, limit); - totalCount = holderRepositories.getDisciplineRepository().countDisciplines(statuses, deleted, queryFields, queryValues, includeHistory); + List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory, orderBy, isAsc, offset, limit); + totalCount = holderRepositories.getDisciplineRepository().countDisciplines(statuses, deleted, + uuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory); LOGGER.log(Level.FINE, "readStructures, disciplines.size: {0}", disciplines.size()); structureElements.addAll(StructureElementUtil.getStructureElementsForDisciplines(disciplines, holder, structureChoice)); } else if (Type.DEVICEGROUP.equals(type)) { - List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups( - statuses, deleted, queryFields, queryValues, - includeHistory, - orderBy, isAsc, - offset, limit); - totalCount = holderRepositories.getDeviceGroupRepository().countDeviceGroups(statuses, deleted, queryFields, queryValues, includeHistory); + List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory, orderBy, isAsc, offset, limit); + totalCount = holderRepositories.getDeviceGroupRepository().countDeviceGroups(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory); LOGGER.log(Level.FINE, "readStructures, deviceGroups.size: {0}", deviceGroups.size()); structureElements.addAll(StructureElementUtil.getStructureElementsForDeviceGroups(deviceGroups, holder, structureChoice)); } else if (Type.DEVICETYPE.equals(type)) { - List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes( - statuses, deleted, queryFields, queryValues, - includeHistory, - orderBy, isAsc, - offset, limit); - totalCount = holderRepositories.getDeviceTypeRepository().countDeviceTypes(statuses, deleted, queryFields, queryValues, includeHistory); + List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory, orderBy, isAsc, offset, limit); + totalCount = holderRepositories.getDeviceTypeRepository().countDeviceTypes(statuses, deleted, + uuid, parentUuid, name, mnemonic, mnemonicequivalence, mnemonicpath, description, + includeHistory); LOGGER.log(Level.FINE, "readStructures, deviceTypes.size: {0}", deviceTypes.size()); structureElements.addAll(StructureElementUtil.getStructureElementsForDeviceTypes(deviceTypes, holder, structureChoice)); } @@ -382,8 +377,8 @@ public class StructuresService { return response; } - public ResponsePageStructureElements readStructuresChildren( - Type type, String uuid, + public ResponsePageStructureElements readStructuresChildren(Type type, String uuid, + Status[] statuses, Boolean deleted, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // validate input @@ -402,15 +397,23 @@ public class StructuresService { // do if (Type.SYSTEMGROUP.equals(type)) { - return readStructures(Type.SYSTEM, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.PARENT}, new String[] {uuid}, orderBy, isAsc, offset, limit); + return readStructures(Type.SYSTEM, new Status[] {Status.APPROVED}, false, + null, uuid, null, null, null, null, null, + orderBy, isAsc, offset, limit); } else if (Type.SYSTEM.equals(type)) { - return readStructures(Type.SUBSYSTEM, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.PARENT}, new String[] {uuid}, orderBy, isAsc, offset, limit); + return readStructures(Type.SUBSYSTEM, new Status[] {Status.APPROVED}, false, + null, uuid, null, null, null, null, null, + orderBy, isAsc, offset, limit); } else if (Type.SUBSYSTEM.equals(type)) { // no children in structures } else if (Type.DISCIPLINE.equals(type)) { - return readStructures(Type.DEVICEGROUP, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.PARENT}, new String[] {uuid}, orderBy, isAsc, offset, limit); + return readStructures(Type.DEVICEGROUP, new Status[] {Status.APPROVED}, false, + null, uuid, null, null, null, null, null, + orderBy, isAsc, offset, limit); } else if (Type.DEVICEGROUP.equals(type)) { - return readStructures(Type.DEVICETYPE, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.PARENT}, new String[] {uuid}, orderBy, isAsc, offset, limit); + return readStructures(Type.DEVICETYPE, new Status[] {Status.APPROVED}, false, + null, uuid, null, null, null, null, null, + orderBy, isAsc, offset, limit); } else if (Type.DEVICETYPE.equals(type)) { // no children in structures } @@ -424,8 +427,7 @@ public class StructuresService { return new ResponsePageStructureElements(); } - public ResponsePageStructureElements readStructuresMnemonic( - String mnemonic, + public ResponsePageStructureElements readStructuresMnemonic(String mnemonic, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // validate input @@ -441,12 +443,12 @@ public class StructuresService { // do // TODO handle orderBy, isAsc, offset, limit - ResponsePageStructureElements responseSystemGroup = readStructures(Type.SYSTEMGROUP, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONIC}, new String[] {mnemonic}, orderBy, isAsc, offset, limit); - ResponsePageStructureElements responseSystem = readStructures(Type.SYSTEM, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONIC}, new String[] {mnemonic}, orderBy, isAsc, offset, limit); - ResponsePageStructureElements responseSubsystem = readStructures(Type.SUBSYSTEM, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONIC}, new String[] {mnemonic}, orderBy, isAsc, offset, limit); - ResponsePageStructureElements responseDiscipline = readStructures(Type.DISCIPLINE, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONIC}, new String[] {mnemonic}, orderBy, isAsc, offset, limit); - ResponsePageStructureElements responseDeviceGroup = readStructures(Type.DEVICEGROUP, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONIC}, new String[] {mnemonic}, orderBy, isAsc, offset, limit); - ResponsePageStructureElements responseDeviceType = readStructures(Type.DEVICETYPE, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONIC}, new String[] {mnemonic}, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseSystemGroup = readStructures(Type.SYSTEMGROUP, new Status[] {Status.APPROVED}, false, null, null, null, mnemonic, null, null, null, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseSystem = readStructures(Type.SYSTEM, new Status[] {Status.APPROVED}, false, null, null, null, mnemonic, null, null, null, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseSubsystem = readStructures(Type.SUBSYSTEM, new Status[] {Status.APPROVED}, false, null, null, null, mnemonic, null, null, null, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseDiscipline = readStructures(Type.DISCIPLINE, new Status[] {Status.APPROVED}, false, null, null, null, mnemonic, null, null, null, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseDeviceGroup = readStructures(Type.DEVICEGROUP, new Status[] {Status.APPROVED}, false, null, null, null, mnemonic, null, null, null, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseDeviceType = readStructures(Type.DEVICETYPE, new Status[] {Status.APPROVED}, false, null, null, null, mnemonic, null, null, null, orderBy, isAsc, offset, limit); List<StructureElement> structureElements = Lists.newArrayList(); structureElements.addAll(responseSystemGroup.getList()); @@ -459,8 +461,7 @@ public class StructuresService { return new ResponsePageStructureElements(structureElements, Long.valueOf(structureElements.size()), structureElements.size(), 0, structureElements.size()); } - public ResponsePageStructureElements readStructuresMnemonicpath( - String mnemonicpath, + public ResponsePageStructureElements readStructuresMnemonicpath(String mnemonicpath, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // validate input @@ -476,12 +477,12 @@ public class StructuresService { // do // TODO handle orderBy, isAsc, offset, limit - ResponsePageStructureElements responseSystemGroup = readStructures(Type.SYSTEMGROUP, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONICPATH}, new String[] {mnemonicpath}, orderBy, isAsc, offset, limit); - ResponsePageStructureElements responseSystem = readStructures(Type.SYSTEM, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONICPATH}, new String[] {mnemonicpath}, orderBy, isAsc, offset, limit); - ResponsePageStructureElements responseSubsystem = readStructures(Type.SUBSYSTEM, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONICPATH}, new String[] {mnemonicpath}, orderBy, isAsc, offset, limit); - ResponsePageStructureElements responseDiscipline = readStructures(Type.DISCIPLINE, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONICPATH}, new String[] {mnemonicpath}, orderBy, isAsc, offset, limit); - ResponsePageStructureElements responseDeviceGroup = readStructures(Type.DEVICEGROUP, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONICPATH}, new String[] {mnemonicpath}, orderBy, isAsc, offset, limit); - ResponsePageStructureElements responseDeviceType = readStructures(Type.DEVICETYPE, new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.MNEMONICPATH}, new String[] {mnemonicpath}, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseSystemGroup = readStructures(Type.SYSTEMGROUP, new Status[] {Status.APPROVED}, false, null, null, null, null, null, mnemonicpath, null, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseSystem = readStructures(Type.SYSTEM, new Status[] {Status.APPROVED}, false, null, null, null, null, null, mnemonicpath, null, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseSubsystem = readStructures(Type.SUBSYSTEM, new Status[] {Status.APPROVED}, false, null, null, null, null, null, mnemonicpath, null, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseDiscipline = readStructures(Type.DISCIPLINE, new Status[] {Status.APPROVED}, false, null, null, null, null, null, mnemonicpath, null, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseDeviceGroup = readStructures(Type.DEVICEGROUP, new Status[] {Status.APPROVED}, false, null, null, null, null, null, mnemonicpath, null, orderBy, isAsc, offset, limit); + ResponsePageStructureElements responseDeviceType = readStructures(Type.DEVICETYPE, new Status[] {Status.APPROVED}, false, null, null, null, null, null, mnemonicpath, null, orderBy, isAsc, offset, limit); List<StructureElement> structureElements = Lists.newArrayList(); structureElements.addAll(responseSystemGroup.getList()); @@ -501,8 +502,7 @@ public class StructuresService { * @param type type * @return list of structure elements */ - public ResponsePageStructureElements readStructuresHistory( - String uuid, Type type, + public ResponsePageStructureElements readStructuresHistory(String uuid, Type type, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // note @@ -535,28 +535,28 @@ public class StructuresService { ResponsePageStructureElements response = null; if (type_either) { if (type_systemGroup) { - response = readStructures(Type.SYSTEMGROUP, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + response = readStructures(Type.SYSTEMGROUP, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); } else if (type_system) { - response = readStructures(Type.SYSTEM, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + response = readStructures(Type.SYSTEM, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); } else if (type_subsystem) { - response = readStructures(Type.SUBSYSTEM, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + response = readStructures(Type.SUBSYSTEM, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); } else if (type_discipline) { - response = readStructures(Type.DISCIPLINE, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + response = readStructures(Type.DISCIPLINE, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); } else if (type_deviceGroup) { - response = readStructures(Type.DEVICEGROUP, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + response = readStructures(Type.DEVICEGROUP, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); } else if (type_deviceType) { - response = readStructures(Type.DEVICETYPE, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + response = readStructures(Type.DEVICETYPE, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); } } else { // go through all structures and see if / where uuid is found // uuid in 0 or 1 of structures - ResponsePageStructureElements responseSystemGroup = readStructures(Type.SYSTEMGROUP, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); - ResponsePageStructureElements responseSystem = readStructures(Type.SYSTEM, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); - ResponsePageStructureElements responseSubsystem = readStructures(Type.SUBSYSTEM, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); - ResponsePageStructureElements responseDiscipline = readStructures(Type.DISCIPLINE, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); - ResponsePageStructureElements responseDeviceGroup = readStructures(Type.DEVICEGROUP, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); - ResponsePageStructureElements responseDeviceType = readStructures(Type.DEVICETYPE, null, null, new FieldStructure[] {FieldStructure.UUID}, new String[] {uuid}, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + ResponsePageStructureElements responseSystemGroup = readStructures(Type.SYSTEMGROUP, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + ResponsePageStructureElements responseSystem = readStructures(Type.SYSTEM, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + ResponsePageStructureElements responseSubsystem = readStructures(Type.SUBSYSTEM, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + ResponsePageStructureElements responseDiscipline = readStructures(Type.DISCIPLINE, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + ResponsePageStructureElements responseDeviceGroup = readStructures(Type.DEVICEGROUP, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); + ResponsePageStructureElements responseDeviceType = readStructures(Type.DEVICETYPE, null, null, uuid, null, null, null, null, null, null, Boolean.TRUE, orderBy, isAsc, offset, limit, StructureChoice.HISTORY); structureElements.addAll(responseSystemGroup.getList()); structureElements.addAll(responseSystem.getList()); @@ -605,22 +605,28 @@ public class StructuresService { // do if (Type.SYSTEMGROUP.equals(type)) { - List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, FieldStructure.MNEMONICPATH, mnemonicpath); + List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, + null, null, null, null, mnemonicpath, null); return !systemGroups.isEmpty(); } else if (Type.SYSTEM.equals(type)) { - List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, false, FieldStructure.MNEMONICPATH, mnemonicpath); + List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, false, + null, null, null, null, null, mnemonicpath, null); return !systems.isEmpty(); } else if (Type.SUBSYSTEM.equals(type)) { - List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, false, FieldStructure.MNEMONICPATH, mnemonicpath); + List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, false, + null, null, null, null, null, mnemonicpath, null); return !subsystems.isEmpty(); } else if (Type.DISCIPLINE.equals(type)) { - List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, FieldStructure.MNEMONICPATH, mnemonicpath); + List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, + null, null, null, null, mnemonicpath, null); return !disciplines.isEmpty(); } else if (Type.DEVICEGROUP.equals(type)) { - List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.APPROVED, false, FieldStructure.MNEMONICPATH, mnemonicpath); + List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.APPROVED, false, + null, null, null, null, null, mnemonicpath, null); return !deviceGroups.isEmpty(); } else if (Type.DEVICETYPE.equals(type)) { - List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, false, FieldStructure.MNEMONICPATH, mnemonicpath); + List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, false, + null, null, null, null, null, mnemonicpath, null); return !deviceTypes.isEmpty(); } @@ -976,7 +982,8 @@ public class StructuresService { if (Type.SYSTEMGROUP.equals(structureElement.getType())) { // find - List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null); if (systemGroups == null || systemGroups.size() != 1) { continue; } @@ -996,7 +1003,8 @@ public class StructuresService { deletedStructureElements.add(StructureElementUtil.getStructureElementRequested(systemGroup, holder)); } else if (Type.SYSTEM.equals(structureElement.getType())) { // find - List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null, null); if (systems == null || systems.size() != 1) { continue; } @@ -1016,7 +1024,8 @@ public class StructuresService { deletedStructureElements.add(StructureElementUtil.getStructureElementRequested(system, holder)); } else if (Type.SUBSYSTEM.equals(structureElement.getType())) { // find - List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null, null); if (subsystems == null || subsystems.size() != 1) { continue; } @@ -1036,7 +1045,8 @@ public class StructuresService { deletedStructureElements.add(StructureElementUtil.getStructureElementRequested(subsystem, holder)); } else if (Type.DISCIPLINE.equals(structureElement.getType())) { // find - List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null); if (disciplines == null || disciplines.size() != 1) { continue; } @@ -1056,7 +1066,8 @@ public class StructuresService { deletedStructureElements.add(StructureElementUtil.getStructureElementRequested(discipline, holder)); } else if (Type.DEVICEGROUP.equals(structureElement.getType())) { // find - List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null, null); if (deviceGroups == null || deviceGroups.size() != 1) { continue; } @@ -1076,7 +1087,8 @@ public class StructuresService { deletedStructureElements.add(StructureElementUtil.getStructureElementRequested(deviceGroup, holder)); } else if (Type.DEVICETYPE.equals(structureElement.getType())) { // find - List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null, null); if (deviceTypes == null || deviceTypes.size() != 1) { continue; } @@ -1140,7 +1152,8 @@ public class StructuresService { if (Type.SYSTEMGROUP.equals(structureElement.getType())) { // find - List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null); SystemGroup systemGroup = null; if (systemGroups != null && systemGroups.size() == 1) { systemGroup = systemGroups.get(0); @@ -1151,7 +1164,8 @@ public class StructuresService { } // find - systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, null, FieldStructure.UUID, queryValue); + systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, null, + queryValue, null, null, null, null, null); if (systemGroups == null || systemGroups.size() != 1) { continue; } @@ -1176,7 +1190,8 @@ public class StructuresService { approvedStructureElements.add(StructureElementUtil.getStructureElementProcessed(systemGroup, holder)); } else if (Type.SYSTEM.equals(structureElement.getType())) { // find - List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null, null); System system = null; if (systems != null && systems.size() == 1) { system = systems.get(0); @@ -1187,7 +1202,8 @@ public class StructuresService { } // find - systems = holderRepositories.getSystemRepository().readSystems(Status.PENDING, null, FieldStructure.UUID, queryValue); + systems = holderRepositories.getSystemRepository().readSystems(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (systems == null || systems.size() != 1) { continue; } @@ -1212,7 +1228,8 @@ public class StructuresService { approvedStructureElements.add(StructureElementUtil.getStructureElementProcessed(system, holder)); } else if (Type.SUBSYSTEM.equals(structureElement.getType())) { // find - List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null, null); Subsystem subsystem = null; if (subsystems != null && subsystems.size() == 1) { subsystem = subsystems.get(0); @@ -1223,7 +1240,8 @@ public class StructuresService { } // find - subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.PENDING, null, FieldStructure.UUID, queryValue); + subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (subsystems == null || subsystems.size() != 1) { continue; } @@ -1247,7 +1265,8 @@ public class StructuresService { // add approvedStructureElements.add(StructureElementUtil.getStructureElementProcessed(subsystem, holder)); } else if (Type.DISCIPLINE.equals(structureElement.getType())) { - List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null); Discipline discipline = null; if (disciplines != null && disciplines.size() == 1) { discipline = disciplines.get(0); @@ -1258,7 +1277,8 @@ public class StructuresService { } // find - disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, null, FieldStructure.UUID, queryValue); + disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, null, + queryValue, null, null, null, null, null); if (disciplines == null || disciplines.size() != 1) { continue; } @@ -1275,7 +1295,8 @@ public class StructuresService { approvedStructureElements.add(StructureElementUtil.getStructureElementProcessed(discipline, holder)); } else if (Type.DEVICEGROUP.equals(structureElement.getType())) { // find - List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null, null); DeviceGroup deviceGroup = null; if (deviceGroups != null && deviceGroups.size() == 1) { deviceGroup = deviceGroups.get(0); @@ -1286,7 +1307,8 @@ public class StructuresService { } // find - deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.PENDING, null, FieldStructure.UUID, queryValue); + deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (deviceGroups == null || deviceGroups.size() != 1) { continue; } @@ -1303,7 +1325,8 @@ public class StructuresService { approvedStructureElements.add(StructureElementUtil.getStructureElementProcessed(deviceGroup, holder)); } else if (Type.DEVICETYPE.equals(structureElement.getType())) { // find - List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, Boolean.FALSE, FieldStructure.UUID, queryValue); + List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, Boolean.FALSE, + queryValue, null, null, null, null, null, null); DeviceType deviceType = null; if (deviceTypes != null && deviceTypes.size() == 1) { deviceType = deviceTypes.get(0); @@ -1314,7 +1337,8 @@ public class StructuresService { } // find - deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.PENDING, null, FieldStructure.UUID, queryValue); + deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (deviceTypes == null || deviceTypes.size() != 1) { continue; } @@ -1362,7 +1386,8 @@ public class StructuresService { if (Type.SYSTEMGROUP.equals(structureElement.getType())) { // find - List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, null, + queryValue, null, null, null, null, null); if (systemGroups == null || systemGroups.size() != 1) { continue; } @@ -1378,7 +1403,8 @@ public class StructuresService { cancelledStructureElements.add(StructureElementUtil.getStructureElementProcessed(systemGroup, holder)); } else if (Type.SYSTEM.equals(structureElement.getType())) { // find - List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (systems == null || systems.size() != 1) { continue; } @@ -1394,7 +1420,8 @@ public class StructuresService { cancelledStructureElements.add(StructureElementUtil.getStructureElementProcessed(system, holder)); } else if (Type.SUBSYSTEM.equals(structureElement.getType())) { // find - List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (subsystems == null || subsystems.size() != 1) { continue; } @@ -1410,7 +1437,8 @@ public class StructuresService { cancelledStructureElements.add(StructureElementUtil.getStructureElementProcessed(subsystem, holder)); } else if (Type.DISCIPLINE.equals(structureElement.getType())) { // find - List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, null, + queryValue, null, null, null, null, null); if (disciplines == null || disciplines.size() != 1) { continue; } @@ -1426,7 +1454,8 @@ public class StructuresService { cancelledStructureElements.add(StructureElementUtil.getStructureElementProcessed(discipline, holder)); } else if (Type.DEVICEGROUP.equals(structureElement.getType())) { // find - List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (deviceGroups == null || deviceGroups.size() != 1) { continue; } @@ -1441,7 +1470,8 @@ public class StructuresService { // add cancelledStructureElements.add(StructureElementUtil.getStructureElementProcessed(deviceGroup, holder)); } else if (Type.DEVICETYPE.equals(structureElement.getType())) { - List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (deviceTypes == null || deviceTypes.size() != 1) { continue; } @@ -1488,7 +1518,8 @@ public class StructuresService { if (Type.SYSTEMGROUP.equals(structureElement.getType())) { // find - List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, null, + queryValue, null, null, null, null, null); if (systemGroups == null || systemGroups.size() != 1) { continue; } @@ -1504,7 +1535,8 @@ public class StructuresService { rejectedStructureElements.add(StructureElementUtil.getStructureElementProcessed(systemGroup, holder)); } else if (Type.SYSTEM.equals(structureElement.getType())) { // find - List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (systems == null || systems.size() != 1) { continue; } @@ -1520,7 +1552,8 @@ public class StructuresService { rejectedStructureElements.add(StructureElementUtil.getStructureElementProcessed(system, holder)); } else if (Type.SUBSYSTEM.equals(structureElement.getType())) { // find - List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (subsystems == null || subsystems.size() != 1) { continue; } @@ -1536,7 +1569,8 @@ public class StructuresService { rejectedStructureElements.add(StructureElementUtil.getStructureElementProcessed(subsystem, holder)); } else if (Type.DISCIPLINE.equals(structureElement.getType())) { // find - List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, null, + queryValue, null, null, null, null, null); if (disciplines == null || disciplines.size() != 1) { continue; } @@ -1552,7 +1586,8 @@ public class StructuresService { rejectedStructureElements.add(StructureElementUtil.getStructureElementProcessed(discipline, holder)); } else if (Type.DEVICEGROUP.equals(structureElement.getType())) { // find - List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (deviceGroups == null || deviceGroups.size() != 1) { continue; } @@ -1567,7 +1602,8 @@ public class StructuresService { // add rejectedStructureElements.add(StructureElementUtil.getStructureElementProcessed(deviceGroup, holder)); } else if (Type.DEVICETYPE.equals(structureElement.getType())) { - List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.PENDING, null, FieldStructure.UUID, queryValue); + List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.PENDING, null, + queryValue, null, null, null, null, null, null); if (deviceTypes == null || deviceTypes.size() != 1) { continue; } diff --git a/src/main/java/org/openepics/names/util/ValidateNameElementUtil.java b/src/main/java/org/openepics/names/util/ValidateNameElementUtil.java index e1fb6af0..4409d1ac 100644 --- a/src/main/java/org/openepics/names/util/ValidateNameElementUtil.java +++ b/src/main/java/org/openepics/names/util/ValidateNameElementUtil.java @@ -28,7 +28,6 @@ import org.openepics.names.repository.model.Subsystem; import org.openepics.names.repository.model.System; import org.openepics.names.repository.model.SystemGroup; import org.openepics.names.rest.beans.FieldName; -import org.openepics.names.rest.beans.FieldStructure; import org.openepics.names.rest.beans.Status; import org.openepics.names.rest.beans.element.NameElementCommand; @@ -423,15 +422,19 @@ public class ValidateNameElementUtil { // device structure if (!StringUtils.isEmpty(dt)) { - List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, false, FieldStructure.MNEMONICPATH, mnemonicPathDevicestructure); + List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, false, + null, null, null, null, null, mnemonicPathDevicestructure, null); ExceptionUtil.validateConditionDataNotAvailableException(deviceTypes != null && deviceTypes.size() == 1, TextUtil.DEVICETYPE_IS_NOT_AVAILABLE, details, field); deviceType = deviceTypes.get(0); } // system structure - List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, false, FieldStructure.MNEMONICPATH, mnemonicPathSystemstructure); - List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, false, FieldStructure.MNEMONICPATH, mnemonicPathSystemstructure); - List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, FieldStructure.MNEMONICPATH, mnemonicPathSystemstructure); + List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, false, + null, null, null, null, null, mnemonicPathSystemstructure, null); + List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, false, + null, null, null, null, null, mnemonicPathSystemstructure, null); + List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, + null, null, null, null, mnemonicPathSystemstructure, null); if (subsystems != null && subsystems.size() == 1) { subsystem = subsystems.get(0); diff --git a/src/main/java/org/openepics/names/util/ValidateStructureElementUtil.java b/src/main/java/org/openepics/names/util/ValidateStructureElementUtil.java index 352c4e12..37bbd99b 100644 --- a/src/main/java/org/openepics/names/util/ValidateStructureElementUtil.java +++ b/src/main/java/org/openepics/names/util/ValidateStructureElementUtil.java @@ -69,41 +69,30 @@ public class ValidateStructureElementUtil { * @param type type * @param statuses statuses * @param deleted deleted - * @param queryFields query fields - * @param queryValues query values + * @param uuid uuid + * @param parentUuid parent uuid + * @param name name + * @param mnemonic mnemonic + * @param mnemonicequivalence mnemonic equivalence + * @param mnemonicpath mnemonic path + * @param description description * @param includeHistory include history * @param orderBy order by * @param isAsc is ascending * @param offset offset * @param limit limit */ - public static void validateStructuresInputRead( - Type type, Status[] statuses, Boolean deleted, FieldStructure[] queryFields, String[] queryValues, - Boolean includeHistory, - FieldStructure orderBy, Boolean isAsc, - Integer offset, Integer limit) { + public static void validateStructuresInputRead(Type type, Status[] statuses, Boolean deleted, + String uuid, String parentUuid, String name, String mnemonic, String mnemonicequivalence, String mnemonicpath, String description, + Boolean includeHistory, FieldStructure orderBy, Boolean isAsc, Integer offset, Integer limit) { // validate input // type - // queryFields and queryValues - // either - // both null - // both non-null, same length, non-empty - // uuid + // uuid ValidateUtil.validateInputType(type); - boolean condition = ((queryFields == null && queryValues == null) - || (queryFields != null && queryValues != null && queryFields.length == queryValues.length && queryFields.length > 0)); - ExceptionUtil.validateConditionInputNotCorrectException(condition, - TextUtil.VALUES_ARE_NOT_CORRECT, "url and parameters (queryFields, queryValues) have different lengths or are empty", null); - - if (queryFields != null) { - for (int i=0; i<queryFields.length; i++) { - if (FieldStructure.UUID.equals(queryFields[i])) { - ValidateUtil.validateInputUuid(queryValues[i]); - } - } - + if (!StringUtils.isEmpty(uuid)) { + ValidateUtil.validateInputUuid(uuid); } } @@ -375,17 +364,23 @@ public class ValidateStructureElementUtil { private static int getStructuresSize(UUID uuid, Type type, Status status, Boolean deleted, HolderRepositories holderRepositories) { if (Type.SYSTEMGROUP.equals(type)) { - return holderRepositories.getSystemGroupRepository().readSystemGroups(status, deleted, FieldStructure.UUID, uuid.toString()).size(); + return holderRepositories.getSystemGroupRepository().readSystemGroups(status, deleted, + uuid.toString(), null, null, null, null, null).size(); } else if (Type.SYSTEM.equals(type)) { - return holderRepositories.getSystemRepository().readSystems(status, deleted, FieldStructure.UUID, uuid.toString()).size(); + return holderRepositories.getSystemRepository().readSystems(status, deleted, + uuid.toString(), null, null, null, null, null, null).size(); } else if (Type.SUBSYSTEM.equals(type)) { - return holderRepositories.getSubsystemRepository().readSubsystems(status, deleted, FieldStructure.UUID, uuid.toString()).size(); + return holderRepositories.getSubsystemRepository().readSubsystems(status, deleted, + uuid.toString(), null, null, null, null, null, null).size(); } else if (Type.DISCIPLINE.equals(type)) { - return holderRepositories.getDisciplineRepository().readDisciplines(status, deleted, FieldStructure.UUID, uuid.toString()).size(); + return holderRepositories.getDisciplineRepository().readDisciplines(status, deleted, + uuid.toString(), null, null, null, null, null).size(); } else if (Type.DEVICEGROUP.equals(type)) { - return holderRepositories.getDeviceGroupRepository().readDeviceGroups(status, deleted, FieldStructure.UUID, uuid.toString()).size(); + return holderRepositories.getDeviceGroupRepository().readDeviceGroups(status, deleted, + uuid.toString(), null, null, null, null, null, null).size(); } else if (Type.DEVICETYPE.equals(type)) { - return holderRepositories.getDeviceTypeRepository().readDeviceTypes(status, deleted, FieldStructure.UUID, uuid.toString()).size(); + return holderRepositories.getDeviceTypeRepository().readDeviceTypes(status, deleted, + uuid.toString(), null, null, null, null, null, null).size(); } return 0; } @@ -489,7 +484,8 @@ public class ValidateStructureElementUtil { } else if (Type.DEVICEGROUP.equals(type)) { // status, parent message = TextUtil.DISCIPLINE_IS_NOT_CORRECT; - List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, FieldStructure.UUID, parentUuid.toString()); + List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, + parentUuid.toString(), null, null, null, null, null); ExceptionUtil.validateConditionDataConflictException(disciplines != null && disciplines.size() == 1, message, details, TextUtil.PARENT); // note rules for mnemonic for device group @@ -575,12 +571,15 @@ public class ValidateStructureElementUtil { private static void validateStructuresParent(Type type, UUID parent, Status status, Boolean deleted, HolderRepositories holderRepositories, String message, String details, String field){ + // about finding out if structures are in place in order for structure operation to be allowed + ExceptionUtil.validateConditionDataConflictException( getStructuresParentSize(type, parent, status, deleted, holderRepositories) == 1, message, details, field); } private static void validateStructuresStatusMnemonic(UUID uuid, Type type, UUID parent, String mnemonic, EssNamingConvention namingConvention, HolderRepositories holderRepositories, StructureChoice structureChoice, String message, String details, String field){ + // about finding out if structures are in place in order for structure operation to be allowed // parent may be null List<UUID> listUuid = null; @@ -596,6 +595,7 @@ public class ValidateStructureElementUtil { private static void validateStructuresStatusMnemonicequivalence(UUID uuid, Type type, UUID parent, String mnemonic, EssNamingConvention namingConvention, HolderRepositories holderRepositories, StructureChoice structureChoice, String message, String details, String field){ + // about finding out if structures are in place in order for structure operation to be allowed // parent may be null List<UUID> listUuid = null; @@ -612,40 +612,45 @@ public class ValidateStructureElementUtil { HolderRepositories holderRepositories) { String queryValue = parent.toString(); if (Type.SYSTEM.equals(type)) { - return holderRepositories.getSystemGroupRepository().readSystemGroups(status, deleted, FieldStructure.UUID, queryValue).size(); + return holderRepositories.getSystemGroupRepository().readSystemGroups(status, deleted, + queryValue, null, null, null, null, null).size(); } else if (Type.SUBSYSTEM.equals(type)) { - return holderRepositories.getSystemRepository().readSystems(status, deleted, FieldStructure.UUID, queryValue).size(); + return holderRepositories.getSystemRepository().readSystems(status, deleted, + queryValue, null, null, null, null, null, null).size(); } else if (Type.DEVICEGROUP.equals(type)) { - return holderRepositories.getDisciplineRepository().readDisciplines(status, deleted, FieldStructure.UUID, queryValue).size(); + return holderRepositories.getDisciplineRepository().readDisciplines(status, deleted, + queryValue, null, null, null, null, null).size(); } else if (Type.DEVICETYPE.equals(type)) { - return holderRepositories.getDeviceGroupRepository().readDeviceGroups(status, deleted, FieldStructure.UUID, queryValue).size(); + return holderRepositories.getDeviceGroupRepository().readDeviceGroups(status, deleted, + queryValue, null, null, null, null, null, null).size(); } return 0; } private static List<UUID> getStructures(Type type, UUID parent, String mnemonic, Status status, Boolean deleted, Boolean equivalence, EssNamingConvention namingConvention, HolderRepositories holderRepositories) { + // get structures to be used in validation + // may be difficult to understand, need context of how and where it is used + // before ok to create or approve, structures need to exist or not exist, this method helps to find out + + String queryUuid = null; + String queryParentUuid = null; + String queryMnemonic = null; + String queryMnemonicequivalence = null; boolean hasMnemonic = !StringUtils.isEmpty(mnemonic); - FieldStructure mnemonicField = null; - String mnemonicValue = null; if (hasMnemonic) { - mnemonicField = Boolean.TRUE.equals(equivalence) - ? FieldStructure.MNEMONICEQUIVALENCE - : FieldStructure.MNEMONIC; - mnemonicValue = Boolean.TRUE.equals(equivalence) - ? namingConvention.equivalenceClassRepresentative(mnemonic) - : mnemonic; + if (equivalence) { + queryMnemonicequivalence = namingConvention.equivalenceClassRepresentative(mnemonic); + } else { + queryMnemonic = mnemonic; + } } // uuid, parent, mnemonic boolean queryParentTable = false; - FieldStructure[] queryFields = null; - String[] queryValues = null; if (Type.SYSTEMGROUP.equals(type) || Type.DISCIPLINE.equals(type)) { // no parent - query table for type if (hasMnemonic) { - queryFields = new FieldStructure[]{mnemonicField}; - queryValues = new String[]{mnemonicValue}; } else { return Lists.newArrayList(); } @@ -653,43 +658,45 @@ public class ValidateStructureElementUtil { // parent if (hasMnemonic) { // query table for type - queryFields = new FieldStructure[]{FieldStructure.PARENT, mnemonicField}; - queryValues = new String[]{parent.toString(), mnemonicValue}; + queryParentUuid = parent.toString(); } else { // query table for parent to type queryParentTable = true; - queryFields = new FieldStructure[]{FieldStructure.UUID}; - queryValues = new String[]{parent.toString()}; + queryUuid = parent.toString(); + queryParentUuid = null; + queryMnemonic = null; + queryMnemonicequivalence = null; } } // query table and return list with uuid if (Type.SYSTEMGROUP.equals(type)) { - return StructureUtil.listSystemGroup2Uuid(holderRepositories.getSystemGroupRepository().readSystemGroups(status, deleted, queryFields, queryValues)); + return StructureUtil.listSystemGroup2Uuid( + holderRepositories.getSystemGroupRepository().readSystemGroups(status, deleted, queryUuid, null, queryMnemonic, queryMnemonicequivalence, null, null)); } else if (Type.SYSTEM.equals(type)) { if (queryParentTable) { - return StructureUtil.listSystemGroup2Uuid(holderRepositories.getSystemGroupRepository().readSystemGroups(status, deleted, queryFields, queryValues)); + return StructureUtil.listSystemGroup2Uuid(holderRepositories.getSystemGroupRepository().readSystemGroups(status, deleted, queryUuid, null, queryMnemonic, queryMnemonicequivalence, null, null)); } else { - return StructureUtil.listSystem2Uuid(holderRepositories.getSystemRepository().readSystems(status, deleted, queryFields, queryValues)); + return StructureUtil.listSystem2Uuid(holderRepositories.getSystemRepository().readSystems(status, deleted, queryUuid, queryParentUuid, null, queryMnemonic, queryMnemonicequivalence, null, null)); } } else if (Type.SUBSYSTEM.equals(type)) { if (queryParentTable) { - return StructureUtil.listSystem2Uuid(holderRepositories.getSystemRepository().readSystems(status, deleted, queryFields, queryValues)); + return StructureUtil.listSystem2Uuid(holderRepositories.getSystemRepository().readSystems(status, deleted, queryUuid, queryParentUuid, null, queryMnemonic, queryMnemonicequivalence, null, null)); } else { - return StructureUtil.listSubsystem2Uuid(holderRepositories.getSubsystemRepository().readSubsystems(status, deleted, queryFields, queryValues)); + return StructureUtil.listSubsystem2Uuid(holderRepositories.getSubsystemRepository().readSubsystems(status, deleted, queryUuid, queryParentUuid, null, queryMnemonic, queryMnemonicequivalence, null, null)); } } else if (Type.DISCIPLINE.equals(type)) { - return StructureUtil.listDiscipline2Uuid(holderRepositories.getDisciplineRepository().readDisciplines(status, deleted, queryFields, queryValues)); + return StructureUtil.listDiscipline2Uuid(holderRepositories.getDisciplineRepository().readDisciplines(status, deleted, queryUuid, null, queryMnemonic, queryMnemonicequivalence, null, null)); } else if (Type.DEVICEGROUP.equals(type)) { if (queryParentTable) { - return StructureUtil.listDiscipline2Uuid(holderRepositories.getDisciplineRepository().readDisciplines(status, deleted, queryFields, queryValues)); + return StructureUtil.listDiscipline2Uuid(holderRepositories.getDisciplineRepository().readDisciplines(status, deleted, queryUuid, null, queryMnemonic, queryMnemonicequivalence, null, null)); } else { - return StructureUtil.listDeviceGroup2Uuid(holderRepositories.getDeviceGroupRepository().readDeviceGroups(status, deleted, queryFields, queryValues)); } + return StructureUtil.listDeviceGroup2Uuid(holderRepositories.getDeviceGroupRepository().readDeviceGroups(status, deleted, queryUuid, queryParentUuid, null, queryMnemonic, queryMnemonicequivalence, null, null)); } } else if (Type.DEVICETYPE.equals(type)) { if (queryParentTable) { - return StructureUtil.listDeviceGroup2Uuid(holderRepositories.getDeviceGroupRepository().readDeviceGroups(status, deleted, queryFields, queryValues)); + return StructureUtil.listDeviceGroup2Uuid(holderRepositories.getDeviceGroupRepository().readDeviceGroups(status, deleted, queryUuid, queryParentUuid, null, queryMnemonic, queryMnemonicequivalence, null, null)); } else { - return StructureUtil.listDeviceType2Uuid(holderRepositories.getDeviceTypeRepository().readDeviceTypes(status, deleted, queryFields, queryValues)); + return StructureUtil.listDeviceType2Uuid(holderRepositories.getDeviceTypeRepository().readDeviceTypes(status, deleted, queryUuid, queryParentUuid, null, queryMnemonic, queryMnemonicequivalence, null, null)); } } return Lists.newArrayList(); diff --git a/src/test/java/org/openepics/names/docker/StructuresDeviceGroupIT.java b/src/test/java/org/openepics/names/docker/StructuresDeviceGroupIT.java index 62675599..297b399d 100644 --- a/src/test/java/org/openepics/names/docker/StructuresDeviceGroupIT.java +++ b/src/test/java/org/openepics/names/docker/StructuresDeviceGroupIT.java @@ -988,11 +988,11 @@ class StructuresDeviceGroupIT { ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rsha", 0); @@ -1016,11 +1016,11 @@ class StructuresDeviceGroupIT { ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED", 1, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + approvedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + approvedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rsha", 0); @@ -1071,11 +1071,11 @@ class StructuresDeviceGroupIT { ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshc", 0); @@ -1099,11 +1099,11 @@ class StructuresDeviceGroupIT { ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED", 1, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + cancelledStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + cancelledStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshc", 0); @@ -1154,11 +1154,11 @@ class StructuresDeviceGroupIT { ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshr", 0); @@ -1182,11 +1182,11 @@ class StructuresDeviceGroupIT { ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED", 1, -1); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + rejectedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + rejectedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshr", 0); @@ -1279,10 +1279,10 @@ class StructuresDeviceGroupIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + uuid.toString(), 1); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + uuid2.toString(), 1); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + uuid3.toString(), 1); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + uuid.toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + uuid2.toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + uuid3.toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P1", 0); ITUtilStructureElement.assertRead("/mnemonic/C1", 0); @@ -1449,10 +1449,10 @@ class StructuresDeviceGroupIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + uuid.toString(), 2); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + uuid2.toString(), 2); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + uuid3.toString(), 2); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + uuid.toString(), 2); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + uuid2.toString(), 2); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + uuid3.toString(), 2); + ITUtilStructureElement.assertRead("/DEVICEGROUP?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P9", 0); ITUtilStructureElement.assertRead("/mnemonic/C9", 0); @@ -1773,26 +1773,26 @@ class StructuresDeviceGroupIT { // from first structure element assertNotNull(uuid); - ITUtilStructureElement.assertRead("/DEVICEGROUP?queryFields=MNEMONICPATH&queryValues=Di2", 30); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&queryFields=MNEMONICPATH&queryValues=Di2", 5); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&queryFields=MNEMONICPATH&queryValues=Di2", 20); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&queryFields=MNEMONICPATH&queryValues=Di2", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&queryFields=MNEMONICPATH&queryValues=Di2", 5); - ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&statuses=APPROVED&queryFields=MNEMONICPATH&queryValues=Di2", 25); - - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&queryFields=MNEMONICPATH&queryValues=Di2", 15); - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&statuses=PENDING&queryFields=MNEMONICPATH&queryValues=Di2", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&statuses=APPROVED&queryFields=MNEMONICPATH&queryValues=Di2", 15); - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&statuses=CANCELLED&queryFields=MNEMONICPATH&queryValues=Di2", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&statuses=REJECTED&queryFields=MNEMONICPATH&queryValues=Di2", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONICPATH&queryValues=Di2", 15); - - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&queryFields=MNEMONICPATH&queryValues=Di2", 15); - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&statuses=PENDING&queryFields=MNEMONICPATH&queryValues=Di2", 5); - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&statuses=APPROVED&queryFields=MNEMONICPATH&queryValues=Di2", 5); - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&statuses=CANCELLED&queryFields=MNEMONICPATH&queryValues=Di2", 0); - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&statuses=REJECTED&queryFields=MNEMONICPATH&queryValues=Di2", 5); - ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONICPATH&queryValues=Di2", 10); + ITUtilStructureElement.assertRead("/DEVICEGROUP?mnemonicpath=Di2", 30); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&mnemonicpath=Di2", 5); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=APPROVED&mnemonicpath=Di2", 20); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=CANCELLED&mnemonicpath=Di2", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=REJECTED&mnemonicpath=Di2", 5); + ITUtilStructureElement.assertRead("/DEVICEGROUP?statuses=PENDING&statuses=APPROVED&mnemonicpath=Di2", 25); + + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&mnemonicpath=Di2", 15); + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&statuses=PENDING&mnemonicpath=Di2", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&statuses=APPROVED&mnemonicpath=Di2", 15); + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&statuses=CANCELLED&mnemonicpath=Di2", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&statuses=REJECTED&mnemonicpath=Di2", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=false&statuses=PENDING&statuses=APPROVED&mnemonicpath=Di2", 15); + + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&mnemonicpath=Di2", 15); + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&statuses=PENDING&mnemonicpath=Di2", 5); + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&statuses=APPROVED&mnemonicpath=Di2", 5); + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&statuses=CANCELLED&mnemonicpath=Di2", 0); + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&statuses=REJECTED&mnemonicpath=Di2", 5); + ITUtilStructureElement.assertRead("/DEVICEGROUP?deleted=true&statuses=PENDING&statuses=APPROVED&mnemonicpath=Di2", 10); ITUtilStructureElement.assertRead("/children/DEVICEGROUP/" + uuid.toString(), 0); ITUtilStructureElement.assertRead("/children/DISCIPLINE/" + disciplineUuid.toString(), 1, -1); diff --git a/src/test/java/org/openepics/names/docker/StructuresDeviceTypeIT.java b/src/test/java/org/openepics/names/docker/StructuresDeviceTypeIT.java index 6016a0c9..c1e33320 100644 --- a/src/test/java/org/openepics/names/docker/StructuresDeviceTypeIT.java +++ b/src/test/java/org/openepics/names/docker/StructuresDeviceTypeIT.java @@ -992,11 +992,11 @@ class StructuresDeviceTypeIT { ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&mnemonic=Rsha", 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rsha", 0); @@ -1021,11 +1021,11 @@ class StructuresDeviceTypeIT { ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED", 1, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + approvedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&mnemonic=Rsha", 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + approvedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rsha", 1); @@ -1077,11 +1077,11 @@ class StructuresDeviceTypeIT { ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&mnemonic=Rshc", 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshc", 0); @@ -1106,11 +1106,11 @@ class StructuresDeviceTypeIT { ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED", 1, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + cancelledStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&mnemonic=Rshc", 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + cancelledStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshc", 0); @@ -1162,11 +1162,11 @@ class StructuresDeviceTypeIT { ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&mnemonic=Rshr", 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshr", 0); @@ -1191,11 +1191,11 @@ class StructuresDeviceTypeIT { ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED", 1, -1); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 1); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + rejectedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&mnemonic=Rshr", 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + rejectedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Di", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshr", 0); @@ -1289,10 +1289,10 @@ class StructuresDeviceTypeIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + uuid.toString(), 1); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + uuid2.toString(), 1); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + uuid3.toString(), 1); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + uuid.toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + uuid2.toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + uuid3.toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P1", 0); ITUtilStructureElement.assertRead("/mnemonic/C1", 0); @@ -1462,10 +1462,10 @@ class StructuresDeviceTypeIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + uuid.toString(), 2); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + uuid2.toString(), 2); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + uuid3.toString(), 2); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + uuid.toString(), 2); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + uuid2.toString(), 2); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + uuid3.toString(), 2); + ITUtilStructureElement.assertRead("/DEVICETYPE?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P9", 1); ITUtilStructureElement.assertRead("/mnemonic/C9", 1); @@ -1789,26 +1789,26 @@ class StructuresDeviceTypeIT { // from first structure element assertNotNull(uuid); - ITUtilStructureElement.assertRead("/DEVICETYPE?queryFields=MNEMONIC&queryValues=A__", 45); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 10); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 20); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 10); - ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 30); - - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&queryFields=MNEMONIC&queryValues=A__", 30); - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 15); - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 20); - - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&queryFields=MNEMONIC&queryValues=A__", 15); - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 0); - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 10); + ITUtilStructureElement.assertRead("/DEVICETYPE?mnemonic=A__", 45); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&mnemonic=A__", 10); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=APPROVED&mnemonic=A__", 20); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=CANCELLED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=REJECTED&mnemonic=A__", 10); + ITUtilStructureElement.assertRead("/DEVICETYPE?statuses=PENDING&statuses=APPROVED&mnemonic=A__", 30); + + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&mnemonic=A__", 30); + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&statuses=PENDING&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&statuses=APPROVED&mnemonic=A__", 15); + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&statuses=CANCELLED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&statuses=REJECTED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=false&statuses=PENDING&statuses=APPROVED&mnemonic=A__", 20); + + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&mnemonic=A__", 15); + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&statuses=PENDING&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&statuses=APPROVED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&statuses=CANCELLED&mnemonic=A__", 0); + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&statuses=REJECTED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DEVICETYPE?deleted=true&statuses=PENDING&statuses=APPROVED&mnemonic=A__", 10); ITUtilStructureElement.assertRead("/children/DEVICETYPE/" + uuid.toString(), 0); ITUtilStructureElement.assertRead("/children/DEVICEGROUP/" + deviceGroupUuid.toString(), 1, -1); diff --git a/src/test/java/org/openepics/names/docker/StructuresDisciplineIT.java b/src/test/java/org/openepics/names/docker/StructuresDisciplineIT.java index daa62485..496cbd5a 100644 --- a/src/test/java/org/openepics/names/docker/StructuresDisciplineIT.java +++ b/src/test/java/org/openepics/names/docker/StructuresDisciplineIT.java @@ -935,11 +935,11 @@ class StructuresDisciplineIT { ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&mnemonic=Rsha", 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rsha", 0); @@ -959,11 +959,11 @@ class StructuresDisciplineIT { ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED", 1, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + approvedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&mnemonic=Rsha", 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + approvedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rsha", 1); @@ -1010,11 +1010,11 @@ class StructuresDisciplineIT { ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&mnemonic=Rshc", 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rshc", 0); @@ -1034,11 +1034,11 @@ class StructuresDisciplineIT { ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED", 1, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + cancelledStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&mnemonic=Rshc", 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + cancelledStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rshc", 0); @@ -1085,11 +1085,11 @@ class StructuresDisciplineIT { ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&mnemonic=Rshr", 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rshr", 0); @@ -1109,11 +1109,11 @@ class StructuresDisciplineIT { ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED", 1, -1); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 1); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + rejectedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&mnemonic=Rshr", 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + rejectedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rshr", 0); @@ -1202,10 +1202,10 @@ class StructuresDisciplineIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + uuid.toString(), 1); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + uuid2.toString(), 1); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + uuid3.toString(), 1); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + uuid.toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + uuid2.toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + uuid3.toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P1", 0); ITUtilStructureElement.assertRead("/mnemonic/C1", 0); @@ -1371,10 +1371,10 @@ class StructuresDisciplineIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + uuid.toString(), 2); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + uuid2.toString(), 2); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + uuid3.toString(), 2); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + uuid.toString(), 2); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + uuid2.toString(), 2); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + uuid3.toString(), 2); + ITUtilStructureElement.assertRead("/DISCIPLINE?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P9", 1); ITUtilStructureElement.assertRead("/mnemonic/C9", 1); @@ -1694,26 +1694,26 @@ class StructuresDisciplineIT { // from first structure element assertNotNull(uuid); - ITUtilStructureElement.assertRead("/DISCIPLINE?queryFields=MNEMONIC&queryValues=A__", 45); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 10); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 20); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 10); - ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 30); - - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&queryFields=MNEMONIC&queryValues=A__", 30); - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 15); - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 20); - - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&queryFields=MNEMONIC&queryValues=A__", 15); - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 0); - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 10); + ITUtilStructureElement.assertRead("/DISCIPLINE?mnemonic=A__", 45); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&mnemonic=A__", 10); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=APPROVED&mnemonic=A__", 20); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=CANCELLED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=REJECTED&mnemonic=A__", 10); + ITUtilStructureElement.assertRead("/DISCIPLINE?statuses=PENDING&statuses=APPROVED&mnemonic=A__", 30); + + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&mnemonic=A__", 30); + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&statuses=PENDING&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&statuses=APPROVED&mnemonic=A__", 15); + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&statuses=CANCELLED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&statuses=REJECTED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=false&statuses=PENDING&statuses=APPROVED&mnemonic=A__", 20); + + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&mnemonic=A__", 15); + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&statuses=PENDING&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&statuses=APPROVED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&statuses=CANCELLED&mnemonic=A__", 0); + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&statuses=REJECTED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/DISCIPLINE?deleted=true&statuses=PENDING&statuses=APPROVED&mnemonic=A__", 10); ITUtilStructureElement.assertRead("/children/DISCIPLINE/" + uuid.toString(), 0); diff --git a/src/test/java/org/openepics/names/docker/StructuresSubsystemIT.java b/src/test/java/org/openepics/names/docker/StructuresSubsystemIT.java index 80caad58..0cf4086c 100644 --- a/src/test/java/org/openepics/names/docker/StructuresSubsystemIT.java +++ b/src/test/java/org/openepics/names/docker/StructuresSubsystemIT.java @@ -994,11 +994,11 @@ class StructuresSubsystemIT { ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&mnemonic=Rsha", 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Sys", 1); @@ -1030,11 +1030,11 @@ class StructuresSubsystemIT { ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED", 1, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + approvedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&mnemonic=Rsha", 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + approvedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Sys", 1); @@ -1093,11 +1093,11 @@ class StructuresSubsystemIT { ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&mnemonic=Rshc", 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Sys", 1); @@ -1129,11 +1129,11 @@ class StructuresSubsystemIT { ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED", 1, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + cancelledStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&mnemonic=Rshc", 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + cancelledStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Sys", 1); @@ -1192,11 +1192,11 @@ class StructuresSubsystemIT { ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&mnemonic=Rshr", 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Sys", 1); @@ -1228,11 +1228,11 @@ class StructuresSubsystemIT { ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED", 1, -1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + rejectedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&mnemonic=Rshr", 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + rejectedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Sys", 1); @@ -1333,10 +1333,10 @@ class StructuresSubsystemIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + uuid.toString(), 1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + uuid2.toString(), 1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + uuid3.toString(), 1); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + uuid.toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + uuid2.toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + uuid3.toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P1", 0); ITUtilStructureElement.assertRead("/mnemonic/C1", 0); @@ -1510,10 +1510,10 @@ class StructuresSubsystemIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + uuid.toString(), 2); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + uuid2.toString(), 2); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + uuid3.toString(), 2); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + uuid.toString(), 2); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + uuid2.toString(), 2); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + uuid3.toString(), 2); + ITUtilStructureElement.assertRead("/SUBSYSTEM?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P9", 1); ITUtilStructureElement.assertRead("/mnemonic/C9", 1); @@ -1841,26 +1841,26 @@ class StructuresSubsystemIT { // from first structure element assertNotNull(uuid); - ITUtilStructureElement.assertRead("/SUBSYSTEM?queryFields=MNEMONIC&queryValues=A__", 45); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 10); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 20); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 10); - ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 30); - - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&queryFields=MNEMONIC&queryValues=A__", 30); - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 15); - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 20); - - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&queryFields=MNEMONIC&queryValues=A__", 15); - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 0); - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 10); + ITUtilStructureElement.assertRead("/SUBSYSTEM?mnemonic=A__", 45); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&mnemonic=A__", 10); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=APPROVED&mnemonic=A__", 20); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=CANCELLED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=REJECTED&mnemonic=A__", 10); + ITUtilStructureElement.assertRead("/SUBSYSTEM?statuses=PENDING&statuses=APPROVED&mnemonic=A__", 30); + + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&mnemonic=A__", 30); + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&statuses=PENDING&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&statuses=APPROVED&mnemonic=A__", 15); + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&statuses=CANCELLED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&statuses=REJECTED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=false&statuses=PENDING&statuses=APPROVED&mnemonic=A__", 20); + + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&mnemonic=A__", 15); + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&statuses=PENDING&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&statuses=APPROVED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&statuses=CANCELLED&mnemonic=A__", 0); + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&statuses=REJECTED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SUBSYSTEM?deleted=true&statuses=PENDING&statuses=APPROVED&mnemonic=A__", 10); ITUtilStructureElement.assertRead("/children/SUBSYSTEM/" + uuid.toString(), 0); ITUtilStructureElement.assertRead("/children/SYSTEM/" + systemUuid.toString(), 1, -1); diff --git a/src/test/java/org/openepics/names/docker/StructuresSystemGroupIT.java b/src/test/java/org/openepics/names/docker/StructuresSystemGroupIT.java index b017c149..79c37105 100644 --- a/src/test/java/org/openepics/names/docker/StructuresSystemGroupIT.java +++ b/src/test/java/org/openepics/names/docker/StructuresSystemGroupIT.java @@ -979,11 +979,11 @@ class StructuresSystemGroupIT { ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&mnemonic=Rsha", 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rsha", 0); @@ -1003,11 +1003,11 @@ class StructuresSystemGroupIT { ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED", 1, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + approvedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&mnemonic=Rsha", 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + approvedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rsha", 1); @@ -1054,11 +1054,11 @@ class StructuresSystemGroupIT { ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&mnemonic=Rshc", 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rshc", 0); @@ -1078,11 +1078,11 @@ class StructuresSystemGroupIT { ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED", 1, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + cancelledStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&mnemonic=Rshc", 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + cancelledStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rshc", 0); @@ -1129,11 +1129,11 @@ class StructuresSystemGroupIT { ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&mnemonic=Rshr", 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rshr", 0); @@ -1153,11 +1153,11 @@ class StructuresSystemGroupIT { ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED", 1, -1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + rejectedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&mnemonic=Rshr", 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + rejectedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Rshr", 0); @@ -1246,10 +1246,10 @@ class StructuresSystemGroupIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + uuid.toString(), 1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + uuid2.toString(), 1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + uuid3.toString(), 1); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + uuid.toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + uuid2.toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + uuid3.toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P1", 0); ITUtilStructureElement.assertRead("/mnemonic/C1", 0); @@ -1415,10 +1415,10 @@ class StructuresSystemGroupIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + uuid.toString(), 2); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + uuid2.toString(), 2); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + uuid3.toString(), 2); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + uuid.toString(), 2); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + uuid2.toString(), 2); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + uuid3.toString(), 2); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P9", 1); ITUtilStructureElement.assertRead("/mnemonic/C9", 1); @@ -1738,26 +1738,26 @@ class StructuresSystemGroupIT { // from first structure element assertNotNull(uuid); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?queryFields=MNEMONIC&queryValues=A__", 45); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 10); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 20); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 10); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 30); - - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&queryFields=MNEMONIC&queryValues=A__", 30); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 15); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 20); - - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&queryFields=MNEMONIC&queryValues=A__", 15); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 0); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 10); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?mnemonic=A__", 45); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&mnemonic=A__", 10); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=APPROVED&mnemonic=A__", 20); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=CANCELLED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=REJECTED&mnemonic=A__", 10); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?statuses=PENDING&statuses=APPROVED&mnemonic=A__", 30); + + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&mnemonic=A__", 30); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&statuses=PENDING&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&statuses=APPROVED&mnemonic=A__", 15); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&statuses=CANCELLED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&statuses=REJECTED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=false&statuses=PENDING&statuses=APPROVED&mnemonic=A__", 20); + + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&mnemonic=A__", 15); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&statuses=PENDING&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&statuses=APPROVED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&statuses=CANCELLED&mnemonic=A__", 0); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&statuses=REJECTED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEMGROUP?deleted=true&statuses=PENDING&statuses=APPROVED&mnemonic=A__", 10); ITUtilStructureElement.assertRead("/children/SYSTEMGROUP/" + uuid.toString(), 0); diff --git a/src/test/java/org/openepics/names/docker/StructuresSystemIT.java b/src/test/java/org/openepics/names/docker/StructuresSystemIT.java index 74b01f6b..97190d68 100644 --- a/src/test/java/org/openepics/names/docker/StructuresSystemIT.java +++ b/src/test/java/org/openepics/names/docker/StructuresSystemIT.java @@ -977,11 +977,11 @@ class StructuresSystemIT { ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&mnemonic=Rsha", 1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Rsha", 0); @@ -1006,11 +1006,11 @@ class StructuresSystemIT { ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED", 1, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rsha", 1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rsha", 0); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + approvedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&mnemonic=Rsha", 1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&mnemonic=Rsha", 0); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + approvedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Rsha", 1); @@ -1062,11 +1062,11 @@ class StructuresSystemIT { ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 1, -1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&mnemonic=Rshc", 1, -1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshc", 0); @@ -1091,11 +1091,11 @@ class StructuresSystemIT { ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED", 1, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshc", 1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshc", 0); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + cancelledStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&mnemonic=Rshc", 1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&mnemonic=Rshc", 0); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + cancelledStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshc", 0); @@ -1147,11 +1147,11 @@ class StructuresSystemIT { ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED", 0, -1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + createdStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&mnemonic=Rshr", 1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + createdStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshr", 0); @@ -1176,11 +1176,11 @@ class StructuresSystemIT { ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED", 0, -1); ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED", 1, -1); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=Rshr", 0); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=Rshr", 1); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + rejectedStructureElement.getUuid().toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&mnemonic=Rshr", 0); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&mnemonic=Rshr", 1); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + rejectedStructureElement.getUuid().toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/Sg", 1); ITUtilStructureElement.assertRead("/mnemonic/Rshr", 0); @@ -1274,10 +1274,10 @@ class StructuresSystemIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + uuid.toString(), 1); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + uuid2.toString(), 1); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + uuid3.toString(), 1); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + uuid.toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + uuid2.toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + uuid3.toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P1", 0); ITUtilStructureElement.assertRead("/mnemonic/C1", 0); @@ -1447,10 +1447,10 @@ class StructuresSystemIT { // ( include if latest ) // include if latest not exists (considered present + future) - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + uuid.toString(), 2); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + uuid2.toString(), 2); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + uuid3.toString(), 2); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=UUID&queryValues=" + uuid4.toString(), 1); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + uuid.toString(), 2); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + uuid2.toString(), 2); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + uuid3.toString(), 2); + ITUtilStructureElement.assertRead("/SYSTEM?uuid=" + uuid4.toString(), 1); ITUtilStructureElement.assertRead("/mnemonic/P9", 1); ITUtilStructureElement.assertRead("/mnemonic/C9", 1); @@ -1774,26 +1774,26 @@ class StructuresSystemIT { // from first structure element assertNotNull(uuid); - ITUtilStructureElement.assertRead("/SYSTEM?queryFields=MNEMONIC&queryValues=A__", 45); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 10); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 20); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 10); - ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 30); - - ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&queryFields=MNEMONIC&queryValues=A__", 30); - ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 15); - ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 20); - - ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&queryFields=MNEMONIC&queryValues=A__", 15); - ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&statuses=PENDING&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&statuses=CANCELLED&queryFields=MNEMONIC&queryValues=A__", 0); - ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&statuses=REJECTED&queryFields=MNEMONIC&queryValues=A__", 5); - ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&statuses=PENDING&statuses=APPROVED&queryFields=MNEMONIC&queryValues=A__", 10); + ITUtilStructureElement.assertRead("/SYSTEM?mnemonic=A__", 45); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&mnemonic=A__", 10); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=APPROVED&mnemonic=A__", 20); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=CANCELLED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=REJECTED&mnemonic=A__", 10); + ITUtilStructureElement.assertRead("/SYSTEM?statuses=PENDING&statuses=APPROVED&mnemonic=A__", 30); + + ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&mnemonic=A__", 30); + ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&statuses=PENDING&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&statuses=APPROVED&mnemonic=A__", 15); + ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&statuses=CANCELLED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&statuses=REJECTED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEM?deleted=false&statuses=PENDING&statuses=APPROVED&mnemonic=A__", 20); + + ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&mnemonic=A__", 15); + ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&statuses=PENDING&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&statuses=APPROVED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&statuses=CANCELLED&mnemonic=A__", 0); + ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&statuses=REJECTED&mnemonic=A__", 5); + ITUtilStructureElement.assertRead("/SYSTEM?deleted=true&statuses=PENDING&statuses=APPROVED&mnemonic=A__", 10); ITUtilStructureElement.assertRead("/children/SYSTEM/" + uuid.toString(), 0); ITUtilStructureElement.assertRead("/children/SYSTEMGROUP/" + systemGroupUuid.toString(), 1, -1); diff --git a/src/test/java/org/openepics/names/util/ValidateUtilTest.java b/src/test/java/org/openepics/names/util/ValidateUtilTest.java index faba23cb..c0922795 100644 --- a/src/test/java/org/openepics/names/util/ValidateUtilTest.java +++ b/src/test/java/org/openepics/names/util/ValidateUtilTest.java @@ -334,10 +334,9 @@ class ValidateUtilTest { void validateInputReadStructuresTypeNull() { try { ValidateStructureElementUtil.validateStructuresInputRead( - null, null, null, null, null, - null, - null, null, - null, null); + null, null, null, + null, null, null, null, null, null, null, + null, null, null, null, null); fail(); } catch (InputNotAvailableException e) { assertEquals(TextUtil.VALUE_IS_NOT_AVAILABLE, e.getMessage()); @@ -351,35 +350,29 @@ class ValidateUtilTest { @Test void validateInputReadStructures() { ValidateStructureElementUtil.validateStructuresInputRead( - Type.SYSTEMGROUP, null, null, null, null, - null, - null, null, - null, null); + Type.SYSTEMGROUP, null, null, + null, null, null, null, null, null, null, + null, null, null, null, null); ValidateStructureElementUtil.validateStructuresInputRead( - Type.SYSTEM, null, null, null, null, - null, - null, null, - null, null); + Type.SYSTEM, null, null, + null, null, null, null, null, null, null, + null, null, null, null, null); ValidateStructureElementUtil.validateStructuresInputRead( - Type.SUBSYSTEM, null, null, null, null, - null, - null, null, - null, null); + Type.SUBSYSTEM, null, null, + null, null, null, null, null, null, null, + null, null, null, null, null); ValidateStructureElementUtil.validateStructuresInputRead( - Type.DISCIPLINE, null, null, null, null, - null, - null, null, - null, null); + Type.DISCIPLINE, null, null, + null, null, null, null, null, null, null, + null, null, null, null, null); ValidateStructureElementUtil.validateStructuresInputRead( - Type.DEVICEGROUP, null, null, null, null, - null, - null, null, - null, null); + Type.DEVICEGROUP, null, null, + null, null, null, null, null, null, null, + null, null, null, null, null); ValidateStructureElementUtil.validateStructuresInputRead( - Type.DEVICETYPE, null, null, null, null, - null, - null, null, - null, null); + Type.DEVICETYPE, null, null, + null, null, null, null, null, null, null, + null, null, null, null, null); } /** -- GitLab