mirror of
https://github.com/DSpace/DSpace.git
synced 2025-10-17 15:03:18 +00:00
Merge remote-tracking branch 'origin/coar-notify-7' into coar-notify-7_CST-11044
# Conflicts: # dspace-server-webapp/src/main/java/org/dspace/app/rest/repository/NotifyServiceRestRepository.java # dspace-server-webapp/src/test/java/org/dspace/app/rest/NotifyServiceRestRepositoryIT.java # dspace-server-webapp/src/test/java/org/dspace/app/rest/matcher/NotifyServiceMatcher.java
This commit is contained in:
@@ -53,6 +53,9 @@ public class NotifyServiceEntity implements ReloadableEntity<Integer> {
|
|||||||
@OneToMany(mappedBy = "notifyService")
|
@OneToMany(mappedBy = "notifyService")
|
||||||
private List<NotifyServiceOutboundPattern> outboundPatterns;
|
private List<NotifyServiceOutboundPattern> outboundPatterns;
|
||||||
|
|
||||||
|
@Column(name = "enabled")
|
||||||
|
private boolean enabled = false;
|
||||||
|
|
||||||
public void setId(Integer id) {
|
public void setId(Integer id) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
}
|
}
|
||||||
@@ -118,4 +121,12 @@ public class NotifyServiceEntity implements ReloadableEntity<Integer> {
|
|||||||
public Integer getID() {
|
public Integer getID() {
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isEnabled() {
|
||||||
|
return enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEnabled(boolean enabled) {
|
||||||
|
this.enabled = enabled;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -0,0 +1,13 @@
|
|||||||
|
--
|
||||||
|
-- The contents of this file are subject to the license and copyright
|
||||||
|
-- detailed in the LICENSE and NOTICE files at the root of the source
|
||||||
|
-- tree and available online at
|
||||||
|
--
|
||||||
|
-- http://www.dspace.org/license/
|
||||||
|
--
|
||||||
|
|
||||||
|
-----------------------------------------------------------------------------------
|
||||||
|
-- edit notifyservice table add enabled column
|
||||||
|
-----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
ALTER TABLE notifyservice ADD COLUMN enabled BOOLEAN NOT NULL;
|
@@ -0,0 +1,13 @@
|
|||||||
|
--
|
||||||
|
-- The contents of this file are subject to the license and copyright
|
||||||
|
-- detailed in the LICENSE and NOTICE files at the root of the source
|
||||||
|
-- tree and available online at
|
||||||
|
--
|
||||||
|
-- http://www.dspace.org/license/
|
||||||
|
--
|
||||||
|
|
||||||
|
-----------------------------------------------------------------------------------
|
||||||
|
-- edit notifyservice table add enabled column
|
||||||
|
-----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
ALTER TABLE notifyservice ADD COLUMN enabled BOOLEAN NOT NULL;
|
@@ -125,4 +125,9 @@ public class NotifyServiceBuilder extends AbstractBuilder<NotifyServiceEntity, N
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public NotifyServiceBuilder isEnabled(boolean enabled) {
|
||||||
|
notifyServiceEntity.setEnabled(enabled);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@@ -9,6 +9,7 @@ package org.dspace.qaevent.script;
|
|||||||
|
|
||||||
import static java.util.List.of;
|
import static java.util.List.of;
|
||||||
import static org.dspace.content.QAEvent.OPENAIRE_SOURCE;
|
import static org.dspace.content.QAEvent.OPENAIRE_SOURCE;
|
||||||
|
import static org.dspace.content.QAEvent.COAR_NOTIFY;
|
||||||
import static org.dspace.matcher.QAEventMatcher.pendingOpenaireEventWith;
|
import static org.dspace.matcher.QAEventMatcher.pendingOpenaireEventWith;
|
||||||
import static org.hamcrest.MatcherAssert.assertThat;
|
import static org.hamcrest.MatcherAssert.assertThat;
|
||||||
import static org.hamcrest.Matchers.contains;
|
import static org.hamcrest.Matchers.contains;
|
||||||
@@ -33,7 +34,6 @@ import java.io.FileInputStream;
|
|||||||
import java.io.OutputStream;
|
import java.io.OutputStream;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
|
|
||||||
import eu.dnetlib.broker.BrokerClient;
|
|
||||||
import org.apache.commons.io.IOUtils;
|
import org.apache.commons.io.IOUtils;
|
||||||
import org.dspace.AbstractIntegrationTestWithDatabase;
|
import org.dspace.AbstractIntegrationTestWithDatabase;
|
||||||
import org.dspace.app.launcher.ScriptLauncher;
|
import org.dspace.app.launcher.ScriptLauncher;
|
||||||
@@ -53,6 +53,8 @@ import org.junit.After;
|
|||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import eu.dnetlib.broker.BrokerClient;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Integration tests for {@link OpenaireEventsImport}.
|
* Integration tests for {@link OpenaireEventsImport}.
|
||||||
*
|
*
|
||||||
@@ -155,7 +157,7 @@ public class OpenaireEventsImportIT extends AbstractIntegrationTestWithDatabase
|
|||||||
"Trying to read the QA events from the provided file",
|
"Trying to read the QA events from the provided file",
|
||||||
"Found 5 events in the given file"));
|
"Found 5 events in the given file"));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllSources(0, 20), contains(QASourceMatcher.with(OPENAIRE_SOURCE, 5L)));
|
assertThat(qaEventService.findAllSources(0, 20), containsInAnyOrder(QASourceMatcher.with(OPENAIRE_SOURCE, 5L), QASourceMatcher.with(COAR_NOTIFY, 0L)));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllTopics(0, 20), containsInAnyOrder(
|
assertThat(qaEventService.findAllTopics(0, 20), containsInAnyOrder(
|
||||||
QATopicMatcher.with("ENRICH/MORE/PROJECT", 1L),
|
QATopicMatcher.with("ENRICH/MORE/PROJECT", 1L),
|
||||||
@@ -211,7 +213,7 @@ public class OpenaireEventsImportIT extends AbstractIntegrationTestWithDatabase
|
|||||||
"Trying to read the QA events from the provided file",
|
"Trying to read the QA events from the provided file",
|
||||||
"Found 5 events in the given file"));
|
"Found 5 events in the given file"));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllSources(0, 20), contains(QASourceMatcher.with(OPENAIRE_SOURCE, 3L)));
|
assertThat(qaEventService.findAllSources(0, 20), containsInAnyOrder(QASourceMatcher.with(OPENAIRE_SOURCE, 3L), QASourceMatcher.with(COAR_NOTIFY, 0L)));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllTopics(0, 20), containsInAnyOrder(
|
assertThat(qaEventService.findAllTopics(0, 20), containsInAnyOrder(
|
||||||
QATopicMatcher.with("ENRICH/MISSING/ABSTRACT", 1L),
|
QATopicMatcher.with("ENRICH/MISSING/ABSTRACT", 1L),
|
||||||
@@ -251,7 +253,7 @@ public class OpenaireEventsImportIT extends AbstractIntegrationTestWithDatabase
|
|||||||
"Trying to read the QA events from the provided file",
|
"Trying to read the QA events from the provided file",
|
||||||
"Found 2 events in the given file"));
|
"Found 2 events in the given file"));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllSources(0, 20), contains(QASourceMatcher.with(OPENAIRE_SOURCE, 1L)));
|
assertThat(qaEventService.findAllSources(0, 20), containsInAnyOrder(QASourceMatcher.with(OPENAIRE_SOURCE, 1L), QASourceMatcher.with(COAR_NOTIFY, 0L)));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllTopics(0, 20), contains(QATopicMatcher.with("ENRICH/MISSING/ABSTRACT", 1L)));
|
assertThat(qaEventService.findAllTopics(0, 20), contains(QATopicMatcher.with("ENRICH/MISSING/ABSTRACT", 1L)));
|
||||||
|
|
||||||
@@ -278,7 +280,7 @@ public class OpenaireEventsImportIT extends AbstractIntegrationTestWithDatabase
|
|||||||
assertThat(handler.getWarningMessages(),empty());
|
assertThat(handler.getWarningMessages(),empty());
|
||||||
assertThat(handler.getInfoMessages(), contains("Trying to read the QA events from the provided file"));
|
assertThat(handler.getInfoMessages(), contains("Trying to read the QA events from the provided file"));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllSources(0, 20), contains(QASourceMatcher.with(OPENAIRE_SOURCE, 0L)));
|
assertThat(qaEventService.findAllSources(0, 20), containsInAnyOrder(QASourceMatcher.with(OPENAIRE_SOURCE, 0L), QASourceMatcher.with(COAR_NOTIFY, 0L)));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllTopics(0, 20), empty());
|
assertThat(qaEventService.findAllTopics(0, 20), empty());
|
||||||
|
|
||||||
@@ -325,7 +327,7 @@ public class OpenaireEventsImportIT extends AbstractIntegrationTestWithDatabase
|
|||||||
"Found 0 events from the subscription sub2",
|
"Found 0 events from the subscription sub2",
|
||||||
"Found 2 events from the subscription sub3"));
|
"Found 2 events from the subscription sub3"));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllSources(0, 20), contains(QASourceMatcher.with(OPENAIRE_SOURCE, 6L)));
|
assertThat(qaEventService.findAllSources(0, 20), containsInAnyOrder(QASourceMatcher.with(OPENAIRE_SOURCE, 6L), QASourceMatcher.with(COAR_NOTIFY, 0L)));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllTopics(0, 20), containsInAnyOrder(
|
assertThat(qaEventService.findAllTopics(0, 20), containsInAnyOrder(
|
||||||
QATopicMatcher.with("ENRICH/MORE/PROJECT", 1L),
|
QATopicMatcher.with("ENRICH/MORE/PROJECT", 1L),
|
||||||
@@ -379,7 +381,7 @@ public class OpenaireEventsImportIT extends AbstractIntegrationTestWithDatabase
|
|||||||
assertThat(handler.getWarningMessages(), empty());
|
assertThat(handler.getWarningMessages(), empty());
|
||||||
assertThat(handler.getInfoMessages(), contains("Trying to read the QA events from the OPENAIRE broker"));
|
assertThat(handler.getInfoMessages(), contains("Trying to read the QA events from the OPENAIRE broker"));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllSources(0, 20), contains(QASourceMatcher.with(OPENAIRE_SOURCE, 0L)));
|
assertThat(qaEventService.findAllSources(0, 20), containsInAnyOrder(QASourceMatcher.with(OPENAIRE_SOURCE, 0L), QASourceMatcher.with(COAR_NOTIFY, 0L)));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllTopics(0, 20), empty());
|
assertThat(qaEventService.findAllTopics(0, 20), empty());
|
||||||
|
|
||||||
@@ -430,7 +432,7 @@ public class OpenaireEventsImportIT extends AbstractIntegrationTestWithDatabase
|
|||||||
"Found 0 events from the subscription sub2",
|
"Found 0 events from the subscription sub2",
|
||||||
"Found 2 events from the subscription sub3"));
|
"Found 2 events from the subscription sub3"));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllSources(0, 20), contains(QASourceMatcher.with(OPENAIRE_SOURCE, 6L)));
|
assertThat(qaEventService.findAllSources(0, 20), containsInAnyOrder(QASourceMatcher.with(OPENAIRE_SOURCE, 6L), QASourceMatcher.with(COAR_NOTIFY, 0L)));
|
||||||
|
|
||||||
assertThat(qaEventService.findAllTopics(0, 20), containsInAnyOrder(
|
assertThat(qaEventService.findAllTopics(0, 20), containsInAnyOrder(
|
||||||
QATopicMatcher.with("ENRICH/MORE/PROJECT", 1L),
|
QATopicMatcher.with("ENRICH/MORE/PROJECT", 1L),
|
||||||
@@ -455,7 +457,6 @@ public class OpenaireEventsImportIT extends AbstractIntegrationTestWithDatabase
|
|||||||
public void testImportFromFileEventMoreReview() throws Exception {
|
public void testImportFromFileEventMoreReview() throws Exception {
|
||||||
|
|
||||||
context.turnOffAuthorisationSystem();
|
context.turnOffAuthorisationSystem();
|
||||||
|
|
||||||
Item firstItem = createItem("Test item", "123456789/99998");
|
Item firstItem = createItem("Test item", "123456789/99998");
|
||||||
Item secondItem = createItem("Test item 2", "123456789/99999");
|
Item secondItem = createItem("Test item 2", "123456789/99999");
|
||||||
|
|
||||||
@@ -466,11 +467,11 @@ public class OpenaireEventsImportIT extends AbstractIntegrationTestWithDatabase
|
|||||||
String[] args = new String[] { "import-openaire-events", "-f", getFileLocation("event-more-review.json") };
|
String[] args = new String[] { "import-openaire-events", "-f", getFileLocation("event-more-review.json") };
|
||||||
ScriptLauncher.handleScript(args, ScriptLauncher.getConfig(kernelImpl), handler, kernelImpl);
|
ScriptLauncher.handleScript(args, ScriptLauncher.getConfig(kernelImpl), handler, kernelImpl);
|
||||||
|
|
||||||
assertThat(qaEventService.findAllSources(0, 20), contains(QASourceMatcher.with(OPENAIRE_SOURCE, 1L)));
|
|
||||||
|
|
||||||
assertThat(qaEventService.findAllTopics(0, 20), contains(
|
assertThat(qaEventService.findAllTopics(0, 20), contains(
|
||||||
QATopicMatcher.with("ENRICH/MORE/REVIEW", 1L)));
|
QATopicMatcher.with("ENRICH/MORE/REVIEW", 1L)));
|
||||||
|
|
||||||
|
assertThat(qaEventService.findAllSources(0, 20), containsInAnyOrder(QASourceMatcher.with(OPENAIRE_SOURCE, 1L), QASourceMatcher.with(COAR_NOTIFY, 0L)));
|
||||||
|
|
||||||
verifyNoInteractions(mockBrokerClient);
|
verifyNoInteractions(mockBrokerClient);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -506,3 +507,4 @@ public class OpenaireEventsImportIT extends AbstractIntegrationTestWithDatabase
|
|||||||
return new File(resource.getFile()).getAbsolutePath();
|
return new File(resource.getFile()).getAbsolutePath();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,5 +1,14 @@
|
|||||||
|
/**
|
||||||
|
* The contents of this file are subject to the license and copyright
|
||||||
|
* detailed in the LICENSE and NOTICE files at the root of the source
|
||||||
|
* tree and available online at
|
||||||
|
*
|
||||||
|
* http://www.dspace.org/license/
|
||||||
|
*/
|
||||||
package org.dspace.app.rest.authorization.impl;
|
package org.dspace.app.rest.authorization.impl;
|
||||||
|
|
||||||
|
import java.sql.SQLException;
|
||||||
|
|
||||||
import org.dspace.app.rest.authorization.AuthorizationFeature;
|
import org.dspace.app.rest.authorization.AuthorizationFeature;
|
||||||
import org.dspace.app.rest.authorization.AuthorizationFeatureDocumentation;
|
import org.dspace.app.rest.authorization.AuthorizationFeatureDocumentation;
|
||||||
import org.dspace.app.rest.model.BaseObjectRest;
|
import org.dspace.app.rest.model.BaseObjectRest;
|
||||||
@@ -10,8 +19,6 @@ import org.dspace.services.ConfigurationService;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import java.sql.SQLException;
|
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
@AuthorizationFeatureDocumentation(name = CoarNotifyLdnEnabled.NAME,
|
@AuthorizationFeatureDocumentation(name = CoarNotifyLdnEnabled.NAME,
|
||||||
description = "It can be used to verify if the user can see the coar notify protocol is enabled")
|
description = "It can be used to verify if the user can see the coar notify protocol is enabled")
|
||||||
|
@@ -37,6 +37,7 @@ public class NotifyServiceConverter implements DSpaceConverter<NotifyServiceEnti
|
|||||||
notifyServiceRest.setDescription(obj.getDescription());
|
notifyServiceRest.setDescription(obj.getDescription());
|
||||||
notifyServiceRest.setUrl(obj.getUrl());
|
notifyServiceRest.setUrl(obj.getUrl());
|
||||||
notifyServiceRest.setLdnUrl(obj.getLdnUrl());
|
notifyServiceRest.setLdnUrl(obj.getLdnUrl());
|
||||||
|
notifyServiceRest.setEnabled(obj.isEnabled());
|
||||||
|
|
||||||
if (obj.getInboundPatterns() != null) {
|
if (obj.getInboundPatterns() != null) {
|
||||||
notifyServiceRest.setNotifyServiceInboundPatterns(
|
notifyServiceRest.setNotifyServiceInboundPatterns(
|
||||||
|
@@ -26,6 +26,7 @@ public class NotifyServiceRest extends BaseObjectRest<Integer> {
|
|||||||
private String description;
|
private String description;
|
||||||
private String url;
|
private String url;
|
||||||
private String ldnUrl;
|
private String ldnUrl;
|
||||||
|
private boolean enabled;
|
||||||
|
|
||||||
private List<NotifyServiceInboundPatternRest> notifyServiceInboundPatterns;
|
private List<NotifyServiceInboundPatternRest> notifyServiceInboundPatterns;
|
||||||
private List<NotifyServiceOutboundPatternRest> notifyServiceOutboundPatterns;
|
private List<NotifyServiceOutboundPatternRest> notifyServiceOutboundPatterns;
|
||||||
@@ -77,6 +78,13 @@ public class NotifyServiceRest extends BaseObjectRest<Integer> {
|
|||||||
this.ldnUrl = ldnUrl;
|
this.ldnUrl = ldnUrl;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isEnabled() {
|
||||||
|
return enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEnabled(boolean enabled) {
|
||||||
|
this.enabled = enabled;
|
||||||
|
}
|
||||||
public List<NotifyServiceInboundPatternRest> getNotifyServiceInboundPatterns() {
|
public List<NotifyServiceInboundPatternRest> getNotifyServiceInboundPatterns() {
|
||||||
return notifyServiceInboundPatterns;
|
return notifyServiceInboundPatterns;
|
||||||
}
|
}
|
||||||
|
@@ -9,16 +9,24 @@ package org.dspace.app.rest.repository;
|
|||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.servlet.ServletInputStream;
|
import javax.servlet.ServletInputStream;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import org.dspace.app.ldn.NotifyServiceEntity;
|
import org.dspace.app.ldn.NotifyServiceEntity;
|
||||||
|
import org.dspace.app.ldn.NotifyServiceInboundPattern;
|
||||||
|
import org.dspace.app.ldn.NotifyServiceOutboundPattern;
|
||||||
import org.dspace.app.ldn.service.NotifyService;
|
import org.dspace.app.ldn.service.NotifyService;
|
||||||
|
import org.dspace.app.ldn.service.NotifyServiceInboundPatternService;
|
||||||
|
import org.dspace.app.ldn.service.NotifyServiceOutboundPatternService;
|
||||||
import org.dspace.app.rest.Parameter;
|
import org.dspace.app.rest.Parameter;
|
||||||
import org.dspace.app.rest.SearchRestMethod;
|
import org.dspace.app.rest.SearchRestMethod;
|
||||||
import org.dspace.app.rest.exception.UnprocessableEntityException;
|
import org.dspace.app.rest.exception.UnprocessableEntityException;
|
||||||
|
import org.dspace.app.rest.model.NotifyServiceInboundPatternRest;
|
||||||
|
import org.dspace.app.rest.model.NotifyServiceOutboundPatternRest;
|
||||||
import org.dspace.app.rest.model.NotifyServiceRest;
|
import org.dspace.app.rest.model.NotifyServiceRest;
|
||||||
import org.dspace.app.rest.model.patch.Patch;
|
import org.dspace.app.rest.model.patch.Patch;
|
||||||
import org.dspace.app.rest.repository.patch.ResourcePatch;
|
import org.dspace.app.rest.repository.patch.ResourcePatch;
|
||||||
@@ -43,6 +51,12 @@ public class NotifyServiceRestRepository extends DSpaceRestRepository<NotifyServ
|
|||||||
@Autowired
|
@Autowired
|
||||||
private NotifyService notifyService;
|
private NotifyService notifyService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private NotifyServiceInboundPatternService inboundPatternService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private NotifyServiceOutboundPatternService outboundPatternService;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
ResourcePatch<NotifyServiceEntity> resourcePatch;
|
ResourcePatch<NotifyServiceEntity> resourcePatch;
|
||||||
|
|
||||||
@@ -88,10 +102,56 @@ public class NotifyServiceRestRepository extends DSpaceRestRepository<NotifyServ
|
|||||||
notifyServiceEntity.setDescription(notifyServiceRest.getDescription());
|
notifyServiceEntity.setDescription(notifyServiceRest.getDescription());
|
||||||
notifyServiceEntity.setUrl(notifyServiceRest.getUrl());
|
notifyServiceEntity.setUrl(notifyServiceRest.getUrl());
|
||||||
notifyServiceEntity.setLdnUrl(notifyServiceRest.getLdnUrl());
|
notifyServiceEntity.setLdnUrl(notifyServiceRest.getLdnUrl());
|
||||||
|
|
||||||
|
if (notifyServiceRest.getNotifyServiceInboundPatterns() != null) {
|
||||||
|
appendNotifyServiceInboundPatterns(context, notifyServiceEntity,
|
||||||
|
notifyServiceRest.getNotifyServiceInboundPatterns());
|
||||||
|
}
|
||||||
|
|
||||||
|
if (notifyServiceRest.getNotifyServiceOutboundPatterns() != null) {
|
||||||
|
appendNotifyServiceOutboundPatterns(context, notifyServiceEntity,
|
||||||
|
notifyServiceRest.getNotifyServiceOutboundPatterns());
|
||||||
|
}
|
||||||
|
|
||||||
|
notifyServiceEntity.setEnabled(notifyServiceRest.isEnabled());
|
||||||
notifyService.update(context, notifyServiceEntity);
|
notifyService.update(context, notifyServiceEntity);
|
||||||
|
|
||||||
return converter.toRest(notifyServiceEntity, utils.obtainProjection());
|
return converter.toRest(notifyServiceEntity, utils.obtainProjection());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void appendNotifyServiceInboundPatterns(Context context, NotifyServiceEntity notifyServiceEntity,
|
||||||
|
List<NotifyServiceInboundPatternRest> inboundPatternRests) throws SQLException {
|
||||||
|
|
||||||
|
List<NotifyServiceInboundPattern> inboundPatterns = new ArrayList<>();
|
||||||
|
|
||||||
|
for (NotifyServiceInboundPatternRest inboundPatternRest : inboundPatternRests) {
|
||||||
|
NotifyServiceInboundPattern inboundPattern = inboundPatternService.create(context, notifyServiceEntity);
|
||||||
|
inboundPattern.setPattern(inboundPatternRest.getPattern());
|
||||||
|
inboundPattern.setConstraint(inboundPatternRest.getConstraint());
|
||||||
|
inboundPattern.setAutomatic(inboundPatternRest.isAutomatic());
|
||||||
|
|
||||||
|
inboundPatterns.add(inboundPattern);
|
||||||
|
}
|
||||||
|
|
||||||
|
notifyServiceEntity.setInboundPatterns(inboundPatterns);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void appendNotifyServiceOutboundPatterns(Context context, NotifyServiceEntity notifyServiceEntity,
|
||||||
|
List<NotifyServiceOutboundPatternRest> outboundPatternRests) throws SQLException {
|
||||||
|
|
||||||
|
List<NotifyServiceOutboundPattern> outboundPatterns = new ArrayList<>();
|
||||||
|
|
||||||
|
for (NotifyServiceOutboundPatternRest outboundPatternRest : outboundPatternRests) {
|
||||||
|
NotifyServiceOutboundPattern outboundPattern = outboundPatternService.create(context, notifyServiceEntity);
|
||||||
|
outboundPattern.setPattern(outboundPatternRest.getPattern());
|
||||||
|
outboundPattern.setConstraint(outboundPatternRest.getConstraint());
|
||||||
|
|
||||||
|
outboundPatterns.add(outboundPattern);
|
||||||
|
}
|
||||||
|
|
||||||
|
notifyServiceEntity.setOutboundPatterns(outboundPatterns);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@PreAuthorize("hasAuthority('ADMIN')")
|
@PreAuthorize("hasAuthority('ADMIN')")
|
||||||
protected void patch(Context context, HttpServletRequest request, String apiCategory, String model, Integer id,
|
protected void patch(Context context, HttpServletRequest request, String apiCategory, String model, Integer id,
|
||||||
|
@@ -0,0 +1,66 @@
|
|||||||
|
/**
|
||||||
|
* The contents of this file are subject to the license and copyright
|
||||||
|
* detailed in the LICENSE and NOTICE files at the root of the source
|
||||||
|
* tree and available online at
|
||||||
|
*
|
||||||
|
* http://www.dspace.org/license/
|
||||||
|
*/
|
||||||
|
package org.dspace.app.rest.repository.patch.operation.ldn;
|
||||||
|
|
||||||
|
import java.sql.SQLException;
|
||||||
|
|
||||||
|
import org.dspace.app.ldn.NotifyServiceEntity;
|
||||||
|
import org.dspace.app.ldn.service.NotifyService;
|
||||||
|
import org.dspace.app.rest.exception.DSpaceBadRequestException;
|
||||||
|
import org.dspace.app.rest.model.patch.Operation;
|
||||||
|
import org.dspace.app.rest.repository.patch.operation.PatchOperation;
|
||||||
|
import org.dspace.core.Context;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Implementation for NotifyService Enabled Replace patches.
|
||||||
|
*
|
||||||
|
* Example: <code>
|
||||||
|
* curl -X PATCH http://${dspace.server.url}/api/ldn/ldnservices/<:id-notifyService> -H "
|
||||||
|
* Content-Type: application/json" -d '
|
||||||
|
* [{
|
||||||
|
* "op": "replace",
|
||||||
|
* "path": "/enabled"
|
||||||
|
* }]'
|
||||||
|
* </code>
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
public class NotifyServiceEnabledReplaceOperation extends PatchOperation<NotifyServiceEntity> {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private NotifyService notifyService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private NotifyServicePatchUtils notifyServicePatchUtils;
|
||||||
|
|
||||||
|
private static final String OPERATION_PATH = "/enabled";
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NotifyServiceEntity perform(Context context, NotifyServiceEntity notifyServiceEntity, Operation operation)
|
||||||
|
throws SQLException {
|
||||||
|
checkOperationValue(operation.getValue());
|
||||||
|
Boolean enabled = getBooleanOperationValue(operation.getValue());
|
||||||
|
|
||||||
|
if (supports(notifyServiceEntity, operation)) {
|
||||||
|
notifyServiceEntity.setEnabled(enabled);
|
||||||
|
notifyService.update(context, notifyServiceEntity);
|
||||||
|
return notifyServiceEntity;
|
||||||
|
} else {
|
||||||
|
throw new DSpaceBadRequestException(
|
||||||
|
"NotifyServiceEnabledReplaceOperation does not support this operation");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
||||||
|
operation.getPath().trim().toLowerCase().equalsIgnoreCase(OPERATION_PATH));
|
||||||
|
}
|
||||||
|
}
|
@@ -30,7 +30,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "replace",
|
* "op": "replace",
|
||||||
* "path": "notifyservices_inbound_patterns[index]/automatic"
|
* "path": "notifyServiceInboundPatterns[index]/automatic"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -74,7 +74,7 @@ public class NotifyServiceInboundPatternAutomaticReplaceOperation extends PatchO
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -31,7 +31,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "add",
|
* "op": "add",
|
||||||
* "path": "notifyservices_inbound_patterns[index]/constraint"
|
* "path": "notifyServiceInboundPatterns[index]/constraint"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -86,7 +86,7 @@ public class NotifyServiceInboundPatternConstraintAddOperation extends PatchOper
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_ADD) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_ADD) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -30,7 +30,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "remove",
|
* "op": "remove",
|
||||||
* "path": "notifyservices_inbound_patterns[index]/constraint"
|
* "path": "notifyServiceInboundPatterns[index]/constraint"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -72,7 +72,7 @@ public class NotifyServiceInboundPatternConstraintRemoveOperation extends PatchO
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -31,7 +31,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "replace",
|
* "op": "replace",
|
||||||
* "path": "notifyservices_inbound_patterns[index]/constraint"
|
* "path": "notifyServiceInboundPatterns[index]/constraint"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -86,7 +86,7 @@ public class NotifyServiceInboundPatternConstraintReplaceOperation extends Patch
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -31,7 +31,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "add",
|
* "op": "add",
|
||||||
* "path": "notifyservices_inbound_patterns[index]/pattern"
|
* "path": "notifyServiceInboundPatterns[index]/pattern"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -86,7 +86,7 @@ public class NotifyServiceInboundPatternPatternAddOperation extends PatchOperati
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_ADD) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_ADD) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -31,7 +31,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "replace",
|
* "op": "replace",
|
||||||
* "path": "notifyservices_inbound_patterns[index]/pattern"
|
* "path": "notifyServiceInboundPatterns[index]/pattern"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -86,7 +86,7 @@ public class NotifyServiceInboundPatternPatternReplaceOperation extends PatchOpe
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_INBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -30,7 +30,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "remove",
|
* "op": "remove",
|
||||||
* "path": "notifyservices_inbound_patterns[index]"
|
* "path": "notifyServiceInboundPatterns[index]"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -70,7 +70,7 @@ public class NotifyServiceInboundPatternRemoveOperation extends PatchOperation<N
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
||||||
path.startsWith(OPERATION_PATH) &&
|
path.startsWith(OPERATION_PATH) &&
|
||||||
|
@@ -30,7 +30,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "replace",
|
* "op": "replace",
|
||||||
* "path": "notifyservices_inbound_patterns[index]",
|
* "path": "notifyServiceInboundPatterns[index]",
|
||||||
* "value": {"pattern":"patternA","constraint":"itemFilterA","automatic":"false"}
|
* "value": {"pattern":"patternA","constraint":"itemFilterA","automatic":"false"}
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
@@ -80,7 +80,7 @@ public class NotifyServiceInboundPatternReplaceOperation extends PatchOperation<
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
||||||
path.startsWith(OPERATION_PATH) &&
|
path.startsWith(OPERATION_PATH) &&
|
||||||
|
@@ -29,7 +29,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "add",
|
* "op": "add",
|
||||||
* "path": "notifyservices_inbound_patterns/-",
|
* "path": "notifyServiceInboundPatterns/-",
|
||||||
* "value": {"pattern":"patternA","constraint":"itemFilterA","automatic":"false"}
|
* "value": {"pattern":"patternA","constraint":"itemFilterA","automatic":"false"}
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
|
@@ -29,7 +29,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "remove",
|
* "op": "remove",
|
||||||
* "path": "notifyservices_inbound_patterns"
|
* "path": "notifyServiceInboundPatterns"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -63,7 +63,7 @@ public class NotifyServiceInboundPatternsRemoveOperation extends PatchOperation<
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
||||||
path.startsWith(OPERATION_PATH));
|
path.startsWith(OPERATION_PATH));
|
||||||
|
@@ -30,7 +30,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "replace",
|
* "op": "replace",
|
||||||
* "path": "notifyservices_inbound_patterns",
|
* "path": "notifyServiceInboundPatterns",
|
||||||
* "value": [{"pattern":"patternA","constraint":"itemFilterA","automatic":"false"}]
|
* "value": [{"pattern":"patternA","constraint":"itemFilterA","automatic":"false"}]
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
|
@@ -31,7 +31,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "add",
|
* "op": "add",
|
||||||
* "path": "notifyservices_outbound_patterns[index]/constraint"
|
* "path": "notifyServiceOutboundPatterns[index]/constraint"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -86,7 +86,7 @@ public class NotifyServiceOutboundPatternConstraintAddOperation extends PatchOpe
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_ADD) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_ADD) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_OUTBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_OUTBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -30,7 +30,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "remove",
|
* "op": "remove",
|
||||||
* "path": "notifyservices_outbound_patterns[index]/constraint"
|
* "path": "notifyServiceOutboundPatterns[index]/constraint"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -72,7 +72,7 @@ public class NotifyServiceOutboundPatternConstraintRemoveOperation extends Patch
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_OUTBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_OUTBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -31,7 +31,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "replace",
|
* "op": "replace",
|
||||||
* "path": "notifyservices_outbound_patterns[index]/constraint"
|
* "path": "notifyServiceOutboundPatterns[index]/constraint"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -86,7 +86,7 @@ public class NotifyServiceOutboundPatternConstraintReplaceOperation extends Patc
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_OUTBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_OUTBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -31,7 +31,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "add",
|
* "op": "add",
|
||||||
* "path": "notifyservices_outbound_patterns[index]/pattern"
|
* "path": "notifyServiceOutboundPatterns[index]/pattern"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -86,7 +86,7 @@ public class NotifyServiceOutboundPatternPatternAddOperation extends PatchOperat
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_ADD) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_ADD) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_OUTBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_OUTBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -31,7 +31,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "replace",
|
* "op": "replace",
|
||||||
* "path": "notifyservices_outbound_patterns[index]/pattern"
|
* "path": "notifyServiceOutboundPatterns[index]/pattern"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -86,7 +86,7 @@ public class NotifyServiceOutboundPatternPatternReplaceOperation extends PatchOp
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
||||||
path.startsWith(NOTIFY_SERVICE_OUTBOUND_PATTERNS + "[") &&
|
path.startsWith(NOTIFY_SERVICE_OUTBOUND_PATTERNS + "[") &&
|
||||||
|
@@ -30,7 +30,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "remove",
|
* "op": "remove",
|
||||||
* "path": "notifyservices_outbound_patterns[index]"
|
* "path": "notifyServiceOutboundPatterns[index]"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -70,7 +70,7 @@ public class NotifyServiceOutboundPatternRemoveOperation extends PatchOperation<
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
||||||
path.startsWith(OPERATION_PATH) &&
|
path.startsWith(OPERATION_PATH) &&
|
||||||
|
@@ -30,7 +30,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "replace",
|
* "op": "replace",
|
||||||
* "path": "notifyservices_outbound_patterns[index]",
|
* "path": "notifyServiceOutboundPatterns[index]",
|
||||||
* "value": {"pattern":"patternA","constraint":"itemFilterA"}
|
* "value": {"pattern":"patternA","constraint":"itemFilterA"}
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
@@ -79,7 +79,7 @@ public class NotifyServiceOutboundPatternReplaceOperation extends PatchOperation
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REPLACE) &&
|
||||||
path.startsWith(OPERATION_PATH) &&
|
path.startsWith(OPERATION_PATH) &&
|
||||||
|
@@ -29,7 +29,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "add",
|
* "op": "add",
|
||||||
* "path": "notifyservices_outbound_patterns/-",
|
* "path": "notifyServiceOutboundPatterns/-",
|
||||||
* "value": {"pattern":"patternA","constraint":"itemFilterA"}
|
* "value": {"pattern":"patternA","constraint":"itemFilterA"}
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
|
@@ -29,7 +29,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "remove",
|
* "op": "remove",
|
||||||
* "path": "notifyservices_outbound_patterns"
|
* "path": "notifyServiceOutboundPatterns"
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
*/
|
*/
|
||||||
@@ -63,7 +63,7 @@ public class NotifyServiceOutboundPatternsRemoveOperation extends PatchOperation
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(Object objectToMatch, Operation operation) {
|
public boolean supports(Object objectToMatch, Operation operation) {
|
||||||
String path = operation.getPath().trim().toLowerCase();
|
String path = operation.getPath().trim();
|
||||||
return (objectToMatch instanceof NotifyServiceEntity &&
|
return (objectToMatch instanceof NotifyServiceEntity &&
|
||||||
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
operation.getOp().trim().equalsIgnoreCase(OPERATION_REMOVE) &&
|
||||||
path.startsWith(OPERATION_PATH));
|
path.startsWith(OPERATION_PATH));
|
||||||
|
@@ -30,7 +30,7 @@ import org.springframework.stereotype.Component;
|
|||||||
* Content-Type: application/json" -d '
|
* Content-Type: application/json" -d '
|
||||||
* [{
|
* [{
|
||||||
* "op": "replace",
|
* "op": "replace",
|
||||||
* "path": "notifyservices_outbound_patterns",
|
* "path": "notifyServiceOutboundPatterns",
|
||||||
* "value": [{"pattern":"patternA","constraint":"itemFilterA"}]
|
* "value": [{"pattern":"patternA","constraint":"itemFilterA"}]
|
||||||
* }]'
|
* }]'
|
||||||
* </code>
|
* </code>
|
||||||
|
@@ -18,6 +18,7 @@ import org.apache.commons.lang3.StringUtils;
|
|||||||
import org.dspace.app.ldn.NotifyServiceInboundPattern;
|
import org.dspace.app.ldn.NotifyServiceInboundPattern;
|
||||||
import org.dspace.app.ldn.NotifyServiceOutboundPattern;
|
import org.dspace.app.ldn.NotifyServiceOutboundPattern;
|
||||||
import org.dspace.app.rest.exception.DSpaceBadRequestException;
|
import org.dspace.app.rest.exception.DSpaceBadRequestException;
|
||||||
|
import org.dspace.app.rest.model.patch.JsonValueEvaluator;
|
||||||
import org.dspace.app.rest.model.patch.Operation;
|
import org.dspace.app.rest.model.patch.Operation;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
@@ -28,8 +29,8 @@ import org.springframework.stereotype.Component;
|
|||||||
@Component
|
@Component
|
||||||
public final class NotifyServicePatchUtils {
|
public final class NotifyServicePatchUtils {
|
||||||
|
|
||||||
public static final String NOTIFY_SERVICE_OUTBOUND_PATTERNS = "notifyservices_outbound_patterns";
|
public static final String NOTIFY_SERVICE_OUTBOUND_PATTERNS = "notifyServiceOutboundPatterns";
|
||||||
public static final String NOTIFY_SERVICE_INBOUND_PATTERNS = "notifyservices_inbound_patterns";
|
public static final String NOTIFY_SERVICE_INBOUND_PATTERNS = "notifyServiceInboundPatterns";
|
||||||
|
|
||||||
private ObjectMapper objectMapper = new ObjectMapper();
|
private ObjectMapper objectMapper = new ObjectMapper();
|
||||||
|
|
||||||
@@ -47,8 +48,8 @@ public final class NotifyServicePatchUtils {
|
|||||||
NotifyServiceInboundPattern inboundPattern = null;
|
NotifyServiceInboundPattern inboundPattern = null;
|
||||||
try {
|
try {
|
||||||
if (operation.getValue() != null) {
|
if (operation.getValue() != null) {
|
||||||
if (operation.getValue() instanceof String) {
|
if (operation.getValue() instanceof JsonValueEvaluator) {
|
||||||
inboundPattern = objectMapper.readValue((String) operation.getValue(),
|
inboundPattern = objectMapper.readValue(((JsonValueEvaluator) operation.getValue()).getValueNode().toString(),
|
||||||
NotifyServiceInboundPattern.class);
|
NotifyServiceInboundPattern.class);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -73,8 +74,8 @@ public final class NotifyServicePatchUtils {
|
|||||||
NotifyServiceOutboundPattern outboundPattern = null;
|
NotifyServiceOutboundPattern outboundPattern = null;
|
||||||
try {
|
try {
|
||||||
if (operation.getValue() != null) {
|
if (operation.getValue() != null) {
|
||||||
if (operation.getValue() instanceof String) {
|
if (operation.getValue() instanceof JsonValueEvaluator) {
|
||||||
outboundPattern = objectMapper.readValue((String) operation.getValue(),
|
outboundPattern = objectMapper.readValue(((JsonValueEvaluator) operation.getValue()).getValueNode().toString(),
|
||||||
NotifyServiceOutboundPattern.class);
|
NotifyServiceOutboundPattern.class);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -10,6 +10,8 @@ package org.dspace.app.rest;
|
|||||||
import static org.dspace.content.QAEvent.OPENAIRE_SOURCE;
|
import static org.dspace.content.QAEvent.OPENAIRE_SOURCE;
|
||||||
import static org.hamcrest.MatcherAssert.assertThat;
|
import static org.hamcrest.MatcherAssert.assertThat;
|
||||||
import static org.hamcrest.Matchers.contains;
|
import static org.hamcrest.Matchers.contains;
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
|
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
|
||||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||||
|
|
||||||
@@ -18,7 +20,9 @@ import java.nio.charset.Charset;
|
|||||||
|
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import org.apache.commons.io.IOUtils;
|
import org.apache.commons.io.IOUtils;
|
||||||
|
import org.dspace.app.ldn.LDNMessageEntity;
|
||||||
import org.dspace.app.ldn.model.Notification;
|
import org.dspace.app.ldn.model.Notification;
|
||||||
|
import org.dspace.app.ldn.service.LDNMessageService;
|
||||||
import org.dspace.app.rest.test.AbstractControllerIntegrationTest;
|
import org.dspace.app.rest.test.AbstractControllerIntegrationTest;
|
||||||
import org.dspace.builder.CollectionBuilder;
|
import org.dspace.builder.CollectionBuilder;
|
||||||
import org.dspace.builder.CommunityBuilder;
|
import org.dspace.builder.CommunityBuilder;
|
||||||
@@ -40,6 +44,9 @@ public class LDNInboxControllerIT extends AbstractControllerIntegrationTest {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private ConfigurationService configurationService;
|
private ConfigurationService configurationService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private LDNMessageService ldnMessageService;
|
||||||
|
|
||||||
private QAEventService qaEventService = new DSpace().getSingletonService(QAEventService.class);
|
private QAEventService qaEventService = new DSpace().getSingletonService(QAEventService.class);
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -52,6 +59,7 @@ public class LDNInboxControllerIT extends AbstractControllerIntegrationTest {
|
|||||||
String object = configurationService.getProperty("dspace.ui.url") + "/handle/" + item.getHandle();
|
String object = configurationService.getProperty("dspace.ui.url") + "/handle/" + item.getHandle();
|
||||||
|
|
||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
InputStream offerEndorsementStream = getClass().getResourceAsStream("ldn_offer_endorsement_object.json");
|
InputStream offerEndorsementStream = getClass().getResourceAsStream("ldn_offer_endorsement_object.json");
|
||||||
String offerEndorsementJson = IOUtils.toString(offerEndorsementStream, Charset.defaultCharset());
|
String offerEndorsementJson = IOUtils.toString(offerEndorsementStream, Charset.defaultCharset());
|
||||||
offerEndorsementStream.close();
|
offerEndorsementStream.close();
|
||||||
@@ -64,14 +72,27 @@ public class LDNInboxControllerIT extends AbstractControllerIntegrationTest {
|
|||||||
.contentType("application/ld+json")
|
.contentType("application/ld+json")
|
||||||
.content(message))
|
.content(message))
|
||||||
.andExpect(status().isAccepted());
|
.andExpect(status().isAccepted());
|
||||||
|
|
||||||
|
LDNMessageEntity ldnMessage = ldnMessageService.find(context, notification.getId());
|
||||||
|
checkStoredLDNMessage(notification, ldnMessage, object);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void ldnInboxAnnounceEndorsementTest() throws Exception {
|
public void ldnInboxAnnounceEndorsementTest() throws Exception {
|
||||||
|
context.turnOffAuthorisationSystem();
|
||||||
|
|
||||||
|
Community community = CommunityBuilder.createCommunity(context).withName("community").build();
|
||||||
|
Collection collection = CollectionBuilder.createCollection(context, community).build();
|
||||||
|
Item item = ItemBuilder.createItem(context, collection).build();
|
||||||
|
String object = configurationService.getProperty("dspace.ui.url") + "/handle/" + item.getHandle();
|
||||||
|
|
||||||
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
InputStream announceEndorsementStream = getClass().getResourceAsStream("ldn_announce_endorsement.json");
|
InputStream announceEndorsementStream = getClass().getResourceAsStream("ldn_announce_endorsement.json");
|
||||||
String message = IOUtils.toString(announceEndorsementStream, Charset.defaultCharset());
|
String announceEndorsement = IOUtils.toString(announceEndorsementStream, Charset.defaultCharset());
|
||||||
announceEndorsementStream.close();
|
announceEndorsementStream.close();
|
||||||
|
String message = announceEndorsement.replace("<<object>>", object);
|
||||||
|
|
||||||
ObjectMapper mapper = new ObjectMapper();
|
ObjectMapper mapper = new ObjectMapper();
|
||||||
Notification notification = mapper.readValue(message, Notification.class);
|
Notification notification = mapper.readValue(message, Notification.class);
|
||||||
getClient(getAuthToken(admin.getEmail(), password))
|
getClient(getAuthToken(admin.getEmail(), password))
|
||||||
@@ -79,6 +100,9 @@ public class LDNInboxControllerIT extends AbstractControllerIntegrationTest {
|
|||||||
.contentType("application/ld+json")
|
.contentType("application/ld+json")
|
||||||
.content(message))
|
.content(message))
|
||||||
.andExpect(status().isAccepted());
|
.andExpect(status().isAccepted());
|
||||||
|
|
||||||
|
LDNMessageEntity ldnMessage = ldnMessageService.find(context, notification.getId());
|
||||||
|
checkStoredLDNMessage(notification, ldnMessage, object);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -115,4 +139,28 @@ public class LDNInboxControllerIT extends AbstractControllerIntegrationTest {
|
|||||||
.content(message))
|
.content(message))
|
||||||
.andExpect(status().isBadRequest());
|
.andExpect(status().isBadRequest());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void checkStoredLDNMessage(Notification notification, LDNMessageEntity ldnMessage, String object)
|
||||||
|
throws Exception {
|
||||||
|
|
||||||
|
ObjectMapper mapper = new ObjectMapper();
|
||||||
|
Notification storedMessage = mapper.readValue(ldnMessage.getMessage(), Notification.class);
|
||||||
|
|
||||||
|
assertNotNull(ldnMessage);
|
||||||
|
assertNotNull(ldnMessage.getObject());
|
||||||
|
assertEquals(ldnMessage.getObject()
|
||||||
|
.getMetadata()
|
||||||
|
.stream()
|
||||||
|
.filter(metadataValue ->
|
||||||
|
metadataValue.getMetadataField().toString('.').equals("dc.identifier.uri"))
|
||||||
|
.map(metadataValue -> metadataValue.getValue())
|
||||||
|
.findFirst().get(), object);
|
||||||
|
|
||||||
|
assertEquals(notification.getId(), storedMessage.getId());
|
||||||
|
assertEquals(notification.getOrigin().getInbox(), storedMessage.getOrigin().getInbox());
|
||||||
|
assertEquals(notification.getTarget().getInbox(), storedMessage.getTarget().getInbox());
|
||||||
|
assertEquals(notification.getObject().getId(), storedMessage.getObject().getId());
|
||||||
|
assertEquals(notification.getType(), storedMessage.getType());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@@ -33,6 +33,8 @@ import javax.ws.rs.core.MediaType;
|
|||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import org.apache.commons.lang3.RandomUtils;
|
import org.apache.commons.lang3.RandomUtils;
|
||||||
import org.dspace.app.ldn.NotifyServiceEntity;
|
import org.dspace.app.ldn.NotifyServiceEntity;
|
||||||
|
import org.dspace.app.rest.model.NotifyServiceInboundPatternRest;
|
||||||
|
import org.dspace.app.rest.model.NotifyServiceOutboundPatternRest;
|
||||||
import org.dspace.app.rest.model.NotifyServiceRest;
|
import org.dspace.app.rest.model.NotifyServiceRest;
|
||||||
import org.dspace.app.rest.model.patch.AddOperation;
|
import org.dspace.app.rest.model.patch.AddOperation;
|
||||||
import org.dspace.app.rest.model.patch.Operation;
|
import org.dspace.app.rest.model.patch.Operation;
|
||||||
@@ -149,11 +151,27 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
public void createTest() throws Exception {
|
public void createTest() throws Exception {
|
||||||
ObjectMapper mapper = new ObjectMapper();
|
ObjectMapper mapper = new ObjectMapper();
|
||||||
|
|
||||||
|
NotifyServiceInboundPatternRest inboundPatternRestOne = new NotifyServiceInboundPatternRest();
|
||||||
|
inboundPatternRestOne.setPattern("patternA");
|
||||||
|
inboundPatternRestOne.setConstraint("itemFilterA");
|
||||||
|
inboundPatternRestOne.setAutomatic(true);
|
||||||
|
|
||||||
|
NotifyServiceInboundPatternRest inboundPatternRestTwo = new NotifyServiceInboundPatternRest();
|
||||||
|
inboundPatternRestTwo.setPattern("patternB");
|
||||||
|
inboundPatternRestTwo.setAutomatic(false);
|
||||||
|
|
||||||
|
NotifyServiceOutboundPatternRest outboundPatternRest = new NotifyServiceOutboundPatternRest();
|
||||||
|
outboundPatternRest.setPattern("patternC");
|
||||||
|
outboundPatternRest.setConstraint("itemFilterC");
|
||||||
|
|
||||||
NotifyServiceRest notifyServiceRest = new NotifyServiceRest();
|
NotifyServiceRest notifyServiceRest = new NotifyServiceRest();
|
||||||
notifyServiceRest.setName("service name");
|
notifyServiceRest.setName("service name");
|
||||||
notifyServiceRest.setDescription("service description");
|
notifyServiceRest.setDescription("service description");
|
||||||
notifyServiceRest.setUrl("service url");
|
notifyServiceRest.setUrl("service url");
|
||||||
notifyServiceRest.setLdnUrl("service ldn url");
|
notifyServiceRest.setLdnUrl("service ldn url");
|
||||||
|
notifyServiceRest.setNotifyServiceInboundPatterns(List.of(inboundPatternRestOne, inboundPatternRestTwo));
|
||||||
|
notifyServiceRest.setNotifyServiceOutboundPatterns(List.of(outboundPatternRest));
|
||||||
|
notifyServiceRest.setEnabled(false);
|
||||||
|
|
||||||
AtomicReference<Integer> idRef = new AtomicReference<Integer>();
|
AtomicReference<Integer> idRef = new AtomicReference<Integer>();
|
||||||
String authToken = getAuthToken(admin.getEmail(), password);
|
String authToken = getAuthToken(admin.getEmail(), password);
|
||||||
@@ -162,16 +180,26 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
.contentType(contentType))
|
.contentType(contentType))
|
||||||
.andExpect(status().isCreated())
|
.andExpect(status().isCreated())
|
||||||
.andExpect(jsonPath("$", matchNotifyService("service name", "service description",
|
.andExpect(jsonPath("$", matchNotifyService("service name", "service description",
|
||||||
"service url", "service ldn url")))
|
"service url", "service ldn url", false)))
|
||||||
.andDo(result ->
|
.andDo(result ->
|
||||||
idRef.set((read(result.getResponse().getContentAsString(), "$.id"))));
|
idRef.set((read(result.getResponse().getContentAsString(), "$.id"))));
|
||||||
|
|
||||||
getClient(authToken)
|
getClient(authToken)
|
||||||
.perform(get("/api/ldn/ldnservices/" + idRef.get()))
|
.perform(get("/api/ldn/ldnservices/" + idRef.get()))
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(jsonPath("$",
|
.andExpect(jsonPath("$.notifyServiceInboundPatterns", hasSize(2)))
|
||||||
|
.andExpect(jsonPath("$.notifyServiceOutboundPatterns", hasSize(1)))
|
||||||
|
.andExpect(jsonPath("$", allOf(
|
||||||
matchNotifyService(idRef.get(), "service name", "service description",
|
matchNotifyService(idRef.get(), "service name", "service description",
|
||||||
"service url", "service ldn url")));
|
"service url", "service ldn url", false),
|
||||||
|
hasJsonPath("$.notifyServiceInboundPatterns", containsInAnyOrder(
|
||||||
|
matchNotifyServicePattern("patternA", "itemFilterA", true),
|
||||||
|
matchNotifyServicePattern("patternB", null, false)
|
||||||
|
)),
|
||||||
|
hasJsonPath("$.notifyServiceOutboundPatterns", contains(
|
||||||
|
matchNotifyServicePattern("patternC", "itemFilterC")
|
||||||
|
)))
|
||||||
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -240,6 +268,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
.withName("service name")
|
.withName("service name")
|
||||||
.withUrl("service url")
|
.withUrl("service url")
|
||||||
.withLdnUrl("service ldn url")
|
.withLdnUrl("service ldn url")
|
||||||
|
.isEnabled(false)
|
||||||
.build();
|
.build();
|
||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
@@ -256,7 +285,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
||||||
"add service description", "service url", "service ldn url"))
|
"add service description", "service url", "service ldn url", false))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -314,7 +343,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
||||||
"service description replaced", "service url", "service ldn url"))
|
"service description replaced", "service url", "service ldn url", false))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -329,6 +358,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
.withDescription("service description")
|
.withDescription("service description")
|
||||||
.withUrl("service url")
|
.withUrl("service url")
|
||||||
.withLdnUrl("service ldn url")
|
.withLdnUrl("service ldn url")
|
||||||
|
.isEnabled(false)
|
||||||
.build();
|
.build();
|
||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
@@ -345,7 +375,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
||||||
null, "service url", "service ldn url"))
|
null, "service url", "service ldn url", false))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -403,7 +433,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
||||||
"service description", "add service url", "service ldn url"))
|
"service description", "add service url", "service ldn url", false))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -445,6 +475,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
.withDescription("service description")
|
.withDescription("service description")
|
||||||
.withUrl("service url")
|
.withUrl("service url")
|
||||||
.withLdnUrl("service ldn url")
|
.withLdnUrl("service ldn url")
|
||||||
|
.isEnabled(true)
|
||||||
.build();
|
.build();
|
||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
@@ -461,7 +492,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
||||||
"service description", "service url replaced", "service ldn url"))
|
"service description", "service url replaced", "service ldn url", true))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -777,10 +808,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -822,10 +853,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -874,10 +905,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -919,10 +950,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -971,10 +1002,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -999,7 +1030,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
RemoveOperation inboundRemoveOperation = new RemoveOperation("notifyservices_inbound_patterns[0]");
|
RemoveOperation inboundRemoveOperation = new RemoveOperation("notifyServiceInboundPatterns[0]");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundRemoveOperation);
|
ops.add(inboundRemoveOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -1037,7 +1068,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperation = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperation = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperation);
|
ops.add(inboundAddOperation);
|
||||||
@@ -1061,7 +1092,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
|
|
||||||
// index out of the range
|
// index out of the range
|
||||||
RemoveOperation inboundRemoveOperation = new RemoveOperation("notifyservices_inbound_patterns[1]");
|
RemoveOperation inboundRemoveOperation = new RemoveOperation("notifyServiceInboundPatterns[1]");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundRemoveOperation);
|
ops.add(inboundRemoveOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -1089,10 +1120,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -1117,7 +1148,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
RemoveOperation outboundRemoveOperation = new RemoveOperation("notifyservices_outbound_patterns[0]");
|
RemoveOperation outboundRemoveOperation = new RemoveOperation("notifyServiceOutboundPatterns[0]");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundRemoveOperation);
|
ops.add(outboundRemoveOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -1155,7 +1186,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperation = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperation = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperation);
|
ops.add(outboundAddOperation);
|
||||||
@@ -1179,7 +1210,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
|
|
||||||
// index out of the range
|
// index out of the range
|
||||||
RemoveOperation outboundRemoveOperation = new RemoveOperation("notifyservices_outbound_patterns[1]");
|
RemoveOperation outboundRemoveOperation = new RemoveOperation("notifyServiceOutboundPatterns[1]");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundRemoveOperation);
|
ops.add(outboundRemoveOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -1207,10 +1238,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":null,\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":null,\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -1235,7 +1266,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
AddOperation inboundAddOperation = new AddOperation("notifyservices_inbound_patterns[0]/constraint",
|
AddOperation inboundAddOperation = new AddOperation("notifyServiceInboundPatterns[0]/constraint",
|
||||||
"itemFilterA");
|
"itemFilterA");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundAddOperation);
|
ops.add(inboundAddOperation);
|
||||||
@@ -1275,10 +1306,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -1303,7 +1334,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
AddOperation inboundAddOperation = new AddOperation("notifyservices_inbound_patterns[0]/constraint",
|
AddOperation inboundAddOperation = new AddOperation("notifyServiceInboundPatterns[0]/constraint",
|
||||||
"itemFilterA");
|
"itemFilterA");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundAddOperation);
|
ops.add(inboundAddOperation);
|
||||||
@@ -1333,10 +1364,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -1361,7 +1392,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyservices_inbound_patterns[0]/constraint",
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyServiceInboundPatterns[0]/constraint",
|
||||||
"itemFilterC");
|
"itemFilterC");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundReplaceOperation);
|
ops.add(inboundReplaceOperation);
|
||||||
@@ -1401,10 +1432,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":null,\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":null,\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -1429,7 +1460,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyservices_inbound_patterns[0]/constraint",
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyServiceInboundPatterns[0]/constraint",
|
||||||
"itemFilterA");
|
"itemFilterA");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundReplaceOperation);
|
ops.add(inboundReplaceOperation);
|
||||||
@@ -1459,10 +1490,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -1487,7 +1518,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
RemoveOperation inboundRemoveOperation = new RemoveOperation("notifyservices_inbound_patterns[1]/constraint");
|
RemoveOperation inboundRemoveOperation = new RemoveOperation("notifyServiceInboundPatterns[1]/constraint");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundRemoveOperation);
|
ops.add(inboundRemoveOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -1526,7 +1557,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperation = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperation = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperation);
|
ops.add(inboundAddOperation);
|
||||||
@@ -1550,7 +1581,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
|
|
||||||
// index out of the range
|
// index out of the range
|
||||||
RemoveOperation inboundRemoveOperation = new RemoveOperation("notifyservices_inbound_patterns[1]/constraint");
|
RemoveOperation inboundRemoveOperation = new RemoveOperation("notifyServiceInboundPatterns[1]/constraint");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundRemoveOperation);
|
ops.add(inboundRemoveOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -1578,10 +1609,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":null}");
|
"{\"pattern\":\"patternA\",\"constraint\":null}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":null}");
|
"{\"pattern\":\"patternB\",\"constraint\":null}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -1606,7 +1637,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
AddOperation outboundAddOperation = new AddOperation("notifyservices_outbound_patterns[1]/constraint",
|
AddOperation outboundAddOperation = new AddOperation("notifyServiceOutboundPatterns[1]/constraint",
|
||||||
"itemFilterB");
|
"itemFilterB");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundAddOperation);
|
ops.add(outboundAddOperation);
|
||||||
@@ -1646,10 +1677,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -1674,7 +1705,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
AddOperation outboundAddOperation = new AddOperation("notifyservices_outbound_patterns[1]/constraint",
|
AddOperation outboundAddOperation = new AddOperation("notifyServiceOutboundPatterns[1]/constraint",
|
||||||
"itemFilterB");
|
"itemFilterB");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundAddOperation);
|
ops.add(outboundAddOperation);
|
||||||
@@ -1704,10 +1735,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -1733,7 +1764,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation outboundReplaceOperation = new ReplaceOperation(
|
ReplaceOperation outboundReplaceOperation = new ReplaceOperation(
|
||||||
"notifyservices_outbound_patterns[1]/constraint", "itemFilterD");
|
"notifyServiceOutboundPatterns[1]/constraint", "itemFilterD");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundReplaceOperation);
|
ops.add(outboundReplaceOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -1772,10 +1803,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":null}");
|
"{\"pattern\":\"patternB\",\"constraint\":null}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -1801,7 +1832,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation outboundReplaceOperation = new ReplaceOperation(
|
ReplaceOperation outboundReplaceOperation = new ReplaceOperation(
|
||||||
"notifyservices_outbound_patterns[1]/constraint", "itemFilterB");
|
"notifyServiceOutboundPatterns[1]/constraint", "itemFilterB");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundReplaceOperation);
|
ops.add(outboundReplaceOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -1830,10 +1861,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -1858,7 +1889,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
RemoveOperation outboundRemoveOperation = new RemoveOperation("notifyservices_outbound_patterns[0]/constraint");
|
RemoveOperation outboundRemoveOperation = new RemoveOperation("notifyServiceOutboundPatterns[0]/constraint");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundRemoveOperation);
|
ops.add(outboundRemoveOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -1897,7 +1928,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperation = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperation = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperation);
|
ops.add(outboundAddOperation);
|
||||||
@@ -1921,7 +1952,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
|
|
||||||
// index out of the range
|
// index out of the range
|
||||||
RemoveOperation outboundRemoveOperation = new RemoveOperation("notifyservices_outbound_patterns[1]/constraint");
|
RemoveOperation outboundRemoveOperation = new RemoveOperation("notifyServiceOutboundPatterns[1]/constraint");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundRemoveOperation);
|
ops.add(outboundRemoveOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -1949,10 +1980,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":null,\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":null,\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -1977,7 +2008,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
AddOperation inboundAddOperation = new AddOperation("notifyservices_inbound_patterns[0]/pattern",
|
AddOperation inboundAddOperation = new AddOperation("notifyServiceInboundPatterns[0]/pattern",
|
||||||
"patternA");
|
"patternA");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundAddOperation);
|
ops.add(inboundAddOperation);
|
||||||
@@ -2017,10 +2048,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -2045,7 +2076,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
AddOperation inboundAddOperation = new AddOperation("notifyservices_inbound_patterns[0]/pattern",
|
AddOperation inboundAddOperation = new AddOperation("notifyServiceInboundPatterns[0]/pattern",
|
||||||
"patternA");
|
"patternA");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundAddOperation);
|
ops.add(inboundAddOperation);
|
||||||
@@ -2075,10 +2106,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -2103,7 +2134,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyservices_inbound_patterns[0]/pattern",
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyServiceInboundPatterns[0]/pattern",
|
||||||
"patternC");
|
"patternC");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundReplaceOperation);
|
ops.add(inboundReplaceOperation);
|
||||||
@@ -2143,10 +2174,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":null,\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":null,\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -2171,7 +2202,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyservices_inbound_patterns[0]/pattern",
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyServiceInboundPatterns[0]/pattern",
|
||||||
"patternA");
|
"patternA");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundReplaceOperation);
|
ops.add(inboundReplaceOperation);
|
||||||
@@ -2201,10 +2232,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -2229,7 +2260,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyservices_inbound_patterns[0]/automatic",
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyServiceInboundPatterns[0]/automatic",
|
||||||
"true");
|
"true");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundReplaceOperation);
|
ops.add(inboundReplaceOperation);
|
||||||
@@ -2269,10 +2300,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -2297,7 +2328,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyservices_inbound_patterns[0]/automatic",
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyServiceInboundPatterns[0]/automatic",
|
||||||
"test");
|
"test");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundReplaceOperation);
|
ops.add(inboundReplaceOperation);
|
||||||
@@ -2327,10 +2358,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":null,\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":null,\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -2355,7 +2386,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
AddOperation outboundAddOperation = new AddOperation("notifyservices_outbound_patterns[1]/pattern",
|
AddOperation outboundAddOperation = new AddOperation("notifyServiceOutboundPatterns[1]/pattern",
|
||||||
"patternB");
|
"patternB");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundAddOperation);
|
ops.add(outboundAddOperation);
|
||||||
@@ -2395,10 +2426,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -2423,7 +2454,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
AddOperation outboundAddOperation = new AddOperation("notifyservices_outbound_patterns[1]/pattern",
|
AddOperation outboundAddOperation = new AddOperation("notifyServiceOutboundPatterns[1]/pattern",
|
||||||
"patternB");
|
"patternB");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundAddOperation);
|
ops.add(outboundAddOperation);
|
||||||
@@ -2453,10 +2484,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -2481,7 +2512,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyservices_outbound_patterns[1]/pattern",
|
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyServiceOutboundPatterns[1]/pattern",
|
||||||
"patternD");
|
"patternD");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundReplaceOperation);
|
ops.add(outboundReplaceOperation);
|
||||||
@@ -2521,10 +2552,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":null,\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":null,\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -2549,7 +2580,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyservices_outbound_patterns[1]/pattern",
|
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyServiceOutboundPatterns[1]/pattern",
|
||||||
"patternB");
|
"patternB");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundReplaceOperation);
|
ops.add(outboundReplaceOperation);
|
||||||
@@ -2579,10 +2610,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -2607,7 +2638,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyservices_inbound_patterns",
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyServiceInboundPatterns",
|
||||||
"[{\"pattern\":\"patternC\",\"constraint\":\"itemFilterC\",\"automatic\":\"true\"}," +
|
"[{\"pattern\":\"patternC\",\"constraint\":\"itemFilterC\",\"automatic\":\"true\"}," +
|
||||||
"{\"pattern\":\"patternD\",\"constraint\":\"itemFilterD\",\"automatic\":\"true\"}]");
|
"{\"pattern\":\"patternD\",\"constraint\":\"itemFilterD\",\"automatic\":\"true\"}]");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
@@ -2648,10 +2679,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -2677,7 +2708,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
|
|
||||||
// empty array will only remove all old patterns
|
// empty array will only remove all old patterns
|
||||||
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyservices_inbound_patterns", "[]");
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyServiceInboundPatterns", "[]");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundReplaceOperation);
|
ops.add(inboundReplaceOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -2707,10 +2738,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -2736,7 +2767,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
|
|
||||||
// value must be an array not object
|
// value must be an array not object
|
||||||
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyservices_inbound_patterns",
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyServiceInboundPatterns",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundReplaceOperation);
|
ops.add(inboundReplaceOperation);
|
||||||
@@ -2765,10 +2796,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -2793,7 +2824,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyservices_outbound_patterns",
|
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyServiceOutboundPatterns",
|
||||||
"[{\"pattern\":\"patternC\",\"constraint\":\"itemFilterC\"}," +
|
"[{\"pattern\":\"patternC\",\"constraint\":\"itemFilterC\"}," +
|
||||||
"{\"pattern\":\"patternD\",\"constraint\":\"itemFilterD\"}]");
|
"{\"pattern\":\"patternD\",\"constraint\":\"itemFilterD\"}]");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
@@ -2834,10 +2865,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -2863,7 +2894,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
|
|
||||||
// empty array will only remove all old patterns
|
// empty array will only remove all old patterns
|
||||||
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyservices_outbound_patterns", "[]");
|
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyServiceOutboundPatterns", "[]");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundReplaceOperation);
|
ops.add(outboundReplaceOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -2893,10 +2924,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -2922,7 +2953,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
|
|
||||||
// value must be an array not object
|
// value must be an array not object
|
||||||
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyservices_outbound_patterns",
|
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyServiceOutboundPatterns",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundReplaceOperation);
|
ops.add(outboundReplaceOperation);
|
||||||
@@ -2951,10 +2982,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -2979,7 +3010,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
RemoveOperation inboundRemoveOperation = new RemoveOperation("notifyservices_inbound_patterns");
|
RemoveOperation inboundRemoveOperation = new RemoveOperation("notifyServiceInboundPatterns");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundRemoveOperation);
|
ops.add(inboundRemoveOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -3009,10 +3040,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -3037,7 +3068,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
RemoveOperation outboundRemoveOperation = new RemoveOperation("notifyservices_outbound_patterns");
|
RemoveOperation outboundRemoveOperation = new RemoveOperation("notifyServiceOutboundPatterns");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundRemoveOperation);
|
ops.add(outboundRemoveOperation);
|
||||||
patchBody = getPatchContent(ops);
|
patchBody = getPatchContent(ops);
|
||||||
@@ -3067,10 +3098,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation inboundAddOperationOne = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationOne = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\",\"automatic\":\"false\"}");
|
||||||
|
|
||||||
AddOperation inboundAddOperationTwo = new AddOperation("notifyservices_inbound_patterns/-",
|
AddOperation inboundAddOperationTwo = new AddOperation("notifyServiceInboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\",\"automatic\":\"true\"}");
|
||||||
|
|
||||||
ops.add(inboundAddOperationOne);
|
ops.add(inboundAddOperationOne);
|
||||||
@@ -3095,7 +3126,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyservices_inbound_patterns[1]",
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("notifyServiceInboundPatterns[1]",
|
||||||
"{\"pattern\":\"patternC\",\"constraint\":\"itemFilterC\",\"automatic\":\"false\"}");
|
"{\"pattern\":\"patternC\",\"constraint\":\"itemFilterC\",\"automatic\":\"false\"}");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(inboundReplaceOperation);
|
ops.add(inboundReplaceOperation);
|
||||||
@@ -3135,10 +3166,10 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
context.restoreAuthSystemState();
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
List<Operation> ops = new ArrayList<Operation>();
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
AddOperation outboundAddOperationOne = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationOne = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
"{\"pattern\":\"patternA\",\"constraint\":\"itemFilterA\"}");
|
||||||
|
|
||||||
AddOperation outboundAddOperationTwo = new AddOperation("notifyservices_outbound_patterns/-",
|
AddOperation outboundAddOperationTwo = new AddOperation("notifyServiceOutboundPatterns/-",
|
||||||
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
"{\"pattern\":\"patternB\",\"constraint\":\"itemFilterB\"}");
|
||||||
|
|
||||||
ops.add(outboundAddOperationOne);
|
ops.add(outboundAddOperationOne);
|
||||||
@@ -3163,7 +3194,7 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
))
|
))
|
||||||
)));
|
)));
|
||||||
|
|
||||||
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyservices_outbound_patterns[0]",
|
ReplaceOperation outboundReplaceOperation = new ReplaceOperation("notifyServiceOutboundPatterns[0]",
|
||||||
"{\"pattern\":\"patternC\",\"constraint\":\"itemFilterC\"}");
|
"{\"pattern\":\"patternC\",\"constraint\":\"itemFilterC\"}");
|
||||||
ops.clear();
|
ops.clear();
|
||||||
ops.add(outboundReplaceOperation);
|
ops.add(outboundReplaceOperation);
|
||||||
@@ -3279,4 +3310,62 @@ public class NotifyServiceRestRepositoryIT extends AbstractControllerIntegration
|
|||||||
)));
|
)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void NotifyServiceStatusReplaceOperationTest() throws Exception {
|
||||||
|
|
||||||
|
context.turnOffAuthorisationSystem();
|
||||||
|
NotifyServiceEntity notifyServiceEntity =
|
||||||
|
NotifyServiceBuilder.createNotifyServiceBuilder(context)
|
||||||
|
.withName("service name")
|
||||||
|
.withDescription("service description")
|
||||||
|
.withUrl("service url")
|
||||||
|
.withLdnUrl("service ldn url")
|
||||||
|
.isEnabled(true)
|
||||||
|
.build();
|
||||||
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("/enabled", "false");
|
||||||
|
ops.add(inboundReplaceOperation);
|
||||||
|
String patchBody = getPatchContent(ops);
|
||||||
|
|
||||||
|
String authToken = getAuthToken(admin.getEmail(), password);
|
||||||
|
getClient(authToken)
|
||||||
|
.perform(patch("/api/ldn/ldnservices/" + notifyServiceEntity.getID())
|
||||||
|
.content(patchBody)
|
||||||
|
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
||||||
|
.andExpect(status().isOk())
|
||||||
|
.andExpect(jsonPath("$.notifyServiceInboundPatterns", empty()))
|
||||||
|
.andExpect(jsonPath("$.notifyServiceOutboundPatterns", empty()))
|
||||||
|
.andExpect(jsonPath("$", matchNotifyService(notifyServiceEntity.getID(), "service name",
|
||||||
|
"service description", "service url", "service ldn url", false)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void NotifyServiceStatusReplaceOperationTestBadRequestTest() throws Exception {
|
||||||
|
|
||||||
|
context.turnOffAuthorisationSystem();
|
||||||
|
NotifyServiceEntity notifyServiceEntity =
|
||||||
|
NotifyServiceBuilder.createNotifyServiceBuilder(context)
|
||||||
|
.withName("service name")
|
||||||
|
.withDescription("service description")
|
||||||
|
.withUrl("service url")
|
||||||
|
.withLdnUrl("service ldn url")
|
||||||
|
.build();
|
||||||
|
context.restoreAuthSystemState();
|
||||||
|
|
||||||
|
List<Operation> ops = new ArrayList<Operation>();
|
||||||
|
ReplaceOperation inboundReplaceOperation = new ReplaceOperation("/enabled", "test");
|
||||||
|
ops.add(inboundReplaceOperation);
|
||||||
|
String patchBody = getPatchContent(ops);
|
||||||
|
|
||||||
|
String authToken = getAuthToken(admin.getEmail(), password);
|
||||||
|
// patch not boolean value
|
||||||
|
getClient(authToken)
|
||||||
|
.perform(patch("/api/ldn/ldnservices/" + notifyServiceEntity.getID())
|
||||||
|
.content(patchBody)
|
||||||
|
.contentType(MediaType.APPLICATION_JSON_PATCH_JSON))
|
||||||
|
.andExpect(status().isBadRequest());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@@ -24,7 +24,7 @@
|
|||||||
"id": "urn:uuid:94ecae35-dcfd-4182-8550-22c7164fe23f",
|
"id": "urn:uuid:94ecae35-dcfd-4182-8550-22c7164fe23f",
|
||||||
"inReplyTo": "urn:uuid:0370c0fb-bb78-4a9b-87f5-bed307a509dd",
|
"inReplyTo": "urn:uuid:0370c0fb-bb78-4a9b-87f5-bed307a509dd",
|
||||||
"object": {
|
"object": {
|
||||||
"id": "https://overlay-journal.com/articles/00001/",
|
"id": "<<object>>",
|
||||||
"ietf:cite-as": "https://overlay-journal.com/articles/00001/",
|
"ietf:cite-as": "https://overlay-journal.com/articles/00001/",
|
||||||
"type": [
|
"type": [
|
||||||
"Page",
|
"Page",
|
||||||
|
@@ -40,4 +40,11 @@
|
|||||||
<scope_note>Reviewd by</scope_note>
|
<scope_note>Reviewd by</scope_note>
|
||||||
</dc-type>
|
</dc-type>
|
||||||
|
|
||||||
|
<dc-type>
|
||||||
|
<schema>datacite</schema>
|
||||||
|
<element>relation</element>
|
||||||
|
<qualifier>isSupplementedBy</qualifier>
|
||||||
|
<scope_note>Supplemented by</scope_note>
|
||||||
|
</dc-type>
|
||||||
|
|
||||||
</dspace-dc-types>
|
</dspace-dc-types>
|
||||||
|
Reference in New Issue
Block a user