Applying default parameters

This commit is contained in:
Francesco Mangiacrapa 2022-05-20 14:15:20 +02:00
parent c872c0410c
commit bf9a55152e
3 changed files with 15 additions and 7 deletions

View File

@ -11,7 +11,6 @@ import java.net.URL;
import java.util.Map; import java.util.Map;
import org.gcube.portlets.user.uriresolvermanager.entity.GenericResolver; import org.gcube.portlets.user.uriresolvermanager.entity.GenericResolver;
import org.gcube.portlets.user.uriresolvermanager.resolvers.query.CatalogueResolverQueryStringBuilder;
import org.gcube.portlets.user.uriresolvermanager.util.UrlEncoderUtil; import org.gcube.portlets.user.uriresolvermanager.util.UrlEncoderUtil;
import org.gcube.portlets.user.urlshortener.UrlShortener; import org.gcube.portlets.user.urlshortener.UrlShortener;
import org.json.JSONObject; import org.json.JSONObject;

View File

@ -20,6 +20,10 @@ import org.slf4j.LoggerFactory;
*/ */
public final class CatalogueResolverQueryStringBuilder { public final class CatalogueResolverQueryStringBuilder {
// DEFAULT PARAMETERS
public static final String DEFAULT_STATUS = "pending";
public static final String DEFAULT_MODERATION_OP = MODERATION_OP.show.name();
public static final Logger LOG = LoggerFactory.getLogger(CatalogueResolverQueryStringBuilder.class); public static final Logger LOG = LoggerFactory.getLogger(CatalogueResolverQueryStringBuilder.class);
public static final String MODERATION_PARAMETER = "moderation"; public static final String MODERATION_PARAMETER = "moderation";
public static final String ITEM_NAME_PARAMETER = "item_name"; public static final String ITEM_NAME_PARAMETER = "item_name";
@ -120,22 +124,27 @@ public final class CatalogueResolverQueryStringBuilder {
CatalogueResolverQueryString crQS = new CatalogueResolverQueryString(this); CatalogueResolverQueryString crQS = new CatalogueResolverQueryString(this);
if (crQS.getItemName() == null || crQS.getItemName().isEmpty()) {
throw new IllegalArgumentException("The " + ITEM_NAME_PARAMETER + " cannot be null or empty");
}
Map<String, String> query = new HashMap<String, String>(); Map<String, String> query = new HashMap<String, String>();
query.put(ITEM_NAME_PARAMETER, crQS.getItemName());
if (crQS.getItemId() != null) { if (crQS.getItemId() != null) {
query.put(ITEM_ID_PARAMETER, crQS.getItemId()); query.put(ITEM_ID_PARAMETER, crQS.getItemId());
} }
if (crQS.getItemName() != null) {
query.put(ITEM_NAME_PARAMETER, crQS.getItemName());
}
if (crQS.getItemStatus() != null) { if (crQS.getItemStatus() != null) {
query.put(STATUS_PARAMETER, crQS.getItemStatus()); query.put(STATUS_PARAMETER, crQS.getItemStatus());
} else {
query.put(STATUS_PARAMETER, DEFAULT_STATUS);
} }
if (crQS.getModeration() != null) { if (crQS.getModeration() != null) {
query.put(MODERATION_PARAMETER, crQS.getModeration().name()); query.put(MODERATION_PARAMETER, crQS.getModeration().name());
} else {
query.put(MODERATION_PARAMETER, DEFAULT_MODERATION_OP);
} }
return query; return query;

View File

@ -96,7 +96,7 @@ public class UriResolverManagerTest {
} }
} }
// @Test //@Test
public void testCTLGGenerateLinkForModeration() { public void testCTLGGenerateLinkForModeration() {
try { try {
@ -110,7 +110,7 @@ public class UriResolverManagerTest {
CatalogueResolverQueryStringBuilder builder = new CatalogueResolverQueryStringBuilder( CatalogueResolverQueryStringBuilder builder = new CatalogueResolverQueryStringBuilder(
"test-moderation-1649068829317"); "test-moderation-1649068829317");
builder.itemStatus("approved").moderation(MODERATION_OP.show); //builder.itemStatus("approved").moderation(MODERATION_OP.show);
String queryString = builder.buildQueryParametersToQueryString(); String queryString = builder.buildQueryParametersToQueryString();
params.put(CatalogueResolverQueryStringBuilder.QUERY_STRING_PARAMETER, queryString); params.put(CatalogueResolverQueryStringBuilder.QUERY_STRING_PARAMETER, queryString);