Commit 4c32d804 authored by Matija Obreza's avatar Matija Obreza

Merged Catalog exceptions with Genesys

parent 1801cae1
......@@ -18,7 +18,7 @@ package org.genesys.catalog.annotations;
import java.util.HashMap;
import java.util.Map;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys2.server.exception.InvalidApiUsageException;
/**
* The Class PublishValidationException.
......
......@@ -20,10 +20,10 @@ import java.io.EOFException;
import javax.servlet.http.HttpServletRequest;
import org.genesys.blocks.security.NotUniqueUserException;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.filerepository.FileRepositoryException;
import org.genesys.filerepository.NoSuchRepositoryFileException;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.exception.NotFoundElement;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.dao.ConcurrencyFailureException;
......
......@@ -24,7 +24,6 @@ import java.util.stream.Collectors;
import org.genesys.blocks.model.JsonViews;
import org.genesys.catalog.api.FilteredPage;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys2.server.model.genesys.AccessionRef;
import org.genesys.catalog.model.dataset.Dataset;
import org.genesys.catalog.model.dataset.DatasetCreator;
......@@ -39,6 +38,7 @@ import org.genesys.filerepository.InvalidRepositoryPathException;
import org.genesys.filerepository.NoSuchRepositoryFileException;
import org.genesys.filerepository.model.RepositoryFile;
import org.genesys2.server.api.ApiBaseController;
import org.genesys2.server.exception.NotFoundElement;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......
......@@ -23,7 +23,6 @@ import java.util.UUID;
import org.genesys.blocks.model.JsonViews;
import org.genesys.catalog.api.FilteredPage;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.model.dataset.Dataset;
import org.genesys.catalog.model.filters.DescriptorFilter;
import org.genesys.catalog.model.traits.Descriptor;
......@@ -31,6 +30,7 @@ import org.genesys.catalog.model.traits.DescriptorList;
import org.genesys.catalog.service.DescriptorService;
import org.genesys.catalog.service.ShortFilterService;
import org.genesys2.server.api.ApiBaseController;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......
......@@ -19,11 +19,11 @@ import java.io.IOException;
import java.util.List;
import java.util.UUID;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.vocab.VocabularyTerm;
import org.genesys.catalog.service.VocabularyService;
import org.genesys.catalog.service.worker.ISO3166VocabularyUpdater;
import org.genesys2.server.api.ApiBaseController;
import org.genesys2.server.exception.NotFoundElement;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......
......@@ -30,8 +30,8 @@ import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilder;
import org.genesys.blocks.model.BasicModel;
import org.genesys.blocks.model.JsonViews;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.model.Partner;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.model.genesys.AccessionRef;
import org.genesys.catalog.model.dataset.Dataset;
import org.genesys.catalog.model.filters.DatasetFilter;
......
/*
* Copyright 2017 Global Crop Diversity Trust
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.genesys.catalog.exceptions;
/**
* Parent exception for cases where data does not match business logic.
*
* @author Matija Obreza
*/
public class InvalidApiUsageException extends RuntimeException {
private static final long serialVersionUID = 525397094935272124L;
/**
* Instantiates a new invalid api usage exception.
*/
public InvalidApiUsageException() {
super();
}
/**
* Instantiates a new invalid api usage exception.
*
* @param message the message
*/
public InvalidApiUsageException(final String message) {
super(message);
}
/**
* Instantiates a new invalid api usage exception.
*
* @param message the message
* @param cause the cause
*/
public InvalidApiUsageException(final String message, final Throwable cause) {
super(message, cause);
}
/**
* Instantiates a new invalid api usage exception.
*
* @param cause the cause
*/
public InvalidApiUsageException(final Throwable cause) {
super(cause);
}
}
/*
* Copyright 2017 Global Crop Diversity Trust
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.genesys.catalog.exceptions;
/**
* This exception should generate when some element not found somewhere.
* Example: some element not found in DB by ID or UUId.
*
* @author Andrey Lugovskoy.
*/
// TODO Replace with org.genesys2.server.api.NotFoundElement
public class NotFoundElement extends InvalidApiUsageException {
private static final long serialVersionUID = 6621976491018091330L;
/**
* Instantiates a new not found element.
*/
public NotFoundElement() {
}
/**
* Instantiates a new not found element.
*
* @param message the message
*/
public NotFoundElement(final String message) {
super(message);
}
/**
* Instantiates a new not found element.
*
* @param message the message
* @param cause the cause
*/
public NotFoundElement(final String message, final Throwable cause) {
super(message, cause);
}
/**
* Instantiates a new not found element.
*
* @param cause the cause
*/
public NotFoundElement(final Throwable cause) {
super(cause);
}
}
......@@ -21,7 +21,6 @@ import java.util.List;
import java.util.Set;
import java.util.UUID;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.dataset.Dataset;
import org.genesys.catalog.model.dataset.DatasetCreator;
import org.genesys.catalog.model.dataset.DatasetLocation;
......@@ -31,6 +30,7 @@ import org.genesys.filerepository.InvalidRepositoryFileDataException;
import org.genesys.filerepository.InvalidRepositoryPathException;
import org.genesys.filerepository.NoSuchRepositoryFileException;
import org.genesys.filerepository.model.RepositoryFile;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.genesys.Accession;
import org.genesys2.server.model.genesys.AccessionRef;
import org.slf4j.Logger;
......
......@@ -15,11 +15,11 @@
*/
package org.genesys.catalog.service;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.dataset.Dataset;
import org.genesys.catalog.model.filters.DescriptorFilter;
import org.genesys.catalog.model.traits.Descriptor;
import org.genesys.catalog.model.traits.DescriptorList;
import org.genesys2.server.exception.NotFoundElement;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.security.access.method.P;
......
......@@ -15,10 +15,10 @@
*/
package org.genesys.catalog.service;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.filters.ControlledVocabularyFilter;
import org.genesys.catalog.model.vocab.ControlledVocabulary;
import org.genesys.catalog.model.vocab.VocabularyTerm;
import org.genesys2.server.exception.NotFoundElement;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
......
......@@ -34,8 +34,6 @@ import java.util.stream.Collectors;
import org.apache.commons.lang.StringUtils;
import org.genesys.blocks.security.service.CustomAclService;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.Partner;
import org.genesys.catalog.model.dataset.Dataset;
import org.genesys.catalog.model.dataset.DatasetCreator;
......@@ -55,6 +53,8 @@ import org.genesys.filerepository.InvalidRepositoryPathException;
import org.genesys.filerepository.NoSuchRepositoryFileException;
import org.genesys.filerepository.model.RepositoryFile;
import org.genesys.filerepository.service.RepositoryService;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.PublishState;
import org.genesys2.server.model.UserRole;
import org.genesys2.server.model.genesys.Accession;
......
......@@ -28,8 +28,6 @@ import java.util.UUID;
import java.util.stream.Collectors;
import org.apache.commons.lang.StringUtils;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.Partner;
import org.genesys.catalog.model.filters.DescriptorListFilter;
import org.genesys.catalog.model.traits.Descriptor;
......@@ -37,6 +35,8 @@ import org.genesys.catalog.model.traits.DescriptorList;
import org.genesys.catalog.persistence.traits.DescriptorListRepository;
import org.genesys.catalog.service.DescriptorListService;
import org.genesys.catalog.service.DescriptorService;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.PublishState;
import org.genesys2.server.model.UserRole;
import org.genesys2.server.security.SecurityUtils;
......
......@@ -26,8 +26,6 @@ import java.util.UUID;
import javax.persistence.EntityManager;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.Partner;
import org.genesys.catalog.model.dataset.Dataset;
import org.genesys.catalog.model.filters.DescriptorFilter;
......@@ -39,6 +37,8 @@ import org.genesys.catalog.persistence.traits.DescriptorRepository;
import org.genesys.catalog.persistence.vocab.VocabularyTermRepository;
import org.genesys.catalog.service.DescriptorService;
import org.genesys.catalog.service.VersionManager;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.PublishState;
import org.genesys2.server.model.UserRole;
import org.genesys2.server.security.SecurityUtils;
......
......@@ -22,8 +22,6 @@ import java.util.stream.Collectors;
import javax.persistence.EntityManager;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.filters.ControlledVocabularyFilter;
import org.genesys.catalog.model.vocab.ControlledVocabulary;
import org.genesys.catalog.model.vocab.VocabularyTerm;
......@@ -31,6 +29,8 @@ import org.genesys.catalog.persistence.vocab.ControlledVocabularyRepository;
import org.genesys.catalog.persistence.vocab.VocabularyTermRepository;
import org.genesys.catalog.service.PartnerService;
import org.genesys.catalog.service.VocabularyService;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.exception.NotFoundElement;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......
......@@ -20,11 +20,11 @@ import java.util.UUID;
import javax.servlet.http.HttpServletResponse;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.filerepository.NoSuchRepositoryFileException;
import org.genesys.filerepository.model.RepositoryFile;
import org.genesys.filerepository.service.RepositoryService;
import org.genesys2.server.api.ApiBaseController;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
import org.springframework.security.access.prepost.PreAuthorize;
......
......@@ -25,7 +25,6 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.genesys.blocks.model.JsonViews;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.filerepository.FolderNotEmptyException;
import org.genesys.filerepository.InvalidRepositoryFileDataException;
import org.genesys.filerepository.InvalidRepositoryPathException;
......@@ -37,6 +36,7 @@ import org.genesys.filerepository.model.RepositoryFolder;
import org.genesys.filerepository.service.ImageGalleryService;
import org.genesys.filerepository.service.RepositoryService;
import org.genesys2.server.api.ApiBaseController;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.spring.ResourceNotFoundException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......
......@@ -22,9 +22,9 @@ import java.util.UUID;
import org.genesys.blocks.model.JsonViews;
import org.genesys.catalog.api.FilteredPage;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.service.ShortFilterService;
import org.genesys2.server.api.ApiBaseController;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.model.genesys.MaterialRequest;
import org.genesys2.server.model.genesys.MaterialSubRequest;
import org.genesys2.server.model.impl.FaoInstitute;
......
......@@ -20,7 +20,7 @@ import com.fasterxml.jackson.annotation.JsonView;
import io.swagger.annotations.Api;
import org.genesys.blocks.model.JsonViews;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.impl.Subset;
import org.genesys2.server.model.impl.SubsetCreator;
import org.genesys2.server.service.SubsetService;
......
/**
* Copyright 2018 Global Crop Diversity Trust
/*
* Copyright 2017 Global Crop Diversity Trust
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -12,7 +12,7 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
**/
*/
package org.genesys2.server.exception;
/**
......
/**
* Copyright 2018 Global Crop Diversity Trust
/*
* Copyright 2017 Global Crop Diversity Trust
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -12,7 +12,7 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
**/
*/
package org.genesys2.server.exception;
/**
......
......@@ -21,7 +21,7 @@ import java.util.List;
import java.util.Set;
import java.util.UUID;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.genesys.Accession;
import org.genesys2.server.model.impl.FaoInstitute;
import org.genesys2.server.model.impl.Subset;
......
......@@ -27,11 +27,8 @@ import java.util.UUID;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.stream.Collectors;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.apache.commons.lang3.StringUtils;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.PublishState;
import org.genesys2.server.model.UserRole;
......@@ -410,7 +407,7 @@ public class SubsetServiceImpl implements SubsetService {
@Transactional
@Override
@PreAuthorize("hasRole('ADMINISTRATOR') or hasPermission(#subset, 'write')")
public SubsetCreator createSubsetCreator(Subset subset, SubsetCreator input) throws org.genesys.catalog.exceptions.NotFoundElement {
public SubsetCreator createSubsetCreator(Subset subset, SubsetCreator input) throws NotFoundElement {
subset = loadSubset(subset);
input.setSubset(subset);
return subsetCreatorRepository.save(input);
......@@ -419,7 +416,7 @@ public class SubsetServiceImpl implements SubsetService {
@Transactional
@Override
@PreAuthorize("hasRole('ADMINISTRATOR') or hasPermission(#subset, 'write')")
public SubsetCreator removeSubsetCreator(Subset subset, SubsetCreator input) throws org.genesys.catalog.exceptions.NotFoundElement {
public SubsetCreator removeSubsetCreator(Subset subset, SubsetCreator input) throws NotFoundElement {
subset = loadSubset(subset);
final SubsetCreator subsetCreator = loadSubsetCreator(input);
if (!subsetCreator.getSubset().getUuid().equals(subset.getUuid())) {
......@@ -432,7 +429,7 @@ public class SubsetServiceImpl implements SubsetService {
@Transactional
@Override
@PreAuthorize("hasRole('ADMINISTRATOR') or hasPermission(#subset, 'write')")
public SubsetCreator removeSubsetCreator(Subset subset, UUID subsetCreatorUuid) throws org.genesys.catalog.exceptions.NotFoundElement {
public SubsetCreator removeSubsetCreator(Subset subset, UUID subsetCreatorUuid) throws NotFoundElement {
subset = loadSubset(subset);
final SubsetCreator subsetCreator = loadSubsetCreator(subsetCreatorUuid);
if (!subsetCreator.getSubset().getUuid().equals(subset.getUuid())) {
......@@ -448,12 +445,12 @@ public class SubsetServiceImpl implements SubsetService {
}
@Override
public SubsetCreator loadSubsetCreator(SubsetCreator input) throws org.genesys.catalog.exceptions.NotFoundElement {
public SubsetCreator loadSubsetCreator(SubsetCreator input) throws NotFoundElement {
final SubsetCreator subsetCreator = subsetCreatorRepository.findByUuid(input.getUuid());
if (subsetCreator == null) {
LOG.error("SubsetCreator {} not found", input);
throw new org.genesys.catalog.exceptions.NotFoundElement("SubsetCreator by " + input.getUuid().toString() + " no found");
throw new org.genesys2.server.exception.NotFoundElement("SubsetCreator by " + input.getUuid().toString() + " no found");
}
if (!subsetCreator.getVersion().equals(input.getVersion())) {
LOG.error("Don't match the version");
......@@ -463,25 +460,25 @@ public class SubsetServiceImpl implements SubsetService {
}
@Override
public SubsetCreator loadSubsetCreator(UUID subsetCreatorUuid) throws org.genesys.catalog.exceptions.NotFoundElement {
public SubsetCreator loadSubsetCreator(UUID subsetCreatorUuid) throws NotFoundElement {
LOG.info("Load SubsetCreator {}", subsetCreatorUuid);
final SubsetCreator subsetCreator = subsetCreatorRepository.findByUuid(subsetCreatorUuid);
if (subsetCreator == null) {
LOG.error("SubsetCreator {} not found", subsetCreatorUuid);
throw new org.genesys.catalog.exceptions.NotFoundElement("SubsetCreator by " + subsetCreatorUuid.toString() + " no found");
throw new org.genesys2.server.exception.NotFoundElement("SubsetCreator by " + subsetCreatorUuid.toString() + " no found");
}
return subsetCreator;
}
@Override
public List<SubsetCreator> loadSubsetCreators(Subset subset) throws org.genesys.catalog.exceptions.NotFoundElement {
public List<SubsetCreator> loadSubsetCreators(Subset subset) throws NotFoundElement {
subset = loadSubset(subset);
return subset.getCreators();
}
@Transactional
@PreAuthorize("hasRole('ADMINISTRATOR') or hasPermission(#subset, 'write')")
public SubsetCreator updateSubsetCreator(Subset subset, SubsetCreator input) throws org.genesys.catalog.exceptions.NotFoundElement {
public SubsetCreator updateSubsetCreator(Subset subset, SubsetCreator input) throws NotFoundElement {
final SubsetCreator subsetCreator = loadSubsetCreator(input);
if (!subsetCreator.getSubset().getUuid().equals(subset.getUuid())) {
throw new InvalidApiUsageException("Creator does not belong to subset");
......
......@@ -19,9 +19,9 @@ import static org.hamcrest.Matchers.*;
import static org.junit.Assert.assertThat;
import org.genesys.catalog.annotations.PublishValidationException;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.dataset.Dataset;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.PublishState;
import org.junit.Before;
import org.junit.Test;
......
......@@ -30,8 +30,6 @@ import java.util.UUID;
import java.util.stream.Collectors;
import org.genesys.blocks.model.filters.StringFilter;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.dataset.Dataset;
import org.genesys.catalog.model.dataset.DatasetCreator;
import org.genesys.catalog.model.dataset.DatasetCreator.DatasetCreatorRole;
......@@ -44,6 +42,8 @@ import org.genesys.filerepository.InvalidRepositoryFileDataException;
import org.genesys.filerepository.InvalidRepositoryPathException;
import org.genesys.filerepository.NoSuchRepositoryFileException;
import org.genesys.filerepository.model.RepositoryFile;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.PublishState;
import org.genesys2.server.model.genesys.Accession;
import org.genesys2.server.model.genesys.AccessionRef;
......
......@@ -24,8 +24,6 @@ import java.util.HashMap;
import java.util.List;
import java.util.UUID;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.Partner;
import org.genesys.catalog.model.filters.DescriptorListFilter;
import org.genesys.catalog.model.traits.Descriptor;
......@@ -33,6 +31,8 @@ import org.genesys.catalog.model.traits.Descriptor.Category;
import org.genesys.catalog.model.traits.DescriptorList;
import org.genesys.catalog.service.DescriptorListService;
import org.genesys.catalog.service.impl.DescriptorListServiceImpl;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.PublishState;
import org.junit.Ignore;
import org.junit.Test;
......
......@@ -23,8 +23,6 @@ import java.util.List;
import java.util.UUID;
import org.apache.commons.lang3.RandomStringUtils;
import org.genesys.catalog.exceptions.InvalidApiUsageException;
import org.genesys.catalog.exceptions.NotFoundElement;
import org.genesys.catalog.model.filters.DescriptorFilter;
import org.genesys.catalog.model.traits.Descriptor;
import org.genesys.catalog.model.traits.Descriptor.Category;
......@@ -32,6 +30,8 @@ import org.genesys.catalog.model.traits.Descriptor.DataType;
import org.genesys.catalog.model.traits.DescriptorList;
import org.genesys.catalog.model.vocab.ControlledVocabulary;
import org.genesys.catalog.model.vocab.VocabularyTerm;
import org.genesys2.server.exception.InvalidApiUsageException;
import org.genesys2.server.exception.NotFoundElement;
import org.genesys2.server.model.PublishState;
import org.junit.Test;
import org.springframework.dao.ConcurrencyFailureException;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment