You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by mc...@apache.org on 2015/12/17 22:58:24 UTC
nifi git commit: NIFI-108: - Adding compilation error for IOException
from getFlowFile(). - Code clean up. - Javadocs.
Repository: nifi
Updated Branches:
refs/heads/NIFI-108 b12aba782 -> ab30bf046
NIFI-108:
- Adding compilation error for IOException from getFlowFile().
- Code clean up.
- Javadocs.
Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/ab30bf04
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/ab30bf04
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/ab30bf04
Branch: refs/heads/NIFI-108
Commit: ab30bf04694e44854f697bd157b73b685807074d
Parents: b12aba7
Author: Matt Gilman <ma...@gmail.com>
Authored: Thu Dec 17 16:58:10 2015 -0500
Committer: Matt Gilman <ma...@gmail.com>
Committed: Thu Dec 17 16:58:10 2015 -0500
----------------------------------------------------------------------
.../apache/nifi/web/api/ConnectionResource.java | 42 +++++++++++++++-----
.../org/apache/nifi/web/api/dto/DtoFactory.java | 18 +++++++++
.../web/dao/impl/StandardConnectionDAO.java | 19 +++++----
3 files changed, 62 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/nifi/blob/ab30bf04/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/ConnectionResource.java
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/ConnectionResource.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/ConnectionResource.java
index 6c9de0e..76dde1a 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/ConnectionResource.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/ConnectionResource.java
@@ -132,13 +132,33 @@ public class ConnectionResource extends ApplicationResource {
}
/**
+ * Populate the uri's for the specified flowfile listing.
+ *
+ * @param connectionId connection
+ * @param flowFileListing flowfile listing
+ * @return dto
+ */
+ public ListingRequestDTO populateRemainingFlowFileListingContent(final String connectionId, final ListingRequestDTO flowFileListing) {
+ // uri of the listing
+ flowFileListing.setUri(generateResourceUri("controller", "process-groups", groupId, "connections", connectionId, "listing-requests", flowFileListing.getId()));
+
+ // uri of each flowfile
+ if (flowFileListing.getFlowFileSummaries() != null) {
+ for (FlowFileSummaryDTO flowFile : flowFileListing.getFlowFileSummaries()) {
+ populateRemainingFlowFileContent(connectionId, flowFile);
+ }
+ }
+ return flowFileListing;
+ }
+
+ /**
* Populate the uri's for the specified flowfile.
*
* @param connectionId the connection id
* @param flowFile the flowfile
* @return the dto
*/
- private FlowFileSummaryDTO populateRemainingFlowFileContent(final String connectionId, FlowFileSummaryDTO flowFile) {
+ private FlowFileSummaryDTO populateRemainingFlowFileContent(final String connectionId, final FlowFileSummaryDTO flowFile) {
flowFile.setUri(generateResourceUri("controller", "process-groups", groupId, "connections", connectionId, "flowfiles", flowFile.getUuid()));
return flowFile;
}
@@ -1263,8 +1283,8 @@ public class ConnectionResource extends ApplicationResource {
}
// submit the listing request
- final ListingRequestDTO listRequest = serviceFacade.createFlowFileListingRequest(groupId, id, listingRequestId);
- listRequest.setUri(generateResourceUri("controller", "process-groups", groupId, "connections", id, "listing-requests", listRequest.getId()));
+ final ListingRequestDTO listingRequest = serviceFacade.createFlowFileListingRequest(groupId, id, listingRequestId);
+ populateRemainingFlowFileListingContent(id, listingRequest);
// create the revision
final RevisionDTO revision = new RevisionDTO();
@@ -1273,10 +1293,10 @@ public class ConnectionResource extends ApplicationResource {
// create the response entity
final ListingRequestEntity entity = new ListingRequestEntity();
entity.setRevision(revision);
- entity.setListingRequest(listRequest);
+ entity.setListingRequest(listingRequest);
// generate the URI where the response will be
- final URI location = URI.create(listRequest.getUri());
+ final URI location = URI.create(listingRequest.getUri());
return Response.status(Status.ACCEPTED).location(location).entity(entity).build();
}
@@ -1333,7 +1353,7 @@ public class ConnectionResource extends ApplicationResource {
// get the listing request
final ListingRequestDTO listingRequest = serviceFacade.getFlowFileListingRequest(groupId, connectionId, listingRequestId);
- listingRequest.setUri(generateResourceUri("controller", "process-groups", groupId, "connections", connectionId, "listing-requests", listingRequestId));
+ populateRemainingFlowFileListingContent(connectionId, listingRequest);
// create the revision
final RevisionDTO revision = new RevisionDTO();
@@ -1406,11 +1426,13 @@ public class ConnectionResource extends ApplicationResource {
}
// delete the listing request
- final ListingRequestDTO dropRequest = serviceFacade.deleteFlowFileListingRequest(groupId, connectionId, listingRequestId);
- dropRequest.setUri(generateResourceUri("controller", "process-groups", groupId, "connections", connectionId, "listing-requests", listingRequestId));
+ final ListingRequestDTO listingRequest = serviceFacade.deleteFlowFileListingRequest(groupId, connectionId, listingRequestId);
// prune the results as they were already received when the listing completed
- dropRequest.setFlowFileSummaries(null);
+ listingRequest.setFlowFileSummaries(null);
+
+ // populate remaining content
+ populateRemainingFlowFileListingContent(connectionId, listingRequest);
// create the revision
final RevisionDTO revision = new RevisionDTO();
@@ -1419,7 +1441,7 @@ public class ConnectionResource extends ApplicationResource {
// create the response entity
final ListingRequestEntity entity = new ListingRequestEntity();
entity.setRevision(revision);
- entity.setListingRequest(dropRequest);
+ entity.setListingRequest(listingRequest);
return generateOkResponse(entity).build();
}
http://git-wip-us.apache.org/repos/asf/nifi/blob/ab30bf04/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java
index aa3bbe8..5c3e864 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java
@@ -354,6 +354,12 @@ public final class DtoFactory {
return ListFlowFileState.COMPLETE.equals(state) || ListFlowFileState.CANCELED.equals(state) || ListFlowFileState.FAILURE.equals(state);
}
+ /**
+ * Creates a ListingRequestDTO from the specified ListFlowFileStatus.
+ *
+ * @param listingRequest listingRequest
+ * @return dto
+ */
public ListingRequestDTO createListingRequestDTO(final ListFlowFileStatus listingRequest) {
final ListingRequestDTO dto = new ListingRequestDTO();
dto.setId(listingRequest.getRequestIdentifier());
@@ -383,6 +389,12 @@ public final class DtoFactory {
return dto;
}
+ /**
+ * Creates a FlowFileSummaryDTO from the specified FlowFileSummary.
+ *
+ * @param summary summary
+ * @return dto
+ */
public FlowFileSummaryDTO createFlowFileSummaryDTO(final FlowFileSummary summary) {
final FlowFileSummaryDTO dto = new FlowFileSummaryDTO();
dto.setUuid(summary.getUuid());
@@ -395,6 +407,12 @@ public final class DtoFactory {
return dto;
}
+ /**
+ * Creates a FlowFileDTO from the specified FlowFileRecord.
+ *
+ * @param record record
+ * @return dto
+ */
public FlowFileDTO createFlowFileDTO(final FlowFileRecord record) {
final FlowFileDTO dto = new FlowFileDTO();
dto.setUuid(record.getAttribute(CoreAttributes.UUID.key()));
http://git-wip-us.apache.org/repos/asf/nifi/blob/ab30bf04/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardConnectionDAO.java
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardConnectionDAO.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardConnectionDAO.java
index 2b51a80..4d5d8e2 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardConnectionDAO.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardConnectionDAO.java
@@ -118,15 +118,20 @@ public class StandardConnectionDAO extends ComponentDAO implements ConnectionDAO
@Override
public FlowFileRecord getFlowFile(String groupId, String id, String flowFileUuid) {
- final Connection connection = locateConnection(groupId, id);
- final FlowFileQueue queue = connection.getFlowFileQueue();
- final FlowFileRecord flowFile = queue.getFlowFile(flowFileUuid);
+ try {
+ final Connection connection = locateConnection(groupId, id);
+ final FlowFileQueue queue = connection.getFlowFileQueue();
+ final FlowFileRecord flowFile = queue.getFlowFile(flowFileUuid);
- if (flowFile == null) {
- throw new ResourceNotFoundException(String.format("Unable to find FlowFile '%s' in Connection '%s'.", flowFileUuid, id));
- }
+ if (flowFile == null) {
+ throw new ResourceNotFoundException(String.format("Unable to find FlowFile '%s' in Connection '%s'.", flowFileUuid, id));
+ }
- return flowFile;
+ return flowFile;
+ } catch (final IOException ioe) {
+ logger.error(String.format("Unable to get the flowfile (%s) at this time.", flowFileUuid), ioe);
+ throw new IllegalStateException("Unable to get the FlowFile at this time.");
+ }
}
@Override