You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by bb...@apache.org on 2017/09/26 19:24:06 UTC
nifi-registry git commit: NIFIREG-23: Fix SortParamater and
OperationID in swagger.json output
Repository: nifi-registry
Updated Branches:
refs/heads/master d478c20ee -> d6159f834
NIFIREG-23: Fix SortParamater and OperationID in swagger.json output
This closes #12.
Project: http://git-wip-us.apache.org/repos/asf/nifi-registry/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-registry/commit/d6159f83
Tree: http://git-wip-us.apache.org/repos/asf/nifi-registry/tree/d6159f83
Diff: http://git-wip-us.apache.org/repos/asf/nifi-registry/diff/d6159f83
Branch: refs/heads/master
Commit: d6159f834e6745abcf30340ceba05fb559e0d145
Parents: d478c20
Author: Kevin Doran <kd...@gmail.com>
Authored: Thu Sep 21 17:02:07 2017 -0400
Committer: Bryan Bende <bb...@apache.org>
Committed: Tue Sep 26 15:23:23 2017 -0400
----------------------------------------------------------------------
.../registry/service/params/SortParameter.java | 6 +++
.../nifi/registry/web/api/BucketResource.java | 17 +++++---
.../nifi/registry/web/api/FlowResource.java | 17 +++++---
.../nifi/registry/web/api/ItemResource.java | 41 +++++++++++++-------
4 files changed, 54 insertions(+), 27 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/nifi-registry/blob/d6159f83/nifi-registry-framework/src/main/java/org/apache/nifi/registry/service/params/SortParameter.java
----------------------------------------------------------------------
diff --git a/nifi-registry-framework/src/main/java/org/apache/nifi/registry/service/params/SortParameter.java b/nifi-registry-framework/src/main/java/org/apache/nifi/registry/service/params/SortParameter.java
index 327bd95..8443f4b 100644
--- a/nifi-registry-framework/src/main/java/org/apache/nifi/registry/service/params/SortParameter.java
+++ b/nifi-registry-framework/src/main/java/org/apache/nifi/registry/service/params/SortParameter.java
@@ -21,6 +21,12 @@ package org.apache.nifi.registry.service.params;
*/
public class SortParameter {
+ public static final String API_PARAM_DESCRIPTION =
+ "Apply client-defined sorting to the resulting list of resource objects. " +
+ "The value of this parameter should be in the format \"field:order\". " +
+ "Valid values for 'field' can be discovered via GET :resourceURI/fields. " +
+ "Valid values for 'order' are 'ASC' (ascending order), 'DESC' (descending order).";
+
private final String fieldName;
private final SortOrder order;
http://git-wip-us.apache.org/repos/asf/nifi-registry/blob/d6159f83/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/BucketResource.java
----------------------------------------------------------------------
diff --git a/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/BucketResource.java b/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/BucketResource.java
index 1272522..9a9025a 100644
--- a/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/BucketResource.java
+++ b/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/BucketResource.java
@@ -18,6 +18,7 @@ package org.apache.nifi.registry.web.api;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.apache.commons.lang3.StringUtils;
@@ -94,13 +95,17 @@ public class BucketResource {
response = Bucket.class,
responseContainer = "List"
)
- public Response getBuckets(@QueryParam("sort") final List<SortParameter> sortParameters) {
-
- final QueryParameters params = new QueryParameters.Builder()
- .addSorts(sortParameters)
- .build();
+ public Response getBuckets(
+ @ApiParam(value = SortParameter.API_PARAM_DESCRIPTION, format = "field:order", allowMultiple = true, example = "name:ASC")
+ @QueryParam("sort")
+ final List<String> sortParameters) {
+
+ final QueryParameters.Builder paramsBuilder = new QueryParameters.Builder();
+ for (String sortParam : sortParameters) {
+ paramsBuilder.addSort(SortParameter.fromString(sortParam));
+ }
- final List<Bucket> buckets = registryService.getBuckets(params);
+ final List<Bucket> buckets = registryService.getBuckets(paramsBuilder.build());
linkService.populateBucketLinks(buckets);
return Response.status(Response.Status.OK).entity(buckets).build();
http://git-wip-us.apache.org/repos/asf/nifi-registry/blob/d6159f83/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/FlowResource.java
----------------------------------------------------------------------
diff --git a/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/FlowResource.java b/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/FlowResource.java
index abd0d69..97ad0c1 100644
--- a/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/FlowResource.java
+++ b/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/FlowResource.java
@@ -18,6 +18,7 @@ package org.apache.nifi.registry.web.api;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.apache.commons.lang3.StringUtils;
@@ -84,13 +85,17 @@ public class FlowResource {
response = VersionedFlow.class,
responseContainer = "List"
)
- public Response getFlows(@QueryParam("sort") final List<SortParameter> sortParameters) {
-
- final QueryParameters params = new QueryParameters.Builder()
- .addSorts(sortParameters)
- .build();
+ public Response getFlows(
+ @ApiParam(value = SortParameter.API_PARAM_DESCRIPTION, format = "field:order", allowMultiple = true, example = "name:ASC")
+ @QueryParam("sort")
+ final List<String> sortParameters) {
+
+ final QueryParameters.Builder paramsBuilder = new QueryParameters.Builder();
+ for (String sortParam : sortParameters) {
+ paramsBuilder.addSort(SortParameter.fromString(sortParam));
+ }
- final List<VersionedFlow> flows = registryService.getFlows(params);
+ final List<VersionedFlow> flows = registryService.getFlows(paramsBuilder.build());
linkService.populateFlowLinks(flows);
return Response.status(Response.Status.OK).entity(flows).build();
http://git-wip-us.apache.org/repos/asf/nifi-registry/blob/d6159f83/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/ItemResource.java
----------------------------------------------------------------------
diff --git a/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/ItemResource.java b/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/ItemResource.java
index 1867c83..cb99a1d 100644
--- a/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/ItemResource.java
+++ b/nifi-registry-web-api/src/main/java/org/apache/nifi/registry/web/api/ItemResource.java
@@ -18,6 +18,7 @@ package org.apache.nifi.registry.web.api;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
import org.apache.nifi.registry.bucket.BucketItem;
import org.apache.nifi.registry.service.RegistryService;
import org.apache.nifi.registry.service.params.QueryParameters;
@@ -74,13 +75,17 @@ public class ItemResource {
response = BucketItem.class,
responseContainer = "List"
)
- public Response getItems(@QueryParam("sort") final List<SortParameter> sortParameters) {
+ public Response getItems(
+ @ApiParam(value = SortParameter.API_PARAM_DESCRIPTION, format = "field:order", allowMultiple = true, example = "name:ASC")
+ @QueryParam("sort")
+ final List<String> sortParameters) {
- final QueryParameters params = new QueryParameters.Builder()
- .addSorts(sortParameters)
- .build();
+ final QueryParameters.Builder paramsBuilder = new QueryParameters.Builder();
+ for (String sortParam : sortParameters) {
+ paramsBuilder.addSort(SortParameter.fromString(sortParam));
+ }
- final List<BucketItem> items = registryService.getBucketItems(params);
+ final List<BucketItem> items = registryService.getBucketItems(paramsBuilder.build());
linkService.populateItemLinks(items);
return Response.status(Response.Status.OK).entity(items).build();
@@ -93,16 +98,22 @@ public class ItemResource {
@ApiOperation(
value = "Get metadata for items of the given bucket.",
response = BucketItem.class,
- responseContainer = "List"
+ responseContainer = "List",
+ nickname = "getItemsInBucket"
)
- public Response getItems(@PathParam("bucketId") final String bucketId,
- @QueryParam("sort") final List<SortParameter> sortParameters) {
-
- final QueryParameters params = new QueryParameters.Builder()
- .addSorts(sortParameters)
- .build();
-
- final List<BucketItem> items = registryService.getBucketItems(params, bucketId);
+ public Response getItems(
+ @PathParam("bucketId")
+ final String bucketId,
+ @ApiParam(value = SortParameter.API_PARAM_DESCRIPTION, format = "field:order", allowMultiple = true, example = "name:ASC")
+ @QueryParam("sort")
+ final List<String> sortParameters) {
+
+ final QueryParameters.Builder paramsBuilder = new QueryParameters.Builder();
+ for (String sortParam : sortParameters) {
+ paramsBuilder.addSort(SortParameter.fromString(sortParam));
+ }
+
+ final List<BucketItem> items = registryService.getBucketItems(paramsBuilder.build(), bucketId);
linkService.populateItemLinks(items);
return Response.status(Response.Status.OK).entity(items).build();
@@ -116,7 +127,7 @@ public class ItemResource {
value = "Retrieves the available field names that can be used for searching or sorting on bucket items.",
response = FieldsEntity.class
)
- public Response getAvailableBucketFields() {
+ public Response getAvailableBucketItemFields() {
final Set<String> bucketFields = registryService.getBucketItemFields();
final FieldsEntity fieldsEntity = new FieldsEntity(bucketFields);
return Response.status(Response.Status.OK).entity(fieldsEntity).build();